@datarecce/ui 0.1.21 → 0.1.22
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/RecceCheckContext-BETsmiD5.mjs +228 -0
- package/dist/RecceCheckContext-BETsmiD5.mjs.map +1 -0
- package/dist/RecceCheckContext-DNKi97uE.js +302 -0
- package/dist/RecceCheckContext-DNKi97uE.js.map +1 -0
- package/dist/api.d.mts +2 -102
- package/dist/api.d.ts +2 -102
- package/dist/api.js +82 -494
- package/dist/api.js.map +1 -1
- package/dist/api.mjs +29 -435
- package/dist/api.mjs.map +1 -1
- package/dist/components-C735_oqD.mjs +10438 -0
- package/dist/components-C735_oqD.mjs.map +1 -0
- package/dist/{styles-JV3V5MVO.css → components-D2DRqJsz.css} +28 -0
- package/dist/components-D2DRqJsz.css.map +1 -0
- package/dist/components-DeA4kqxK.js +12763 -0
- package/dist/components-DeA4kqxK.js.map +1 -0
- package/dist/components-dVXbmdqd.css +70 -0
- package/dist/components-dVXbmdqd.css.map +1 -0
- package/dist/components.d.mts +2 -471
- package/dist/components.d.ts +2 -471
- package/dist/components.js +81 -27392
- package/dist/components.mjs +8 -27250
- package/dist/hooks-Ba-AoxcK.mjs +34 -0
- package/dist/hooks-Ba-AoxcK.mjs.map +1 -0
- package/dist/hooks-D6xvNXEc.js +40 -0
- package/dist/hooks-D6xvNXEc.js.map +1 -0
- package/dist/hooks.d.mts +2 -296
- package/dist/hooks.d.ts +2 -296
- package/dist/hooks.js +33 -7583
- package/dist/hooks.mjs +6 -7521
- package/dist/html2canvas-pro.esm-BR5xeFe-.mjs +7249 -0
- package/dist/html2canvas-pro.esm-BR5xeFe-.mjs.map +1 -0
- package/dist/html2canvas-pro.esm-CVOsBdk0.js +7250 -0
- package/dist/html2canvas-pro.esm-CVOsBdk0.js.map +1 -0
- package/dist/index-DYduBYD8.d.ts +1807 -0
- package/dist/index-DYduBYD8.d.ts.map +1 -0
- package/dist/index-Sj_wOmNH.d.mts +1809 -0
- package/dist/index-Sj_wOmNH.d.mts.map +1 -0
- package/dist/index.d.mts +2 -29
- package/dist/index.d.ts +2 -29
- package/dist/index.js +173 -28784
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +16 -28555
- package/dist/index.mjs.map +1 -1
- package/dist/state-BjKRZMwY.js +9158 -0
- package/dist/state-BjKRZMwY.js.map +1 -0
- package/dist/state-BySLlIE7.mjs +8198 -0
- package/dist/state-BySLlIE7.mjs.map +1 -0
- package/dist/{style-466WWZLM.css → state-IA7HWYOs.css} +81 -0
- package/dist/state-IA7HWYOs.css.map +1 -0
- package/dist/state-eEsMhIy4.css +215 -0
- package/dist/state-eEsMhIy4.css.map +1 -0
- package/dist/tooltipMessage-CrXjOmVM.mjs +7 -0
- package/dist/tooltipMessage-CrXjOmVM.mjs.map +1 -0
- package/dist/tooltipMessage-Dbi1kkfi.js +13 -0
- package/dist/tooltipMessage-Dbi1kkfi.js.map +1 -0
- package/dist/types.d.mts +2 -32
- package/dist/types.d.ts +2 -32
- package/dist/types.js +8 -24
- package/dist/types.mjs +4 -18
- package/dist/urls-D7PrPolY.mjs +16 -0
- package/dist/urls-D7PrPolY.mjs.map +1 -0
- package/dist/urls-SazAekCZ.js +34 -0
- package/dist/urls-SazAekCZ.js.map +1 -0
- package/dist/user-BHOgMaBf.mjs +65 -0
- package/dist/user-BHOgMaBf.mjs.map +1 -0
- package/dist/user-Dt_n5IJX.js +107 -0
- package/dist/user-Dt_n5IJX.js.map +1 -0
- package/package.json +4 -4
- package/dist/LineageViewContext-DEa54ZNF.d.mts +0 -103
- package/dist/LineageViewContext-DPVC8ak8.d.ts +0 -103
- package/dist/agGridStyles-VYALGSJU.css +0 -55
- package/dist/components.js.map +0 -1
- package/dist/components.mjs.map +0 -1
- package/dist/hooks.js.map +0 -1
- package/dist/hooks.mjs.map +0 -1
- package/dist/lineagecheck-BQaKAQzn.d.mts +0 -597
- package/dist/lineagecheck-BQaKAQzn.d.ts +0 -597
- package/dist/styles-QUPOR3LM.css +0 -24
- package/dist/styles-TU5BYTIL.css +0 -21
- package/dist/types.js.map +0 -1
- package/dist/types.mjs.map +0 -1
package/dist/hooks.d.ts
CHANGED
|
@@ -1,297 +1,3 @@
|
|
|
1
|
-
import * as _tanstack_react_query from '@tanstack/react-query';
|
|
2
|
-
import { d as LineageGraph } from './LineageViewContext-DPVC8ak8.js';
|
|
3
|
-
export { u as useLineageViewContext } from './LineageViewContext-DPVC8ak8.js';
|
|
4
|
-
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
5
|
-
import React__default, { Dispatch, SetStateAction, ReactNode } from 'react';
|
|
6
|
-
import { J as stateMetadata, K as gitInfo, O as pullRequestInfo, M as ManifestMetadata, z as SQLMeshInfo, as as RunsAggregated, b4 as RunType, aB as AxiosQueryParams, aj as SubmitRunTrackProps } from './lineagecheck-BQaKAQzn.js';
|
|
7
|
-
import { AxiosInstance } from 'axios';
|
|
8
|
-
import '@xyflow/react';
|
|
9
|
-
import 'react-icons';
|
|
10
|
-
import 'ag-grid-community';
|
|
11
|
-
import 'ag-grid-react';
|
|
12
1
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
single_env: boolean;
|
|
16
|
-
authed: boolean;
|
|
17
|
-
cloud_instance: boolean;
|
|
18
|
-
lifetime_expired_at?: Date;
|
|
19
|
-
idle_timeout?: number;
|
|
20
|
-
share_url?: string;
|
|
21
|
-
session_id?: string;
|
|
22
|
-
organization_name?: string;
|
|
23
|
-
web_url?: string;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
declare const useRecceInstanceInfo: () => _tanstack_react_query.UseQueryResult<RecceInstanceInfo, Error>;
|
|
27
|
-
|
|
28
|
-
declare function useCheckToast(): {
|
|
29
|
-
markedAsApprovedToast: () => void;
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
declare function useClipBoardToast(): {
|
|
33
|
-
successToast: (message: string) => void;
|
|
34
|
-
failToast: (title: string, error: unknown) => void;
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
declare function useValueDiffAlertDialog(): {
|
|
38
|
-
confirm: (nodeCount: number) => Promise<boolean>;
|
|
39
|
-
AlertDialog: react_jsx_runtime.JSX.Element;
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
interface RecceContextProps {
|
|
43
|
-
children: React__default.ReactNode;
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Main context provider for Recce application.
|
|
47
|
-
*
|
|
48
|
-
* For custom API configuration (e.g., recce-cloud), wrap this provider
|
|
49
|
-
* with ApiConfigProvider:
|
|
50
|
-
*
|
|
51
|
-
* ```tsx
|
|
52
|
-
* <ApiConfigProvider
|
|
53
|
-
* apiPrefix="/api/v2/sessions/abc123"
|
|
54
|
-
* authToken="eyJ..."
|
|
55
|
-
* >
|
|
56
|
-
* <RecceContextProvider>
|
|
57
|
-
* {children}
|
|
58
|
-
* </RecceContextProvider>
|
|
59
|
-
* </ApiConfigProvider>
|
|
60
|
-
* ```
|
|
61
|
-
*
|
|
62
|
-
* When used without ApiConfigProvider (OSS mode), hooks will use
|
|
63
|
-
* the default axios client with standard /api/* endpoints.
|
|
64
|
-
*/
|
|
65
|
-
declare function RecceContextProvider({ children }: RecceContextProps): react_jsx_runtime.JSX.Element;
|
|
66
|
-
|
|
67
|
-
type RecceFeatureMode = "read only" | "metadata only" | null;
|
|
68
|
-
interface RecceFeatureToggles {
|
|
69
|
-
mode: RecceFeatureMode;
|
|
70
|
-
disableSaveToFile: boolean;
|
|
71
|
-
disableExportStateFile: boolean;
|
|
72
|
-
disableImportStateFile: boolean;
|
|
73
|
-
disableUpdateChecklist: boolean;
|
|
74
|
-
disableDatabaseQuery: boolean;
|
|
75
|
-
disableViewActionDropdown: boolean;
|
|
76
|
-
disableNodeActionDropdown: boolean;
|
|
77
|
-
disableShare: boolean;
|
|
78
|
-
}
|
|
79
|
-
interface InstanceInfoType {
|
|
80
|
-
singleEnv: boolean;
|
|
81
|
-
authed: boolean;
|
|
82
|
-
featureToggles: RecceFeatureToggles;
|
|
83
|
-
lifetimeExpiredAt?: Date;
|
|
84
|
-
shareUrl?: string;
|
|
85
|
-
sessionId?: string;
|
|
86
|
-
}
|
|
87
|
-
declare function RecceInstanceInfoProvider({ children, }: {
|
|
88
|
-
children: React.ReactNode;
|
|
89
|
-
}): react_jsx_runtime.JSX.Element;
|
|
90
|
-
declare const useRecceInstanceContext: () => InstanceInfoType;
|
|
91
|
-
|
|
92
|
-
interface EnvInfo {
|
|
93
|
-
stateMetadata?: stateMetadata;
|
|
94
|
-
adapterType?: string;
|
|
95
|
-
git?: gitInfo;
|
|
96
|
-
pullRequest?: pullRequestInfo;
|
|
97
|
-
dbt?: {
|
|
98
|
-
base: ManifestMetadata | undefined | null;
|
|
99
|
-
current: ManifestMetadata | undefined | null;
|
|
100
|
-
};
|
|
101
|
-
sqlmesh?: SQLMeshInfo | null;
|
|
102
|
-
}
|
|
103
|
-
interface LineageGraphContextType {
|
|
104
|
-
lineageGraph?: LineageGraph;
|
|
105
|
-
envInfo?: EnvInfo;
|
|
106
|
-
reviewMode?: boolean;
|
|
107
|
-
cloudMode?: boolean;
|
|
108
|
-
fileMode?: boolean;
|
|
109
|
-
fileName?: string;
|
|
110
|
-
isDemoSite: boolean;
|
|
111
|
-
isCodespace?: boolean;
|
|
112
|
-
isLoading?: boolean;
|
|
113
|
-
error?: string;
|
|
114
|
-
supportTasks?: Record<string, boolean>;
|
|
115
|
-
retchLineageGraph?: () => void;
|
|
116
|
-
isActionAvailable: (actionName: string) => boolean;
|
|
117
|
-
runsAggregated?: RunsAggregated;
|
|
118
|
-
refetchRunsAggregated?: () => void;
|
|
119
|
-
}
|
|
120
|
-
interface LineageGraphProps {
|
|
121
|
-
children: React__default.ReactNode;
|
|
122
|
-
}
|
|
123
|
-
declare function LineageGraphContextProvider({ children }: LineageGraphProps): react_jsx_runtime.JSX.Element;
|
|
124
|
-
declare const useLineageGraphContext: () => LineageGraphContextType;
|
|
125
|
-
declare const useRunsAggregated: () => [RunsAggregated | undefined, () => void];
|
|
126
|
-
|
|
127
|
-
interface ShareStateProps {
|
|
128
|
-
shareUrl?: string;
|
|
129
|
-
isLoading: boolean;
|
|
130
|
-
error?: string;
|
|
131
|
-
handleShareClick: () => Promise<void>;
|
|
132
|
-
}
|
|
133
|
-
declare function RecceShareStateContextProvider({ children, }: {
|
|
134
|
-
children: React__default.ReactNode;
|
|
135
|
-
}): react_jsx_runtime.JSX.Element;
|
|
136
|
-
declare const useRecceShareStateContext: () => ShareStateProps;
|
|
137
|
-
|
|
138
|
-
interface QueryContext {
|
|
139
|
-
sqlQuery: string;
|
|
140
|
-
setSqlQuery: (sqlQuery: string) => void;
|
|
141
|
-
primaryKeys: string[] | undefined;
|
|
142
|
-
setPrimaryKeys: (primaryKeys: string[] | undefined) => void;
|
|
143
|
-
isCustomQueries: boolean;
|
|
144
|
-
setCustomQueries: (isCustomQueries: boolean) => void;
|
|
145
|
-
baseSqlQuery?: string;
|
|
146
|
-
setBaseSqlQuery?: (baseSqlQuery: string) => void;
|
|
147
|
-
}
|
|
148
|
-
interface QueryContextProps {
|
|
149
|
-
children: React__default.ReactNode;
|
|
150
|
-
}
|
|
151
|
-
declare function RecceQueryContextProvider({ children }: QueryContextProps): react_jsx_runtime.JSX.Element;
|
|
152
|
-
declare const useRecceQueryContext: () => QueryContext;
|
|
153
|
-
interface RowCountStateContext {
|
|
154
|
-
isNodesFetching: string[];
|
|
155
|
-
setIsNodesFetching: (nodes: string[]) => void;
|
|
156
|
-
}
|
|
157
|
-
interface RowCountStateContextProps {
|
|
158
|
-
children: React__default.ReactNode;
|
|
159
|
-
}
|
|
160
|
-
declare function RowCountStateContextProvider({ children, }: RowCountStateContextProps): react_jsx_runtime.JSX.Element;
|
|
161
|
-
declare const useRowCountStateContext: () => RowCountStateContext;
|
|
162
|
-
|
|
163
|
-
interface RecceActionOptions {
|
|
164
|
-
showForm: boolean;
|
|
165
|
-
showLast?: boolean;
|
|
166
|
-
trackProps?: SubmitRunTrackProps;
|
|
167
|
-
}
|
|
168
|
-
interface RecceActionContextType {
|
|
169
|
-
runAction: (type: RunType, params?: AxiosQueryParams, actionOptions?: RecceActionOptions) => void;
|
|
170
|
-
runId?: string;
|
|
171
|
-
showRunId: (runId: string, refreshHistory?: boolean) => void;
|
|
172
|
-
isRunResultOpen: boolean;
|
|
173
|
-
closeRunResult: () => void;
|
|
174
|
-
isHistoryOpen: boolean;
|
|
175
|
-
closeHistory: () => void;
|
|
176
|
-
showHistory: () => void;
|
|
177
|
-
setHistoryOpen: Dispatch<SetStateAction<boolean>>;
|
|
178
|
-
clearRunResult: () => void;
|
|
179
|
-
}
|
|
180
|
-
interface RecceActionContextProviderProps {
|
|
181
|
-
children: React__default.ReactNode;
|
|
182
|
-
}
|
|
183
|
-
declare function RecceActionContextProvider({ children, }: RecceActionContextProviderProps): react_jsx_runtime.JSX.Element;
|
|
184
|
-
declare const useRecceActionContext: () => RecceActionContextType;
|
|
185
|
-
|
|
186
|
-
interface CheckContext {
|
|
187
|
-
latestSelectedCheckId: string;
|
|
188
|
-
setLatestSelectedCheckId: (selectCheckId: string) => void;
|
|
189
|
-
}
|
|
190
|
-
interface CheckContextProps {
|
|
191
|
-
children: React__default.ReactNode;
|
|
192
|
-
}
|
|
193
|
-
declare function RecceCheckContextProvider({ children }: CheckContextProps): react_jsx_runtime.JSX.Element;
|
|
194
|
-
declare const useRecceCheckContext: () => CheckContext;
|
|
195
|
-
|
|
196
|
-
/**
|
|
197
|
-
* Context for sharing idle timeout state across components
|
|
198
|
-
*
|
|
199
|
-
* IMPORTANT: The countdown is based on the last SUCCESSFUL keep-alive API call,
|
|
200
|
-
* NOT on user activity. This ensures the countdown accurately reflects the
|
|
201
|
-
* server's idle timeout state.
|
|
202
|
-
*/
|
|
203
|
-
interface IdleTimeoutContextType {
|
|
204
|
-
/** Remaining seconds until timeout (null if idle timeout not enabled) */
|
|
205
|
-
remainingSeconds: number | null;
|
|
206
|
-
/** Idle timeout value from server in seconds (null if not configured) */
|
|
207
|
-
idleTimeout: number | null;
|
|
208
|
-
/** Whether idle timeout is enabled */
|
|
209
|
-
isEnabled: boolean;
|
|
210
|
-
/** Mark as disconnected - stops countdown and keep-alive */
|
|
211
|
-
setDisconnected: () => void;
|
|
212
|
-
/** Reset connection state - restarts countdown and keep-alive after successful reconnect */
|
|
213
|
-
resetConnection: () => void;
|
|
214
|
-
/** Whether the connection is disconnected */
|
|
215
|
-
isDisconnected: boolean;
|
|
216
|
-
}
|
|
217
|
-
/**
|
|
218
|
-
* Provider for idle timeout state
|
|
219
|
-
*
|
|
220
|
-
* The countdown is based on lastServerSyncTime (when keep-alive API was last
|
|
221
|
-
* successfully sent), not on user activity. This provides accurate server state.
|
|
222
|
-
*/
|
|
223
|
-
declare function IdleTimeoutProvider({ children }: {
|
|
224
|
-
children: ReactNode;
|
|
225
|
-
}): react_jsx_runtime.JSX.Element;
|
|
226
|
-
/**
|
|
227
|
-
* Hook to access idle timeout context
|
|
228
|
-
* @throws Error if used outside IdleTimeoutProvider
|
|
229
|
-
*/
|
|
230
|
-
declare function useIdleTimeout(): IdleTimeoutContextType;
|
|
231
|
-
|
|
232
|
-
/**
|
|
233
|
-
* API Configuration Context
|
|
234
|
-
*
|
|
235
|
-
* Provides configurable API endpoint prefix and authentication token
|
|
236
|
-
* for use with recce-cloud or other custom API backends.
|
|
237
|
-
*
|
|
238
|
-
* Default behavior (OSS):
|
|
239
|
-
* - apiPrefix: "" (uses /api/* paths directly)
|
|
240
|
-
* - authToken: undefined (no auth header)
|
|
241
|
-
*
|
|
242
|
-
* Cloud usage example:
|
|
243
|
-
* - apiPrefix: "/api/v2/sessions/abc123" (replaces /api with this prefix)
|
|
244
|
-
* - authToken: "eyJ..." (adds Authorization: Bearer header)
|
|
245
|
-
*/
|
|
246
|
-
interface ApiConfig {
|
|
247
|
-
/**
|
|
248
|
-
* API endpoint prefix to replace `/api` in all requests.
|
|
249
|
-
* For OSS: "" (empty string, uses default /api/* paths)
|
|
250
|
-
* For Cloud: "/api/v2/sessions/<session_id>" (replaces /api with this)
|
|
251
|
-
*/
|
|
252
|
-
apiPrefix: string;
|
|
253
|
-
/**
|
|
254
|
-
* Optional authentication token for API requests.
|
|
255
|
-
* When provided, adds "Authorization: Bearer <token>" header.
|
|
256
|
-
*/
|
|
257
|
-
authToken?: string;
|
|
258
|
-
/**
|
|
259
|
-
* Optional base URL override.
|
|
260
|
-
* When provided, overrides the PUBLIC_API_URL for this context.
|
|
261
|
-
*/
|
|
262
|
-
baseUrl?: string;
|
|
263
|
-
}
|
|
264
|
-
interface ApiConfigContextType extends ApiConfig {
|
|
265
|
-
/**
|
|
266
|
-
* Pre-configured axios instance with interceptors for
|
|
267
|
-
* API prefix replacement and auth token injection.
|
|
268
|
-
*/
|
|
269
|
-
apiClient: AxiosInstance;
|
|
270
|
-
}
|
|
271
|
-
interface ApiConfigProviderProps extends Partial<ApiConfig> {
|
|
272
|
-
children: React__default.ReactNode;
|
|
273
|
-
}
|
|
274
|
-
declare function ApiConfigProvider({ children, apiPrefix, authToken, baseUrl, }: ApiConfigProviderProps): react_jsx_runtime.JSX.Element;
|
|
275
|
-
/**
|
|
276
|
-
* Hook to access the API configuration and configured axios client.
|
|
277
|
-
*
|
|
278
|
-
* When used outside ApiConfigProvider, returns default config with
|
|
279
|
-
* standard axiosClient (for OSS backward compatibility).
|
|
280
|
-
*
|
|
281
|
-
* @returns ApiConfigContextType with apiPrefix, authToken, and apiClient
|
|
282
|
-
*/
|
|
283
|
-
declare function useApiConfig(): ApiConfigContextType;
|
|
284
|
-
/**
|
|
285
|
-
* Hook to get the configured axios client.
|
|
286
|
-
* Convenience wrapper around useApiConfig().apiClient
|
|
287
|
-
*
|
|
288
|
-
* @returns AxiosInstance configured with API prefix and auth token
|
|
289
|
-
*/
|
|
290
|
-
declare function useApiClient(): AxiosInstance;
|
|
291
|
-
/**
|
|
292
|
-
* Safe version of useApiConfig that returns null if outside provider.
|
|
293
|
-
* Useful for components that need to detect if ApiConfigProvider is present.
|
|
294
|
-
*/
|
|
295
|
-
declare function useApiConfigSafe(): ApiConfigContextType | null;
|
|
296
|
-
|
|
297
|
-
export { type ApiConfig, ApiConfigProvider, IdleTimeoutProvider, LineageGraphContextProvider, RecceActionContextProvider, RecceCheckContextProvider, RecceContextProvider, RecceInstanceInfoProvider, RecceQueryContextProvider, RecceShareStateContextProvider, RowCountStateContextProvider, useApiClient, useApiConfig, useApiConfigSafe, useCheckToast, useClipBoardToast, useIdleTimeout, useLineageGraphContext, useRecceActionContext, useRecceCheckContext, useRecceInstanceContext, useRecceInstanceInfo, useRecceQueryContext, useRecceShareStateContext, useRowCountStateContext, useRunsAggregated, useValueDiffAlertDialog };
|
|
2
|
+
import { $ as ApiConfigProvider, Ct as useCheckToast, Q as ApiConfig, St as useClipBoardToast, _t as useRunsAggregated, at as RecceCheckContextProvider, bt as RecceContextProvider, ct as useRecceActionContext, dt as useRecceQueryContext, et as useApiClient, ft as useRowCountStateContext, gt as useLineageGraphContext, ht as LineageGraphContextProvider, it as useIdleTimeout, jn as useLineageViewContext, lt as RecceQueryContextProvider, mt as useRecceShareStateContext, nt as useApiConfigSafe, ot as useRecceCheckContext, pt as RecceShareStateContextProvider, rt as IdleTimeoutProvider, st as RecceActionContextProvider, tt as useApiConfig, ut as RowCountStateContextProvider, vt as RecceInstanceInfoProvider, wt as useRecceInstanceInfo, xt as useValueDiffAlertDialog, yt as useRecceInstanceContext } from "./index-DYduBYD8.js";
|
|
3
|
+
export { ApiConfig, ApiConfigProvider, IdleTimeoutProvider, LineageGraphContextProvider, RecceActionContextProvider, RecceCheckContextProvider, RecceContextProvider, RecceInstanceInfoProvider, RecceQueryContextProvider, RecceShareStateContextProvider, RowCountStateContextProvider, useApiClient, useApiConfig, useApiConfigSafe, useCheckToast, useClipBoardToast, useIdleTimeout, useLineageGraphContext, useLineageViewContext, useRecceActionContext, useRecceCheckContext, useRecceInstanceContext, useRecceInstanceInfo, useRecceQueryContext, useRecceShareStateContext, useRowCountStateContext, useRunsAggregated, useValueDiffAlertDialog };
|