@parhelia/core 0.1.11852 → 0.1.11855
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/editor/client/EditorShell.js +11 -5
- package/dist/editor/client/EditorShell.js.map +1 -1
- package/dist/editor/menubar/WorkflowButton.js +6 -8
- package/dist/editor/menubar/WorkflowButton.js.map +1 -1
- package/dist/editor/settings/index/LatestEmbeddingsList.js +1 -1
- package/dist/editor/settings/index/LatestEmbeddingsList.js.map +1 -1
- package/dist/editor/sidebar/WorkspaceRail.js +7 -4
- package/dist/editor/sidebar/WorkspaceRail.js.map +1 -1
- package/dist/editor/tree-indicators/GutterContext.js +243 -112
- package/dist/editor/tree-indicators/GutterContext.js.map +1 -1
- package/dist/editor/tree-indicators/index.d.ts +1 -1
- package/dist/editor/tree-indicators/index.js.map +1 -1
- package/dist/editor/tree-indicators/types.d.ts +5 -0
- package/dist/revision.d.ts +2 -2
- package/dist/revision.js +2 -2
- package/dist/splash-screen/ModernSplashScreen.js +10 -4
- package/dist/splash-screen/ModernSplashScreen.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,12 +1,26 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
3
|
import { createContext, useContext, useState, useCallback, useMemo, useEffect, useRef, } from "react";
|
|
4
|
-
import {
|
|
4
|
+
import { normalizeItemId } from "./useNodeIndicators";
|
|
5
5
|
import { useEditContext } from "../client/editContext";
|
|
6
|
-
import { fetchIndicatorProviders } from "../services/indicatorService";
|
|
6
|
+
import { fetchIndicatorProviders, fetchIndicatorsStream, } from "../services/indicatorService";
|
|
7
7
|
const GutterContext = createContext(null);
|
|
8
8
|
const BATCH_DELAY_MS = 100;
|
|
9
9
|
const INVALIDATION_BATCH_DELAY_MS = 50;
|
|
10
|
+
const PRESENCE_REFRESH_DELAY_MS = 500;
|
|
11
|
+
const INDICATOR_TRIGGER_DEPENDENCIES = {
|
|
12
|
+
"active-sessions": ["presence"],
|
|
13
|
+
"comment-updated": ["feedback"],
|
|
14
|
+
"comment-deleted": ["feedback"],
|
|
15
|
+
"suggested-edit-updated": ["feedback"],
|
|
16
|
+
"suggested-edit-deleted": ["feedback"],
|
|
17
|
+
"item-changed": [],
|
|
18
|
+
"language-version-changed": [],
|
|
19
|
+
"manual-refresh": [],
|
|
20
|
+
};
|
|
21
|
+
function getFetchedSet(map, providerId) {
|
|
22
|
+
return map[providerId] ?? new Set();
|
|
23
|
+
}
|
|
10
24
|
export function GutterProvider({ children, initialNodeIds = [], defaultVisibleGutters = [], language = "en", version = 1, }) {
|
|
11
25
|
const editContext = useEditContext();
|
|
12
26
|
// Track whether we've loaded preferences from the backend
|
|
@@ -48,15 +62,22 @@ export function GutterProvider({ children, initialNodeIds = [], defaultVisibleGu
|
|
|
48
62
|
const [allNodeIds, setAllNodeIds] = useState(initialNodeIds);
|
|
49
63
|
const pendingNodeIdsRef = useRef(new Set(initialNodeIds));
|
|
50
64
|
const batchTimeoutRef = useRef(null);
|
|
51
|
-
//
|
|
52
|
-
const [fetchedNodeIds, setFetchedNodeIds] = useState(new Set());
|
|
53
|
-
// Node IDs that need to be fetched (new nodes not yet in cache)
|
|
54
|
-
const [nodeIdsToFetch, setNodeIdsToFetch] = useState([]);
|
|
55
|
-
// Cached indicators - persisted across fetches
|
|
65
|
+
// Cached indicators - persisted across fetches.
|
|
56
66
|
const [cachedIndicators, setCachedIndicators] = useState({});
|
|
67
|
+
// Track fetched state per provider so we can refresh only specific indicators.
|
|
68
|
+
const [fetchedByProvider, setFetchedByProvider] = useState({});
|
|
69
|
+
const fetchedByProviderRef = useRef({});
|
|
70
|
+
// Track in-flight requests per provider+item to avoid duplicate fetch loops.
|
|
71
|
+
const inFlightByProviderRef = useRef({});
|
|
72
|
+
// Track active requests to drive loading state.
|
|
73
|
+
const [activeRequests, setActiveRequests] = useState(0);
|
|
74
|
+
const requestControllersRef = useRef(new Set());
|
|
57
75
|
// Track items pending invalidation (batched)
|
|
58
76
|
const pendingInvalidationsRef = useRef(new Set());
|
|
59
77
|
const invalidationTimeoutRef = useRef(null);
|
|
78
|
+
useEffect(() => {
|
|
79
|
+
fetchedByProviderRef.current = fetchedByProvider;
|
|
80
|
+
}, [fetchedByProvider]);
|
|
60
81
|
// Fetch available providers on mount
|
|
61
82
|
useEffect(() => {
|
|
62
83
|
let cancelled = false;
|
|
@@ -97,47 +118,189 @@ export function GutterProvider({ children, initialNodeIds = [], defaultVisibleGu
|
|
|
97
118
|
batchTimeoutRef.current = null;
|
|
98
119
|
}, BATCH_DELAY_MS);
|
|
99
120
|
}, []);
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
121
|
+
const resolveProvidersForTrigger = useCallback((trigger, fallbackProviders = visibleGutters) => {
|
|
122
|
+
const configured = INDICATOR_TRIGGER_DEPENDENCIES[trigger] ?? [];
|
|
123
|
+
if (configured.length === 0) {
|
|
124
|
+
return fallbackProviders.filter((id, index, arr) => arr.indexOf(id) === index);
|
|
125
|
+
}
|
|
126
|
+
const visibleSet = new Set(visibleGutters);
|
|
127
|
+
return configured.filter((providerId) => visibleSet.has(providerId));
|
|
128
|
+
}, [visibleGutters]);
|
|
129
|
+
const markProviderFetchState = useCallback((providerId, itemIds, options) => {
|
|
130
|
+
const normalizedIds = itemIds.map(normalizeItemId);
|
|
131
|
+
const shouldMarkFetched = options?.fetched ?? false;
|
|
132
|
+
const shouldMarkInFlight = options?.inFlight ?? false;
|
|
133
|
+
if (shouldMarkFetched) {
|
|
134
|
+
setFetchedByProvider((prev) => {
|
|
135
|
+
const next = { ...prev };
|
|
136
|
+
const set = new Set(getFetchedSet(next, providerId));
|
|
137
|
+
for (const id of normalizedIds) {
|
|
138
|
+
set.add(id);
|
|
139
|
+
}
|
|
140
|
+
next[providerId] = set;
|
|
141
|
+
return next;
|
|
142
|
+
});
|
|
108
143
|
}
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
144
|
+
const nextInFlight = { ...inFlightByProviderRef.current };
|
|
145
|
+
const inFlightSet = new Set(getFetchedSet(nextInFlight, providerId));
|
|
146
|
+
if (shouldMarkInFlight) {
|
|
147
|
+
for (const id of normalizedIds) {
|
|
148
|
+
inFlightSet.add(id);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
else {
|
|
152
|
+
for (const id of normalizedIds) {
|
|
153
|
+
inFlightSet.delete(id);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
nextInFlight[providerId] = inFlightSet;
|
|
157
|
+
inFlightByProviderRef.current = nextInFlight;
|
|
158
|
+
}, []);
|
|
159
|
+
const fetchProviderForItems = useCallback(async (providerId, itemIds) => {
|
|
160
|
+
if (itemIds.length === 0)
|
|
161
|
+
return;
|
|
162
|
+
const dedupedItemIds = itemIds.filter((id, index, arr) => arr.indexOf(id) === index);
|
|
163
|
+
const inFlightSet = getFetchedSet(inFlightByProviderRef.current, providerId);
|
|
164
|
+
const idsToFetch = dedupedItemIds.filter((id) => !inFlightSet.has(normalizeItemId(id)));
|
|
165
|
+
if (idsToFetch.length === 0)
|
|
166
|
+
return;
|
|
167
|
+
markProviderFetchState(providerId, idsToFetch, { inFlight: true });
|
|
168
|
+
const controller = new AbortController();
|
|
169
|
+
requestControllersRef.current.add(controller);
|
|
170
|
+
setActiveRequests((prev) => prev + 1);
|
|
171
|
+
try {
|
|
172
|
+
await fetchIndicatorsStream(idsToFetch, [providerId], language, (chunk) => {
|
|
173
|
+
if (controller.signal.aborted)
|
|
174
|
+
return;
|
|
175
|
+
if (chunk.type === "indicator") {
|
|
176
|
+
const normalizedId = normalizeItemId(chunk.itemId);
|
|
177
|
+
setCachedIndicators((prev) => ({
|
|
178
|
+
...prev,
|
|
179
|
+
[normalizedId]: {
|
|
180
|
+
...prev[normalizedId],
|
|
181
|
+
[chunk.providerId]: chunk.data,
|
|
182
|
+
},
|
|
183
|
+
}));
|
|
184
|
+
}
|
|
185
|
+
}, controller.signal, editContext?.sessionId);
|
|
186
|
+
if (!controller.signal.aborted) {
|
|
187
|
+
markProviderFetchState(providerId, idsToFetch, { fetched: true });
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
catch (error) {
|
|
191
|
+
if (!controller.signal.aborted) {
|
|
192
|
+
console.error(`Failed to fetch ${providerId} indicators`, error);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
finally {
|
|
196
|
+
markProviderFetchState(providerId, idsToFetch, { inFlight: false });
|
|
197
|
+
requestControllersRef.current.delete(controller);
|
|
198
|
+
setActiveRequests((prev) => Math.max(0, prev - 1));
|
|
199
|
+
}
|
|
200
|
+
}, [editContext?.sessionId, language, markProviderFetchState]);
|
|
201
|
+
const fetchProvidersForItems = useCallback(async (providerIds, itemIds) => {
|
|
202
|
+
if (providerIds.length === 0 || itemIds.length === 0)
|
|
203
|
+
return;
|
|
204
|
+
const uniqueProviders = providerIds.filter((id, index, arr) => arr.indexOf(id) === index);
|
|
205
|
+
await Promise.all(uniqueProviders.map((providerId) => fetchProviderForItems(providerId, itemIds)));
|
|
206
|
+
}, [fetchProviderForItems]);
|
|
207
|
+
const removeProviderDataFromCache = useCallback((providerIds, itemIds) => {
|
|
208
|
+
const normalizedIds = new Set(itemIds.map(normalizeItemId));
|
|
209
|
+
setCachedIndicators((prev) => {
|
|
210
|
+
const next = { ...prev };
|
|
211
|
+
for (const normalizedId of normalizedIds) {
|
|
212
|
+
const itemData = next[normalizedId];
|
|
213
|
+
if (!itemData)
|
|
214
|
+
continue;
|
|
215
|
+
const nextItemData = { ...itemData };
|
|
216
|
+
for (const providerId of providerIds) {
|
|
217
|
+
delete nextItemData[providerId];
|
|
218
|
+
}
|
|
219
|
+
if (Object.keys(nextItemData).length === 0) {
|
|
220
|
+
delete next[normalizedId];
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
next[normalizedId] = nextItemData;
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
return next;
|
|
227
|
+
});
|
|
228
|
+
}, []);
|
|
229
|
+
const clearFetchedStateForProviders = useCallback((providerIds, itemIds) => {
|
|
230
|
+
const normalizedIds = itemIds.map(normalizeItemId);
|
|
231
|
+
setFetchedByProvider((prev) => {
|
|
232
|
+
const next = { ...prev };
|
|
233
|
+
for (const providerId of providerIds) {
|
|
234
|
+
const set = new Set(getFetchedSet(next, providerId));
|
|
235
|
+
for (const id of normalizedIds) {
|
|
236
|
+
set.delete(id);
|
|
237
|
+
}
|
|
238
|
+
next[providerId] = set;
|
|
239
|
+
}
|
|
240
|
+
return next;
|
|
241
|
+
});
|
|
242
|
+
}, []);
|
|
243
|
+
const invalidateProvidersForItems = useCallback((providerIds, itemIds) => {
|
|
244
|
+
if (providerIds.length === 0 || itemIds.length === 0)
|
|
245
|
+
return;
|
|
246
|
+
const uniqueProviders = providerIds.filter((id, index, arr) => arr.indexOf(id) === index);
|
|
247
|
+
const uniqueItems = itemIds.filter((id, index, arr) => arr.indexOf(id) === index);
|
|
248
|
+
clearFetchedStateForProviders(uniqueProviders, uniqueItems);
|
|
249
|
+
removeProviderDataFromCache(uniqueProviders, uniqueItems);
|
|
250
|
+
void fetchProvidersForItems(uniqueProviders, uniqueItems);
|
|
251
|
+
}, [clearFetchedStateForProviders, removeProviderDataFromCache, fetchProvidersForItems]);
|
|
252
|
+
const refreshProviders = useCallback((providerIds, itemIds) => {
|
|
253
|
+
const targetProviders = providerIds.filter((id, index, arr) => arr.indexOf(id) === index);
|
|
254
|
+
const targetItems = itemIds && itemIds.length > 0 ? itemIds : allNodeIds;
|
|
255
|
+
if (targetProviders.length === 0 || targetItems.length === 0)
|
|
256
|
+
return;
|
|
257
|
+
invalidateProvidersForItems(targetProviders, targetItems);
|
|
258
|
+
}, [allNodeIds, invalidateProvidersForItems]);
|
|
259
|
+
// Ensure all visible nodes have all visible providers fetched (provider-aware incremental fetch).
|
|
113
260
|
useEffect(() => {
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
261
|
+
if (visibleGutters.length === 0 || allNodeIds.length === 0)
|
|
262
|
+
return;
|
|
263
|
+
for (const providerId of visibleGutters) {
|
|
264
|
+
const fetchedSet = getFetchedSet(fetchedByProviderRef.current, providerId);
|
|
265
|
+
const inFlightSet = getFetchedSet(inFlightByProviderRef.current, providerId);
|
|
266
|
+
const missingIds = allNodeIds.filter((itemId) => {
|
|
267
|
+
const normalizedId = normalizeItemId(itemId);
|
|
268
|
+
return !fetchedSet.has(normalizedId) && !inFlightSet.has(normalizedId);
|
|
269
|
+
});
|
|
270
|
+
if (missingIds.length > 0) {
|
|
271
|
+
void fetchProviderForItems(providerId, missingIds);
|
|
272
|
+
}
|
|
122
273
|
}
|
|
123
|
-
|
|
124
|
-
}, [visibleGutters, allNodeIds]);
|
|
274
|
+
}, [allNodeIds, fetchProviderForItems, fetchedByProvider, visibleGutters]);
|
|
125
275
|
// Track previous language and version to detect changes
|
|
126
276
|
const prevLanguageRef = useRef(language);
|
|
127
277
|
const prevVersionRef = useRef(version);
|
|
128
|
-
// When language or version changes, clear cache and refetch all
|
|
278
|
+
// When language or version changes, clear cache and refetch all visible providers.
|
|
129
279
|
useEffect(() => {
|
|
130
280
|
const languageChanged = prevLanguageRef.current !== language;
|
|
131
281
|
const versionChanged = prevVersionRef.current !== version;
|
|
132
|
-
if (
|
|
133
|
-
|
|
134
|
-
|
|
282
|
+
if (languageChanged || versionChanged) {
|
|
283
|
+
requestControllersRef.current.forEach((controller) => controller.abort());
|
|
284
|
+
requestControllersRef.current.clear();
|
|
285
|
+
inFlightByProviderRef.current = {};
|
|
286
|
+
setActiveRequests(0);
|
|
135
287
|
setCachedIndicators({});
|
|
136
|
-
|
|
288
|
+
setFetchedByProvider({});
|
|
289
|
+
const providersToRefresh = resolveProvidersForTrigger("language-version-changed", visibleGutters);
|
|
290
|
+
if (allNodeIds.length > 0 && providersToRefresh.length > 0) {
|
|
291
|
+
void fetchProvidersForItems(providersToRefresh, allNodeIds);
|
|
292
|
+
}
|
|
137
293
|
}
|
|
138
294
|
prevLanguageRef.current = language;
|
|
139
295
|
prevVersionRef.current = version;
|
|
140
|
-
}, [
|
|
296
|
+
}, [
|
|
297
|
+
allNodeIds,
|
|
298
|
+
fetchProvidersForItems,
|
|
299
|
+
language,
|
|
300
|
+
resolveProvidersForTrigger,
|
|
301
|
+
version,
|
|
302
|
+
visibleGutters,
|
|
303
|
+
]);
|
|
141
304
|
// Cleanup timeout on unmount
|
|
142
305
|
useEffect(() => {
|
|
143
306
|
return () => {
|
|
@@ -147,6 +310,8 @@ export function GutterProvider({ children, initialNodeIds = [], defaultVisibleGu
|
|
|
147
310
|
if (invalidationTimeoutRef.current) {
|
|
148
311
|
clearTimeout(invalidationTimeoutRef.current);
|
|
149
312
|
}
|
|
313
|
+
requestControllersRef.current.forEach((controller) => controller.abort());
|
|
314
|
+
requestControllersRef.current.clear();
|
|
150
315
|
};
|
|
151
316
|
}, []);
|
|
152
317
|
// Save visible gutters to user preferences when they change
|
|
@@ -169,39 +334,7 @@ export function GutterProvider({ children, initialNodeIds = [], defaultVisibleGu
|
|
|
169
334
|
setUserPreferences({ gutterShowBadges: showBadges });
|
|
170
335
|
}
|
|
171
336
|
}, [showBadges, setUserPreferences]);
|
|
172
|
-
|
|
173
|
-
const handleFetchComplete = useCallback((fetchedIds) => {
|
|
174
|
-
setFetchedNodeIds((prev) => {
|
|
175
|
-
const next = new Set(prev);
|
|
176
|
-
for (const id of fetchedIds) {
|
|
177
|
-
next.add(normalizeItemId(id));
|
|
178
|
-
}
|
|
179
|
-
return next;
|
|
180
|
-
});
|
|
181
|
-
// Clear nodeIdsToFetch since they've been fetched
|
|
182
|
-
setNodeIdsToFetch([]);
|
|
183
|
-
}, []);
|
|
184
|
-
// Fetch indicator data for new nodes only (incremental)
|
|
185
|
-
const { indicators: newIndicators, isLoading: indicatorsLoading, refresh: refreshHook, clearCache: clearHookCache, } = useNodeIndicators({
|
|
186
|
-
nodeIds: nodeIdsToFetch,
|
|
187
|
-
visibleProviders: visibleGutters,
|
|
188
|
-
language,
|
|
189
|
-
version,
|
|
190
|
-
enabled: visibleGutters.length > 0 && nodeIdsToFetch.length > 0,
|
|
191
|
-
existingIndicators: cachedIndicators,
|
|
192
|
-
onFetchComplete: handleFetchComplete,
|
|
193
|
-
sessionId: editContext?.sessionId,
|
|
194
|
-
});
|
|
195
|
-
// Merge new indicators into cache
|
|
196
|
-
useEffect(() => {
|
|
197
|
-
if (Object.keys(newIndicators).length > 0) {
|
|
198
|
-
setCachedIndicators((prev) => ({
|
|
199
|
-
...prev,
|
|
200
|
-
...newIndicators,
|
|
201
|
-
}));
|
|
202
|
-
}
|
|
203
|
-
}, [newIndicators]);
|
|
204
|
-
const isLoading = providersLoading || indicatorsLoading;
|
|
337
|
+
const isLoading = providersLoading || activeRequests > 0;
|
|
205
338
|
const providers = availableProviders;
|
|
206
339
|
const indicators = cachedIndicators;
|
|
207
340
|
const toggleGutter = useCallback((providerId) => {
|
|
@@ -224,15 +357,11 @@ export function GutterProvider({ children, initialNodeIds = [], defaultVisibleGu
|
|
|
224
357
|
const normalizedId = normalizeItemId(itemId);
|
|
225
358
|
return indicators[normalizedId]?.[providerId];
|
|
226
359
|
}, [indicators]);
|
|
227
|
-
// Full refresh
|
|
360
|
+
// Full refresh now delegates to provider-scoped invalidation for all visible providers.
|
|
228
361
|
const refresh = useCallback(() => {
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
clearHookCache();
|
|
233
|
-
// Trigger refetch of all visible nodes
|
|
234
|
-
setNodeIdsToFetch(allNodeIds);
|
|
235
|
-
}, [allNodeIds, clearHookCache]);
|
|
362
|
+
const providersToRefresh = resolveProvidersForTrigger("manual-refresh", visibleGutters);
|
|
363
|
+
refreshProviders(providersToRefresh);
|
|
364
|
+
}, [refreshProviders, resolveProvidersForTrigger, visibleGutters]);
|
|
236
365
|
// Invalidate a specific item (remove from cache and refetch)
|
|
237
366
|
const invalidateItem = useCallback((itemId) => {
|
|
238
367
|
const normalizedId = normalizeItemId(itemId);
|
|
@@ -245,31 +374,19 @@ export function GutterProvider({ children, initialNodeIds = [], defaultVisibleGu
|
|
|
245
374
|
invalidationTimeoutRef.current = setTimeout(() => {
|
|
246
375
|
const idsToInvalidate = Array.from(pendingInvalidationsRef.current);
|
|
247
376
|
pendingInvalidationsRef.current.clear();
|
|
248
|
-
// Remove from fetchedNodeIds cache
|
|
249
|
-
setFetchedNodeIds((prev) => {
|
|
250
|
-
const next = new Set(prev);
|
|
251
|
-
for (const id of idsToInvalidate) {
|
|
252
|
-
next.delete(id);
|
|
253
|
-
}
|
|
254
|
-
return next;
|
|
255
|
-
});
|
|
256
|
-
// Remove from cached indicators
|
|
257
|
-
setCachedIndicators((prev) => {
|
|
258
|
-
const next = { ...prev };
|
|
259
|
-
for (const id of idsToInvalidate) {
|
|
260
|
-
delete next[id];
|
|
261
|
-
}
|
|
262
|
-
return next;
|
|
263
|
-
});
|
|
264
377
|
// Find original (non-normalized) IDs that are still visible
|
|
265
378
|
const originalIds = allNodeIds.filter((id) => idsToInvalidate.includes(normalizeItemId(id)));
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
}
|
|
379
|
+
const targetIds = originalIds.length > 0 ? originalIds : idsToInvalidate;
|
|
380
|
+
const providersToRefresh = resolveProvidersForTrigger("item-changed", visibleGutters);
|
|
381
|
+
invalidateProvidersForItems(providersToRefresh, targetIds);
|
|
270
382
|
invalidationTimeoutRef.current = null;
|
|
271
383
|
}, INVALIDATION_BATCH_DELAY_MS);
|
|
272
|
-
}, [
|
|
384
|
+
}, [
|
|
385
|
+
allNodeIds,
|
|
386
|
+
invalidateProvidersForItems,
|
|
387
|
+
resolveProvidersForTrigger,
|
|
388
|
+
visibleGutters,
|
|
389
|
+
]);
|
|
273
390
|
// Subscribe to item changes to invalidate cache when items are saved
|
|
274
391
|
useEffect(() => {
|
|
275
392
|
const itemsRepository = editContext?.itemsRepository;
|
|
@@ -283,16 +400,17 @@ export function GutterProvider({ children, initialNodeIds = [], defaultVisibleGu
|
|
|
283
400
|
(change.changes?.fields?.length ?? 0) > 0;
|
|
284
401
|
if ((change.action === "update" || change.action === "add") &&
|
|
285
402
|
hasMeaningfulItemChange) {
|
|
286
|
-
//
|
|
403
|
+
// Refresh only items/providers that have already been fetched.
|
|
287
404
|
const normalizedId = normalizeItemId(change.item.id);
|
|
288
|
-
|
|
405
|
+
const isFetchedByAnyVisibleProvider = visibleGutters.some((providerId) => getFetchedSet(fetchedByProviderRef.current, providerId).has(normalizedId));
|
|
406
|
+
if (isFetchedByAnyVisibleProvider) {
|
|
289
407
|
invalidateItem(change.item.id);
|
|
290
408
|
}
|
|
291
409
|
}
|
|
292
410
|
}
|
|
293
411
|
});
|
|
294
412
|
return unsubscribe;
|
|
295
|
-
}, [editContext?.itemsRepository,
|
|
413
|
+
}, [editContext?.itemsRepository, invalidateItem, visibleGutters]);
|
|
296
414
|
// Subscribe to WebSocket messages for indicator updates (feedback and presence)
|
|
297
415
|
const presenceRefreshTimeoutRef = useRef(null);
|
|
298
416
|
const hasInitialFetchRef = useRef(false);
|
|
@@ -300,16 +418,18 @@ export function GutterProvider({ children, initialNodeIds = [], defaultVisibleGu
|
|
|
300
418
|
const lastActiveSessionsFingerprintRef = useRef("");
|
|
301
419
|
// Track when initial fetch completes
|
|
302
420
|
useEffect(() => {
|
|
303
|
-
if (
|
|
421
|
+
if (Object.values(fetchedByProvider).some((fetchedSet) => fetchedSet && fetchedSet.size > 0)) {
|
|
304
422
|
hasInitialFetchRef.current = true;
|
|
305
423
|
}
|
|
306
|
-
}, [
|
|
424
|
+
}, [fetchedByProvider]);
|
|
307
425
|
useEffect(() => {
|
|
308
426
|
const addSocketMessageListener = editContext?.addSocketMessageListener;
|
|
309
427
|
if (!addSocketMessageListener)
|
|
310
428
|
return;
|
|
311
|
-
const
|
|
312
|
-
const
|
|
429
|
+
const feedbackProviders = resolveProvidersForTrigger("comment-updated");
|
|
430
|
+
const presenceProviders = resolveProvidersForTrigger("active-sessions");
|
|
431
|
+
const hasFeedbackProvider = feedbackProviders.length > 0;
|
|
432
|
+
const hasPresenceProvider = presenceProviders.length > 0;
|
|
313
433
|
// Only subscribe if at least one relevant provider is enabled
|
|
314
434
|
if (!hasFeedbackProvider && !hasPresenceProvider)
|
|
315
435
|
return;
|
|
@@ -318,17 +438,25 @@ export function GutterProvider({ children, initialNodeIds = [], defaultVisibleGu
|
|
|
318
438
|
if (hasFeedbackProvider) {
|
|
319
439
|
if (message.type === "comment-updated" &&
|
|
320
440
|
message.payload?.comment?.mainItemId) {
|
|
321
|
-
|
|
441
|
+
const providersToRefresh = resolveProvidersForTrigger("comment-updated");
|
|
442
|
+
invalidateProvidersForItems(providersToRefresh, [
|
|
443
|
+
message.payload.comment.mainItemId,
|
|
444
|
+
]);
|
|
322
445
|
}
|
|
323
446
|
if (message.type === "comment-deleted") {
|
|
324
|
-
|
|
447
|
+
const providersToRefresh = resolveProvidersForTrigger("comment-deleted");
|
|
448
|
+
refreshProviders(providersToRefresh);
|
|
325
449
|
}
|
|
326
450
|
if (message.type === "suggested-edit-updated" &&
|
|
327
451
|
message.payload?.suggestedEdit?.mainItemId) {
|
|
328
|
-
|
|
452
|
+
const providersToRefresh = resolveProvidersForTrigger("suggested-edit-updated");
|
|
453
|
+
invalidateProvidersForItems(providersToRefresh, [
|
|
454
|
+
message.payload.suggestedEdit.mainItemId,
|
|
455
|
+
]);
|
|
329
456
|
}
|
|
330
457
|
if (message.type === "suggested-edit-deleted") {
|
|
331
|
-
|
|
458
|
+
const providersToRefresh = resolveProvidersForTrigger("suggested-edit-deleted");
|
|
459
|
+
refreshProviders(providersToRefresh);
|
|
332
460
|
}
|
|
333
461
|
}
|
|
334
462
|
// Presence provider: session changes (debounced)
|
|
@@ -344,6 +472,7 @@ export function GutterProvider({ children, initialNodeIds = [], defaultVisibleGu
|
|
|
344
472
|
const sessions = message.payload?.sessions ?? message.payload;
|
|
345
473
|
if (Array.isArray(sessions)) {
|
|
346
474
|
fingerprint = sessions
|
|
475
|
+
.filter((s) => s?.sessionId !== editContext?.sessionId)
|
|
347
476
|
.map((s) => `${s.sessionId ?? ""}:${s.item?.id ?? ""}:${s.item?.language ?? ""}`)
|
|
348
477
|
.sort()
|
|
349
478
|
.join("|");
|
|
@@ -363,9 +492,9 @@ export function GutterProvider({ children, initialNodeIds = [], defaultVisibleGu
|
|
|
363
492
|
clearTimeout(presenceRefreshTimeoutRef.current);
|
|
364
493
|
}
|
|
365
494
|
presenceRefreshTimeoutRef.current = setTimeout(() => {
|
|
366
|
-
|
|
495
|
+
refreshProviders(presenceProviders);
|
|
367
496
|
presenceRefreshTimeoutRef.current = null;
|
|
368
|
-
},
|
|
497
|
+
}, PRESENCE_REFRESH_DELAY_MS);
|
|
369
498
|
}
|
|
370
499
|
});
|
|
371
500
|
return () => {
|
|
@@ -376,9 +505,11 @@ export function GutterProvider({ children, initialNodeIds = [], defaultVisibleGu
|
|
|
376
505
|
};
|
|
377
506
|
}, [
|
|
378
507
|
editContext?.addSocketMessageListener,
|
|
508
|
+
editContext?.sessionId,
|
|
379
509
|
visibleGutters,
|
|
380
|
-
|
|
381
|
-
|
|
510
|
+
invalidateProvidersForItems,
|
|
511
|
+
refreshProviders,
|
|
512
|
+
resolveProvidersForTrigger,
|
|
382
513
|
]);
|
|
383
514
|
const value = useMemo(() => ({
|
|
384
515
|
visibleGutters,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GutterContext.js","sourceRoot":"","sources":["../../../src/editor/tree-indicators/GutterContext.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"GutterContext.js","sourceRoot":"","sources":["../../../src/editor/tree-indicators/GutterContext.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type { IndicatorSeverity, IndicatorProviderInfo, IndicatorData, NodeIndicator, IndicatorProvider, GutterPreferences, IndicatorMap, IndicatorChunk, } from "./types";
|
|
1
|
+
export type { IndicatorSeverity, IndicatorProviderInfo, IndicatorData, NodeIndicator, IndicatorProvider, GutterPreferences, IndicatorMap, IndicatorChunk, IndicatorDependencyTrigger, } from "./types";
|
|
2
2
|
export { GutterProvider, useGutterContext, useGutterContextSafe, type GutterContextValue, type GutterProviderProps, } from "./GutterContext";
|
|
3
3
|
export { GutterSelector } from "./GutterSelector";
|
|
4
4
|
export { GutterColumns } from "./GutterColumns";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/editor/tree-indicators/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/editor/tree-indicators/index.ts"],"names":[],"mappings":"AAaA,UAAU;AACV,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,oBAAoB,GAGrB,MAAM,iBAAiB,CAAC;AAEzB,aAAa;AACb,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,QAAQ;AACR,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,eAAe,GAGhB,MAAM,qBAAqB,CAAC"}
|
|
@@ -78,3 +78,8 @@ export type IndicatorChunk = {
|
|
|
78
78
|
type: "error";
|
|
79
79
|
message: string;
|
|
80
80
|
};
|
|
81
|
+
/**
|
|
82
|
+
* Logical trigger names used by the frontend dependency map
|
|
83
|
+
* to resolve which providers should be refreshed.
|
|
84
|
+
*/
|
|
85
|
+
export type IndicatorDependencyTrigger = "active-sessions" | "comment-updated" | "comment-deleted" | "suggested-edit-updated" | "suggested-edit-deleted" | "item-changed" | "language-version-changed" | "manual-refresh";
|
package/dist/revision.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "0.1.
|
|
2
|
-
export declare const buildDate = "2026-02-10
|
|
1
|
+
export declare const version = "0.1.11855";
|
|
2
|
+
export declare const buildDate = "2026-02-10 12:18:48";
|
package/dist/revision.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export const version = "0.1.
|
|
2
|
-
export const buildDate = "2026-02-10
|
|
1
|
+
export const version = "0.1.11855";
|
|
2
|
+
export const buildDate = "2026-02-10 12:18:48";
|
|
3
3
|
//# sourceMappingURL=revision.js.map
|