@dudousxd/nestjs-telescope-ui 2.0.0 → 3.0.0
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/CHANGELOG.md +771 -0
- package/README.md +35 -0
- package/dist/client/console-url.d.ts +11 -0
- package/dist/client/console-url.d.ts.map +1 -0
- package/dist/client/console-url.js +21 -0
- package/dist/client/console-url.js.map +1 -0
- package/dist/client/index.d.ts +3 -2
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +4 -1
- package/dist/client/index.js.map +1 -1
- package/dist/client/telescope-client.d.ts +82 -11
- package/dist/client/telescope-client.d.ts.map +1 -1
- package/dist/client/telescope-client.js +101 -54
- package/dist/client/telescope-client.js.map +1 -1
- package/dist/client/types.d.ts +431 -30
- package/dist/client/types.d.ts.map +1 -1
- package/dist/react/components/batch-timeline.js +2 -2
- package/dist/react/components/batch-timeline.js.map +1 -1
- package/dist/react/components/cache-badge.d.ts +14 -6
- package/dist/react/components/cache-badge.d.ts.map +1 -1
- package/dist/react/components/cache-badge.js +26 -12
- package/dist/react/components/cache-badge.js.map +1 -1
- package/dist/react/components/charts/area-chart-card.d.ts +11 -3
- package/dist/react/components/charts/area-chart-card.d.ts.map +1 -1
- package/dist/react/components/charts/area-chart-card.js +33 -6
- package/dist/react/components/charts/area-chart-card.js.map +1 -1
- package/dist/react/components/charts/bar-chart-card.d.ts +18 -7
- package/dist/react/components/charts/bar-chart-card.d.ts.map +1 -1
- package/dist/react/components/charts/bar-chart-card.js +18 -9
- package/dist/react/components/charts/bar-chart-card.js.map +1 -1
- package/dist/react/components/charts/breakdown-card.d.ts +17 -0
- package/dist/react/components/charts/breakdown-card.d.ts.map +1 -0
- package/dist/react/components/charts/breakdown-card.js +43 -0
- package/dist/react/components/charts/breakdown-card.js.map +1 -0
- package/dist/react/components/charts/chart-card.d.ts +7 -0
- package/dist/react/components/charts/chart-card.d.ts.map +1 -1
- package/dist/react/components/charts/chart-card.js +10 -3
- package/dist/react/components/charts/chart-card.js.map +1 -1
- package/dist/react/components/charts/chart-selection.d.ts +44 -0
- package/dist/react/components/charts/chart-selection.d.ts.map +1 -0
- package/dist/react/components/charts/chart-selection.js +36 -0
- package/dist/react/components/charts/chart-selection.js.map +1 -0
- package/dist/react/components/charts/chart-theme.d.ts +62 -19
- package/dist/react/components/charts/chart-theme.d.ts.map +1 -1
- package/dist/react/components/charts/chart-theme.js +72 -13
- package/dist/react/components/charts/chart-theme.js.map +1 -1
- package/dist/react/components/charts/distribution-chart-card.d.ts +17 -0
- package/dist/react/components/charts/distribution-chart-card.d.ts.map +1 -0
- package/dist/react/components/charts/distribution-chart-card.js +46 -0
- package/dist/react/components/charts/distribution-chart-card.js.map +1 -0
- package/dist/react/components/charts/gauge-card.d.ts +12 -0
- package/dist/react/components/charts/gauge-card.d.ts.map +1 -0
- package/dist/react/components/charts/gauge-card.js +17 -0
- package/dist/react/components/charts/gauge-card.js.map +1 -0
- package/dist/react/components/charts/index.d.ts +1 -0
- package/dist/react/components/charts/index.d.ts.map +1 -1
- package/dist/react/components/charts/index.js +1 -0
- package/dist/react/components/charts/index.js.map +1 -1
- package/dist/react/components/charts/stacked-area-chart-card.d.ts +17 -3
- package/dist/react/components/charts/stacked-area-chart-card.d.ts.map +1 -1
- package/dist/react/components/charts/stacked-area-chart-card.js +31 -8
- package/dist/react/components/charts/stacked-area-chart-card.js.map +1 -1
- package/dist/react/components/entries-table.d.ts.map +1 -1
- package/dist/react/components/entries-table.js +17 -3
- package/dist/react/components/entries-table.js.map +1 -1
- package/dist/react/components/entry-detail.d.ts +2 -0
- package/dist/react/components/entry-detail.d.ts.map +1 -1
- package/dist/react/components/entry-detail.js +186 -20
- package/dist/react/components/entry-detail.js.map +1 -1
- package/dist/react/components/entry-insights.d.ts.map +1 -1
- package/dist/react/components/entry-insights.js +28 -17
- package/dist/react/components/entry-insights.js.map +1 -1
- package/dist/react/components/entry-types.d.ts +29 -0
- package/dist/react/components/entry-types.d.ts.map +1 -1
- package/dist/react/components/entry-types.js +60 -0
- package/dist/react/components/entry-types.js.map +1 -1
- package/dist/react/components/export-json-toolbar.js +2 -2
- package/dist/react/components/export-json-toolbar.js.map +1 -1
- package/dist/react/components/extensions/panel-column-menu.d.ts +19 -0
- package/dist/react/components/extensions/panel-column-menu.d.ts.map +1 -0
- package/dist/react/components/extensions/panel-column-menu.js +47 -0
- package/dist/react/components/extensions/panel-column-menu.js.map +1 -0
- package/dist/react/components/extensions/panel-renderer.d.ts +46 -0
- package/dist/react/components/extensions/panel-renderer.d.ts.map +1 -0
- package/dist/react/components/extensions/panel-renderer.js +122 -0
- package/dist/react/components/extensions/panel-renderer.js.map +1 -0
- package/dist/react/components/extensions/panel-table-header.d.ts +18 -0
- package/dist/react/components/extensions/panel-table-header.d.ts.map +1 -0
- package/dist/react/components/extensions/panel-table-header.js +82 -0
- package/dist/react/components/extensions/panel-table-header.js.map +1 -0
- package/dist/react/components/extensions/panel-table.d.ts +27 -0
- package/dist/react/components/extensions/panel-table.d.ts.map +1 -0
- package/dist/react/components/extensions/panel-table.js +87 -0
- package/dist/react/components/extensions/panel-table.js.map +1 -0
- package/dist/react/components/extensions/stat-card.d.ts +18 -0
- package/dist/react/components/extensions/stat-card.d.ts.map +1 -0
- package/dist/react/components/extensions/stat-card.js +44 -0
- package/dist/react/components/extensions/stat-card.js.map +1 -0
- package/dist/react/components/extensions/table-columns.d.ts +32 -0
- package/dist/react/components/extensions/table-columns.d.ts.map +1 -0
- package/dist/react/components/extensions/table-columns.js +51 -0
- package/dist/react/components/extensions/table-columns.js.map +1 -0
- package/dist/react/components/extensions/table-features.d.ts +47 -0
- package/dist/react/components/extensions/table-features.d.ts.map +1 -0
- package/dist/react/components/extensions/table-features.js +45 -0
- package/dist/react/components/extensions/table-features.js.map +1 -0
- package/dist/react/components/extensions/table-query.d.ts +53 -0
- package/dist/react/components/extensions/table-query.d.ts.map +1 -0
- package/dist/react/components/extensions/table-query.js +51 -0
- package/dist/react/components/extensions/table-query.js.map +1 -0
- package/dist/react/components/flamegraph-view.d.ts +18 -0
- package/dist/react/components/flamegraph-view.d.ts.map +1 -0
- package/dist/react/components/flamegraph-view.js +48 -0
- package/dist/react/components/flamegraph-view.js.map +1 -0
- package/dist/react/components/flamegraph.d.ts +34 -0
- package/dist/react/components/flamegraph.d.ts.map +1 -0
- package/dist/react/components/flamegraph.js +54 -0
- package/dist/react/components/flamegraph.js.map +1 -0
- package/dist/react/components/inertia-badge.d.ts +33 -0
- package/dist/react/components/inertia-badge.d.ts.map +1 -0
- package/dist/react/components/inertia-badge.js +72 -0
- package/dist/react/components/inertia-badge.js.map +1 -0
- package/dist/react/components/inertia-body.d.ts +11 -0
- package/dist/react/components/inertia-body.d.ts.map +1 -0
- package/dist/react/components/inertia-body.js +127 -0
- package/dist/react/components/inertia-body.js.map +1 -0
- package/dist/react/components/official-event.d.ts +16 -0
- package/dist/react/components/official-event.d.ts.map +1 -0
- package/dist/react/components/official-event.js +88 -0
- package/dist/react/components/official-event.js.map +1 -0
- package/dist/react/components/pulse-panel.d.ts.map +1 -1
- package/dist/react/components/pulse-panel.js +6 -6
- package/dist/react/components/pulse-panel.js.map +1 -1
- package/dist/react/components/queues/EnqueueJobForm.d.ts.map +1 -1
- package/dist/react/components/queues/EnqueueJobForm.js +2 -1
- package/dist/react/components/queues/EnqueueJobForm.js.map +1 -1
- package/dist/react/components/queues/JobActions.d.ts.map +1 -1
- package/dist/react/components/queues/JobActions.js +11 -9
- package/dist/react/components/queues/JobActions.js.map +1 -1
- package/dist/react/components/queues/JobDetailDrawer.d.ts.map +1 -1
- package/dist/react/components/queues/JobDetailDrawer.js +8 -13
- package/dist/react/components/queues/JobDetailDrawer.js.map +1 -1
- package/dist/react/components/queues/JobTable.d.ts.map +1 -1
- package/dist/react/components/queues/JobTable.js +0 -0
- package/dist/react/components/queues/JobTable.js.map +1 -1
- package/dist/react/components/queues/QueueList.d.ts.map +1 -1
- package/dist/react/components/queues/QueueList.js +6 -6
- package/dist/react/components/queues/QueueList.js.map +1 -1
- package/dist/react/components/queues/QueueStateTabs.d.ts.map +1 -1
- package/dist/react/components/queues/QueueStateTabs.js +9 -7
- package/dist/react/components/queues/QueueStateTabs.js.map +1 -1
- package/dist/react/components/queues/queue-format.d.ts +5 -1
- package/dist/react/components/queues/queue-format.d.ts.map +1 -1
- package/dist/react/components/queues/queue-format.js +11 -7
- package/dist/react/components/queues/queue-format.js.map +1 -1
- package/dist/react/components/queues-panel.js +1 -1
- package/dist/react/components/queues-panel.js.map +1 -1
- package/dist/react/components/request-timeline.d.ts.map +1 -1
- package/dist/react/components/request-timeline.js +2 -2
- package/dist/react/components/request-timeline.js.map +1 -1
- package/dist/react/components/retention-indicator.d.ts.map +1 -1
- package/dist/react/components/retention-indicator.js +1 -1
- package/dist/react/components/retention-indicator.js.map +1 -1
- package/dist/react/components/sparkline.d.ts.map +1 -1
- package/dist/react/components/sparkline.js +1 -1
- package/dist/react/components/sparkline.js.map +1 -1
- package/dist/react/components/tag-autocomplete.d.ts +21 -4
- package/dist/react/components/tag-autocomplete.d.ts.map +1 -1
- package/dist/react/components/tag-autocomplete.js +57 -29
- package/dist/react/components/tag-autocomplete.js.map +1 -1
- package/dist/react/components/to-csv.d.ts +25 -0
- package/dist/react/components/to-csv.d.ts.map +1 -0
- package/dist/react/components/to-csv.js +78 -0
- package/dist/react/components/to-csv.js.map +1 -0
- package/dist/react/components/user-tag.d.ts +15 -0
- package/dist/react/components/user-tag.d.ts.map +1 -1
- package/dist/react/components/user-tag.js +19 -0
- package/dist/react/components/user-tag.js.map +1 -1
- package/dist/react/components/waterfall-view.d.ts +13 -0
- package/dist/react/components/waterfall-view.d.ts.map +1 -0
- package/dist/react/components/waterfall-view.js +58 -0
- package/dist/react/components/waterfall-view.js.map +1 -0
- package/dist/react/components/window-select.d.ts.map +1 -1
- package/dist/react/components/window-select.js +6 -2
- package/dist/react/components/window-select.js.map +1 -1
- package/dist/react/index.d.ts +7 -1
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +11 -1
- package/dist/react/index.js.map +1 -1
- package/dist/react/ui/badge.d.ts +16 -0
- package/dist/react/ui/badge.d.ts.map +1 -0
- package/dist/react/ui/badge.js +28 -0
- package/dist/react/ui/badge.js.map +1 -0
- package/dist/react/ui/button.d.ts +17 -0
- package/dist/react/ui/button.d.ts.map +1 -0
- package/dist/react/ui/button.js +35 -0
- package/dist/react/ui/button.js.map +1 -0
- package/dist/react/ui/chart.d.ts +116 -0
- package/dist/react/ui/chart.d.ts.map +1 -0
- package/dist/react/ui/chart.js +191 -0
- package/dist/react/ui/chart.js.map +1 -0
- package/dist/react/ui/cn.d.ts +8 -0
- package/dist/react/ui/cn.d.ts.map +1 -0
- package/dist/react/ui/cn.js +11 -0
- package/dist/react/ui/cn.js.map +1 -0
- package/dist/react/ui/dialog.d.ts +26 -0
- package/dist/react/ui/dialog.d.ts.map +1 -0
- package/dist/react/ui/dialog.js +40 -0
- package/dist/react/ui/dialog.js.map +1 -0
- package/dist/react/ui/index.d.ts +24 -0
- package/dist/react/ui/index.d.ts.map +1 -0
- package/dist/react/ui/index.js +24 -0
- package/dist/react/ui/index.js.map +1 -0
- package/dist/react/ui/input.d.ts +3 -0
- package/dist/react/ui/input.d.ts.map +1 -0
- package/dist/react/ui/input.js +8 -0
- package/dist/react/ui/input.js.map +1 -0
- package/dist/react/ui/select.d.ts +20 -0
- package/dist/react/ui/select.d.ts.map +1 -0
- package/dist/react/ui/select.js +27 -0
- package/dist/react/ui/select.js.map +1 -0
- package/dist/react/ui/table.d.ts +27 -0
- package/dist/react/ui/table.d.ts.map +1 -0
- package/dist/react/ui/table.js +22 -0
- package/dist/react/ui/table.js.map +1 -0
- package/dist/react/ui/tabs.d.ts +12 -0
- package/dist/react/ui/tabs.d.ts.map +1 -0
- package/dist/react/ui/tabs.js +20 -0
- package/dist/react/ui/tabs.js.map +1 -0
- package/dist/react/ui/tooltip.d.ts +10 -0
- package/dist/react/ui/tooltip.d.ts.map +1 -0
- package/dist/react/ui/tooltip.js +12 -0
- package/dist/react/ui/tooltip.js.map +1 -0
- package/dist/react/use-telescope-queries.d.ts +129 -130
- package/dist/react/use-telescope-queries.d.ts.map +1 -1
- package/dist/react/use-telescope-queries.js +146 -1
- package/dist/react/use-telescope-queries.js.map +1 -1
- package/dist/react/use-telescope-stream.d.ts +10 -0
- package/dist/react/use-telescope-stream.d.ts.map +1 -0
- package/dist/react/use-telescope-stream.js +40 -0
- package/dist/react/use-telescope-stream.js.map +1 -0
- package/dist/server/index.d.ts +3 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +5 -0
- package/dist/server/index.js.map +1 -1
- package/dist/server/telescope-ui.controller.d.ts.map +1 -1
- package/dist/server/telescope-ui.controller.js +3 -1
- package/dist/server/telescope-ui.controller.js.map +1 -1
- package/dist/server/telescope-ui.module.d.ts +28 -1
- package/dist/server/telescope-ui.module.d.ts.map +1 -1
- package/dist/server/telescope-ui.module.js +48 -4
- package/dist/server/telescope-ui.module.js.map +1 -1
- package/dist/server/telescope-ui.options.d.ts +63 -0
- package/dist/server/telescope-ui.options.d.ts.map +1 -1
- package/dist/server/telescope-ui.options.js.map +1 -1
- package/dist/spa/assets/index-BfyQ_2IN.css +1 -0
- package/dist/spa/assets/index-EBJiTdQF.js +159 -0
- package/dist/spa/index.html +2 -2
- package/package.json +75 -36
- package/skills/telescope-ui-dashboard/SKILL.md +203 -0
- package/dist/react/components/type-tabs.d.ts +0 -5
- package/dist/react/components/type-tabs.d.ts.map +0 -1
- package/dist/react/components/type-tabs.js +0 -8
- package/dist/react/components/type-tabs.js.map +0 -1
- package/dist/spa/assets/index-CCzTpxj3.css +0 -1
- package/dist/spa/assets/index-w0XTI5OM.js +0 -135
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { queryOptions, useMutation, useQuery, useQueryClient } from '@tanstack/react-query';
|
|
1
|
+
import { infiniteQueryOptions, queryOptions, useInfiniteQuery, useMutation, useQuery, useQueryClient, } from '@tanstack/react-query';
|
|
2
2
|
import { usePaused, useTelescopeClient } from './telescope-context.js';
|
|
3
3
|
export const REFETCH_MS = 3000;
|
|
4
4
|
export const LIVE_REFETCH_MS = 2500;
|
|
@@ -25,6 +25,31 @@ export function tagsQuery(client, prefix = '') {
|
|
|
25
25
|
staleTime: REFETCH_MS,
|
|
26
26
|
});
|
|
27
27
|
}
|
|
28
|
+
/** Tags per request. Two screenfuls, so the first page fills the list and the second arrives before
|
|
29
|
+
* an operator scrolls to the end of it. */
|
|
30
|
+
export const TAG_PAGE_SIZE = 50;
|
|
31
|
+
/**
|
|
32
|
+
* A tag picker's list: ordered by count, narrowed by `search` on the SERVER, and paged.
|
|
33
|
+
*
|
|
34
|
+
* All three matter together. The list is bounded because tag cardinality grows with the data, which
|
|
35
|
+
* makes the values an operator searches for routinely the ones the bound cut — so a search that
|
|
36
|
+
* filtered the fetched page could not find them, and a bound with no paging past it is a ceiling.
|
|
37
|
+
*/
|
|
38
|
+
export function tagsInfiniteQuery(client, prefix = '', search = '') {
|
|
39
|
+
return infiniteQueryOptions({
|
|
40
|
+
queryKey: ['telescope', 'tags', 'page', prefix, search],
|
|
41
|
+
queryFn: ({ pageParam }) => client.tags(prefix === '' ? undefined : prefix, {
|
|
42
|
+
search,
|
|
43
|
+
limit: TAG_PAGE_SIZE,
|
|
44
|
+
offset: pageParam,
|
|
45
|
+
}),
|
|
46
|
+
initialPageParam: 0,
|
|
47
|
+
// A short page is the last one. Counting what is already loaded (rather than multiplying a page
|
|
48
|
+
// number) keeps the offset right even when a page comes back trimmed.
|
|
49
|
+
getNextPageParam: (last, all) => last.length < TAG_PAGE_SIZE ? undefined : all.reduce((n, page) => n + page.length, 0),
|
|
50
|
+
staleTime: REFETCH_MS,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
28
53
|
export function metaQuery(client, paused = false) {
|
|
29
54
|
return queryOptions({
|
|
30
55
|
queryKey: ['telescope', 'meta'],
|
|
@@ -32,6 +57,15 @@ export function metaQuery(client, paused = false) {
|
|
|
32
57
|
refetchInterval: intervalWhenLive(REFETCH_MS, paused),
|
|
33
58
|
});
|
|
34
59
|
}
|
|
60
|
+
// Extension panel data — fetched per (ext, provider, query) for dashboard panels.
|
|
61
|
+
// No live-tail polling here; the dashboard page (Task 9) opts panels into
|
|
62
|
+
// refetch as needed. React Query caches per query key so identical panels share.
|
|
63
|
+
export function extDataQuery(client, ext, provider, query) {
|
|
64
|
+
return queryOptions({
|
|
65
|
+
queryKey: ['telescope', 'ext-data', ext, provider, query],
|
|
66
|
+
queryFn: () => client.extData(ext, provider, query),
|
|
67
|
+
});
|
|
68
|
+
}
|
|
35
69
|
export function serverStatsQuery(client, paused = false) {
|
|
36
70
|
return queryOptions({
|
|
37
71
|
queryKey: ['telescope', 'server-stats'],
|
|
@@ -39,6 +73,13 @@ export function serverStatsQuery(client, paused = false) {
|
|
|
39
73
|
refetchInterval: intervalWhenLive(REFETCH_MS, paused),
|
|
40
74
|
});
|
|
41
75
|
}
|
|
76
|
+
export function serverStatsHistoryQuery(client, paused = false) {
|
|
77
|
+
return queryOptions({
|
|
78
|
+
queryKey: ['telescope', 'server-stats-history'],
|
|
79
|
+
queryFn: () => client.serverStatsHistory(),
|
|
80
|
+
refetchInterval: intervalWhenLive(REFETCH_MS, paused),
|
|
81
|
+
});
|
|
82
|
+
}
|
|
42
83
|
export function healthQuery(client, paused = false) {
|
|
43
84
|
return queryOptions({
|
|
44
85
|
queryKey: ['telescope', 'health'],
|
|
@@ -56,6 +97,13 @@ export function retentionQuery(client, paused = false) {
|
|
|
56
97
|
refetchInterval: intervalWhenLive(REFETCH_MS, paused),
|
|
57
98
|
});
|
|
58
99
|
}
|
|
100
|
+
export function prunesQuery(client, paused = false) {
|
|
101
|
+
return queryOptions({
|
|
102
|
+
queryKey: ['telescope', 'prunes'],
|
|
103
|
+
queryFn: () => client.prunes(),
|
|
104
|
+
refetchInterval: intervalWhenLive(REFETCH_MS, paused),
|
|
105
|
+
});
|
|
106
|
+
}
|
|
59
107
|
export function pulseQuery(client, window, paused = false) {
|
|
60
108
|
return queryOptions({
|
|
61
109
|
queryKey: ['telescope', 'pulse', window],
|
|
@@ -70,6 +118,14 @@ export function statsQuery(client, type, window, paused = false) {
|
|
|
70
118
|
refetchInterval: intervalWhenLive(REFETCH_MS, paused),
|
|
71
119
|
});
|
|
72
120
|
}
|
|
121
|
+
/** The AI screen's data. Polls slower than the live tail: it is a window aggregate. */
|
|
122
|
+
export function aiQuery(client, window, paused = false) {
|
|
123
|
+
return queryOptions({
|
|
124
|
+
queryKey: ['telescope', 'ai', window],
|
|
125
|
+
queryFn: () => client.ai(window, { buckets: 24, top: 8, limit: 100 }),
|
|
126
|
+
refetchInterval: intervalWhenLive(REFETCH_MS * 3, paused),
|
|
127
|
+
});
|
|
128
|
+
}
|
|
73
129
|
export function queuesQuery(client, window, paused = false) {
|
|
74
130
|
return queryOptions({
|
|
75
131
|
queryKey: ['telescope', 'queues', window],
|
|
@@ -91,6 +147,13 @@ export function tracesQuery(client, window, limit, paused = false) {
|
|
|
91
147
|
refetchInterval: intervalWhenLive(REFETCH_MS, paused),
|
|
92
148
|
});
|
|
93
149
|
}
|
|
150
|
+
export function waterfallQuery(client, traceId) {
|
|
151
|
+
return queryOptions({
|
|
152
|
+
queryKey: ['telescope', 'waterfall', traceId],
|
|
153
|
+
queryFn: () => client.waterfall(traceId),
|
|
154
|
+
enabled: traceId !== '',
|
|
155
|
+
});
|
|
156
|
+
}
|
|
94
157
|
// --- live queue query keys (stable, shared by queries + mutation invalidation) ---
|
|
95
158
|
export function liveQueuesKey() {
|
|
96
159
|
return ['telescope', 'live-queues'];
|
|
@@ -193,6 +256,9 @@ export function useQueueEnqueue() {
|
|
|
193
256
|
export function useRetention() {
|
|
194
257
|
return useQuery(retentionQuery(useTelescopeClient(), usePaused()));
|
|
195
258
|
}
|
|
259
|
+
export function usePrunes() {
|
|
260
|
+
return useQuery(prunesQuery(useTelescopeClient(), usePaused()));
|
|
261
|
+
}
|
|
196
262
|
export function usePrune() {
|
|
197
263
|
const client = useTelescopeClient();
|
|
198
264
|
const queryClient = useQueryClient();
|
|
@@ -200,6 +266,7 @@ export function usePrune() {
|
|
|
200
266
|
mutationFn: () => client.prune(),
|
|
201
267
|
onSuccess: () => {
|
|
202
268
|
queryClient.invalidateQueries({ queryKey: retentionKey() });
|
|
269
|
+
queryClient.invalidateQueries({ queryKey: ['telescope', 'prunes'] });
|
|
203
270
|
queryClient.invalidateQueries({ queryKey: ['telescope', 'entries'] });
|
|
204
271
|
},
|
|
205
272
|
});
|
|
@@ -208,6 +275,28 @@ export function useExplain() {
|
|
|
208
275
|
const client = useTelescopeClient();
|
|
209
276
|
return useMutation({ mutationFn: (entryId) => client.explain(entryId) });
|
|
210
277
|
}
|
|
278
|
+
export function useDiagnose() {
|
|
279
|
+
const client = useTelescopeClient();
|
|
280
|
+
return useMutation({
|
|
281
|
+
mutationFn: (vars) => client.diagnose(vars.entryId, vars.force ?? false),
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Query options for the read-only cached-diagnosis lookup. `enabled` lets the
|
|
286
|
+
* caller gate the fetch on `meta.ai.enabled` so we never even ask when AI is off.
|
|
287
|
+
* No polling — a diagnosis, once cached, is stable for the page's lifetime; the
|
|
288
|
+
* Re-run mutation invalidates this key to refresh after a forced re-diagnosis.
|
|
289
|
+
*/
|
|
290
|
+
export function cachedDiagnosisQuery(client, entryId, enabled) {
|
|
291
|
+
return queryOptions({
|
|
292
|
+
queryKey: ['telescope', 'cached-diagnosis', entryId],
|
|
293
|
+
queryFn: () => client.cachedDiagnosis(entryId),
|
|
294
|
+
enabled,
|
|
295
|
+
});
|
|
296
|
+
}
|
|
297
|
+
export function useCachedDiagnosis(entryId, enabled) {
|
|
298
|
+
return useQuery(cachedDiagnosisQuery(useTelescopeClient(), entryId, enabled));
|
|
299
|
+
}
|
|
211
300
|
export function useEntries(query = {}) {
|
|
212
301
|
return useQuery(entriesQuery(useTelescopeClient(), query, usePaused()));
|
|
213
302
|
}
|
|
@@ -220,18 +309,30 @@ export function useMeta() {
|
|
|
220
309
|
export function useServerStats() {
|
|
221
310
|
return useQuery(serverStatsQuery(useTelescopeClient(), usePaused()));
|
|
222
311
|
}
|
|
312
|
+
export function useServerStatsHistory() {
|
|
313
|
+
return useQuery(serverStatsHistoryQuery(useTelescopeClient(), usePaused()));
|
|
314
|
+
}
|
|
315
|
+
export function useExtensionData(ext, provider, query) {
|
|
316
|
+
return useQuery(extDataQuery(useTelescopeClient(), ext, provider, query));
|
|
317
|
+
}
|
|
223
318
|
export function useHealth() {
|
|
224
319
|
return useQuery(healthQuery(useTelescopeClient(), usePaused()));
|
|
225
320
|
}
|
|
226
321
|
export function useTags(prefix = '') {
|
|
227
322
|
return useQuery(tagsQuery(useTelescopeClient(), prefix));
|
|
228
323
|
}
|
|
324
|
+
export function useTagsInfinite(prefix = '', search = '') {
|
|
325
|
+
return useInfiniteQuery(tagsInfiniteQuery(useTelescopeClient(), prefix, search));
|
|
326
|
+
}
|
|
229
327
|
export function useStats(type, window) {
|
|
230
328
|
return useQuery(statsQuery(useTelescopeClient(), type, window, usePaused()));
|
|
231
329
|
}
|
|
232
330
|
export function usePulse(window) {
|
|
233
331
|
return useQuery(pulseQuery(useTelescopeClient(), window, usePaused()));
|
|
234
332
|
}
|
|
333
|
+
export function useAi(window) {
|
|
334
|
+
return useQuery(aiQuery(useTelescopeClient(), window, usePaused()));
|
|
335
|
+
}
|
|
235
336
|
export function useQueues(window) {
|
|
236
337
|
return useQuery(queuesQuery(useTelescopeClient(), window, usePaused()));
|
|
237
338
|
}
|
|
@@ -241,4 +342,48 @@ export function useTimeseries(query) {
|
|
|
241
342
|
export function useTraces(window, limit) {
|
|
242
343
|
return useQuery(tracesQuery(useTelescopeClient(), window, limit, usePaused()));
|
|
243
344
|
}
|
|
345
|
+
export function useWaterfall(traceId) {
|
|
346
|
+
return useQuery(waterfallQuery(useTelescopeClient(), traceId));
|
|
347
|
+
}
|
|
348
|
+
// ── CPU profiling (flamegraphs) ───────────────────────────────────────────────
|
|
349
|
+
export function profilerStatusQuery(client, paused = false) {
|
|
350
|
+
return queryOptions({
|
|
351
|
+
queryKey: ['telescope', 'profiler-status'],
|
|
352
|
+
queryFn: () => client.profilerStatus(),
|
|
353
|
+
refetchInterval: intervalWhenLive(REFETCH_MS, paused),
|
|
354
|
+
});
|
|
355
|
+
}
|
|
356
|
+
export function profilesQuery(client, limit, paused = false) {
|
|
357
|
+
return queryOptions({
|
|
358
|
+
queryKey: ['telescope', 'profiles', limit],
|
|
359
|
+
queryFn: () => client.profiles(limit),
|
|
360
|
+
refetchInterval: intervalWhenLive(REFETCH_MS, paused),
|
|
361
|
+
});
|
|
362
|
+
}
|
|
363
|
+
export function profileQuery(client, id) {
|
|
364
|
+
return queryOptions({
|
|
365
|
+
queryKey: ['telescope', 'profile', id],
|
|
366
|
+
queryFn: () => client.profile(id),
|
|
367
|
+
enabled: id !== '',
|
|
368
|
+
});
|
|
369
|
+
}
|
|
370
|
+
export function useProfilerStatus() {
|
|
371
|
+
return useQuery(profilerStatusQuery(useTelescopeClient(), usePaused()));
|
|
372
|
+
}
|
|
373
|
+
export function useProfiles(limit) {
|
|
374
|
+
return useQuery(profilesQuery(useTelescopeClient(), limit, usePaused()));
|
|
375
|
+
}
|
|
376
|
+
export function useProfile(id) {
|
|
377
|
+
return useQuery(profileQuery(useTelescopeClient(), id));
|
|
378
|
+
}
|
|
379
|
+
export function useArmProfile() {
|
|
380
|
+
const client = useTelescopeClient();
|
|
381
|
+
const queryClient = useQueryClient();
|
|
382
|
+
return useMutation({
|
|
383
|
+
mutationFn: (vars) => client.armProfile(vars.count, vars.label),
|
|
384
|
+
onSuccess: () => {
|
|
385
|
+
queryClient.invalidateQueries({ queryKey: ['telescope', 'profiler-status'] });
|
|
386
|
+
},
|
|
387
|
+
});
|
|
388
|
+
}
|
|
244
389
|
//# sourceMappingURL=use-telescope-queries.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-telescope-queries.js","sourceRoot":"","sources":["../../src/react/use-telescope-queries.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"use-telescope-queries.js","sourceRoot":"","sources":["../../src/react/use-telescope-queries.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,QAAQ,EACR,cAAc,GACf,MAAM,uBAAuB,CAAC;AAS/B,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEvE,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,CAAC;AAC/B,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;AAEpC,kFAAkF;AAClF,SAAS,gBAAgB,CAAC,EAAU,EAAE,MAAe;IACnD,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAAuB,EAAE,QAAsB,EAAE,EAAE,MAAM,GAAG,KAAK;IAC5F,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC;QACzC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;QACpC,eAAe,EAAE,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,UAAU,CAAC,MAAuB,EAAE,EAAU;IAC5D,OAAO,YAAY,CAAC,EAAE,QAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACjG,CAAC;AACD,8EAA8E;AAC9E,sEAAsE;AACtE,MAAM,UAAU,SAAS,CAAC,MAAuB,EAAE,MAAM,GAAG,EAAE;IAC5D,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC;QACvC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;QAC9D,SAAS,EAAE,UAAU;KACtB,CAAC,CAAC;AACL,CAAC;AAED;4CAC4C;AAC5C,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,CAAC;AAEhC;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAuB,EAAE,MAAM,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE;IACjF,OAAO,oBAAoB,CAAC;QAC1B,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;QACvD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CACzB,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE;YAC9C,MAAM;YACN,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,SAAS;SAClB,CAAC;QACJ,gBAAgB,EAAE,CAAC;QACnB,gGAAgG;QAChG,sEAAsE;QACtE,gBAAgB,EAAE,CAAC,IAAgB,EAAE,GAAiB,EAAE,EAAE,CACxD,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACvF,SAAS,EAAE,UAAU;KACtB,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,SAAS,CAAC,MAAuB,EAAE,MAAM,GAAG,KAAK;IAC/D,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC;QAC/B,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE;QAC5B,eAAe,EAAE,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AACD,kFAAkF;AAClF,0EAA0E;AAC1E,iFAAiF;AACjF,MAAM,UAAU,YAAY,CAC1B,MAAuB,EACvB,GAAW,EACX,QAAgB,EAChB,KAA+B;IAE/B,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC;QACzD,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC;KACpD,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,gBAAgB,CAAC,MAAuB,EAAE,MAAM,GAAG,KAAK;IACtE,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,cAAc,CAAC;QACvC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE;QACnC,eAAe,EAAE,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,uBAAuB,CAAC,MAAuB,EAAE,MAAM,GAAG,KAAK;IAC7E,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,sBAAsB,CAAC;QAC/C,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,kBAAkB,EAAE;QAC1C,eAAe,EAAE,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,WAAW,CAAC,MAAuB,EAAE,MAAM,GAAG,KAAK;IACjE,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC;QACjC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE;QAC9B,eAAe,EAAE,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,YAAY;IAC1B,OAAO,CAAC,WAAW,EAAE,WAAW,CAAU,CAAC;AAC7C,CAAC;AACD,MAAM,UAAU,cAAc,CAAC,MAAuB,EAAE,MAAM,GAAG,KAAK;IACpE,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,YAAY,EAAE;QACxB,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE;QACjC,eAAe,EAAE,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,WAAW,CAAC,MAAuB,EAAE,MAAM,GAAG,KAAK;IACjE,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC;QACjC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE;QAC9B,eAAe,EAAE,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,UAAU,CAAC,MAAuB,EAAE,MAAc,EAAE,MAAM,GAAG,KAAK;IAChF,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC;QACxC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QACnC,eAAe,EAAE,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,UAAU,CAAC,MAAuB,EAAE,IAAY,EAAE,MAAc,EAAE,MAAM,GAAG,KAAK;IAC9F,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC;QAC9C,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC;QACzC,eAAe,EAAE,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AACD,uFAAuF;AACvF,MAAM,UAAU,OAAO,CAAC,MAAuB,EAAE,MAAc,EAAE,MAAM,GAAG,KAAK;IAC7E,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC;QACrC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;QACrE,eAAe,EAAE,gBAAgB,CAAC,UAAU,GAAG,CAAC,EAAE,MAAM,CAAC;KAC1D,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,WAAW,CAAC,MAAuB,EAAE,MAAc,EAAE,MAAM,GAAG,KAAK;IACjF,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC;QACzC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;QACpC,eAAe,EAAE,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,eAAe,CAC7B,MAAuB,EACvB,KAAwE,EACxE,MAAM,GAAG,KAAK;IAEd,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,KAAK,CAAC;QAC5C,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC;QACvC,eAAe,EAAE,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,MAAuB,EACvB,MAAc,EACd,KAAc,EACd,MAAM,GAAG,KAAK;IAEd,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;QAChD,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;QAC3C,eAAe,EAAE,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,MAAuB,EAAE,OAAe;IACrE,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC;QAC7C,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC;QACxC,OAAO,EAAE,OAAO,KAAK,EAAE;KACxB,CAAC,CAAC;AACL,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,aAAa;IAC3B,OAAO,CAAC,WAAW,EAAE,aAAa,CAAU,CAAC;AAC/C,CAAC;AACD,MAAM,UAAU,cAAc,CAAC,MAAc,EAAE,KAAa;IAC1D,OAAO,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,CAAU,CAAC;AAC/D,CAAC;AACD,MAAM,UAAU,YAAY,CAC1B,MAAc,EACd,KAAa,EACb,KAAiB,EACjB,OAA4C,EAAE;IAE9C,OAAO,CAAC,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAU,CAAC;AAC1E,CAAC;AACD,MAAM,UAAU,WAAW,CAAC,MAAc,EAAE,KAAa,EAAE,EAAU;IACnE,OAAO,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAU,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAuB,EAAE,MAAM,GAAG,KAAK;IACrE,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,aAAa,EAAE;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE;QAClC,eAAe,EAAE,gBAAgB,CAAC,eAAe,EAAE,MAAM,CAAC;KAC3D,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,cAAc,CAC5B,MAAuB,EACvB,MAAc,EACd,KAAa,EACb,KAAiB,EACjB,OAA4C,EAAE,EAC9C,MAAM,GAAG,KAAK;IAEd,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;QAClD,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;QAC3D,eAAe,EAAE,gBAAgB,CAAC,eAAe,EAAE,MAAM,CAAC;KAC3D,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,aAAa,CAAC,MAAuB,EAAE,MAAc,EAAE,KAAa,EAAE,EAAU;IAC9F,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACxC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;KAClD,CAAC,CAAC;AACL,CAAC;AAED,yBAAyB;AACzB,MAAM,UAAU,gBAAgB;IAC9B,OAAO,CAAC,WAAW,EAAE,gBAAgB,CAAU,CAAC;AAClD,CAAC;AACD,MAAM,UAAU,kBAAkB,CAAC,MAAuB,EAAE,MAAM,GAAG,KAAK;IACxE,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,gBAAgB,EAAE;QAC5B,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE;QACrC,eAAe,EAAE,gBAAgB,CAAC,eAAe,EAAE,MAAM,CAAC;KAC3D,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,QAAQ,CAAC,eAAe,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AACtE,CAAC;AACD,MAAM,UAAU,gBAAgB;IAC9B,OAAO,QAAQ,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AACzE,CAAC;AACD,MAAM,UAAU,YAAY,CAC1B,MAAc,EACd,KAAa,EACb,KAAiB,EACjB,OAA4C,EAAE;IAE9C,OAAO,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AACjG,CAAC;AACD,MAAM,UAAU,WAAW,CAAC,MAAc,EAAE,KAAa,EAAE,EAAU;IACnE,OAAO,QAAQ,CAAC,aAAa,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;AAC1E,CAAC;AASD,MAAM,UAAU,iBAAiB;IAC/B,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,CAAC,IAAmB,EAAE,EAAE,CAClC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC;QACtE,SAAS,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YACzB,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACrF,WAAW,CAAC,iBAAiB,CAAC;gBAC5B,QAAQ,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC;aAC/D,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AASD,MAAM,UAAU,cAAc;IAC5B,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,CAAC,IAAoB,EAAE,EAAE,CACnC,MAAM,CAAC,WAAW,CAChB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CACtD;QACH,SAAS,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YACzB,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACrF,WAAW,CAAC,iBAAiB,CAAC;gBAC5B,QAAQ,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC;aAC/D,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AASD,MAAM,UAAU,eAAe;IAC7B,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,CAAC,IAAiB,EAAE,EAAE,CAChC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE;YAC3C,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;QACJ,SAAS,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YACzB,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;YAC7D,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACrF,WAAW,CAAC,iBAAiB,CAAC;gBAC5B,QAAQ,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC;aAC/D,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,OAAO,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,QAAQ,CAAC,WAAW,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE;QAChC,SAAS,EAAE,GAAG,EAAE;YACd,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;YAC5D,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;YACrE,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,OAAO,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AACnF,CAAC;AAQD,MAAM,UAAU,WAAW;IACzB,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,CAAC,IAAkB,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC;KACvF,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAuB,EAAE,OAAe,EAAE,OAAgB;IAC7F,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,kBAAkB,EAAE,OAAO,CAAC;QACpD,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC;QAC9C,OAAO;KACR,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,OAAgB;IAClE,OAAO,QAAQ,CAAC,oBAAoB,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,QAAsB,EAAE;IACjD,OAAO,QAAQ,CAAC,YAAY,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAC1E,CAAC;AACD,MAAM,UAAU,QAAQ,CAAC,EAAU;IACjC,OAAO,QAAQ,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;AACxD,CAAC;AACD,MAAM,UAAU,OAAO;IACrB,OAAO,QAAQ,CAAC,SAAS,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAChE,CAAC;AACD,MAAM,UAAU,cAAc;IAC5B,OAAO,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AACvE,CAAC;AACD,MAAM,UAAU,qBAAqB;IACnC,OAAO,QAAQ,CAAC,uBAAuB,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAC9E,CAAC;AACD,MAAM,UAAU,gBAAgB,CAAC,GAAW,EAAE,QAAgB,EAAE,KAA+B;IAC7F,OAAO,QAAQ,CAAC,YAAY,CAAC,kBAAkB,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;AAC5E,CAAC;AACD,MAAM,UAAU,SAAS;IACvB,OAAO,QAAQ,CAAC,WAAW,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAClE,CAAC;AACD,MAAM,UAAU,OAAO,CAAC,MAAM,GAAG,EAAE;IACjC,OAAO,QAAQ,CAAC,SAAS,CAAC,kBAAkB,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;AAC3D,CAAC;AACD,MAAM,UAAU,eAAe,CAAC,MAAM,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE;IACtD,OAAO,gBAAgB,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AACnF,CAAC;AACD,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,MAAc;IACnD,OAAO,QAAQ,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAC/E,CAAC;AACD,MAAM,UAAU,QAAQ,CAAC,MAAc;IACrC,OAAO,QAAQ,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AACzE,CAAC;AACD,MAAM,UAAU,KAAK,CAAC,MAAc;IAClC,OAAO,QAAQ,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AACtE,CAAC;AACD,MAAM,UAAU,SAAS,CAAC,MAAc;IACtC,OAAO,QAAQ,CAAC,WAAW,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAC1E,CAAC;AACD,MAAM,UAAU,aAAa,CAAC,KAK7B;IACC,OAAO,QAAQ,CAAC,eAAe,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAC7E,CAAC;AACD,MAAM,UAAU,SAAS,CAAC,MAAc,EAAE,KAAc;IACtD,OAAO,QAAQ,CAAC,WAAW,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AACjF,CAAC;AACD,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,OAAO,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,iFAAiF;AAEjF,MAAM,UAAU,mBAAmB,CAAC,MAAuB,EAAE,MAAM,GAAG,KAAK;IACzE,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC;QAC1C,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE;QACtC,eAAe,EAAE,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,aAAa,CAAC,MAAuB,EAAE,KAAc,EAAE,MAAM,GAAG,KAAK;IACnF,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,KAAK,CAAC;QAC1C,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QACrC,eAAe,EAAE,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AACD,MAAM,UAAU,YAAY,CAAC,MAAuB,EAAE,EAAU;IAC9D,OAAO,YAAY,CAAC;QAClB,QAAQ,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,EAAE,CAAC;QACtC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,OAAO,EAAE,EAAE,KAAK,EAAE;KACnB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAC1E,CAAC;AACD,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,OAAO,QAAQ,CAAC,aAAa,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAC3E,CAAC;AACD,MAAM,UAAU,UAAU,CAAC,EAAU;IACnC,OAAO,QAAQ,CAAC,YAAY,CAAC,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;AAC1D,CAAC;AACD,MAAM,UAAU,aAAa;IAC3B,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,CAAC,IAAuC,EAAE,EAAE,CACtD,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC;QAC3C,SAAS,EAAE,GAAG,EAAE;YACd,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAChF,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export type StreamStatus = 'connecting' | 'live' | 'polling';
|
|
2
|
+
/**
|
|
3
|
+
* Subscribes to the telescope SSE stream and invalidates dashboard queries on each
|
|
4
|
+
* tick, so panels re-resolve the instant new entries land. Falls back to the
|
|
5
|
+
* existing polling (status 'polling') if SSE can't connect or is unavailable (SSR).
|
|
6
|
+
*/
|
|
7
|
+
export declare function useTelescopeStream(): {
|
|
8
|
+
status: StreamStatus;
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=use-telescope-stream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-telescope-stream.d.ts","sourceRoot":"","sources":["../../src/react/use-telescope-stream.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG,MAAM,GAAG,SAAS,CAAC;AAE7D;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,CA8B7D"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { useQueryClient } from '@tanstack/react-query';
|
|
2
|
+
import { useEffect, useState } from 'react';
|
|
3
|
+
import { useTelescopeClient } from './telescope-context.js';
|
|
4
|
+
/**
|
|
5
|
+
* Subscribes to the telescope SSE stream and invalidates dashboard queries on each
|
|
6
|
+
* tick, so panels re-resolve the instant new entries land. Falls back to the
|
|
7
|
+
* existing polling (status 'polling') if SSE can't connect or is unavailable (SSR).
|
|
8
|
+
*/
|
|
9
|
+
export function useTelescopeStream() {
|
|
10
|
+
const queryClient = useQueryClient();
|
|
11
|
+
const client = useTelescopeClient();
|
|
12
|
+
const [status, setStatus] = useState('connecting');
|
|
13
|
+
useEffect(() => {
|
|
14
|
+
if (typeof EventSource === 'undefined') {
|
|
15
|
+
setStatus('polling');
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
const streamUrl = `${client.baseUrl}/stream`;
|
|
19
|
+
const es = new EventSource(streamUrl);
|
|
20
|
+
es.onopen = () => setStatus('live');
|
|
21
|
+
es.onerror = () => setStatus('polling');
|
|
22
|
+
es.onmessage = (e) => {
|
|
23
|
+
try {
|
|
24
|
+
const msg = JSON.parse(e.data);
|
|
25
|
+
if (msg.heartbeat)
|
|
26
|
+
return;
|
|
27
|
+
if (msg.types && msg.types.length > 0) {
|
|
28
|
+
queryClient.invalidateQueries({ queryKey: ['telescope', 'ext-data'] });
|
|
29
|
+
queryClient.invalidateQueries({ queryKey: ['telescope', 'meta'] });
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
catch {
|
|
33
|
+
// ignore malformed frames
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
return () => es.close();
|
|
37
|
+
}, [queryClient, client.baseUrl]);
|
|
38
|
+
return { status };
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=use-telescope-stream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-telescope-stream.js","sourceRoot":"","sources":["../../src/react/use-telescope-stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAI5D;;;;GAIG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAe,YAAY,CAAC,CAAC;IAEjE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,WAAW,KAAK,WAAW,EAAE,CAAC;YACvC,SAAS,CAAC,SAAS,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QACD,MAAM,SAAS,GAAG,GAAG,MAAM,CAAC,OAAO,SAAS,CAAC;QAC7C,MAAM,EAAE,GAAG,IAAI,WAAW,CAAC,SAAS,CAAC,CAAC;QACtC,EAAE,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACpC,EAAE,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACxC,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,EAAE;YACnB,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAA2C,CAAC;gBACzE,IAAI,GAAG,CAAC,SAAS;oBAAE,OAAO;gBAC1B,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtC,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;oBACvE,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;gBACrE,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,0BAA0B;YAC5B,CAAC;QACH,CAAC,CAAC;QACF,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAElC,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC"}
|
package/dist/server/index.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export { TelescopeUiModule } from './telescope-ui.module.js';
|
|
2
|
-
export
|
|
2
|
+
export { TelescopeUiController } from './telescope-ui.controller.js';
|
|
3
|
+
export { TELESCOPE_UI_OPTIONS, type TelescopeUiModuleOptions } from './telescope-ui.options.js';
|
|
4
|
+
export { ConsoleAccessDenied, ConsoleAuthorizeFilter, ConsoleAuthorizeGuard, ConsolePage, UseConsoleAuthorize, authorizeByToken, normalizeConsoleResult, resolveConsoleAuthorize, type ConsoleAuthorize, type ConsoleAuthorizeResult, type ConsoleAuthorizer, type ConsoleAuthorizerClass, type ConsoleDecide, type ConsoleDecision, type ConsolePolicyCheck, type UseConsoleAuthorizeOptions, } from '@dudousxd/nestjs-telescope';
|
|
3
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,KAAK,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAGhG,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,WAAW,EACX,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,EACvB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,GAChC,MAAM,4BAA4B,CAAC"}
|
package/dist/server/index.js
CHANGED
|
@@ -1,2 +1,7 @@
|
|
|
1
1
|
export { TelescopeUiModule } from './telescope-ui.module.js';
|
|
2
|
+
export { TelescopeUiController } from './telescope-ui.controller.js';
|
|
3
|
+
export { TELESCOPE_UI_OPTIONS } from './telescope-ui.options.js';
|
|
4
|
+
// The console access contract, re-exported from core so the UI's `authorize`
|
|
5
|
+
// can be written from this entry point.
|
|
6
|
+
export { ConsoleAccessDenied, ConsoleAuthorizeFilter, ConsoleAuthorizeGuard, ConsolePage, UseConsoleAuthorize, authorizeByToken, normalizeConsoleResult, resolveConsoleAuthorize, } from '@dudousxd/nestjs-telescope';
|
|
2
7
|
//# sourceMappingURL=index.js.map
|
package/dist/server/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAiC,MAAM,2BAA2B,CAAC;AAChG,6EAA6E;AAC7E,wCAAwC;AACxC,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,WAAW,EACX,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,GASxB,MAAM,4BAA4B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telescope-ui.controller.d.ts","sourceRoot":"","sources":["../../src/server/telescope-ui.controller.ts"],"names":[],"mappings":"AAIA,OAAO,EAOL,cAAc,EACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAwB,KAAK,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"telescope-ui.controller.d.ts","sourceRoot":"","sources":["../../src/server/telescope-ui.controller.ts"],"names":[],"mappings":"AAIA,OAAO,EAOL,cAAc,EACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAwB,KAAK,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAkChG,qBAEa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;gBAEY,OAAO,EAAE,wBAAwB;IAY3E,KAAK,IAAI,MAAM;IAYf,KAAK,CAAgB,IAAI,EAAE,MAAM,GAAG,cAAc;CAcnD"}
|
|
@@ -13,7 +13,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
13
13
|
import { existsSync, readFileSync } from 'node:fs';
|
|
14
14
|
import { basename, extname, join, resolve, sep } from 'node:path';
|
|
15
15
|
import { fileURLToPath } from 'node:url';
|
|
16
|
-
import { normalizeTelescopePath } from '@dudousxd/nestjs-telescope';
|
|
16
|
+
import { ConsolePage, normalizeTelescopePath } from '@dudousxd/nestjs-telescope';
|
|
17
17
|
import { Controller, Get, Header, Inject, NotFoundException, Param, StreamableFile, } from '@nestjs/common';
|
|
18
18
|
import { TELESCOPE_UI_OPTIONS } from './telescope-ui.options.js';
|
|
19
19
|
/** dist/server/telescope-ui.controller.js -> ../spa */
|
|
@@ -44,6 +44,7 @@ function rewriteAssetBase(html, path) {
|
|
|
44
44
|
}
|
|
45
45
|
return `${injectedBase}${rebased}`;
|
|
46
46
|
}
|
|
47
|
+
// A denied browser navigation gets a page (or a redirect), not JSON.
|
|
47
48
|
let TelescopeUiController = class TelescopeUiController {
|
|
48
49
|
assetsDir;
|
|
49
50
|
path;
|
|
@@ -97,6 +98,7 @@ __decorate([
|
|
|
97
98
|
__metadata("design:returntype", StreamableFile)
|
|
98
99
|
], TelescopeUiController.prototype, "asset", null);
|
|
99
100
|
TelescopeUiController = __decorate([
|
|
101
|
+
ConsolePage(),
|
|
100
102
|
Controller(),
|
|
101
103
|
__param(0, Inject(TELESCOPE_UI_OPTIONS)),
|
|
102
104
|
__metadata("design:paramtypes", [Object])
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telescope-ui.controller.js","sourceRoot":"","sources":["../../src/server/telescope-ui.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"telescope-ui.controller.js","sourceRoot":"","sources":["../../src/server/telescope-ui.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,33 @@
|
|
|
1
|
-
import
|
|
1
|
+
import 'reflect-metadata';
|
|
2
|
+
import { type DynamicModule, type InjectionToken, type OptionalFactoryDependency } from '@nestjs/common';
|
|
2
3
|
import { type TelescopeUiModuleOptions } from './telescope-ui.options.js';
|
|
3
4
|
export declare class TelescopeUiModule {
|
|
4
5
|
static forRoot(options?: TelescopeUiModuleOptions): DynamicModule;
|
|
6
|
+
static forRootAsync(config: {
|
|
7
|
+
useFactory: (...args: unknown[]) => Promise<TelescopeUiModuleOptions> | TelescopeUiModuleOptions;
|
|
8
|
+
inject?: (InjectionToken | OptionalFactoryDependency)[];
|
|
9
|
+
imports?: DynamicModule['imports'];
|
|
10
|
+
/**
|
|
11
|
+
* Mount path for the dashboard. Must be passed statically here (not via the
|
|
12
|
+
* async factory) because the controller route is bound at module-build time
|
|
13
|
+
* — same constraint as `TelescopeModule.forRootAsync`. Defaults to
|
|
14
|
+
* `'telescope'` and must match the core module's path.
|
|
15
|
+
*/
|
|
16
|
+
path?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Class decorators applied to the dashboard's controller. Must be passed
|
|
19
|
+
* HERE (not inside the async-resolved options) because they shape the route
|
|
20
|
+
* at module-build time, before any factory runs — the SAME constraint as
|
|
21
|
+
* `path` above. See {@link TelescopeUiModuleOptions.decorators}.
|
|
22
|
+
*/
|
|
23
|
+
decorators?: ClassDecorator[];
|
|
24
|
+
/**
|
|
25
|
+
* `false` mounts no controller. Must be passed HERE (not inside the
|
|
26
|
+
* async-resolved options): which controllers exist is decided at
|
|
27
|
+
* module-build time — the SAME constraint as `path` above. See
|
|
28
|
+
* {@link TelescopeUiModuleOptions.routes}.
|
|
29
|
+
*/
|
|
30
|
+
routes?: boolean;
|
|
31
|
+
}): DynamicModule;
|
|
5
32
|
}
|
|
6
33
|
//# sourceMappingURL=telescope-ui.module.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telescope-ui.module.d.ts","sourceRoot":"","sources":["../../src/server/telescope-ui.module.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"telescope-ui.module.d.ts","sourceRoot":"","sources":["../../src/server/telescope-ui.module.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAO1B,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,cAAc,EAEnB,KAAK,yBAAyB,EAE/B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAwB,KAAK,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAyBhG,qBACa,iBAAiB;IAC5B,MAAM,CAAC,OAAO,CAAC,OAAO,GAAE,wBAA6B,GAAG,aAAa;IAUrE,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE;QAC1B,UAAU,EAAE,CACV,GAAG,IAAI,EAAE,OAAO,EAAE,KACf,OAAO,CAAC,wBAAwB,CAAC,GAAG,wBAAwB,CAAC;QAClE,MAAM,CAAC,EAAE,CAAC,cAAc,GAAG,yBAAyB,CAAC,EAAE,CAAC;QACxD,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;QACnC;;;;;WAKG;QACH,IAAI,CAAC,EAAE,MAAM,CAAC;QACd;;;;;WAKG;QACH,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;QAC9B;;;;;WAKG;QACH,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB,GAAG,aAAa;CAwBlB"}
|
|
@@ -5,17 +5,61 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
var TelescopeUiModule_1;
|
|
8
|
-
import
|
|
9
|
-
import {
|
|
8
|
+
import 'reflect-metadata';
|
|
9
|
+
import { UseConsoleAuthorize, consoleAuthorizeMissingWarning, dynamicController, normalizeTelescopePath, } from '@dudousxd/nestjs-telescope';
|
|
10
|
+
import { Module, } from '@nestjs/common';
|
|
10
11
|
import { TelescopeUiController } from './telescope-ui.controller.js';
|
|
11
12
|
import { TELESCOPE_UI_OPTIONS } from './telescope-ui.options.js';
|
|
13
|
+
/** The controller mounted when `routes` is not `false` (none when it is). */
|
|
14
|
+
function uiControllers(options) {
|
|
15
|
+
if (options.routes === false)
|
|
16
|
+
return [];
|
|
17
|
+
const path = normalizeTelescopePath(options.path);
|
|
18
|
+
// `authorize` is read from the resolved options at init (it may come from an
|
|
19
|
+
// async factory); the guard runs after the host's `decorators`.
|
|
20
|
+
const access = UseConsoleAuthorize({
|
|
21
|
+
from: {
|
|
22
|
+
token: TELESCOPE_UI_OPTIONS,
|
|
23
|
+
select: (resolved) => resolved.authorize,
|
|
24
|
+
},
|
|
25
|
+
warn: true,
|
|
26
|
+
missingWarning: consoleAuthorizeMissingWarning('@dudousxd/nestjs-telescope-ui', 'TelescopeUiModule.forRoot()'),
|
|
27
|
+
loggerContext: 'TelescopeUiModule',
|
|
28
|
+
});
|
|
29
|
+
return [dynamicController(TelescopeUiController, path, [...(options.decorators ?? []), access])];
|
|
30
|
+
}
|
|
12
31
|
let TelescopeUiModule = TelescopeUiModule_1 = class TelescopeUiModule {
|
|
13
32
|
static forRoot(options = {}) {
|
|
14
|
-
const path = normalizeTelescopePath(options.path);
|
|
15
33
|
return {
|
|
16
34
|
module: TelescopeUiModule_1,
|
|
17
|
-
|
|
35
|
+
imports: options.imports ?? [],
|
|
36
|
+
controllers: uiControllers(options),
|
|
18
37
|
providers: [{ provide: TELESCOPE_UI_OPTIONS, useValue: options }],
|
|
38
|
+
exports: [TELESCOPE_UI_OPTIONS],
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
static forRootAsync(config) {
|
|
42
|
+
const path = normalizeTelescopePath(config.path);
|
|
43
|
+
const { useFactory } = config;
|
|
44
|
+
return {
|
|
45
|
+
module: TelescopeUiModule_1,
|
|
46
|
+
imports: config.imports ?? [],
|
|
47
|
+
controllers: uiControllers(config),
|
|
48
|
+
providers: [
|
|
49
|
+
{
|
|
50
|
+
provide: TELESCOPE_UI_OPTIONS,
|
|
51
|
+
// The mount `path` is bound statically at build time; force it onto the
|
|
52
|
+
// async-resolved options so the controller's serve-time asset rewrite
|
|
53
|
+
// matches the route mount (a factory that also returns `path` is
|
|
54
|
+
// ignored — the static value wins, exactly as the route does).
|
|
55
|
+
useFactory: async (...args) => ({
|
|
56
|
+
...(await useFactory(...args)),
|
|
57
|
+
path,
|
|
58
|
+
}),
|
|
59
|
+
inject: config.inject ?? [],
|
|
60
|
+
},
|
|
61
|
+
],
|
|
62
|
+
exports: [TELESCOPE_UI_OPTIONS],
|
|
19
63
|
};
|
|
20
64
|
}
|
|
21
65
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telescope-ui.module.js","sourceRoot":"","sources":["../../src/server/telescope-ui.module.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"telescope-ui.module.js","sourceRoot":"","sources":["../../src/server/telescope-ui.module.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EACL,mBAAmB,EACnB,8BAA8B,EAC9B,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAGL,MAAM,GAGP,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAiC,MAAM,2BAA2B,CAAC;AAEhG,6EAA6E;AAC7E,SAAS,aAAa,CACpB,OAAyE;IAEzE,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK;QAAE,OAAO,EAAE,CAAC;IACxC,MAAM,IAAI,GAAG,sBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,6EAA6E;IAC7E,gEAAgE;IAChE,MAAM,MAAM,GAAG,mBAAmB,CAAC;QACjC,IAAI,EAAE;YACJ,KAAK,EAAE,oBAAoB;YAC3B,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAE,QAAqC,CAAC,SAAS;SACvE;QACD,IAAI,EAAE,IAAI;QACV,cAAc,EAAE,8BAA8B,CAC5C,+BAA+B,EAC/B,6BAA6B,CAC9B;QACD,aAAa,EAAE,mBAAmB;KACnC,CAAC,CAAC;IACH,OAAO,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;AACnG,CAAC;AAGM,IAAM,iBAAiB,yBAAvB,MAAM,iBAAiB;IAC5B,MAAM,CAAC,OAAO,CAAC,UAAoC,EAAE;QACnD,OAAO;YACL,MAAM,EAAE,mBAAiB;YACzB,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;YAC9B,WAAW,EAAE,aAAa,CAAC,OAAO,CAAC;YACnC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;YACjE,OAAO,EAAE,CAAC,oBAAoB,CAAC;SAChC,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,MA2BnB;QACC,MAAM,IAAI,GAAG,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjD,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAC9B,OAAO;YACL,MAAM,EAAE,mBAAiB;YACzB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE;YAC7B,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC;YAClC,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,oBAAoB;oBAC7B,wEAAwE;oBACxE,sEAAsE;oBACtE,iEAAiE;oBACjE,+DAA+D;oBAC/D,UAAU,EAAE,KAAK,EAAE,GAAG,IAAe,EAAqC,EAAE,CAAC,CAAC;wBAC5E,GAAG,CAAC,MAAM,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;wBAC9B,IAAI;qBACL,CAAC;oBACF,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;iBAC5B;aACF;YACD,OAAO,EAAE,CAAC,oBAAoB,CAAC;SAChC,CAAC;IACJ,CAAC;CACF,CAAA;AA9DY,iBAAiB;IAD7B,MAAM,CAAC,EAAE,CAAC;GACE,iBAAiB,CA8D7B"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type { ConsoleAuthorize } from '@dudousxd/nestjs-telescope';
|
|
2
|
+
import type { DynamicModule } from '@nestjs/common';
|
|
1
3
|
export declare const TELESCOPE_UI_OPTIONS: unique symbol;
|
|
2
4
|
export interface TelescopeUiModuleOptions {
|
|
3
5
|
/** Directory of the built SPA (index.html + assets/). Defaults to the bundled dist/spa. */
|
|
@@ -8,5 +10,66 @@ export interface TelescopeUiModuleOptions {
|
|
|
8
10
|
* before. Must match the core `TelescopeModule.forRoot({ path })`.
|
|
9
11
|
*/
|
|
10
12
|
path?: string;
|
|
13
|
+
/**
|
|
14
|
+
* Who may open the dashboard page and its assets. The same contract (and
|
|
15
|
+
* usually the same value) as `TelescopeModule.forRoot({ authorize })`:
|
|
16
|
+
* a function, an `@Injectable()` class implementing `ConsoleAuthorizer`, a
|
|
17
|
+
* lazy `() => import(...)`, `{ policy, ability }` for `@nestjs/authorization`,
|
|
18
|
+
* a gate name from `@dudousxd/nestjs-authz`, or `authorizeByToken(...)`.
|
|
19
|
+
*
|
|
20
|
+
* A denied browser navigation gets an "Access denied" page (403), a "Sign in
|
|
21
|
+
* required" page (401), or a 302 to `redirectTo` when the check returns
|
|
22
|
+
* `{ redirectTo: '/login' }`. Page
|
|
23
|
+
* navigations carry cookies, not an `Authorization` header, so check a
|
|
24
|
+
* session here rather than a token.
|
|
25
|
+
*
|
|
26
|
+
* Omitted: open outside production; with `NODE_ENV === 'production'` every
|
|
27
|
+
* request answers 403, and one warning is logged at boot. With
|
|
28
|
+
* `forRootAsync` it can come from the factory.
|
|
29
|
+
*/
|
|
30
|
+
authorize?: ConsoleAuthorize;
|
|
31
|
+
/**
|
|
32
|
+
* Class decorators applied to the dashboard's page + asset controller
|
|
33
|
+
* (`TelescopeUiController`), the same shape as `@nestjs/mcp`'s `decorators`,
|
|
34
|
+
* e.g. `[UseGuards(AuthenticationGuard)]` so `request.user` is set before
|
|
35
|
+
* {@link authorize} runs. Decorators alone do not configure access: without
|
|
36
|
+
* `authorize` the page still answers 403 in production.
|
|
37
|
+
*
|
|
38
|
+
* The controller is also marked open to `@nestjs/authorization`'s
|
|
39
|
+
* deny-by-default global `AuthorizationGuard` (as `@Can.Anyone()` would), so
|
|
40
|
+
* that guard does not lock the page out; `authorize` decides. A `Can(...)`
|
|
41
|
+
* passed here is still enforced. Applied to a fresh subclass per
|
|
42
|
+
* registration, so nothing leaks between `forRoot` calls. With `forRootAsync`,
|
|
43
|
+
* pass it as the static top-level option.
|
|
44
|
+
*/
|
|
45
|
+
decorators?: ClassDecorator[];
|
|
46
|
+
/**
|
|
47
|
+
* `false` mounts NO controller; serve the page from a controller of your own
|
|
48
|
+
* by extending the exported `TelescopeUiController` (its `TELESCOPE_UI_OPTIONS`
|
|
49
|
+
* dependency is exported by the module), protected with
|
|
50
|
+
* `@UseConsoleAuthorize()`. With no argument it runs
|
|
51
|
+
* `TelescopeModule.forRoot({ authorize })`; pass `{ authorize }` for a
|
|
52
|
+
* different check. List it ABOVE your authentication guard, so that guard
|
|
53
|
+
* runs first and sets `request.user`:
|
|
54
|
+
*
|
|
55
|
+
* ```ts
|
|
56
|
+
* @Controller('ops/telescope')
|
|
57
|
+
* @UseConsoleAuthorize()
|
|
58
|
+
* @UseGuards(AuthGuard)
|
|
59
|
+
* class ConsolePage extends TelescopeUiController {}
|
|
60
|
+
* ```
|
|
61
|
+
*
|
|
62
|
+
* Named `routes`, not `path: false`, because `path` keeps a job without
|
|
63
|
+
* routes: the page rewrites its asset URLs against it, so set it to where you
|
|
64
|
+
* mount the controller (and to core's `path`). `decorators` and `authorize`
|
|
65
|
+
* only apply to the mounted controller and are ignored here. With `forRootAsync`, pass it as
|
|
66
|
+
* the static top-level `routes`. Default `true`.
|
|
67
|
+
*/
|
|
68
|
+
routes?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* Extra `imports` merged into `TelescopeUiModule`'s own dynamic module — the
|
|
71
|
+
* DI resolution path for whatever the {@link decorators} need.
|
|
72
|
+
*/
|
|
73
|
+
imports?: DynamicModule['imports'];
|
|
11
74
|
}
|
|
12
75
|
//# sourceMappingURL=telescope-ui.options.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telescope-ui.options.d.ts","sourceRoot":"","sources":["../../src/server/telescope-ui.options.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,eAAiC,CAAC;AAEnE,MAAM,WAAW,wBAAwB;IACvC,2FAA2F;IAC3F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"telescope-ui.options.d.ts","sourceRoot":"","sources":["../../src/server/telescope-ui.options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,eAAO,MAAM,oBAAoB,eAAiC,CAAC;AAEnE,MAAM,WAAW,wBAAwB;IACvC,2FAA2F;IAC3F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;;;;;;;;;;OAgBG;IACH,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CACpC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telescope-ui.options.js","sourceRoot":"","sources":["../../src/server/telescope-ui.options.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"telescope-ui.options.js","sourceRoot":"","sources":["../../src/server/telescope-ui.options.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC"}
|