@parhelia/core 0.1.12181 → 0.1.12220

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 (67) hide show
  1. package/dist/config/config.js +2 -1
  2. package/dist/config/config.js.map +1 -1
  3. package/dist/editor/ai/AgentTerminal.js +6 -8
  4. package/dist/editor/ai/AgentTerminal.js.map +1 -1
  5. package/dist/editor/ai/Agents.js +7 -6
  6. package/dist/editor/ai/Agents.js.map +1 -1
  7. package/dist/editor/ai/AiResponseMessage.js +85 -49
  8. package/dist/editor/ai/AiResponseMessage.js.map +1 -1
  9. package/dist/editor/ai/InlineAiDialog.js +6 -7
  10. package/dist/editor/ai/InlineAiDialog.js.map +1 -1
  11. package/dist/editor/ai/InlineAiTrigger.js +1 -1
  12. package/dist/editor/client/EditorShell.js +12 -36
  13. package/dist/editor/client/EditorShell.js.map +1 -1
  14. package/dist/editor/client/ui/EditorChrome.js +10 -11
  15. package/dist/editor/client/ui/EditorChrome.js.map +1 -1
  16. package/dist/editor/commands/itemCommands.d.ts +1 -0
  17. package/dist/editor/commands/itemCommands.js +25 -3
  18. package/dist/editor/commands/itemCommands.js.map +1 -1
  19. package/dist/editor/context-menu/InsertMenu.js +18 -20
  20. package/dist/editor/context-menu/InsertMenu.js.map +1 -1
  21. package/dist/editor/field-types/TreeListEditor.js +3 -2
  22. package/dist/editor/field-types/TreeListEditor.js.map +1 -1
  23. package/dist/editor/media-selector/TreeSelector.js +3 -4
  24. package/dist/editor/media-selector/TreeSelector.js.map +1 -1
  25. package/dist/editor/page-viewer/MiniMap.d.ts +1 -3
  26. package/dist/editor/page-viewer/MiniMap.js +57 -13
  27. package/dist/editor/page-viewer/MiniMap.js.map +1 -1
  28. package/dist/editor/page-viewer/PageViewer.js +3 -9
  29. package/dist/editor/page-viewer/PageViewer.js.map +1 -1
  30. package/dist/editor/page-viewer/PageViewerFrame.js +1 -1
  31. package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
  32. package/dist/editor/pageModel.d.ts +8 -0
  33. package/dist/editor/reviews/Comments.js +89 -72
  34. package/dist/editor/reviews/Comments.js.map +1 -1
  35. package/dist/editor/services/contentService.d.ts +3 -1
  36. package/dist/editor/services/contentService.js +8 -2
  37. package/dist/editor/services/contentService.js.map +1 -1
  38. package/dist/editor/services/localStorageService.d.ts +9 -0
  39. package/dist/editor/services/localStorageService.js +100 -0
  40. package/dist/editor/services/localStorageService.js.map +1 -0
  41. package/dist/editor/sidebar/EditHistory.js +4 -8
  42. package/dist/editor/sidebar/EditHistory.js.map +1 -1
  43. package/dist/editor/sidebar/Favorites.js +4 -8
  44. package/dist/editor/sidebar/Favorites.js.map +1 -1
  45. package/dist/editor/ui/PublishRestrictionsDialog.d.ts +7 -0
  46. package/dist/editor/ui/PublishRestrictionsDialog.js +423 -0
  47. package/dist/editor/ui/PublishRestrictionsDialog.js.map +1 -0
  48. package/dist/editor/ui/Splitter.js +6 -12
  49. package/dist/editor/ui/Splitter.js.map +1 -1
  50. package/dist/editor/ui/TemplateSelectorDialog.js +4 -4
  51. package/dist/editor/ui/TemplateSelectorDialog.js.map +1 -1
  52. package/dist/editor/utils.js +3 -5
  53. package/dist/editor/utils.js.map +1 -1
  54. package/dist/index.d.ts +2 -1
  55. package/dist/index.js +1 -0
  56. package/dist/index.js.map +1 -1
  57. package/dist/revision.d.ts +2 -2
  58. package/dist/revision.js +2 -2
  59. package/dist/splash-screen/OpenPage.js +2 -6
  60. package/dist/splash-screen/OpenPage.js.map +1 -1
  61. package/dist/task-board/components/CreateProjectDialog.js +1 -1
  62. package/dist/task-board/components/CreateProjectDialog.js.map +1 -1
  63. package/dist/task-board/taskExecutionStatus.js +46 -5
  64. package/dist/task-board/taskExecutionStatus.js.map +1 -1
  65. package/dist/task-board/types.d.ts +1 -1
  66. package/dist/types.d.ts +8 -0
  67. package/package.json +1 -1
@@ -0,0 +1,423 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useMemo, useRef, useState } from "react";
3
+ import { useEditContext } from "../client/editContext";
4
+ import { Dialog, DialogContent, DialogHeader, DialogTitle, } from "../../components/ui/dialog";
5
+ import { Button } from "../../components/ui/button";
6
+ import { Input } from "../../components/ui/input";
7
+ import { Switch } from "../../components/ui/switch";
8
+ import { Badge } from "../../components/ui/badge";
9
+ import DialogButtons from "./DialogButtons";
10
+ import { getLanguagesAndVersions } from "../services/contentService";
11
+ import { cn } from "../../lib/utils";
12
+ function parseSitecoreDate(rawValue) {
13
+ const value = rawValue?.trim();
14
+ if (!value)
15
+ return undefined;
16
+ if (value.match(/^\d{8}T\d{6}Z$/)) {
17
+ const standardISO = value.replace(/(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2})Z/, "$1-$2-$3T$4:$5:$6Z");
18
+ const date = new Date(standardISO);
19
+ return isNaN(date.getTime()) ? undefined : date;
20
+ }
21
+ const fallback = new Date(value);
22
+ return isNaN(fallback.getTime()) ? undefined : fallback;
23
+ }
24
+ function toDateTimeLocalValue(date) {
25
+ if (!date)
26
+ return "";
27
+ const local = new Date(date.getTime() - date.getTimezoneOffset() * 60000);
28
+ return local.toISOString().slice(0, 16);
29
+ }
30
+ function fromDateTimeLocalValue(value) {
31
+ if (!value)
32
+ return undefined;
33
+ const date = new Date(value);
34
+ return isNaN(date.getTime()) ? undefined : date;
35
+ }
36
+ function formatDateToCompactISO(date) {
37
+ if (!date)
38
+ return "";
39
+ const year = date.getUTCFullYear().toString();
40
+ const month = (date.getUTCMonth() + 1).toString().padStart(2, "0");
41
+ const day = date.getUTCDate().toString().padStart(2, "0");
42
+ const hours = date.getUTCHours().toString().padStart(2, "0");
43
+ const minutes = date.getUTCMinutes().toString().padStart(2, "0");
44
+ const seconds = date.getUTCSeconds().toString().padStart(2, "0");
45
+ return `${year}${month}${day}T${hours}${minutes}${seconds}Z`;
46
+ }
47
+ function toTimestamp(value) {
48
+ const date = fromDateTimeLocalValue(value);
49
+ return date ? date.getTime() : undefined;
50
+ }
51
+ function updateLabel(value) {
52
+ const d = value ? new Date(value) : undefined;
53
+ return d && !isNaN(d.getTime()) ? d.toLocaleString() : "-";
54
+ }
55
+ function getNowDateTimeValue() {
56
+ return toDateTimeLocalValue(new Date());
57
+ }
58
+ export function PublishRestrictionsDialog({ item, onClose, }) {
59
+ const editContext = useEditContext();
60
+ const [isLoading, setIsLoading] = useState(true);
61
+ const [isSaving, setIsSaving] = useState(false);
62
+ const [activeTab, setActiveTab] = useState("versions");
63
+ const [initialItemState, setInitialItemState] = useState({
64
+ itemPublishable: true,
65
+ itemPublishFrom: "",
66
+ itemUnpublishAt: "",
67
+ });
68
+ const [itemState, setItemState] = useState({
69
+ itemPublishable: true,
70
+ itemPublishFrom: "",
71
+ itemUnpublishAt: "",
72
+ });
73
+ const [initialVersionRows, setInitialVersionRows] = useState([]);
74
+ const [versionRows, setVersionRows] = useState([]);
75
+ const [zoomDays, setZoomDays] = useState(180);
76
+ const [centerTs, setCenterTs] = useState(() => Date.now());
77
+ const chartContainerRef = useRef(null);
78
+ const [chartWidth, setChartWidth] = useState(900);
79
+ useEffect(() => {
80
+ let cancelled = false;
81
+ async function loadData() {
82
+ setIsLoading(true);
83
+ const result = await getLanguagesAndVersions(item.descriptor, {
84
+ includePublishingRestrictions: true,
85
+ });
86
+ if (cancelled)
87
+ return;
88
+ if (result.type !== "success" || !result.data) {
89
+ editContext?.showToast?.("Failed to load publishing restrictions.");
90
+ setIsLoading(false);
91
+ return;
92
+ }
93
+ const itemRestrictions = result.data.itemPublishingRestrictions;
94
+ const nextItemState = {
95
+ itemPublishable: !(itemRestrictions?.neverPublish ?? false),
96
+ itemPublishFrom: toDateTimeLocalValue(parseSitecoreDate(itemRestrictions?.publish)),
97
+ itemUnpublishAt: toDateTimeLocalValue(parseSitecoreDate(itemRestrictions?.unpublish)),
98
+ neverPublishFieldId: itemRestrictions?.neverPublishFieldId,
99
+ publishFieldId: itemRestrictions?.publishFieldId,
100
+ unpublishFieldId: itemRestrictions?.unpublishFieldId,
101
+ };
102
+ const rows = (result.data.versions || [])
103
+ .map((v) => ({
104
+ version: v.version,
105
+ updatedLabel: updateLabel(v.updated),
106
+ updatedBy: v.updatedBy || "",
107
+ versionPublishable: !(v.publishingRestrictions?.hideVersion ?? false),
108
+ versionValidFrom: toDateTimeLocalValue(parseSitecoreDate(v.publishingRestrictions?.validFrom)),
109
+ versionValidTo: toDateTimeLocalValue(parseSitecoreDate(v.publishingRestrictions?.validTo)),
110
+ hideVersionFieldId: v.publishingRestrictions?.hideVersionFieldId,
111
+ validFromFieldId: v.publishingRestrictions?.validFromFieldId,
112
+ validToFieldId: v.publishingRestrictions?.validToFieldId,
113
+ }))
114
+ .sort((a, b) => b.version - a.version);
115
+ setInitialItemState(nextItemState);
116
+ setItemState(nextItemState);
117
+ setInitialVersionRows(rows);
118
+ setVersionRows(rows);
119
+ setIsLoading(false);
120
+ }
121
+ loadData();
122
+ return () => {
123
+ cancelled = true;
124
+ };
125
+ }, [editContext, item.descriptor]);
126
+ useEffect(() => {
127
+ const resize = () => {
128
+ if (!chartContainerRef.current)
129
+ return;
130
+ setChartWidth(Math.max(700, chartContainerRef.current.clientWidth - 24));
131
+ };
132
+ resize();
133
+ window.addEventListener("resize", resize);
134
+ return () => window.removeEventListener("resize", resize);
135
+ }, []);
136
+ const itemWindowInvalid = useMemo(() => {
137
+ const from = fromDateTimeLocalValue(itemState.itemPublishFrom);
138
+ const to = fromDateTimeLocalValue(itemState.itemUnpublishAt);
139
+ return !!from && !!to && from.getTime() > to.getTime();
140
+ }, [itemState.itemPublishFrom, itemState.itemUnpublishAt]);
141
+ const versionWindowInvalidCount = useMemo(() => {
142
+ return versionRows.filter((row) => {
143
+ const from = fromDateTimeLocalValue(row.versionValidFrom);
144
+ const to = fromDateTimeLocalValue(row.versionValidTo);
145
+ return !!from && !!to && from.getTime() > to.getTime();
146
+ }).length;
147
+ }, [versionRows]);
148
+ const hasItemChanges = useMemo(() => JSON.stringify(itemState) !== JSON.stringify(initialItemState), [initialItemState, itemState]);
149
+ const hasVersionChanges = useMemo(() => JSON.stringify(versionRows) !== JSON.stringify(initialVersionRows), [initialVersionRows, versionRows]);
150
+ const hasChanges = hasItemChanges || hasVersionChanges;
151
+ const evaluateActiveVersionAt = useCallback((timestamp) => {
152
+ if (!itemState.itemPublishable)
153
+ return 0;
154
+ const itemFromTs = toTimestamp(itemState.itemPublishFrom);
155
+ const itemToTs = toTimestamp(itemState.itemUnpublishAt);
156
+ if (itemFromTs && timestamp < itemFromTs)
157
+ return 0;
158
+ if (itemToTs && timestamp > itemToTs)
159
+ return 0;
160
+ const activeVersions = versionRows
161
+ .filter((row) => {
162
+ if (!row.versionPublishable)
163
+ return false;
164
+ const fromTs = toTimestamp(row.versionValidFrom);
165
+ const toTs = toTimestamp(row.versionValidTo);
166
+ if (fromTs && timestamp < fromTs)
167
+ return false;
168
+ if (toTs && timestamp > toTs)
169
+ return false;
170
+ return true;
171
+ })
172
+ .map((x) => x.version)
173
+ .sort((a, b) => b - a);
174
+ return activeVersions[0] || 0;
175
+ }, [
176
+ itemState.itemPublishFrom,
177
+ itemState.itemPublishable,
178
+ itemState.itemUnpublishAt,
179
+ versionRows,
180
+ ]);
181
+ const effectiveNowVersion = useMemo(() => evaluateActiveVersionAt(Date.now()), [itemState, versionRows]);
182
+ const effectiveStatus = useMemo(() => {
183
+ if (!itemState.itemPublishable) {
184
+ return { label: "Blocked by item", variant: "destructive" };
185
+ }
186
+ if (effectiveNowVersion === 0) {
187
+ return { label: "No publishable version", variant: "secondary" };
188
+ }
189
+ return {
190
+ label: `Will publish v${effectiveNowVersion}`,
191
+ variant: "default",
192
+ };
193
+ }, [effectiveNowVersion, itemState.itemPublishable]);
194
+ const timelineModel = useMemo(() => {
195
+ const viewSpanMs = zoomDays * 24 * 60 * 60 * 1000;
196
+ const viewStart = centerTs - viewSpanMs / 2;
197
+ const viewEnd = centerTs + viewSpanMs / 2;
198
+ const boundaries = new Set([viewStart, viewEnd]);
199
+ const pushIfInView = (value) => {
200
+ const ts = toTimestamp(value);
201
+ if (ts && ts >= viewStart && ts <= viewEnd)
202
+ boundaries.add(ts);
203
+ };
204
+ pushIfInView(itemState.itemPublishFrom);
205
+ pushIfInView(itemState.itemUnpublishAt);
206
+ versionRows.forEach((row) => {
207
+ pushIfInView(row.versionValidFrom);
208
+ pushIfInView(row.versionValidTo);
209
+ });
210
+ const points = Array.from(boundaries).sort((a, b) => a - b);
211
+ const segments = [];
212
+ for (let i = 0; i < points.length - 1; i++) {
213
+ const start = points[i];
214
+ const end = points[i + 1];
215
+ if (end <= start)
216
+ continue;
217
+ const midpoint = start + (end - start) / 2;
218
+ segments.push({
219
+ start,
220
+ end,
221
+ effectiveVersion: evaluateActiveVersionAt(midpoint),
222
+ });
223
+ }
224
+ const versions = [...versionRows].sort((a, b) => b.version - a.version);
225
+ const versionMin = versions.length ? versions[versions.length - 1].version : 0;
226
+ const versionMax = versions.length ? versions[0].version : 1;
227
+ return {
228
+ viewStart,
229
+ viewEnd,
230
+ versions,
231
+ segments,
232
+ versionMin,
233
+ versionMax,
234
+ };
235
+ }, [centerTs, itemState, versionRows, zoomDays]);
236
+ const save = async () => {
237
+ if (!editContext)
238
+ return;
239
+ const updates = [];
240
+ if (itemState.itemPublishable !== initialItemState.itemPublishable) {
241
+ if (itemState.neverPublishFieldId) {
242
+ updates.push({
243
+ itemVersion: item.descriptor.version,
244
+ fieldId: itemState.neverPublishFieldId,
245
+ rawValue: itemState.itemPublishable ? "0" : "1",
246
+ });
247
+ }
248
+ }
249
+ if (itemState.itemPublishFrom !== initialItemState.itemPublishFrom) {
250
+ if (itemState.publishFieldId) {
251
+ updates.push({
252
+ itemVersion: item.descriptor.version,
253
+ fieldId: itemState.publishFieldId,
254
+ rawValue: formatDateToCompactISO(fromDateTimeLocalValue(itemState.itemPublishFrom)),
255
+ });
256
+ }
257
+ }
258
+ if (itemState.itemUnpublishAt !== initialItemState.itemUnpublishAt) {
259
+ if (itemState.unpublishFieldId) {
260
+ updates.push({
261
+ itemVersion: item.descriptor.version,
262
+ fieldId: itemState.unpublishFieldId,
263
+ rawValue: formatDateToCompactISO(fromDateTimeLocalValue(itemState.itemUnpublishAt)),
264
+ });
265
+ }
266
+ }
267
+ for (const row of versionRows) {
268
+ const initial = initialVersionRows.find((x) => x.version === row.version);
269
+ if (!initial)
270
+ continue;
271
+ if (row.versionPublishable !== initial.versionPublishable &&
272
+ row.hideVersionFieldId) {
273
+ updates.push({
274
+ itemVersion: row.version,
275
+ fieldId: row.hideVersionFieldId,
276
+ rawValue: row.versionPublishable ? "0" : "1",
277
+ });
278
+ }
279
+ if (row.versionValidFrom !== initial.versionValidFrom && row.validFromFieldId) {
280
+ updates.push({
281
+ itemVersion: row.version,
282
+ fieldId: row.validFromFieldId,
283
+ rawValue: formatDateToCompactISO(fromDateTimeLocalValue(row.versionValidFrom)),
284
+ });
285
+ }
286
+ if (row.versionValidTo !== initial.versionValidTo && row.validToFieldId) {
287
+ updates.push({
288
+ itemVersion: row.version,
289
+ fieldId: row.validToFieldId,
290
+ rawValue: formatDateToCompactISO(fromDateTimeLocalValue(row.versionValidTo)),
291
+ });
292
+ }
293
+ }
294
+ if (updates.length === 0) {
295
+ onClose(null);
296
+ return;
297
+ }
298
+ setIsSaving(true);
299
+ try {
300
+ for (const update of updates) {
301
+ await editContext.operations.editField({
302
+ field: {
303
+ item: {
304
+ id: item.id,
305
+ language: item.language,
306
+ version: update.itemVersion,
307
+ database: item.database,
308
+ },
309
+ fieldId: update.fieldId,
310
+ },
311
+ rawValue: update.rawValue,
312
+ value: update.rawValue,
313
+ refresh: "none",
314
+ });
315
+ }
316
+ editContext.requestRefresh("immediate");
317
+ editContext.showToast?.("Publish restrictions updated.");
318
+ onClose("saved");
319
+ }
320
+ catch {
321
+ editContext.showToast?.("Failed to update publish restrictions.");
322
+ }
323
+ finally {
324
+ setIsSaving(false);
325
+ }
326
+ };
327
+ if (!editContext)
328
+ return null;
329
+ const isSaveDisabled = isLoading ||
330
+ isSaving ||
331
+ !hasChanges ||
332
+ itemWindowInvalid ||
333
+ versionWindowInvalidCount > 0 ||
334
+ !item.canWriteItem ||
335
+ !item.canWriteLanguage;
336
+ const onWheelZoom = (event) => {
337
+ if (!event.ctrlKey)
338
+ return;
339
+ event.preventDefault();
340
+ setZoomDays((prev) => {
341
+ const next = event.deltaY > 0 ? prev * 1.15 : prev * 0.85;
342
+ return Math.max(7, Math.min(3650, Math.round(next)));
343
+ });
344
+ };
345
+ const spanMs = zoomDays * 24 * 60 * 60 * 1000;
346
+ return (_jsx(Dialog, { open: true, onOpenChange: (open) => {
347
+ if (!open)
348
+ onClose(null);
349
+ }, children: _jsxs(DialogContent, { className: "max-w-6xl", showCloseButton: true, children: [_jsx(DialogHeader, { children: _jsxs("div", { className: "flex items-center justify-between gap-3", children: [_jsx(DialogTitle, { children: "Publish Restrictions" }), _jsx(Badge, { variant: effectiveStatus.variant, children: effectiveStatus.label })] }) }), _jsxs("div", { className: "space-y-4 px-8 pb-2", children: [_jsxs("div", { className: "rounded-xl border bg-slate-50/70 p-4", children: [_jsx("div", { className: "mb-3 text-sm font-semibold", children: "Item Restrictions" }), _jsxs("div", { className: "grid gap-3 md:grid-cols-3", children: [_jsxs("div", { className: "rounded-lg border bg-white p-3", children: [_jsx("div", { className: "mb-1 text-xs font-medium", children: "Item publishable" }), _jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-muted-foreground text-xs", children: "Inverse of __Never publish" }), _jsx(Switch, { checked: itemState.itemPublishable, disabled: !itemState.neverPublishFieldId, onCheckedChange: (checked) => setItemState((prev) => ({
350
+ ...prev,
351
+ itemPublishable: Boolean(checked),
352
+ })) })] })] }), _jsxs("div", { className: "rounded-lg border bg-white p-3", children: [_jsx("div", { className: "mb-1 text-xs font-medium", children: "Publish from" }), _jsx(Input, { type: "datetime-local", value: itemState.itemPublishFrom, disabled: !itemState.publishFieldId, onChange: (event) => setItemState((prev) => ({
353
+ ...prev,
354
+ itemPublishFrom: event.target.value,
355
+ })) })] }), _jsxs("div", { className: "rounded-lg border bg-white p-3", children: [_jsx("div", { className: "mb-1 text-xs font-medium", children: "Unpublish at" }), _jsx(Input, { type: "datetime-local", value: itemState.itemUnpublishAt, disabled: !itemState.unpublishFieldId, onChange: (event) => setItemState((prev) => ({
356
+ ...prev,
357
+ itemUnpublishAt: event.target.value,
358
+ })) })] })] }), _jsxs("div", { className: "mt-3 flex flex-wrap gap-2", children: [_jsx(Button, { variant: "outline", size: "sm", disabled: !itemState.publishFieldId, onClick: () => setItemState((prev) => ({
359
+ ...prev,
360
+ itemPublishFrom: getNowDateTimeValue(),
361
+ })), children: "Set publish now" }), _jsx(Button, { variant: "outline", size: "sm", disabled: !itemState.publishFieldId, onClick: () => setItemState((prev) => ({ ...prev, itemPublishFrom: "" })), children: "Clear publish" }), _jsx(Button, { variant: "outline", size: "sm", disabled: !itemState.unpublishFieldId, onClick: () => setItemState((prev) => ({ ...prev, itemUnpublishAt: "" })), children: "Clear unpublish" })] }), itemWindowInvalid && (_jsx("div", { className: "mt-2 text-xs text-red-600", children: "Item lifetime is invalid: unpublish date must be after publish date." }))] }), _jsxs("div", { className: "rounded-xl border bg-white", children: [_jsxs("div", { className: "flex border-b", children: [_jsx("button", { className: cn("px-4 py-2 text-sm font-medium", activeTab === "versions"
362
+ ? "border-b-2 border-blue-500 text-blue-600"
363
+ : "text-gray-500"), onClick: () => setActiveTab("versions"), children: "Versions" }), _jsx("button", { className: cn("px-4 py-2 text-sm font-medium", activeTab === "timeline"
364
+ ? "border-b-2 border-blue-500 text-blue-600"
365
+ : "text-gray-500"), onClick: () => setActiveTab("timeline"), children: "Timeline" })] }), activeTab === "versions" && (_jsx("div", { className: "max-h-[360px] overflow-auto", children: _jsxs("table", { className: "w-full text-sm", children: [_jsx("thead", { className: "sticky top-0 bg-slate-50", children: _jsxs("tr", { className: "text-left text-xs text-slate-700", children: [_jsx("th", { className: "px-3 py-2", children: "Version" }), _jsx("th", { className: "px-3 py-2", children: "Publishable" }), _jsx("th", { className: "px-3 py-2", children: "Valid from" }), _jsx("th", { className: "px-3 py-2", children: "Valid to" }), _jsx("th", { className: "px-3 py-2", children: "Updated" }), _jsx("th", { className: "px-3 py-2", children: "Updated by" })] }) }), _jsx("tbody", { children: versionRows.map((row) => {
366
+ const invalidWindow = !!toTimestamp(row.versionValidFrom) &&
367
+ !!toTimestamp(row.versionValidTo) &&
368
+ toTimestamp(row.versionValidFrom) >
369
+ toTimestamp(row.versionValidTo);
370
+ return (_jsxs("tr", { className: cn("border-t align-top", invalidWindow && "bg-red-50/60"), children: [_jsxs("td", { className: "px-3 py-2 font-semibold", children: ["v", row.version] }), _jsx("td", { className: "px-3 py-2", children: _jsx(Switch, { checked: row.versionPublishable, disabled: !row.hideVersionFieldId, onCheckedChange: (checked) => {
371
+ setVersionRows((prev) => prev.map((x) => x.version === row.version
372
+ ? {
373
+ ...x,
374
+ versionPublishable: Boolean(checked),
375
+ }
376
+ : x));
377
+ } }) }), _jsx("td", { className: "px-3 py-2", children: _jsx(Input, { type: "datetime-local", value: row.versionValidFrom, disabled: !row.validFromFieldId, onChange: (event) => {
378
+ const value = event.target.value;
379
+ setVersionRows((prev) => prev.map((x) => x.version === row.version
380
+ ? { ...x, versionValidFrom: value }
381
+ : x));
382
+ } }) }), _jsxs("td", { className: "px-3 py-2", children: [_jsx(Input, { type: "datetime-local", value: row.versionValidTo, disabled: !row.validToFieldId, onChange: (event) => {
383
+ const value = event.target.value;
384
+ setVersionRows((prev) => prev.map((x) => x.version === row.version
385
+ ? { ...x, versionValidTo: value }
386
+ : x));
387
+ } }), invalidWindow && (_jsx("div", { className: "mt-1 text-xs text-red-600", children: "Invalid range" }))] }), _jsx("td", { className: "px-3 py-2 text-xs text-slate-600", children: row.updatedLabel }), _jsx("td", { className: "px-3 py-2 text-xs text-slate-600", children: row.updatedBy || "-" })] }, row.version));
388
+ }) })] }) })), activeTab === "timeline" && (_jsxs("div", { className: "space-y-3 p-3", onWheel: onWheelZoom, children: [_jsxs("div", { className: "flex flex-wrap items-center gap-3", children: [_jsx("span", { className: "text-xs font-medium text-slate-700", children: "Zoom" }), _jsx("input", { type: "range", min: 7, max: 3650, step: 1, value: zoomDays, onChange: (event) => setZoomDays(Number(event.target.value)) }), _jsxs("span", { className: "text-xs text-slate-600", children: [zoomDays, " days"] }), _jsx(Button, { variant: "outline", size: "sm", onClick: () => setCenterTs((x) => x - spanMs * 0.25), children: "Prev" }), _jsx(Button, { variant: "outline", size: "sm", onClick: () => setCenterTs(Date.now()), children: "Now" }), _jsx(Button, { variant: "outline", size: "sm", onClick: () => setCenterTs((x) => x + spanMs * 0.25), children: "Next" })] }), _jsx("div", { ref: chartContainerRef, className: "rounded-lg border bg-slate-50/50 p-3", children: _jsxs("svg", { width: chartWidth, height: 280, children: [_jsx("rect", { x: 0, y: 0, width: chartWidth, height: 280, fill: "#ffffff" }), timelineModel.versions.map((row, index) => {
389
+ const laneTop = 132 + index * 22;
390
+ return (_jsxs("g", { children: [_jsxs("text", { x: 4, y: laneTop + 14, fontSize: 11, fill: "#334155", children: ["v", row.version] }), _jsx("line", { x1: 40, y1: laneTop + 10, x2: chartWidth - 10, y2: laneTop + 10, stroke: "#e2e8f0", strokeWidth: 1 })] }, row.version));
391
+ }), timelineModel.segments.map((segment, index) => {
392
+ const x1 = 40 +
393
+ ((segment.start - timelineModel.viewStart) /
394
+ (timelineModel.viewEnd - timelineModel.viewStart)) *
395
+ (chartWidth - 50);
396
+ const x2 = 40 +
397
+ ((segment.end - timelineModel.viewStart) /
398
+ (timelineModel.viewEnd - timelineModel.viewStart)) *
399
+ (chartWidth - 50);
400
+ if (!segment.effectiveVersion) {
401
+ return null;
402
+ }
403
+ return (_jsx("rect", { x: x1, y: 30, width: Math.max(0, x2 - x1), height: 22, fill: "#2563eb", opacity: 0.8 }, `effective-${index}`));
404
+ }), _jsx("text", { x: 4, y: 45, fontSize: 11, fill: "#1e293b", children: "Effective published version" }), timelineModel.versions.map((row, rowIndex) => {
405
+ return timelineModel.segments.map((segment, index) => {
406
+ const mid = segment.start + (segment.end - segment.start) / 2;
407
+ const active = evaluateActiveVersionAt(mid) === row.version;
408
+ if (!active)
409
+ return null;
410
+ const x1 = 40 +
411
+ ((segment.start - timelineModel.viewStart) /
412
+ (timelineModel.viewEnd - timelineModel.viewStart)) *
413
+ (chartWidth - 50);
414
+ const x2 = 40 +
415
+ ((segment.end - timelineModel.viewStart) /
416
+ (timelineModel.viewEnd - timelineModel.viewStart)) *
417
+ (chartWidth - 50);
418
+ const laneTop = 132 + rowIndex * 22;
419
+ return (_jsx("rect", { x: x1, y: laneTop + 3, width: Math.max(0, x2 - x1), height: 14, fill: "#10b981", opacity: 0.75 }, `v${row.version}-${index}`));
420
+ });
421
+ }), _jsx("line", { x1: 40, y1: 60, x2: chartWidth - 10, y2: 60, stroke: "#94a3b8", strokeDasharray: "4 3" }), _jsx("text", { x: 40, y: 78, fontSize: 10, fill: "#64748b", children: new Date(timelineModel.viewStart).toLocaleString() }), _jsx("text", { x: chartWidth - 220, y: 78, fontSize: 10, fill: "#64748b", children: new Date(timelineModel.viewEnd).toLocaleString() })] }) }), _jsx("div", { className: "text-muted-foreground text-xs", children: "Blue bar shows the effective version that would be published by an automated publish agent (highest active version)." })] }))] }), versionWindowInvalidCount > 0 && (_jsxs("div", { className: "text-xs text-red-600", children: [versionWindowInvalidCount, " version row(s) have invalid lifetime ranges."] }))] }), _jsxs(DialogButtons, { className: "pt-4", children: [_jsx(Button, { variant: "outline", size: "sm", onClick: () => onClose(null), children: "Cancel" }), _jsx(Button, { size: "sm", onClick: save, disabled: isSaveDisabled, children: isSaving ? "Saving..." : "Save" })] })] }) }));
422
+ }
423
+ //# sourceMappingURL=PublishRestrictionsDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PublishRestrictionsDialog.js","sourceRoot":"","sources":["../../../src/editor/ui/PublishRestrictionsDialog.tsx"],"names":[],"mappings":"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"}
@@ -3,20 +3,15 @@ import React, { useState, useRef, useEffect, useLayoutEffect } from "react";
3
3
  import { flushSync } from "react-dom";
4
4
  import { ChevronLeft, ChevronRight, ChevronUp, ChevronDown } from "lucide-react";
5
5
  import { cn } from "../../lib/utils";
6
+ import { localStorageService } from "../services/localStorageService";
6
7
  export const Splitter = ({ panels, localStorageKey = "splitter-sizes", expandLabel, direction = "horizontal", // Default to horizontal for backward compatibility
7
8
  className, splitterClassName, expandButtonClassName, handleContent, }) => {
8
9
  const totalPanels = panels.length;
9
10
  const [panelSizes, setPanelSizes] = useState(() => {
10
11
  // Load sizes from local storage on initial render
11
- const storedSizes = localStorage.getItem(localStorageKey);
12
+ const storedSizes = localStorageService.getItem(localStorageKey);
12
13
  if (storedSizes) {
13
- try {
14
- const parsedSizes = JSON.parse(storedSizes);
15
- return parsedSizes.panels;
16
- }
17
- catch (error) {
18
- return null; // Or fallback to default if parsing fails
19
- }
14
+ return storedSizes.panels;
20
15
  }
21
16
  return null; // No stored sizes, initial render will handle defaults
22
17
  });
@@ -24,10 +19,9 @@ className, splitterClassName, expandButtonClassName, handleContent, }) => {
24
19
  const splitterRef = useRef(null);
25
20
  const lastPanelCollapsible = panels[panels.length - 1]?.collapsible;
26
21
  const [isLastPanelCollapsed, setIsLastPanelCollapsed] = useState(() => {
27
- const storedSizes = localStorage.getItem(localStorageKey);
22
+ const storedSizes = localStorageService.getItem(localStorageKey);
28
23
  if (storedSizes) {
29
- const parsedSizes = JSON.parse(storedSizes);
30
- return parsedSizes.lastCollapsed;
24
+ return storedSizes.lastCollapsed;
31
25
  }
32
26
  return true;
33
27
  });
@@ -188,7 +182,7 @@ className, splitterClassName, expandButtonClassName, handleContent, }) => {
188
182
  panels: panelSizes,
189
183
  lastCollapsed: isLastPanelCollapsed ?? false,
190
184
  };
191
- localStorage.setItem(localStorageKey, JSON.stringify(storedSizes));
185
+ localStorageService.setItem(localStorageKey, storedSizes);
192
186
  }
193
187
  }, [panelSizes, localStorageKey, isLastPanelCollapsed]);
194
188
  const toggleLastPanelCollapse = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"Splitter.js","sourceRoot":"","sources":["../../../src/editor/ui/Splitter.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Splitter.js","sourceRoot":"","sources":["../../../src/editor/ui/Splitter.tsx"],"names":[],"mappings":"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"}