@parhelia/core 0.1.12843 → 0.1.12856

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 (113) hide show
  1. package/dist/agents-view/AgentCard.js +2 -2
  2. package/dist/agents-view/AgentCard.js.map +1 -1
  3. package/dist/agents-view/AgentsView.js +9 -10
  4. package/dist/agents-view/AgentsView.js.map +1 -1
  5. package/dist/agents-view/AgentsWorkspaceView.js +3 -3
  6. package/dist/agents-view/AgentsWorkspaceView.js.map +1 -1
  7. package/dist/agents-view/ProfileAgentsGroup.js +2 -2
  8. package/dist/agents-view/ProfileAgentsGroup.js.map +1 -1
  9. package/dist/components/ui/LanguageSelectionGrid.d.ts +3 -1
  10. package/dist/components/ui/LanguageSelectionGrid.js +2 -2
  11. package/dist/components/ui/LanguageSelectionGrid.js.map +1 -1
  12. package/dist/components/ui/sonner.js +27 -1
  13. package/dist/components/ui/sonner.js.map +1 -1
  14. package/dist/config/config.js +8 -4
  15. package/dist/config/config.js.map +1 -1
  16. package/dist/config/types/sidebar.d.ts +2 -0
  17. package/dist/config/types.d.ts +1 -0
  18. package/dist/config/types.js.map +1 -1
  19. package/dist/editor/Editor.js +19 -3
  20. package/dist/editor/Editor.js.map +1 -1
  21. package/dist/editor/ai/AgentProfileSelector.d.ts +1 -0
  22. package/dist/editor/ai/AgentProfileSelector.js +4 -4
  23. package/dist/editor/ai/AgentProfileSelector.js.map +1 -1
  24. package/dist/editor/ai/Agents.js +102 -309
  25. package/dist/editor/ai/Agents.js.map +1 -1
  26. package/dist/editor/ai/terminal/components/AgentGreeting.js +2 -2
  27. package/dist/editor/ai/terminal/components/AgentGreeting.js.map +1 -1
  28. package/dist/editor/ai/terminal/components/AgentThinkingDots.js +2 -2
  29. package/dist/editor/ai/terminal/components/AgentThinkingDots.js.map +1 -1
  30. package/dist/editor/ai/terminal/components/AiResponseMessage.js +2 -2
  31. package/dist/editor/ai/terminal/components/AiResponseMessage.js.map +1 -1
  32. package/dist/editor/ai/terminal/components/InitialThinkingSplash.js +2 -2
  33. package/dist/editor/ai/terminal/components/InitialThinkingSplash.js.map +1 -1
  34. package/dist/editor/ai/terminal/components/UserMessage.js +24 -5
  35. package/dist/editor/ai/terminal/components/UserMessage.js.map +1 -1
  36. package/dist/editor/client/EditorShell.d.ts +2 -1
  37. package/dist/editor/client/EditorShell.js +7 -5
  38. package/dist/editor/client/EditorShell.js.map +1 -1
  39. package/dist/editor/client/hooks/useEditorWebSocket.d.ts +1 -0
  40. package/dist/editor/client/hooks/useEditorWebSocket.js +5 -2
  41. package/dist/editor/client/hooks/useEditorWebSocket.js.map +1 -1
  42. package/dist/editor/client/pageModelBuilder.d.ts +1 -0
  43. package/dist/editor/client/pageModelBuilder.js +54 -11
  44. package/dist/editor/client/pageModelBuilder.js.map +1 -1
  45. package/dist/editor/client/ui/EditorChrome.js +1 -1
  46. package/dist/editor/client/ui/EditorChrome.js.map +1 -1
  47. package/dist/editor/context-menu/InsertMenu.js +2 -2
  48. package/dist/editor/context-menu/InsertMenu.js.map +1 -1
  49. package/dist/editor/menubar/toolbar-sections/UtilityControls.js +2 -2
  50. package/dist/editor/menubar/toolbar-sections/UtilityControls.js.map +1 -1
  51. package/dist/editor/menubar/toolbar-sections/ViewportControls.js +2 -1
  52. package/dist/editor/menubar/toolbar-sections/ViewportControls.js.map +1 -1
  53. package/dist/editor/page-editor-chrome/CommentHighlightings.js +22 -65
  54. package/dist/editor/page-editor-chrome/CommentHighlightings.js.map +1 -1
  55. package/dist/editor/page-editor-chrome/PlaceholderDropZone.js +1 -1
  56. package/dist/editor/page-editor-chrome/PlaceholderDropZone.js.map +1 -1
  57. package/dist/editor/page-editor-chrome/PlaceholderDropZones.js +5 -12
  58. package/dist/editor/page-editor-chrome/PlaceholderDropZones.js.map +1 -1
  59. package/dist/editor/page-viewer/PageViewer.js +43 -4
  60. package/dist/editor/page-viewer/PageViewer.js.map +1 -1
  61. package/dist/editor/page-viewer/PageViewerFrame.js +84 -13
  62. package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
  63. package/dist/editor/page-viewer/pageModelSkeletonBuilder.js +377 -21
  64. package/dist/editor/page-viewer/pageModelSkeletonBuilder.js.map +1 -1
  65. package/dist/editor/pageModel.d.ts +3 -0
  66. package/dist/editor/pageModel.js +12 -1
  67. package/dist/editor/pageModel.js.map +1 -1
  68. package/dist/editor/reviews/CommentEditor.d.ts +3 -1
  69. package/dist/editor/reviews/CommentEditor.js +18 -8
  70. package/dist/editor/reviews/CommentEditor.js.map +1 -1
  71. package/dist/editor/reviews/CommentPopover.js +3 -2
  72. package/dist/editor/reviews/CommentPopover.js.map +1 -1
  73. package/dist/editor/services/contentService.js +5 -18
  74. package/dist/editor/services/contentService.js.map +1 -1
  75. package/dist/editor/settings/SettingsView.js +1 -1
  76. package/dist/editor/settings/SettingsView.js.map +1 -1
  77. package/dist/editor/settings/StatusSummary.js +6 -6
  78. package/dist/editor/settings/StatusSummary.js.map +1 -1
  79. package/dist/editor/settings/panels/AgentsPanel.js +3 -3
  80. package/dist/editor/settings/panels/AgentsPanel.js.map +1 -1
  81. package/dist/editor/settings/panels/NotificationSubscriptionsPanel.js +2 -2
  82. package/dist/editor/settings/panels/NotificationSubscriptionsPanel.js.map +1 -1
  83. package/dist/editor/settings/panels/ProjectTemplateSelectorList.js +4 -4
  84. package/dist/editor/settings/panels/ProjectTemplateSelectorList.js.map +1 -1
  85. package/dist/editor/settings/status/coreStatusChecks.js +52 -2
  86. package/dist/editor/settings/status/coreStatusChecks.js.map +1 -1
  87. package/dist/editor/sidebar/SidebarPanel.js +2 -2
  88. package/dist/editor/sidebar/SidebarPanel.js.map +1 -1
  89. package/dist/editor/sidebar/SidebarStack.js +1 -0
  90. package/dist/editor/sidebar/SidebarStack.js.map +1 -1
  91. package/dist/editor/ui/Icons.d.ts +1 -1
  92. package/dist/editor/ui/Icons.js +2 -2
  93. package/dist/editor/ui/Icons.js.map +1 -1
  94. package/dist/editor/ui/PublishItemDialog.js +36 -71
  95. package/dist/editor/ui/PublishItemDialog.js.map +1 -1
  96. package/dist/editor/ui/Splitter.d.ts +1 -0
  97. package/dist/editor/ui/Splitter.js +4 -3
  98. package/dist/editor/ui/Splitter.js.map +1 -1
  99. package/dist/editor/utils.d.ts +8 -2
  100. package/dist/editor/utils.js +46 -33
  101. package/dist/editor/utils.js.map +1 -1
  102. package/dist/editor/version-diff/versionDiffTargets.js +8 -15
  103. package/dist/editor/version-diff/versionDiffTargets.js.map +1 -1
  104. package/dist/index.d.ts +1 -1
  105. package/dist/index.js +1 -1
  106. package/dist/index.js.map +1 -1
  107. package/dist/revision.d.ts +2 -2
  108. package/dist/revision.js +2 -2
  109. package/dist/splash-screen/RecentPages.js +7 -7
  110. package/dist/splash-screen/RecentPages.js.map +1 -1
  111. package/dist/tour/Tour.js +1 -1
  112. package/dist/tour/Tour.js.map +1 -1
  113. package/package.json +1 -1
@@ -1,5 +1,273 @@
1
- import { extractItemIdFromItemUri } from "../utils";
1
+ import { extractItemIdFromItemUri, getNextNonChromeMarkerElement, getPreviousNonChromeMarkerElement, isChromeMarkerElement, isSitecoreCodeMarkerElement, } from "../utils";
2
2
  const excludedComponentTypes = new Set(["StickyNote"]);
3
+ const zeroGuid = "00000000-0000-0000-0000-000000000000";
4
+ function normalizeSitecoreId(id) {
5
+ if (!id)
6
+ return "";
7
+ return id.replace(/[{}]/g, "").toLowerCase();
8
+ }
9
+ function normalizeSitecoreGuid(id) {
10
+ const normalized = normalizeSitecoreId(id);
11
+ if (/^[0-9a-f]{32}$/i.test(normalized)) {
12
+ return `${normalized.substring(0, 8)}-${normalized.substring(8, 12)}-${normalized.substring(12, 16)}-${normalized.substring(16, 20)}-${normalized.substring(20, 32)}`;
13
+ }
14
+ return normalized;
15
+ }
16
+ function normalizeHeadlessPlaceholderKey(id) {
17
+ const key = id ?? "";
18
+ const separatorIndex = key.lastIndexOf("_");
19
+ if (separatorIndex <= 0) {
20
+ return key;
21
+ }
22
+ const suffix = normalizeSitecoreGuid(key.substring(separatorIndex + 1));
23
+ // Root Content SDK placeholders are emitted as "placeholder_0000...".
24
+ // Keep nested placeholders intact because the rendering uid suffix tells
25
+ // Parhelia which component owns the placeholder.
26
+ return suffix === zeroGuid ? key.substring(0, separatorIndex) : key;
27
+ }
28
+ const codeMarkerDataCache = new WeakMap();
29
+ function readSitecoreCodeMarkerData(element) {
30
+ if (!isSitecoreCodeMarkerElement(element)) {
31
+ return undefined;
32
+ }
33
+ if (codeMarkerDataCache.has(element)) {
34
+ return codeMarkerDataCache.get(element) ?? undefined;
35
+ }
36
+ const raw = element.textContent;
37
+ if (!raw) {
38
+ codeMarkerDataCache.set(element, null);
39
+ return undefined;
40
+ }
41
+ try {
42
+ const parsed = JSON.parse(raw);
43
+ if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) {
44
+ const data = parsed;
45
+ codeMarkerDataCache.set(element, data);
46
+ return data;
47
+ }
48
+ }
49
+ catch {
50
+ // Native Sitecore chrome can be malformed or stripped; marker attributes
51
+ // are still enough for basic start/end matching.
52
+ }
53
+ codeMarkerDataCache.set(element, null);
54
+ return undefined;
55
+ }
56
+ function readRecord(value) {
57
+ return value && typeof value === "object" && !Array.isArray(value)
58
+ ? value
59
+ : undefined;
60
+ }
61
+ function readString(value) {
62
+ return typeof value === "string" && value.trim() ? value.trim() : undefined;
63
+ }
64
+ function readNumber(value) {
65
+ if (typeof value === "number" && Number.isFinite(value))
66
+ return value;
67
+ if (typeof value === "string") {
68
+ const parsed = parseInt(value, 10);
69
+ return Number.isFinite(parsed) ? parsed : undefined;
70
+ }
71
+ return undefined;
72
+ }
73
+ function firstString(record, keys) {
74
+ if (!record)
75
+ return undefined;
76
+ for (const key of keys) {
77
+ const value = readString(record[key]);
78
+ if (value)
79
+ return value;
80
+ }
81
+ return undefined;
82
+ }
83
+ function firstRecord(record, keys) {
84
+ if (!record)
85
+ return undefined;
86
+ for (const key of keys) {
87
+ const value = readRecord(record[key]);
88
+ if (value)
89
+ return value;
90
+ }
91
+ return undefined;
92
+ }
93
+ function isExplicitFalse(value) {
94
+ return (value === false ||
95
+ (typeof value === "string" && value.toLowerCase() === "false"));
96
+ }
97
+ function readEditableValue(data) {
98
+ if (!data)
99
+ return undefined;
100
+ const custom = firstRecord(data, ["custom", "customData", "Custom"]);
101
+ const candidateValues = [
102
+ data.editable,
103
+ data.isEditable,
104
+ data.canEdit,
105
+ custom?.editable,
106
+ custom?.isEditable,
107
+ custom?.canEdit,
108
+ ];
109
+ return candidateValues.some(isExplicitFalse) ? "false" : undefined;
110
+ }
111
+ function readDomComponentName(element) {
112
+ if (!element)
113
+ return undefined;
114
+ return (readString(element.getAttribute("data-component")) ||
115
+ readString(element.getAttribute("data-component-name")));
116
+ }
117
+ function setAttributeIfMissing(element, name, value) {
118
+ if (value === undefined || value === null || value === "")
119
+ return;
120
+ if (!element.hasAttribute(name)) {
121
+ element.setAttribute(name, String(value));
122
+ }
123
+ }
124
+ function readMarkerItemData(data, keys) {
125
+ if (!data)
126
+ return undefined;
127
+ const item = firstRecord(data, keys);
128
+ const rawId = firstString(item, ["id", "itemId", "ID"]) ||
129
+ firstString(data, [
130
+ "contextItemId",
131
+ "contextItem",
132
+ "datasourceId",
133
+ "datasource",
134
+ "dataSourceId",
135
+ "dataSource",
136
+ "itemId",
137
+ ]);
138
+ const uri = firstString(item, ["uri", "itemUri", "url"]) ||
139
+ firstString(data, ["contextItemUri", "datasourceUri", "dataSourceUri"]);
140
+ const idFromUri = uri ? extractItemIdFromItemUri(uri) : undefined;
141
+ const id = normalizeSitecoreGuid(rawId || idFromUri);
142
+ const language = firstString(item, ["language", "lang", "languageCode"]) ||
143
+ readQueryValue(uri, ["lang", "language", "sc_lang"]);
144
+ const version = readNumber(item?.version) ||
145
+ readNumber(item?.ver) ||
146
+ readNumber(readQueryValue(uri, ["ver", "version", "sc_version"]));
147
+ if (!id && !language && version === undefined) {
148
+ return undefined;
149
+ }
150
+ return { id, language, version };
151
+ }
152
+ function readQueryValue(uri, keys) {
153
+ if (!uri)
154
+ return undefined;
155
+ const queryStart = uri.indexOf("?");
156
+ if (queryStart < 0)
157
+ return undefined;
158
+ const params = new URLSearchParams(uri.substring(queryStart + 1));
159
+ for (const key of keys) {
160
+ const value = params.get(key);
161
+ if (value)
162
+ return value;
163
+ }
164
+ return undefined;
165
+ }
166
+ function readSitecoreFieldMarkerData(element, markerData) {
167
+ if (!isSitecoreCodeMarkerElement(element) ||
168
+ element.getAttribute("chrometype") !== "field" ||
169
+ element.getAttribute("kind") !== "open") {
170
+ return undefined;
171
+ }
172
+ const data = markerData ?? readSitecoreCodeMarkerData(element);
173
+ if (!data) {
174
+ return undefined;
175
+ }
176
+ const datasource = readMarkerItemData(data, [
177
+ "datasource",
178
+ "dataSource",
179
+ "contextItem",
180
+ ]);
181
+ const field = firstRecord(data, ["field", "fieldData"]);
182
+ const fieldId = normalizeSitecoreGuid(firstString(data, ["fieldId", "fieldID", "field"]) ||
183
+ firstString(field, ["id", "itemId", "fieldId", "fieldID"]));
184
+ return {
185
+ datasource,
186
+ fieldId: fieldId || undefined,
187
+ };
188
+ }
189
+ function normalizeSitecoreCodeMarkerAttributes(element, markerData) {
190
+ if (!isSitecoreCodeMarkerElement(element))
191
+ return;
192
+ element.setAttribute("hidden", "");
193
+ element.setAttribute("aria-hidden", "true");
194
+ if (element instanceof HTMLElement) {
195
+ element.style.display = "none";
196
+ }
197
+ const chromeType = element.getAttribute("chrometype");
198
+ const kind = element.getAttribute("kind");
199
+ const markerId = normalizeSitecoreGuid(element.getAttribute("id") ||
200
+ firstString(markerData, ["id", "uid", "uniqueId", "uniqueID"]));
201
+ if (chromeType === "rendering") {
202
+ normalizeRenderingCodeMarker(element, kind, markerId, markerData);
203
+ }
204
+ else if (chromeType === "placeholder") {
205
+ normalizePlaceholderCodeMarker(element, kind, markerId, markerData);
206
+ }
207
+ else if (chromeType === "field") {
208
+ normalizeFieldCodeMarker(element, markerData);
209
+ }
210
+ }
211
+ function normalizeRenderingCodeMarker(element, kind, markerId, markerData) {
212
+ if (!markerId)
213
+ return;
214
+ if (kind === "open") {
215
+ const rendering = firstRecord(markerData, ["rendering", "renderingItem"]);
216
+ const item = readMarkerItemData(markerData, [
217
+ "contextItem",
218
+ "datasource",
219
+ "dataSource",
220
+ "dataSourceItem",
221
+ "item",
222
+ ]);
223
+ const typeId = normalizeSitecoreGuid(firstString(markerData, [
224
+ "renderingId",
225
+ "renderingID",
226
+ "renderingItemId",
227
+ "renderingItemID",
228
+ "typeId",
229
+ ]) || firstString(rendering, ["id", "itemId", "renderingId"]));
230
+ const displayName = firstString(markerData, ["displayName", "name", "renderingName"]) ||
231
+ firstString(rendering, ["displayName", "name"]);
232
+ setAttributeIfMissing(element, "data-component-start", markerId);
233
+ setAttributeIfMissing(element, "data-type", displayName);
234
+ setAttributeIfMissing(element, "data-typeid", typeId);
235
+ setAttributeIfMissing(element, "data-itemid", item?.id);
236
+ setAttributeIfMissing(element, "data-language", item?.language);
237
+ setAttributeIfMissing(element, "data-version", item?.version);
238
+ setAttributeIfMissing(element, "data-editable", readEditableValue(markerData));
239
+ return;
240
+ }
241
+ if (kind === "close") {
242
+ setAttributeIfMissing(element, "data-component-end", markerId);
243
+ }
244
+ }
245
+ function normalizePlaceholderCodeMarker(element, kind, markerId, markerData) {
246
+ const placeholderKey = normalizeHeadlessPlaceholderKey(markerId);
247
+ if (!placeholderKey)
248
+ return;
249
+ if (kind === "open") {
250
+ const displayName = firstString(markerData, [
251
+ "displayName",
252
+ "description",
253
+ "name",
254
+ ]);
255
+ setAttributeIfMissing(element, "data-placeholder-start", placeholderKey);
256
+ setAttributeIfMissing(element, "data-description", displayName);
257
+ setAttributeIfMissing(element, "data-editable", readEditableValue(markerData));
258
+ return;
259
+ }
260
+ if (kind === "close") {
261
+ setAttributeIfMissing(element, "data-placeholder-end", placeholderKey);
262
+ }
263
+ }
264
+ function normalizeFieldCodeMarker(element, markerData) {
265
+ const fieldData = readSitecoreFieldMarkerData(element, markerData);
266
+ if (!fieldData?.fieldId)
267
+ return;
268
+ // Field code markers identify ownership for the page skeleton, but the hidden
269
+ // marker itself must not become the editable field element.
270
+ }
3
271
  export function buildPageModelSkeleton(iframeDocument, editContextRef, pageViewContextRef) {
4
272
  const pageItemDescriptor = pageViewContextRef.current?.pageItemDescriptor;
5
273
  if (!iframeDocument || !editContextRef.current || !pageViewContextRef.current)
@@ -49,19 +317,19 @@ export function buildPageModelSkeleton(iframeDocument, editContextRef, pageViewC
49
317
  let currentComponent = root;
50
318
  let currentPlaceholder;
51
319
  const resolveComponentFirstElement = (componentStartId, element) => {
52
- if (element.tagName !== "SCRIPT") {
320
+ if (!isChromeMarkerElement(element)) {
53
321
  return element;
54
322
  }
55
- const previousElement = element.previousElementSibling;
323
+ const previousElement = getPreviousNonChromeMarkerElement(element);
56
324
  const nextElement = element.nextElementSibling;
57
- const nextIsMatchingEndMarker = nextElement?.tagName === "SCRIPT" &&
58
- nextElement.getAttribute("data-component-end") === componentStartId;
325
+ const nextIsMatchingEndMarker = !!nextElement &&
326
+ getComponentEndId(nextElement, componentStartId) === componentStartId;
59
327
  // Some Sitecore markers are emitted after the rendered component body, with
60
328
  // the matching end marker immediately after the start marker.
61
329
  if (nextIsMatchingEndMarker && previousElement) {
62
330
  return previousElement;
63
331
  }
64
- return nextElement ?? previousElement ?? element;
332
+ return getNextNonChromeMarkerElement(element) ?? previousElement ?? element;
65
333
  };
66
334
  const moveContainedComponentsToPlaceholder = (sourcePlaceholder, targetPlaceholder, containerElement, currentComponentId) => {
67
335
  if (!sourcePlaceholder || sourcePlaceholder === targetPlaceholder) {
@@ -139,9 +407,9 @@ export function buildPageModelSkeleton(iframeDocument, editContextRef, pageViewC
139
407
  return true;
140
408
  };
141
409
  const resolveComponentLastElement = (componentEndId, element, component) => {
142
- const previousElement = element.previousElementSibling;
143
- if (previousElement?.tagName === "SCRIPT" &&
144
- previousElement.getAttribute("data-component-start") === componentEndId &&
410
+ const previousElement = getPreviousNonChromeMarkerElement(element);
411
+ if (previousElement &&
412
+ getComponentStartId(previousElement) === componentEndId &&
145
413
  component.firstDOMElement) {
146
414
  return component.firstDOMElement;
147
415
  }
@@ -196,15 +464,22 @@ export function buildPageModelSkeleton(iframeDocument, editContextRef, pageViewC
196
464
  const parameters = element.getAttribute("data-parameters");
197
465
  const isSharedDatasource = element.getAttribute("data-shared-datasource") === "true";
198
466
  const hasPersonalization = element.getAttribute("data-has-personalization") === "true";
199
- const componentType = element.getAttribute("data-type") || "";
200
- if (excludedComponentTypes.has(componentType)) {
201
- element.setAttribute("data-skip-component", "true");
202
- return undefined;
203
- }
204
467
  // Store the parent component before we potentially change currentComponent
205
468
  const parentComponent = currentPlaceholder.parentComponent;
206
469
  const parentPlaceholder = currentPlaceholder;
207
470
  const componentFirstElement = resolveComponentFirstElement(componentStartId, element);
471
+ const componentType = element.getAttribute("data-type") ||
472
+ readDomComponentName(componentFirstElement) ||
473
+ "";
474
+ setAttributeIfMissing(element, "data-type", componentType);
475
+ if (excludedComponentTypes.has(componentType)) {
476
+ element.setAttribute("data-skip-component", "true");
477
+ return undefined;
478
+ }
479
+ if (componentFirstElement instanceof HTMLElement &&
480
+ !componentFirstElement.hasAttribute("data-component-id")) {
481
+ componentFirstElement.setAttribute("data-component-id", componentStartId);
482
+ }
208
483
  currentComponent = currentPlaceholder.components.find((x) => x.id === componentStartId);
209
484
  // Check if we should skip this component because it has the same datasource as the parent
210
485
  if (datasourceItem &&
@@ -288,11 +563,59 @@ export function buildPageModelSkeleton(iframeDocument, editContextRef, pageViewC
288
563
  currentComponent = undefined;
289
564
  };
290
565
  const componentStack = [];
566
+ const getComponentStartId = (element) => {
567
+ const normalizedId = element.getAttribute("data-component-start");
568
+ if (normalizedId)
569
+ return normalizedId;
570
+ if (isSitecoreCodeMarkerElement(element) &&
571
+ element.getAttribute("chrometype") === "rendering" &&
572
+ element.getAttribute("kind") === "open") {
573
+ return normalizeSitecoreGuid(element.getAttribute("id"));
574
+ }
575
+ return null;
576
+ };
577
+ const getComponentEndId = (element, fallback) => {
578
+ const normalizedId = element.getAttribute("data-component-end");
579
+ if (normalizedId)
580
+ return normalizedId;
581
+ if (isSitecoreCodeMarkerElement(element) &&
582
+ element.getAttribute("chrometype") === "rendering" &&
583
+ element.getAttribute("kind") === "close") {
584
+ return normalizeSitecoreGuid(element.getAttribute("id")) || fallback || null;
585
+ }
586
+ return null;
587
+ };
588
+ const getPlaceholderStartId = (element) => {
589
+ const normalizedId = element.getAttribute("data-placeholder-start");
590
+ if (normalizedId)
591
+ return normalizedId;
592
+ if (isSitecoreCodeMarkerElement(element) &&
593
+ element.getAttribute("chrometype") === "placeholder" &&
594
+ element.getAttribute("kind") === "open") {
595
+ return normalizeHeadlessPlaceholderKey(normalizeSitecoreGuid(element.getAttribute("id")));
596
+ }
597
+ return null;
598
+ };
599
+ const getPlaceholderEndId = (element, fallback) => {
600
+ const normalizedId = element.getAttribute("data-placeholder-end");
601
+ if (normalizedId)
602
+ return normalizedId;
603
+ if (isSitecoreCodeMarkerElement(element) &&
604
+ element.getAttribute("chrometype") === "placeholder" &&
605
+ element.getAttribute("kind") === "close") {
606
+ return (normalizeHeadlessPlaceholderKey(normalizeSitecoreGuid(element.getAttribute("id"))) ||
607
+ fallback ||
608
+ null);
609
+ }
610
+ return null;
611
+ };
291
612
  while (treeWalker.nextNode()) {
292
613
  const node = treeWalker.currentNode;
293
614
  if (node.nodeType !== Node.ELEMENT_NODE)
294
615
  continue;
295
616
  const element = node;
617
+ const sitecoreCodeMarkerData = readSitecoreCodeMarkerData(element);
618
+ normalizeSitecoreCodeMarkerAttributes(element, sitecoreCodeMarkerData);
296
619
  if (componentStack.length > 0) {
297
620
  const component = componentStack[componentStack.length - 1];
298
621
  //if element is not a descendant of the component's firstDOMElement, the component from the stack
@@ -301,7 +624,41 @@ export function buildPageModelSkeleton(iframeDocument, editContextRef, pageViewC
301
624
  endComponent(component.component.id);
302
625
  }
303
626
  }
304
- if (currentComponent && element.getAttribute("chrometype") === "field") {
627
+ const sitecoreFieldMarkerData = readSitecoreFieldMarkerData(element, sitecoreCodeMarkerData);
628
+ if (currentComponent && sitecoreFieldMarkerData?.fieldId) {
629
+ const fieldId = ensureUUIDFormat(normalizeSitecoreId(sitecoreFieldMarkerData.fieldId));
630
+ const datasource = sitecoreFieldMarkerData.datasource;
631
+ const itemId = normalizeSitecoreId(datasource?.id);
632
+ const language = datasource?.language ||
633
+ currentComponent.datasourceItem?.language ||
634
+ pageItem.language;
635
+ const version = datasource?.version ||
636
+ currentComponent.datasourceItem?.version ||
637
+ pageItem.version;
638
+ if (itemId) {
639
+ let renderedItem = itemId === currentComponent.datasourceItem?.id
640
+ ? currentComponent.datasourceItem
641
+ : currentComponent.items.find((x) => x.id === itemId &&
642
+ x.language === language &&
643
+ x.version === version);
644
+ if (!renderedItem) {
645
+ renderedItem = {
646
+ id: itemId,
647
+ language,
648
+ version,
649
+ renderedFieldIds: [],
650
+ };
651
+ currentComponent.items.push(renderedItem);
652
+ }
653
+ if (!currentComponent.datasourceItem) {
654
+ currentComponent.datasourceItem = renderedItem;
655
+ }
656
+ if (renderedItem.renderedFieldIds.indexOf(fieldId) === -1) {
657
+ renderedItem.renderedFieldIds.push(fieldId);
658
+ }
659
+ }
660
+ }
661
+ else if (currentComponent && element.getAttribute("chrometype") === "field") {
305
662
  const id = element.getAttribute("id");
306
663
  if (id) {
307
664
  //fld_C866BEE59CE340F18529EF72E1EC34A7_427EC0BD3BF245B9880FBDB0054E7925_en_1_f3327de03c4c4fb39dae57c139e6202d_913_edit
@@ -331,7 +688,6 @@ export function buildPageModelSkeleton(iframeDocument, editContextRef, pageViewC
331
688
  renderedItem.renderedFieldIds.indexOf(fieldId) === -1) {
332
689
  renderedItem.renderedFieldIds.push(fieldId);
333
690
  }
334
- currentComponent.editorFields;
335
691
  }
336
692
  }
337
693
  }
@@ -372,11 +728,11 @@ export function buildPageModelSkeleton(iframeDocument, editContextRef, pageViewC
372
728
  }
373
729
  }
374
730
  }
375
- if (element.tagName === "SCRIPT") {
376
- const placeholderStartId = element.getAttribute("data-placeholder-start");
377
- const placeholderEndId = element.getAttribute("data-placeholder-end");
378
- const componentStartId = element.getAttribute("data-component-start");
379
- const componentEndId = element.getAttribute("data-component-end");
731
+ if (isChromeMarkerElement(element)) {
732
+ const placeholderStartId = getPlaceholderStartId(element);
733
+ const placeholderEndId = getPlaceholderEndId(element, currentPlaceholder?.key);
734
+ const componentStartId = getComponentStartId(element);
735
+ const componentEndId = getComponentEndId(element, currentComponent?.id);
380
736
  const dictionaryKeyStart = element.getAttribute("data-dictionary-key-start");
381
737
  const editorGroup = element.getAttribute("data-editor-group");
382
738
  if (currentComponent && editorGroup) {
@@ -1 +1 @@
1
- {"version":3,"file":"pageModelSkeletonBuilder.js","sourceRoot":"","sources":["../../../src/editor/page-viewer/pageModelSkeletonBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AASpD,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;AAEvD,MAAM,UAAU,sBAAsB,CACpC,cAAoC,EACpC,cAAmE,EACnE,kBAAuE;IAEvE,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,CAAC;IAE1E,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO;QAC3E,OAAO;IAET,4CAA4C;IAC5C,MAAM,gBAAgB,GAAG,CAAC,EAAU,EAAU,EAAE;QAC9C,2EAA2E;QAC3E,IACE,iEAAiE,CAAC,IAAI,CAAC,EAAE,CAAC,EAC1E,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,8CAA8C;QAC9C,IACE,qEAAqE,CAAC,IAAI,CACxE,EAAE,CACH,EACD,CAAC;YACD,OAAO,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACjC,CAAC;QAED,2CAA2C;QAC3C,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC/B,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;QAChI,CAAC;QAED,uDAAuD;QACvD,IAAI,EAAE,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YACnB,MAAM,QAAQ,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YACpC,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;QAC9J,CAAC;QAED,qCAAqC;QACrC,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,IAAI,CAAC,kBAAkB;QAAE,OAAO;IAEhC,MAAM,QAAQ,GAAyB;QACrC,GAAG,kBAAkB;QACrB,gBAAgB,EAAE,EAAE;KACrB,CAAC;IAEF,MAAM,UAAU,GAAG,cAAc,CAAC,gBAAgB,CAChD,cAAc,CAAC,eAAe,EAAE,+BAA+B;IAC/D,UAAU,CAAC,YAAY,EAAE,0BAA0B;IACnD,IAAI,CACL,CAAC;IAEF,MAAM,IAAI,GAAsB;QAC9B,YAAY,EAAE,EAAE;QAChB,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,CAAC,QAAQ,CAAC;QACjB,cAAc,EAAE,QAAQ;QACxB,sBAAsB,EAAE,EAAE;QAC1B,YAAY,EAAE,EAAE;KACjB,CAAC;IAEF,IAAI,gBAAgB,GAAkC,IAAI,CAAC;IAC3D,IAAI,kBAAmD,CAAC;IAExD,MAAM,4BAA4B,GAAG,CACnC,gBAAwB,EACxB,OAAgB,EACP,EAAE;QACX,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACjC,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,MAAM,eAAe,GAAG,OAAO,CAAC,sBAAsB,CAAC;QACvD,MAAM,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC;QAC/C,MAAM,uBAAuB,GAC3B,WAAW,EAAE,OAAO,KAAK,QAAQ;YACjC,WAAW,CAAC,YAAY,CAAC,oBAAoB,CAAC,KAAK,gBAAgB,CAAC;QAEtE,4EAA4E;QAC5E,8DAA8D;QAC9D,IAAI,uBAAuB,IAAI,eAAe,EAAE,CAAC;YAC/C,OAAO,eAAe,CAAC;QACzB,CAAC;QAED,OAAO,WAAW,IAAI,eAAe,IAAI,OAAO,CAAC;IACnD,CAAC,CAAC;IAEF,MAAM,oCAAoC,GAAG,CAC3C,iBAAkD,EAClD,iBAAsC,EACtC,gBAAyB,EACzB,kBAA0B,EAC1B,EAAE;QACF,IAAI,CAAC,iBAAiB,IAAI,iBAAiB,KAAK,iBAAiB,EAAE,CAAC;YAClE,OAAO;QACT,CAAC;QAED,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,UAAU,CAAC,MAAM,CAC7D,CAAC,SAAS,EAAE,EAAE;YACZ,IAAI,SAAS,CAAC,EAAE,KAAK,kBAAkB,EAAE,CAAC;gBACxC,OAAO,KAAK,CAAC;YACf,CAAC;YAED,OAAO,CACL,CAAC,CAAC,SAAS,CAAC,eAAe;gBAC3B,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,eAAe,CAAC,CACrD,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrC,OAAO;QACT,CAAC;QAED,iBAAiB,CAAC,UAAU,GAAG,iBAAiB,CAAC,UAAU,CAAC,MAAM,CAChE,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,mBAAmB,CAAC,QAAQ,CAAC,SAAS,CAAC,CACxD,CAAC;QAEF,KAAK,MAAM,SAAS,IAAI,mBAAmB,EAAE,CAAC;YAC5C,SAAS,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;YAChD,iBAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,+BAA+B,GAAG,CAAC,cAAsB,EAAU,EAAE;QACzE,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO,cAAc,CAAC;QACxB,CAAC;QAED,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxD,OAAO,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC;IACxC,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,CACxB,eAAkC,EAClC,cAAsB,EACtB,OAAgB,EACK,EAAE;QACvB,IAAI,WAAW,GAAG,eAAe,CAAC,YAAY,CAAC,IAAI,CACjD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,cAAc,CAChC,CAAC;QAEF,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,WAAW,GAAG;gBACZ,GAAG,EAAE,cAAc;gBACnB,IAAI,EACF,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC;oBACpD,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;oBACzD,CAAC,CAAC,cAAc;gBACpB,WAAW,EAAE,OAAO,CAAC,YAAY,CAAC,kBAAkB,CAAC,IAAI,EAAE;gBAC3D,UAAU,EAAE,EAAE;gBACd,eAAe;gBACf,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,OAAO;aAC5D,CAAC;YAEF,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjD,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,EAAE,CAC3D,IAAI,KAAK,KAAK;QACd,+BAA+B,CAAC,IAAI,CAAC;YACnC,+BAA+B,CAAC,KAAK,CAAC,CAAC;IAE3C,MAAM,oBAAoB,GAAG,CAC3B,SAA4B,EAC5B,cAAsB,EACW,EAAE;QACnC,KAAK,MAAM,WAAW,IAAI,SAAS,CAAC,YAAY,EAAE,CAAC;YACjD,IAAI,oBAAoB,CAAC,WAAW,CAAC,GAAG,EAAE,cAAc,CAAC,EAAE,CAAC;gBAC1D,OAAO,WAAW,CAAC;YACrB,CAAC;YAED,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;gBAC3C,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;gBAC3D,IAAI,MAAM,EAAE,CAAC;oBACX,OAAO,MAAM,CAAC;gBAChB,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,CAAC,gBAAwB,EAAE,EAAE;QACpD,MAAM,kBAAkB,GACtB,kBAAkB;YAClB,oBAAoB,CAAC,kBAAkB,CAAC,GAAG,EAAE,gBAAgB,CAAC;YAC5D,CAAC,CAAC,kBAAkB;YACpB,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QAEnD,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,gBAAgB,GAAG,kBAAkB,CAAC,eAAe,CAAC;QACtD,IAAI,kBAAkB,KAAK,kBAAkB,EAAE,CAAC;YAC9C,kBAAkB,GAAG,SAAS,CAAC;QACjC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,MAAM,2BAA2B,GAAG,CAClC,cAAsB,EACtB,OAAgB,EAChB,SAA4B,EACnB,EAAE;QACX,MAAM,eAAe,GAAG,OAAO,CAAC,sBAAsB,CAAC;QAEvD,IACE,eAAe,EAAE,OAAO,KAAK,QAAQ;YACrC,eAAe,CAAC,YAAY,CAAC,sBAAsB,CAAC,KAAK,cAAc;YACvE,SAAS,CAAC,eAAe,EACzB,CAAC;YACD,OAAO,SAAS,CAAC,eAAe,CAAC;QACnC,CAAC;QAED,OAAO,eAAe,IAAI,OAAO,CAAC;IACpC,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CACrB,gBAAwB,EACxB,OAAgB,EAChB,gBAAyB,EACzB,EAAE;QACF,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,OAAO,CAAC,KAAK,CACX,2CAA2C,EAC3C,gBAAgB,CACjB,CAAC;gBACF,OAAO;YACT,CAAC;YAED,MAAM,sBAAsB,GAAG,OAAO,CAAC,YAAY,CACjD,qBAAqB,CACtB,CAAC;YACF,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,kBAAkB,GAAG,iBAAiB,CACpC,gBAAgB,EAChB,+BAA+B,CAAC,sBAAsB,CAAC,EACvD,OAAO,CACR,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,kBAAkB,GAAG,gBAAgB,CAAC,YAAY,CAAC,IAAI,CACrD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,WAAW,GAAG,gBAAgB,EAAE,cAAc,EAAE,EAAE,CACpE,CAAC;gBAEF,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB,kBAAkB,GAAG;wBACnB,GAAG,EAAE,WAAW,GAAG,gBAAgB,EAAE,cAAc,EAAE,EAAE;wBACvD,IAAI,EACF,wBAAwB,GAAG,gBAAgB,EAAE,cAAc,EAAE,EAAE;wBACjE,WAAW,EAAE,EAAE;wBACf,UAAU,EAAE,EAAE;wBACd,eAAe,EAAE,gBAAgB;wBACjC,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,OAAO;qBAC5D,CAAC;oBAEF,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACtB,OAAO,CAAC,KAAK,CACX,yDAAyD,CAC1D,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;oBACzD,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,kBAAkB,EAAE,CAAC;YACvB,MAAM,QAAQ,GACZ,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC;YAC7D,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC;gBAClD,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,CAAE,CAAC;gBACjD,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;YAErB,MAAM,MAAM,GAAG,gBAAgB,IAAI,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;YAEvE,MAAM,cAAc,GAAG,MAAM;gBAC3B,CAAC,CAAC;oBACE,EAAE,EAAE,MAAM;oBACV,QAAQ;oBACR,OAAO;oBACP,gBAAgB,EAAE,EAAE;iBACrB;gBACH,CAAC,CAAC,SAAS,CAAC;YAEd,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;YACvD,MAAM,oBAAoB,GAAG,OAAO,CAAC,YAAY,CAC/C,6BAA6B,CAC9B,CAAC;YACF,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;YAC3D,MAAM,kBAAkB,GACtB,OAAO,CAAC,YAAY,CAAC,wBAAwB,CAAC,KAAK,MAAM,CAAC;YAC5D,MAAM,kBAAkB,GACtB,OAAO,CAAC,YAAY,CAAC,0BAA0B,CAAC,KAAK,MAAM,CAAC;YAC9D,MAAM,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YAE9D,IAAI,sBAAsB,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC9C,OAAO,CAAC,YAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;gBACpD,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,2EAA2E;YAC3E,MAAM,eAAe,GAAG,kBAAkB,CAAC,eAAe,CAAC;YAC3D,MAAM,iBAAiB,GAAG,kBAAkB,CAAC;YAC7C,MAAM,qBAAqB,GAAG,4BAA4B,CACxD,gBAAgB,EAChB,OAAO,CACR,CAAC;YAEF,gBAAgB,GAAG,kBAAkB,CAAC,UAAU,CAAC,IAAI,CACnD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,gBAAgB,CACjC,CAAC;YAEF,0FAA0F;YAC1F,IACE,cAAc;gBACd,cAAc,CAAC,EAAE,KAAK,eAAe,EAAE,cAAc,EAAE,EAAE,EACzD,CAAC;gBACD,OAAO,CAAC,YAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;gBACpD,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,gBAAgB,GAAG;oBACjB,EAAE,EAAE,gBAAgB;oBACpB,IAAI,EAAE,EAAE;oBACR,IAAI,EAAE,aAAa;oBACnB,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,EAAE;oBACjD,oBAAoB,EAAE,oBAAoB,IAAI,SAAS;oBACvD,UAAU,EAAE,UAAU,IAAI,SAAS;oBACnC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE;oBAC7C,YAAY,EAAE,EAAE;oBAChB,iBAAiB,EAAE,kBAAkB;oBACrC,sBAAsB,EAAE,EAAE;oBAC1B,cAAc;oBACd,QAAQ,EAAE,QAAQ,IAAI,SAAS;oBAC/B,QAAQ,EAAE,kBAAkB;oBAC5B,kBAAkB;oBAClB,cAAc,EACZ,OAAO,CAAC,YAAY,CAAC,uBAAuB,CAAC,KAAK,MAAM;oBAC1D,YAAY,EAAE,EAAE;oBAChB,eAAe,EAAE,qBAAqB;oBACtC,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,OAAO;iBAC5D,CAAC;gBAEF,IAAI,gBAAgB,EAAE,CAAC;oBACrB,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBACvD,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,gBAAgB,CAAC,QAAQ,GAAG,kBAAkB,CAAC;gBAC/C,gBAAgB,CAAC,kBAAkB;oBACjC,kBAAkB,IAAI,gBAAgB,CAAC,kBAAkB,CAAC;gBAC5D,gBAAgB,CAAC,QAAQ,GAAG,QAAQ,IAAI,gBAAgB,CAAC,QAAQ,CAAC;gBAClE,gBAAgB,CAAC,oBAAoB;oBACnC,oBAAoB,IAAI,gBAAgB,CAAC,oBAAoB,CAAC;gBAChE,gBAAgB,CAAC,UAAU,GAAG,UAAU,IAAI,gBAAgB,CAAC,UAAU,CAAC;gBACxE,gBAAgB,CAAC,cAAc;oBAC7B,OAAO,CAAC,YAAY,CAAC,uBAAuB,CAAC,KAAK,MAAM;wBACxD,gBAAgB,CAAC,cAAc,CAAC;YACpC,CAAC;YAED,iEAAiE;YACjE,MAAM,sBAAsB,GAC1B,OAAO,CAAC,YAAY,CAAC,+BAA+B,CAAC,KAAK,MAAM,CAAC;YAEnE,IAAI,sBAAsB,IAAI,gBAAgB,EAAE,CAAC;gBAC/C,6DAA6D;gBAC7D,MAAM,mBAAmB,GAAwB;oBAC/C,GAAG,EAAE,WAAW,GAAG,gBAAgB,CAAC,cAAc,EAAE,EAAE;oBACtD,IAAI,EAAE,wBAAwB,GAAG,gBAAgB,CAAC,cAAc,EAAE,EAAE;oBACpE,WAAW,EAAE,EAAE;oBACf,UAAU,EAAE,EAAE;oBACd,eAAe,EAAE,gBAAgB;oBACjC,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,OAAO;iBAC5D,CAAC;gBAEF,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBACxD,oCAAoC,CAClC,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,CAAC,EAAE,CACpB,CAAC;gBACF,kBAAkB,GAAG,mBAAmB,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACN,kBAAkB,GAAG,SAAS,CAAC;YACjC,CAAC;YACD,OAAO,gBAAgB,CAAC;QAC1B,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,cAAsB,EAAE,EAAE;QAC9C,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,EAAE,KAAK,cAAc,EAAE,CAAC;YAChE,OAAO,CAAC,KAAK,CACX,oCAAoC,EACpC,gBAAgB,EAChB,cAAc,CACf,CAAC;YAEF,gCAAgC;YAChC,IAAI,kBAAkB,EAAE,eAAe,CAAC,EAAE,KAAK,cAAc,EAAE,CAAC;gBAC9D,gBAAgB,GAAG,kBAAkB,CAAC,eAAe,CAAC;gBACtD,kBAAkB,GAAG,SAAS,CAAC;YACjC,CAAC;QACH,CAAC;QACD,kBAAkB,GAAG,gBAAgB,EAAE,iBAAiB,CAAC;QAEzD,IAAI,kBAAkB,EAAE,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YACpD,gBAAgB,GAAG,kBAAkB,CAAC,eAAe,CAAC;QACxD,CAAC;;YAAM,gBAAgB,GAAG,SAAS,CAAC;IACtC,CAAC,CAAC;IAEF,MAAM,cAAc,GAClB,EAAE,CAAC;IAEL,OAAO,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,UAAU,CAAC,WAAW,CAAC;QAEpC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY;YAAE,SAAS;QAElD,MAAM,OAAO,GAAG,IAAe,CAAC;QAEhC,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,SAAS,GAAG,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC5D,mGAAmG;YACnG,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtD,cAAc,CAAC,GAAG,EAAE,CAAC;gBACrB,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QAED,IAAI,gBAAgB,IAAI,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,OAAO,EAAE,CAAC;YACvE,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAEtC,IAAI,EAAE,EAAE,CAAC;gBACP,sHAAsH;gBACtH,MAAM,YAAY,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACnC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5B,IAAI,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC;oBACnD,IAAI,CAAC,OAAO;wBAAE,SAAS;oBACvB,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;oBAEpC,IAAI,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC;oBAClD,IAAI,CAAC,MAAM;wBAAE,SAAS;oBACtB,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;oBAElC,IAAI,YAAY,GACd,MAAM,IAAI,gBAAgB,CAAC,cAAc,EAAE,EAAE;wBAC3C,CAAC,CAAC,gBAAgB,CAAC,cAAc;wBACjC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;oBAE1D,IAAI,CAAC,YAAY,EAAE,CAAC;wBAClB,YAAY,GAAG;4BACb,EAAE,EAAE,MAAM;4BACV,QAAQ,EAAE,gBAAgB,CAAC,cAAc,EAAE,QAAQ,IAAI,EAAE;4BACzD,OAAO,EAAE,gBAAgB,CAAC,cAAc,EAAE,OAAO,IAAI,CAAC;4BACtD,gBAAgB,EAAE,EAAE;yBACrB,CAAC;wBACF,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAC5C,CAAC;oBAED,IACE,YAAY;wBACZ,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EACrD,CAAC;wBACD,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC9C,CAAC;oBAED,gBAAgB,CAAC,YAAY,CAAC;gBAChC,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,gBAAgB,IAAI,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,CAAC;YAC7D,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,cAAc,CAAE,CAAC;YACtD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAEnD,MAAM,QAAQ,GACZ,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC;gBACrC,gBAAgB,CAAC,cAAc,EAAE,QAAQ;gBACzC,QAAQ,CAAC,QAAQ,CAAC;YACpB,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC;gBAClD,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,CAAE,CAAC;gBACjD,CAAC,CAAC,gBAAgB,CAAC,cAAc,EAAE,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC;YACjE,MAAM,MAAM,GACV,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC;gBACnC,gBAAgB,CAAC,cAAc,EAAE,EAAE,CAAC;YAEtC,IAAI,CAAC,MAAM;gBAAE,SAAS;YAEtB,IAAI,YAAY,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAC5C,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,EAAE,KAAK,MAAM,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CACtE,CAAC;YAEF,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,YAAY,GAAG;oBACb,EAAE,EAAE,MAAM;oBACV,QAAQ;oBACR,OAAO;oBACP,gBAAgB,EAAE,EAAE;iBACrB,CAAC;gBACF,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC5C,CAAC;YAED,IAAI,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBACnE,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,OAAO,IAAI,KAAK,IAAI,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;YAChE,MAAM,WAAW,GAAG,wBAAwB,CAC1C,OAAO,CAAC,YAAY,CAAC,SAAS,CAAE,CACjC,CAAC;YACF,IAAI,WAAW,IAAI,WAAW,IAAI,gBAAgB,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC;gBACvE,MAAM,SAAS,GAAG,cAAc,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;gBAEpE,IAAI,SAAS,EAAE,CAAC;oBACd,SAAS,CAAC,cAAc,GAAG,SAAS,CAAC,eAAe,CAAC;oBACrD,cAAc,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC9C,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACjC,MAAM,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC;YAC1E,MAAM,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;YACtE,MAAM,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;YACtE,MAAM,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;YAClE,MAAM,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAC7C,2BAA2B,CAC5B,CAAC;YACF,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;YAE9D,IAAI,gBAAgB,IAAI,WAAW,EAAE,CAAC;gBACpC,IAAI,KAAK,GAAG,gBAAgB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;gBACvD,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,KAAK,GAAG;wBACN,SAAS,EAAE,EAAE;wBACb,YAAY,EAAE,EAAE;qBACjB,CAAC;oBACF,gBAAgB,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;gBACrD,CAAC;gBACD,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,iBAAiB,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;gBACtE,MAAM,YAAY,GAAG,OAAO;qBACzB,YAAY,CAAC,oBAAoB,CAAC;oBACnC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;gBAEf,KAAK,CAAC,SAAS,GAAG,CAAC,GAAG,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC7D,KAAK,CAAC,YAAY,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC;YACxE,CAAC;YAED,IAAI,kBAAkB,EAAE,CAAC;gBACvB,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACtB,OAAO,CAAC,KAAK,CACX,mCAAmC,EACnC,kBAAkB,CACnB,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,gBAAgB,CAAC,sBAAsB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBACnE,CAAC;YACH,CAAC;YACD,IAAI,kBAAkB,EAAE,CAAC;gBACvB,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACtB,IAAI,CAAC,kBAAkB,EAAE,CAAC;wBACxB,kBAAkB,GAAG,iBAAiB,CACpC,IAAI,EACJ,kBAAkB,EAClB,OAAO,CACR,CAAC;oBACJ,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,kBAAkB,GAAG,iBAAiB,CACpC,gBAAgB,EAChB,kBAAkB,EAClB,OAAO,CACR,CAAC;oBACF,gBAAgB,GAAG,SAAS,CAAC;gBAC/B,CAAC;YACH,CAAC;YAED,IAAI,gBAAgB,EAAE,CAAC;gBACrB,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACxC,OAAO,CAAC,KAAK,CACX,wCAAwC,EACxC,gBAAgB,CACjB,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,IAAI,gBAAgB,EAAE,CAAC;gBACrB,cAAc,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;YAC5C,CAAC;YAED,IAAI,cAAc,EAAE,CAAC;gBACnB,IAAI,gBAAgB,EAAE,CAAC;oBACrB,gBAAgB,CAAC,cAAc,GAAG,2BAA2B,CAC3D,cAAc,EACd,OAAO,EACP,gBAAgB,CACjB,CAAC;oBACF,YAAY,CAAC,cAAc,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAiB;QACzB,aAAa,EAAE,IAAI;QACnB,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,cAAc,CAAC,OAAO,EAAE,QAAQ,IAAI,EAAE;KACrD,CAAC;IAEF,kBAAkB,CAAC,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"pageModelSkeletonBuilder.js","sourceRoot":"","sources":["../../../src/editor/page-viewer/pageModelSkeletonBuilder.ts"],"names":[],"mappings":"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"}
@@ -49,6 +49,9 @@ export type ItemDescriptor = {
49
49
  path?: string;
50
50
  database?: string;
51
51
  };
52
+ export declare function toItemDescriptor(item: ItemDescriptor | {
53
+ descriptor: ItemDescriptor;
54
+ }): ItemDescriptor;
52
55
  export type Field = {
53
56
  id: string;
54
57
  value: unknown;
@@ -1,2 +1,13 @@
1
- export {};
1
+ export function toItemDescriptor(item) {
2
+ const source = "descriptor" in item ? item.descriptor : item;
3
+ const descriptor = {
4
+ id: source.id,
5
+ language: source.language,
6
+ version: source.version,
7
+ };
8
+ if (source.database && source.database !== "master") {
9
+ descriptor.database = source.database;
10
+ }
11
+ return descriptor;
12
+ }
2
13
  //# sourceMappingURL=pageModel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pageModel.js","sourceRoot":"","sources":["../../src/editor/pageModel.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"pageModel.js","sourceRoot":"","sources":["../../src/editor/pageModel.ts"],"names":[],"mappings":"AAyDA,MAAM,UAAU,gBAAgB,CAC9B,IAAqD;IAErD,MAAM,MAAM,GAAG,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7D,MAAM,UAAU,GAAmB;QACjC,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,OAAO,EAAE,MAAM,CAAC,OAAO;KACxB,CAAC;IAEF,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACpD,UAAU,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACxC,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import React from "react";
2
+ import type { EditContextType } from "../client/editContext";
2
3
  export interface CommentEditorProps {
4
+ editContext?: EditContextType;
3
5
  initialText?: string;
4
6
  onSave: (text: string, tags: string[]) => void | Promise<void>;
5
7
  onCancel: () => void;
@@ -19,4 +21,4 @@ export interface CommentEditorProps {
19
21
  clearOnSave?: boolean;
20
22
  onKeyDown?: (e: React.KeyboardEvent) => void;
21
23
  }
22
- export declare function CommentEditor({ initialText, onSave, onCancel, isSaving, availableTags, selectedTags: initialSelectedTags, placeholder, autoFocus, submitLabel, cancelLabel, showTagSelector, compact, showCancelButton, clearOnSave, onKeyDown, }: CommentEditorProps): import("react/jsx-runtime").JSX.Element;
24
+ export declare function CommentEditor({ editContext: externalEditContext, initialText, onSave, onCancel, isSaving, availableTags, selectedTags: initialSelectedTags, placeholder, autoFocus, submitLabel, cancelLabel, showTagSelector, compact, showCancelButton, clearOnSave, onKeyDown, }: CommentEditorProps): import("react/jsx-runtime").JSX.Element;