@cccsaurora/clue-ui 1.3.0-dev.285 → 1.3.0-dev.300
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/{ActionForm-Cdo8jBDU.js → ActionForm-S-Vec5j2.js} +42 -13
- package/{AnnotationDetails-CUU61Vwl.js → AnnotationDetails-BB9iqWq5.js} +1 -1
- package/{AnnotationPreview-WuxXgLCE.js → AnnotationPreview-CnsBCc8B.js} +1 -1
- package/components/AnnotationDetailPopover.js +1 -1
- package/components/AnnotationDetails.js +2 -2
- package/components/AnnotationPreview.js +1 -1
- package/components/EnrichedCard.js +1 -1
- package/components/EnrichedChip.js +2 -2
- package/components/EnrichedTypography.js +2 -2
- package/components/RetryFailedEnrichments.js +1 -1
- package/components/SourcePicker.js +1 -1
- package/components/actions/ActionForm.js +1 -1
- package/components/actions/ExecutePopover.js +1 -1
- package/components/actions/ResultModal.js +1 -1
- package/components/enrichment/EnrichPopover.js +1 -1
- package/components/fetchers/Fetcher.js +2 -2
- package/components/group/GroupControl.js +1 -1
- package/components/stats/QueryStatus.js +1 -1
- package/en/translation.json +1 -1
- package/fr/translation.json +1 -1
- package/hooks/ClueActionContext.d.ts +10 -2
- package/hooks/ClueActionContext.js +1 -1
- package/hooks/ClueGroupContext.js +1 -1
- package/hooks/CluePopupContext.js +2 -2
- package/hooks/ClueProvider.js +2 -2
- package/hooks/selectors.js +1 -1
- package/hooks/useActionResult.d.ts +2 -0
- package/hooks/useActionResult.js +3 -1
- package/hooks/useAnnotations.js +1 -1
- package/hooks/useClueActions.js +1 -1
- package/hooks/useErrors.js +1 -1
- package/hooks/useFetcherResult.d.ts +2 -0
- package/hooks/useFetcherResult.js +1 -1
- package/icons/Action.js +2 -2
- package/icons/Assessment.js +1 -1
- package/icons/Context.js +1 -1
- package/icons/Opinion.js +1 -1
- package/main.js +3 -3
- package/package.json +17 -17
- package/types/RunningActionData.d.ts +1 -0
- package/types/WithActionData.d.ts +3 -1
|
@@ -5432,30 +5432,45 @@ const useClueComponentSelector = (selector) => {
|
|
|
5432
5432
|
const useActionResult = (resultWithData, interval = 2e3) => {
|
|
5433
5433
|
const [result, setResult] = useState(resultWithData);
|
|
5434
5434
|
const timeoutRef = useRef(null);
|
|
5435
|
+
const { t } = useContextSelector(ClueComponentContext, (ctx) => ctx.i18next);
|
|
5435
5436
|
const getActionStatus = useClueActionsSelector((ctx) => ctx.getActionStatus);
|
|
5436
5437
|
const taskId = useMemo(() => resultWithData == null ? void 0 : resultWithData.task_id, [resultWithData == null ? void 0 : resultWithData.task_id]);
|
|
5437
5438
|
const actionId = useMemo(() => resultWithData == null ? void 0 : resultWithData.actionId, [resultWithData == null ? void 0 : resultWithData.actionId]);
|
|
5438
5439
|
useEffect(() => {
|
|
5439
|
-
if ((resultWithData == null ? void 0 : resultWithData.outcome) !== "pending" || !taskId)
|
|
5440
|
+
if ((resultWithData == null ? void 0 : resultWithData.outcome) !== "pending" || !taskId) {
|
|
5441
|
+
return;
|
|
5442
|
+
}
|
|
5440
5443
|
let cancelled = false;
|
|
5441
5444
|
const poll = async () => {
|
|
5445
|
+
var _a, _b;
|
|
5442
5446
|
const res = await getActionStatus(actionId, taskId);
|
|
5447
|
+
if (cancelled) {
|
|
5448
|
+
return;
|
|
5449
|
+
}
|
|
5450
|
+
let _result;
|
|
5443
5451
|
if (!res) {
|
|
5444
|
-
|
|
5452
|
+
_result = { outcome: "failure", summary: t("error.unexpected"), done: true };
|
|
5445
5453
|
} else if (res.outcome === "success" || res.outcome === "failure") {
|
|
5446
|
-
|
|
5454
|
+
_result = { ...res, done: true };
|
|
5455
|
+
} else {
|
|
5456
|
+
_result = res;
|
|
5457
|
+
}
|
|
5458
|
+
setResult(_result);
|
|
5459
|
+
(_a = resultWithData == null ? void 0 : resultWithData.onUpdate) == null ? void 0 : _a.call(resultWithData, { ...resultWithData, ..._result });
|
|
5460
|
+
if (_result.done) {
|
|
5461
|
+
(_b = resultWithData == null ? void 0 : resultWithData.onComplete) == null ? void 0 : _b.call(resultWithData, { ...resultWithData, ..._result });
|
|
5447
5462
|
} else {
|
|
5448
|
-
if (cancelled) return;
|
|
5449
|
-
setResult({ ...res });
|
|
5450
5463
|
timeoutRef.current = setTimeout(poll, interval);
|
|
5451
5464
|
}
|
|
5452
5465
|
};
|
|
5453
5466
|
poll();
|
|
5454
5467
|
return () => {
|
|
5455
5468
|
cancelled = true;
|
|
5456
|
-
if (timeoutRef.current)
|
|
5469
|
+
if (timeoutRef.current) {
|
|
5470
|
+
clearTimeout(timeoutRef.current);
|
|
5471
|
+
}
|
|
5457
5472
|
};
|
|
5458
|
-
}, [actionId, getActionStatus, interval, resultWithData == null ? void 0 : resultWithData.outcome, taskId]);
|
|
5473
|
+
}, [actionId, getActionStatus, interval, resultWithData, resultWithData == null ? void 0 : resultWithData.outcome, t, taskId]);
|
|
5459
5474
|
useEffect(() => {
|
|
5460
5475
|
setResult(resultWithData);
|
|
5461
5476
|
}, [resultWithData]);
|
|
@@ -5551,11 +5566,22 @@ const ClueActionProvider = ({
|
|
|
5551
5566
|
);
|
|
5552
5567
|
const executeAction = useCallback(
|
|
5553
5568
|
async (actionId, selectors, params, options) => {
|
|
5554
|
-
const {
|
|
5569
|
+
const {
|
|
5570
|
+
forceMenu,
|
|
5571
|
+
onComplete,
|
|
5572
|
+
onUpdate,
|
|
5573
|
+
onCancel,
|
|
5574
|
+
skipMenu,
|
|
5575
|
+
skipResultModal,
|
|
5576
|
+
timeout,
|
|
5577
|
+
includeContext,
|
|
5578
|
+
extraContext
|
|
5579
|
+
} = {
|
|
5555
5580
|
forceMenu: false,
|
|
5556
5581
|
skipResultModal: false,
|
|
5557
5582
|
skipMenu: false,
|
|
5558
5583
|
onComplete: null,
|
|
5584
|
+
onUpdate: null,
|
|
5559
5585
|
onCancel: null,
|
|
5560
5586
|
timeout: null,
|
|
5561
5587
|
includeContext: defaultIncludeContext ?? false,
|
|
@@ -5610,6 +5636,7 @@ const ClueActionProvider = ({
|
|
|
5610
5636
|
skipResultModal,
|
|
5611
5637
|
context: context2,
|
|
5612
5638
|
onComplete,
|
|
5639
|
+
onUpdate,
|
|
5613
5640
|
onCancel,
|
|
5614
5641
|
timeout
|
|
5615
5642
|
});
|
|
@@ -5625,7 +5652,10 @@ const ClueActionProvider = ({
|
|
|
5625
5652
|
requestConfig()
|
|
5626
5653
|
);
|
|
5627
5654
|
const actionResultWithData = { ...actionResult, actionId, action: actionToRun, params: validatedParams };
|
|
5628
|
-
|
|
5655
|
+
onUpdate == null ? void 0 : onUpdate(actionResultWithData);
|
|
5656
|
+
if (actionResult.outcome !== "pending") {
|
|
5657
|
+
onComplete == null ? void 0 : onComplete(actionResultWithData);
|
|
5658
|
+
}
|
|
5629
5659
|
setActionResults((_results) => {
|
|
5630
5660
|
const keys = selectors.map((value) => getHashKey(value.type, value.value, value.classification));
|
|
5631
5661
|
return {
|
|
@@ -5665,7 +5695,7 @@ const ClueActionProvider = ({
|
|
|
5665
5695
|
setRunningActionData(null);
|
|
5666
5696
|
}
|
|
5667
5697
|
if (actionResult.outcome === "pending") {
|
|
5668
|
-
setLastResult({ ...actionResult, actionId, action: actionToRun });
|
|
5698
|
+
setLastResult({ ...actionResult, actionId, action: actionToRun, onComplete, onUpdate });
|
|
5669
5699
|
if (!skipResultModal) {
|
|
5670
5700
|
setShowResultModal(true);
|
|
5671
5701
|
}
|
|
@@ -5697,8 +5727,7 @@ const ClueActionProvider = ({
|
|
|
5697
5727
|
const getActionStatus = useCallback(
|
|
5698
5728
|
async (actionId, taskId) => {
|
|
5699
5729
|
try {
|
|
5700
|
-
|
|
5701
|
-
return res;
|
|
5730
|
+
return await api.actions.status.get(actionId, taskId, {}, requestConfig());
|
|
5702
5731
|
} catch (e) {
|
|
5703
5732
|
safeDispatchEvent(
|
|
5704
5733
|
new CustomEvent(SNACKBAR_EVENT_ID, {
|
|
@@ -5717,7 +5746,7 @@ const ClueActionProvider = ({
|
|
|
5717
5746
|
(_a = runningActionData == null ? void 0 : runningActionData.onCancel) == null ? void 0 : _a.call(runningActionData);
|
|
5718
5747
|
setRunningActionData(null);
|
|
5719
5748
|
setLoading(false);
|
|
5720
|
-
}, [runningActionData
|
|
5749
|
+
}, [runningActionData]);
|
|
5721
5750
|
const getActionResults = useCallback(
|
|
5722
5751
|
(type2, value, classification) => actionResults[getHashKey(type2, value, classification)] ?? [],
|
|
5723
5752
|
[actionResults, getHashKey]
|
|
@@ -4,7 +4,7 @@ import { useTheme, Stack, Typography, Tooltip, Box, IconButton, CircularProgress
|
|
|
4
4
|
import Iconified from "./components/display/icons/Iconified.js";
|
|
5
5
|
import { SNACKBAR_EVENT_ID } from "./data/event.js";
|
|
6
6
|
import { ClueComponentContext } from "./hooks/ClueComponentContext.js";
|
|
7
|
-
import { b as useClueEnrichSelector } from "./ActionForm-
|
|
7
|
+
import { b as useClueEnrichSelector } from "./ActionForm-S-Vec5j2.js";
|
|
8
8
|
import useAnnotations from "./hooks/useAnnotations.js";
|
|
9
9
|
import useErrors from "./hooks/useErrors.js";
|
|
10
10
|
import { ICON_MAP } from "./icons/iconMap.js";
|
|
@@ -8,7 +8,7 @@ import { useState, useRef, useCallback, useEffect, useMemo } from "react";
|
|
|
8
8
|
import { c as createContext, u as useContextSelector } from "./index-AMfoEg_6.js";
|
|
9
9
|
import { SHOW_EVENT_ID, HIDE_EVENT_ID } from "./data/event.js";
|
|
10
10
|
import { safeDispatchEvent, safeAddEventListener } from "./utils/window.js";
|
|
11
|
-
import { i as isNull } from "./AnnotationDetails-
|
|
11
|
+
import { i as isNull } from "./AnnotationDetails-BB9iqWq5.js";
|
|
12
12
|
const CluePopupContext = createContext(null);
|
|
13
13
|
const CluePopupProvider = ({ children }) => {
|
|
14
14
|
const [popupType, setPopupType] = useState(null);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Popover } from "@mui/material";
|
|
3
3
|
import React__default, { useRef, useState, useEffect } from "react";
|
|
4
|
-
import { A as AnnotationDetails } from "../AnnotationDetails-
|
|
4
|
+
import { A as AnnotationDetails } from "../AnnotationDetails-BB9iqWq5.js";
|
|
5
5
|
const AnnotationDetailPopover = React__default.memo(({ anchorEl, enrichRequest, open, onClose, ...otherProps }) => {
|
|
6
6
|
var _a, _b, _c;
|
|
7
7
|
const actionRef = useRef();
|
|
@@ -4,13 +4,13 @@ import "@mui/material";
|
|
|
4
4
|
import "./display/icons/Iconified.js";
|
|
5
5
|
import "../data/event.js";
|
|
6
6
|
import "../hooks/ClueComponentContext.js";
|
|
7
|
-
import "../ActionForm-
|
|
7
|
+
import "../ActionForm-S-Vec5j2.js";
|
|
8
8
|
import "../hooks/useAnnotations.js";
|
|
9
9
|
import "../hooks/useErrors.js";
|
|
10
10
|
import "../icons/iconMap.js";
|
|
11
11
|
import "../utils/window.js";
|
|
12
12
|
import "../groupBy-xqz-n0Vd.js";
|
|
13
|
-
import { A } from "../AnnotationDetails-
|
|
13
|
+
import { A } from "../AnnotationDetails-BB9iqWq5.js";
|
|
14
14
|
import "../useClueTypeConfig-DnF4rLsl.js";
|
|
15
15
|
import "react";
|
|
16
16
|
import "../index-AMfoEg_6.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "react/jsx-runtime";
|
|
2
2
|
import "../iconify-CXMreGTg.js";
|
|
3
3
|
import "@mui/material";
|
|
4
|
-
import { A } from "../AnnotationPreview-
|
|
4
|
+
import { A } from "../AnnotationPreview-CnsBCc8B.js";
|
|
5
5
|
import "../hooks/useAnnotations.js";
|
|
6
6
|
import "../utils-HmNPuoDB.js";
|
|
7
7
|
import "react";
|
|
@@ -2,7 +2,7 @@ import { jsxs, jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { I as Icon } from "../iconify-CXMreGTg.js";
|
|
3
3
|
import { useTheme, Card, CardHeader, Stack, CircularProgress, Divider, CardContent, Grid, Chip, Typography, Tooltip, Box } from "@mui/material";
|
|
4
4
|
import { ClueComponentContext } from "../hooks/ClueComponentContext.js";
|
|
5
|
-
import { b as useClueEnrichSelector } from "../ActionForm-
|
|
5
|
+
import { b as useClueEnrichSelector } from "../ActionForm-S-Vec5j2.js";
|
|
6
6
|
import useAnnotations from "../hooks/useAnnotations.js";
|
|
7
7
|
import useErrors from "../hooks/useErrors.js";
|
|
8
8
|
import AssessmentIcon from "../icons/Assessment.js";
|
|
@@ -3,8 +3,8 @@ import { Chip, Tooltip, Box, Stack, CircularProgress } from "@mui/material";
|
|
|
3
3
|
import Iconified from "./display/icons/Iconified.js";
|
|
4
4
|
import { ClueComponentContext } from "../hooks/ClueComponentContext.js";
|
|
5
5
|
import { ClueGroupContext } from "../hooks/ClueGroupContext.js";
|
|
6
|
-
import { C as CluePopupContext } from "../AnnotationPreview-
|
|
7
|
-
import { b as useClueEnrichSelector } from "../ActionForm-
|
|
6
|
+
import { C as CluePopupContext } from "../AnnotationPreview-CnsBCc8B.js";
|
|
7
|
+
import { b as useClueEnrichSelector } from "../ActionForm-S-Vec5j2.js";
|
|
8
8
|
import useAnnotations from "../hooks/useAnnotations.js";
|
|
9
9
|
import ActionIcon from "../icons/Action.js";
|
|
10
10
|
import AssessmentIcon from "../icons/Assessment.js";
|
|
@@ -3,8 +3,8 @@ import { useTheme, Stack, CircularProgress, Tooltip, IconButton } from "@mui/mat
|
|
|
3
3
|
import Iconified from "./display/icons/Iconified.js";
|
|
4
4
|
import { ClueComponentContext } from "../hooks/ClueComponentContext.js";
|
|
5
5
|
import { ClueGroupContext } from "../hooks/ClueGroupContext.js";
|
|
6
|
-
import { C as CluePopupContext } from "../AnnotationPreview-
|
|
7
|
-
import { b as useClueEnrichSelector } from "../ActionForm-
|
|
6
|
+
import { C as CluePopupContext } from "../AnnotationPreview-CnsBCc8B.js";
|
|
7
|
+
import { b as useClueEnrichSelector } from "../ActionForm-S-Vec5j2.js";
|
|
8
8
|
import useAnnotations from "../hooks/useAnnotations.js";
|
|
9
9
|
import ActionIcon from "../icons/Action.js";
|
|
10
10
|
import AssessmentIcon from "../icons/Assessment.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Button } from "@mui/material";
|
|
3
3
|
import { ClueComponentContext } from "../hooks/ClueComponentContext.js";
|
|
4
|
-
import { b as useClueEnrichSelector } from "../ActionForm-
|
|
4
|
+
import { b as useClueEnrichSelector } from "../ActionForm-S-Vec5j2.js";
|
|
5
5
|
import { u as useContextSelector } from "../index-AMfoEg_6.js";
|
|
6
6
|
const RetryFailedEnrichments = () => {
|
|
7
7
|
const enrichFailedEnrichments = useClueEnrichSelector((ctx) => ctx.enrichFailedEnrichments);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Button, Popover, TextField, Divider, Stack, FormControlLabel, Checkbox } from "@mui/material";
|
|
3
|
-
import { d as useClueComponentSelector, b as useClueEnrichSelector } from "../ActionForm-
|
|
3
|
+
import { d as useClueComponentSelector, b as useClueEnrichSelector } from "../ActionForm-S-Vec5j2.js";
|
|
4
4
|
import { memo, useState, useEffect } from "react";
|
|
5
5
|
const SourcePicker = () => {
|
|
6
6
|
const { t } = useClueComponentSelector((ctx) => ctx.i18next);
|
|
@@ -5,7 +5,7 @@ import "@mui/material";
|
|
|
5
5
|
import "../display/icons/Iconified.js";
|
|
6
6
|
import "../../index-JcKyZeoY.js";
|
|
7
7
|
import "../../hooks/ClueComponentContext.js";
|
|
8
|
-
import { A } from "../../ActionForm-
|
|
8
|
+
import { A } from "../../ActionForm-S-Vec5j2.js";
|
|
9
9
|
import "../../utils-HmNPuoDB.js";
|
|
10
10
|
import "react";
|
|
11
11
|
import "../../index-AMfoEg_6.js";
|
|
@@ -3,7 +3,7 @@ import { I as Icon } from "../../iconify-CXMreGTg.js";
|
|
|
3
3
|
import { useTheme, Tooltip, IconButton, CircularProgress, Button, Popover, Paper, Stack, Typography, Box, Divider } from "@mui/material";
|
|
4
4
|
import Iconified from "../display/icons/Iconified.js";
|
|
5
5
|
import { ClueComponentContext } from "../../hooks/ClueComponentContext.js";
|
|
6
|
-
import { a as useClueActionsSelector } from "../../ActionForm-
|
|
6
|
+
import { a as useClueActionsSelector } from "../../ActionForm-S-Vec5j2.js";
|
|
7
7
|
import useClueConfig from "../../hooks/useClueConfig.js";
|
|
8
8
|
import { isAccessible } from "../../utils/classificationParser.js";
|
|
9
9
|
import { useState, useRef, useMemo, useEffect } from "react";
|
|
@@ -2,7 +2,7 @@ import "react/jsx-runtime";
|
|
|
2
2
|
import "../../iconify-CXMreGTg.js";
|
|
3
3
|
import "@mui/material";
|
|
4
4
|
import "../../hooks/ClueComponentContext.js";
|
|
5
|
-
import { R } from "../../ActionForm-
|
|
5
|
+
import { R } from "../../ActionForm-S-Vec5j2.js";
|
|
6
6
|
import "react";
|
|
7
7
|
import "../../index-AMfoEg_6.js";
|
|
8
8
|
import "../ClassificationChip.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
2
2
|
import { useTheme, Tooltip, IconButton, CircularProgress, Button, Popover, Paper, Stack, Box, Typography, Divider } from "@mui/material";
|
|
3
|
-
import { d as useClueComponentSelector, b as useClueEnrichSelector, e as capitalize } from "../../ActionForm-
|
|
3
|
+
import { d as useClueComponentSelector, b as useClueEnrichSelector, e as capitalize } from "../../ActionForm-S-Vec5j2.js";
|
|
4
4
|
import { useState, useRef, useCallback, useEffect } from "react";
|
|
5
5
|
import Iconified from "../display/icons/Iconified.js";
|
|
6
6
|
const EnrichPopover = ({ show = false, size = "small", selector }) => {
|
|
@@ -5,7 +5,7 @@ import { F as FlexOne } from "../../FlexOne-BSYAhhtG.js";
|
|
|
5
5
|
import Iconified from "../display/icons/Iconified.js";
|
|
6
6
|
import { J as JSONViewer } from "../../index-JcKyZeoY.js";
|
|
7
7
|
import { ClueComponentContext } from "../../hooks/ClueComponentContext.js";
|
|
8
|
-
import { c as useClueFetcherSelector } from "../../ActionForm-
|
|
8
|
+
import { c as useClueFetcherSelector } from "../../ActionForm-S-Vec5j2.js";
|
|
9
9
|
import React__default, { useState, useRef, useMemo, useEffect, memo } from "react";
|
|
10
10
|
import { u as useContextSelector } from "../../index-AMfoEg_6.js";
|
|
11
11
|
import Graph from "../display/graph/index.js";
|
|
@@ -66,7 +66,7 @@ const Fetcher = React__default.memo(
|
|
|
66
66
|
setLoading(true);
|
|
67
67
|
setResult(await fetchSelector(fetcherId, { type, value, classification }));
|
|
68
68
|
} catch {
|
|
69
|
-
setResult({ outcome: "failure", done: true, error: t("
|
|
69
|
+
setResult({ outcome: "failure", done: true, error: t("error.unexpected") });
|
|
70
70
|
} finally {
|
|
71
71
|
setLoading(false);
|
|
72
72
|
}
|
|
@@ -4,7 +4,7 @@ import { F as FlexOne } from "../../FlexOne-BSYAhhtG.js";
|
|
|
4
4
|
import Iconified from "../display/icons/Iconified.js";
|
|
5
5
|
import { SNACKBAR_EVENT_ID } from "../../data/event.js";
|
|
6
6
|
import { ClueGroupContext } from "../../hooks/ClueGroupContext.js";
|
|
7
|
-
import { d as useClueComponentSelector, b as useClueEnrichSelector, e as capitalize } from "../../ActionForm-
|
|
7
|
+
import { d as useClueComponentSelector, b as useClueEnrichSelector, e as capitalize } from "../../ActionForm-S-Vec5j2.js";
|
|
8
8
|
import { safeDispatchEvent } from "../../utils/window.js";
|
|
9
9
|
import { useState, useMemo, useCallback } from "react";
|
|
10
10
|
import { u as useContextSelector } from "../../index-AMfoEg_6.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Stack, Typography } from "@mui/material";
|
|
3
3
|
import { ClueDatabaseContext } from "../../hooks/ClueDatabaseContext.js";
|
|
4
|
-
import { d as useClueComponentSelector, b as useClueEnrichSelector } from "../../ActionForm-
|
|
4
|
+
import { d as useClueComponentSelector, b as useClueEnrichSelector } from "../../ActionForm-S-Vec5j2.js";
|
|
5
5
|
import { useContext, useState, useEffect } from "react";
|
|
6
6
|
const QueryStatus = () => {
|
|
7
7
|
const { t } = useClueComponentSelector((ctx) => ctx.i18next);
|
package/en/translation.json
CHANGED
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
"drawer.mail.trash": "Trash",
|
|
52
52
|
"enrich": "Enrich",
|
|
53
53
|
"error": "Error",
|
|
54
|
-
"
|
|
54
|
+
"error.unexpected": "An unexpected error occurred",
|
|
55
55
|
"graph.no.dataset": "No dataset has been selected!",
|
|
56
56
|
"graph.node.input.label": "Enter a node ID, and press [ctrl + enter] to select it. [ctrl + space] will open an autocomplete menu.",
|
|
57
57
|
"graph.show.more": "show more",
|
package/fr/translation.json
CHANGED
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
"drawer.mail.trash": "Poubelle",
|
|
52
52
|
"enrich": "Enrichir",
|
|
53
53
|
"error": "Erreur",
|
|
54
|
-
"
|
|
54
|
+
"error.unexpected": "Une erreur inattendue s'est produite",
|
|
55
55
|
"graph.no.dataset": "Aucun jeu de données n'a été sélectionné!",
|
|
56
56
|
"graph.node.input.label": "Entrez un ID de nœud et appuyez sur [ctrl + entrée] pour le sélectionner. [ctrl + espace] ouvrira un menu d'auto-complétion.",
|
|
57
57
|
"graph.show.more": "Afficher plus",
|
|
@@ -38,13 +38,21 @@ export interface ClueActionContextType {
|
|
|
38
38
|
*/
|
|
39
39
|
skipResultModal?: boolean;
|
|
40
40
|
/**
|
|
41
|
-
* Callback for post-execution.
|
|
41
|
+
* Callback for post-execution. Will be called once the action is fully executed and has an outcome of either
|
|
42
|
+
* 'success' or 'failure'.
|
|
42
43
|
* @param result
|
|
43
44
|
* @returns The action result
|
|
44
45
|
*/
|
|
45
46
|
onComplete?: (result: WithActionData<ActionResult>) => void;
|
|
46
47
|
/**
|
|
47
|
-
* Callback for
|
|
48
|
+
* Callback for intra-execution. will be called everytime the result recieves an update and has a
|
|
49
|
+
* 'pending', 'success', or 'failure' outcome.
|
|
50
|
+
* @param result
|
|
51
|
+
* @returns The action result
|
|
52
|
+
*/
|
|
53
|
+
onUpdate?: (result: WithActionData<ActionResult>) => void;
|
|
54
|
+
/**
|
|
55
|
+
* Callback for when the action is cancelled.
|
|
48
56
|
* @returns void
|
|
49
57
|
*/
|
|
50
58
|
onCancel?: () => void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "react/jsx-runtime";
|
|
2
2
|
import "@mui/material";
|
|
3
|
-
import { g, C } from "../ActionForm-
|
|
3
|
+
import { g, C } from "../ActionForm-S-Vec5j2.js";
|
|
4
4
|
import "../index-BfslcSud.js";
|
|
5
5
|
import "../components/display/icons/Iconified.js";
|
|
6
6
|
import "../components/ErrorBoundary.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import { useState, useMemo } from "react";
|
|
3
3
|
import { c as createContext } from "../index-AMfoEg_6.js";
|
|
4
|
-
import { b as useClueEnrichSelector } from "../ActionForm-
|
|
4
|
+
import { b as useClueEnrichSelector } from "../ActionForm-S-Vec5j2.js";
|
|
5
5
|
const ClueGroupContext = createContext(null);
|
|
6
6
|
const ClueGroupProvider = ({ children, type, classification }) => {
|
|
7
7
|
const defaultClassification = useClueEnrichSelector((ctx) => ctx.defaultClassification);
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import "react/jsx-runtime";
|
|
2
2
|
import "../components/AnnotationDetailPopover.js";
|
|
3
|
-
import { C, a } from "../AnnotationPreview-
|
|
3
|
+
import { C, a } from "../AnnotationPreview-CnsBCc8B.js";
|
|
4
4
|
import "../data/event.js";
|
|
5
5
|
import "../utils/window.js";
|
|
6
|
-
import "../AnnotationDetails-
|
|
6
|
+
import "../AnnotationDetails-BB9iqWq5.js";
|
|
7
7
|
import "react";
|
|
8
8
|
import "../index-AMfoEg_6.js";
|
|
9
9
|
export {
|
package/hooks/ClueProvider.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { C as ClueActionProvider } from "../ActionForm-
|
|
2
|
+
import { C as ClueActionProvider } from "../ActionForm-S-Vec5j2.js";
|
|
3
3
|
import { ClueComponentProvider } from "./ClueComponentContext.js";
|
|
4
4
|
import { ClueConfigProvider } from "./ClueConfigProvider.js";
|
|
5
5
|
import { ClueDatabaseProvider } from "./ClueDatabaseContext.js";
|
|
6
6
|
import { a as ClueEnrichProvider } from "../ClueEnrichContext-CZkS1jpb.js";
|
|
7
7
|
import { ClueFetcherProvider } from "./ClueFetcherContext.js";
|
|
8
|
-
import { a as CluePopupProvider } from "../AnnotationPreview-
|
|
8
|
+
import { a as CluePopupProvider } from "../AnnotationPreview-CnsBCc8B.js";
|
|
9
9
|
const ClueProvider = ({ children, ...props }) => {
|
|
10
10
|
return /* @__PURE__ */ jsx(ClueComponentProvider, { ...props, children: /* @__PURE__ */ jsx(ClueConfigProvider, { config: props.config, children: /* @__PURE__ */ jsx(ClueDatabaseProvider, { ...props, children: /* @__PURE__ */ jsx(ClueEnrichProvider, { ...props, children: /* @__PURE__ */ jsx(ClueFetcherProvider, { ...props, children: /* @__PURE__ */ jsx(ClueActionProvider, { ...props, children: /* @__PURE__ */ jsx(CluePopupProvider, { children }) }) }) }) }) }) });
|
|
11
11
|
};
|
package/hooks/selectors.js
CHANGED
|
@@ -11,4 +11,6 @@ export declare const useActionResult: (resultWithData: WithActionData<ActionResu
|
|
|
11
11
|
task_id?: string;
|
|
12
12
|
actionId: string;
|
|
13
13
|
action: import("../types/action").ActionDefinition;
|
|
14
|
+
onUpdate?: (result: WithActionData<ActionResult>) => void;
|
|
15
|
+
onComplete?: (result: WithActionData<ActionResult>) => void;
|
|
14
16
|
};
|
package/hooks/useActionResult.js
CHANGED
package/hooks/useAnnotations.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { u as uniqBy } from "../ClueEnrichContext-CZkS1jpb.js";
|
|
2
2
|
import { useContext, useMemo, useState, useEffect } from "react";
|
|
3
3
|
import { ClueDatabaseContext } from "./ClueDatabaseContext.js";
|
|
4
|
-
import { b as useClueEnrichSelector } from "../ActionForm-
|
|
4
|
+
import { b as useClueEnrichSelector } from "../ActionForm-S-Vec5j2.js";
|
|
5
5
|
const useAnnotations = (type, value, _classification, { skipEnrichment } = { skipEnrichment: false }) => {
|
|
6
6
|
var _a;
|
|
7
7
|
const database = useContext(ClueDatabaseContext);
|
package/hooks/useClueActions.js
CHANGED
package/hooks/useErrors.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useContext, useState, useEffect } from "react";
|
|
2
2
|
import { ClueDatabaseContext } from "./ClueDatabaseContext.js";
|
|
3
|
-
import { b as useClueEnrichSelector } from "../ActionForm-
|
|
3
|
+
import { b as useClueEnrichSelector } from "../ActionForm-S-Vec5j2.js";
|
|
4
4
|
const useErrors = (value) => {
|
|
5
5
|
const database = useContext(ClueDatabaseContext);
|
|
6
6
|
const ready = useClueEnrichSelector((ctx) => ctx.ready);
|
|
@@ -11,4 +11,6 @@ export declare const useActionResult: (resultWithData: WithActionData<ActionResu
|
|
|
11
11
|
task_id?: string;
|
|
12
12
|
actionId: string;
|
|
13
13
|
action: import("../types/action").ActionDefinition;
|
|
14
|
+
onUpdate?: (result: WithActionData<ActionResult>) => void;
|
|
15
|
+
onComplete?: (result: WithActionData<ActionResult>) => void;
|
|
14
16
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useState, useRef, useMemo, useEffect } from "react";
|
|
2
|
-
import { u as useClueActions } from "../ActionForm-
|
|
2
|
+
import { u as useClueActions } from "../ActionForm-S-Vec5j2.js";
|
|
3
3
|
const useActionResult = (resultWithData, interval = 2e3) => {
|
|
4
4
|
const [result, setResult] = useState(resultWithData);
|
|
5
5
|
const timeoutRef = useRef(null);
|
package/icons/Action.js
CHANGED
|
@@ -2,8 +2,8 @@ import { jsx, jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { I as Icon } from "../iconify-CXMreGTg.js";
|
|
3
3
|
import { useTheme, Stack, Divider, Typography } from "@mui/material";
|
|
4
4
|
import CountBadge from "../components/CountBadge.js";
|
|
5
|
-
import { C as CluePopupContext } from "../AnnotationPreview-
|
|
6
|
-
import { u as useClueActions } from "../ActionForm-
|
|
5
|
+
import { C as CluePopupContext } from "../AnnotationPreview-CnsBCc8B.js";
|
|
6
|
+
import { u as useClueActions } from "../ActionForm-S-Vec5j2.js";
|
|
7
7
|
import { g as groupBy } from "../groupBy-xqz-n0Vd.js";
|
|
8
8
|
import { memo, useRef, useMemo, useEffect } from "react";
|
|
9
9
|
import { u as useContextSelector } from "../index-AMfoEg_6.js";
|
package/icons/Assessment.js
CHANGED
|
@@ -2,7 +2,7 @@ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { I as Icon } from "../iconify-CXMreGTg.js";
|
|
3
3
|
import { useTheme, Stack, Chip, Divider, Grid, Tooltip } from "@mui/material";
|
|
4
4
|
import CountBadge from "../components/CountBadge.js";
|
|
5
|
-
import { C as CluePopupContext } from "../AnnotationPreview-
|
|
5
|
+
import { C as CluePopupContext } from "../AnnotationPreview-CnsBCc8B.js";
|
|
6
6
|
import { g as groupBy } from "../groupBy-xqz-n0Vd.js";
|
|
7
7
|
import { l as last } from "../last-CUCl67Im.js";
|
|
8
8
|
import { m as maxBy } from "../maxBy-IKHzFrCS.js";
|
package/icons/Context.js
CHANGED
|
@@ -4,7 +4,7 @@ import { Stack, Divider } from "@mui/material";
|
|
|
4
4
|
import AnnotationEntry from "../components/AnnotationEntry.js";
|
|
5
5
|
import CountBadge from "../components/CountBadge.js";
|
|
6
6
|
import Iconified from "../components/display/icons/Iconified.js";
|
|
7
|
-
import { C as CluePopupContext } from "../AnnotationPreview-
|
|
7
|
+
import { C as CluePopupContext } from "../AnnotationPreview-CnsBCc8B.js";
|
|
8
8
|
import { g as groupBy } from "../groupBy-xqz-n0Vd.js";
|
|
9
9
|
import { memo, useRef, useMemo, useEffect } from "react";
|
|
10
10
|
import { u as useContextSelector } from "../index-AMfoEg_6.js";
|
package/icons/Opinion.js
CHANGED
|
@@ -2,7 +2,7 @@ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { I as Icon } from "../iconify-CXMreGTg.js";
|
|
3
3
|
import { useTheme, Stack, Chip, Divider, Grid } from "@mui/material";
|
|
4
4
|
import CountBadge from "../components/CountBadge.js";
|
|
5
|
-
import { C as CluePopupContext } from "../AnnotationPreview-
|
|
5
|
+
import { C as CluePopupContext } from "../AnnotationPreview-CnsBCc8B.js";
|
|
6
6
|
import { g as groupBy } from "../groupBy-xqz-n0Vd.js";
|
|
7
7
|
import { s as sortBy } from "../sortBy-DfSj8IoJ.js";
|
|
8
8
|
import { s as sumBy } from "../sumBy-D-hb_NY-.js";
|
package/main.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { A, u, a, b, c } from "./ActionForm-
|
|
1
|
+
import { A, u, a, b, c } from "./ActionForm-S-Vec5j2.js";
|
|
2
2
|
import { default as default2 } from "./components/AnnotationDetailPopover.js";
|
|
3
|
-
import { A as A2 } from "./AnnotationDetails-
|
|
3
|
+
import { A as A2 } from "./AnnotationDetails-BB9iqWq5.js";
|
|
4
4
|
import { default as default3 } from "./components/AnnotationEntry.js";
|
|
5
|
-
import { A as A3, C } from "./AnnotationPreview-
|
|
5
|
+
import { A as A3, C } from "./AnnotationPreview-CnsBCc8B.js";
|
|
6
6
|
import { default as default4 } from "./components/CountBadge.js";
|
|
7
7
|
import { default as default5 } from "./components/EnrichedCard.js";
|
|
8
8
|
import { default as default6 } from "./components/EnrichedChip.js";
|
package/package.json
CHANGED
|
@@ -66,38 +66,35 @@
|
|
|
66
66
|
},
|
|
67
67
|
"type": "module",
|
|
68
68
|
"types": "main.d.ts",
|
|
69
|
-
"version": "1.3.0-dev.
|
|
69
|
+
"version": "1.3.0-dev.300",
|
|
70
70
|
"exports": {
|
|
71
71
|
".": "./main.js",
|
|
72
72
|
"./index.css": "./index.css",
|
|
73
73
|
"./en/*.json": "./en/*.json",
|
|
74
74
|
"./fr/*.json": "./fr/*.json",
|
|
75
|
+
"./types/*": "./types/*.js",
|
|
75
76
|
"./components/*": "./components/*.js",
|
|
76
|
-
"./text/*": "./text/*.js",
|
|
77
|
-
"./utils/*": "./utils/*.js",
|
|
78
|
-
"./utils/*.json": "./utils/*.json",
|
|
79
|
-
"./data/*": "./data/*.js",
|
|
80
77
|
"./database/*": "./database/*.js",
|
|
81
78
|
"./database": "./database/index.js",
|
|
82
|
-
"./
|
|
83
|
-
"./
|
|
79
|
+
"./text/*": "./text/*.js",
|
|
80
|
+
"./data/*": "./data/*.js",
|
|
84
81
|
"./icons/*": "./icons/*.js",
|
|
82
|
+
"./hooks/*": "./hooks/*.js",
|
|
83
|
+
"./utils/*": "./utils/*.js",
|
|
84
|
+
"./utils/*.json": "./utils/*.json",
|
|
85
|
+
"./components/display/*": "./components/display/*.js",
|
|
85
86
|
"./components/actions/*": "./components/actions/*.js",
|
|
86
|
-
"./components/enrichment/*": "./components/enrichment/*.js",
|
|
87
|
-
"./components/group/*": "./components/group/*.js",
|
|
88
87
|
"./components/fetchers/*": "./components/fetchers/*.js",
|
|
89
|
-
"./components/display/*": "./components/display/*.js",
|
|
90
88
|
"./components/stats/*": "./components/stats/*.js",
|
|
91
|
-
"./components/
|
|
92
|
-
"./components/
|
|
93
|
-
"./components/actions/form/*": "./components/actions/form/*.js",
|
|
94
|
-
"./components/display/graph/*": "./components/display/graph/*.js",
|
|
95
|
-
"./components/display/graph": "./components/display/graph/index.js",
|
|
89
|
+
"./components/group/*": "./components/group/*.js",
|
|
90
|
+
"./components/enrichment/*": "./components/enrichment/*.js",
|
|
96
91
|
"./components/display/markdown/*.md": "./components/display/markdown/*.md.js",
|
|
97
92
|
"./components/display/markdown": "./components/display/markdown/index.js",
|
|
98
|
-
"./components/display/
|
|
93
|
+
"./components/display/graph/*": "./components/display/graph/*.js",
|
|
94
|
+
"./components/display/graph": "./components/display/graph/index.js",
|
|
99
95
|
"./components/display/json/*": "./components/display/json/*.js",
|
|
100
96
|
"./components/display/json": "./components/display/json/index.js",
|
|
97
|
+
"./components/display/icons/*": "./components/display/icons/*.js",
|
|
101
98
|
"./components/display/graph/visualizations/*": "./components/display/graph/visualizations/*.js",
|
|
102
99
|
"./components/display/graph/elements/*": "./components/display/graph/elements/*.js",
|
|
103
100
|
"./components/display/graph/visualizations/panels/*": "./components/display/graph/visualizations/panels/*.js",
|
|
@@ -106,6 +103,9 @@
|
|
|
106
103
|
"./components/display/graph/visualizations/tree/*": "./components/display/graph/visualizations/tree/*.js",
|
|
107
104
|
"./components/display/graph/visualizations/tree": "./components/display/graph/visualizations/tree/index.js",
|
|
108
105
|
"./components/display/graph/visualizations/icons/*": "./components/display/graph/visualizations/icons/*.js",
|
|
109
|
-
"./components/display/graph/visualizations/icons": "./components/display/graph/visualizations/icons/index.js"
|
|
106
|
+
"./components/display/graph/visualizations/icons": "./components/display/graph/visualizations/icons/index.js",
|
|
107
|
+
"./components/actions/formats/*": "./components/actions/formats/*.js",
|
|
108
|
+
"./components/actions/formats": "./components/actions/formats/index.js",
|
|
109
|
+
"./components/actions/form/*": "./components/actions/form/*.js"
|
|
110
110
|
}
|
|
111
111
|
}
|
|
@@ -11,6 +11,7 @@ interface RunningActionData {
|
|
|
11
11
|
context?: ActionContextInformation;
|
|
12
12
|
skipResultModal?: boolean;
|
|
13
13
|
onComplete?: (result: WithActionData<ActionResult>) => void;
|
|
14
|
+
onUpdate?: (result: WithActionData<ActionResult>) => void;
|
|
14
15
|
onCancel?: () => void;
|
|
15
16
|
timeout?: number;
|
|
16
17
|
}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import { ActionDefinition } from './action';
|
|
1
|
+
import { ActionDefinition, ActionResult } from './action';
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
export type WithActionData<T> = T & {
|
|
5
5
|
actionId: string;
|
|
6
6
|
action: ActionDefinition;
|
|
7
|
+
onUpdate?: (result: WithActionData<ActionResult>) => void;
|
|
8
|
+
onComplete?: (result: WithActionData<ActionResult>) => void;
|
|
7
9
|
};
|
|
8
10
|
|
|
9
11
|
export default WithActionData;
|