You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 785f636
Browse filesBrowse the repository at this point in the historyBrowse files
// Renderer boundary: the notification UI renders once per notification
287
+
// (rows, repository headers, account headers) and receives its data via
288
+
// props from the route. It must not subscribe to the notifications query:
289
+
// every observer re-runs `select` and the structural-sharing walk on each
290
+
// cache write, so subscribing here multiplies that cost by the number of
291
+
// mounted items. Action-only consumers use `useNotificationActions`.
292
+
// See ARCHITECTURE.md.
293
+
files: [
294
+
'src/renderer/components/notifications/**/*.ts',
295
+
'src/renderer/components/notifications/**/*.tsx',
296
+
],
297
+
excludeFiles: ['**/*.test.ts','**/*.test.tsx'],
298
+
rules: {
299
+
'no-restricted-imports': [
300
+
'error',
301
+
{
302
+
patterns: [
303
+
{
304
+
group: [
305
+
'**/hooks/useNotifications',
306
+
'**/hooks/notifications/useNotificationsQuery',
307
+
'**/hooks/notifications/useNotificationsHost',
308
+
],
309
+
message:
310
+
'Notification UI must not subscribe to the notifications query; it receives data via props. Use `useNotificationActions` for actions (see ARCHITECTURE.md).',
311
+
},
312
+
],
313
+
},
314
+
],
315
+
},
316
+
},
285
317
{
286
318
// Renderer boundary: `icons` is a presentational leaf. It may not
287
319
// depend on any implementation layer. See ARCHITECTURE.md.
0 commit comments