@cccsaurora/clue-ui 0.15.0-dev.31 → 0.15.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.
Files changed (257) hide show
  1. package/package.json +143 -39
  2. package/ActionForm-DgfJwTzt.js +0 -436
  3. package/AnnotationPreview-BvNpZOP0.js +0 -188
  4. package/ClueEnrichContext-DXwLVp0M.js +0 -518
  5. package/FlexOne-BSYAhhtG.js +0 -9
  6. package/_Map-kgDsDYxq.js +0 -64
  7. package/_MapCache-DabaaWfq.js +0 -161
  8. package/_Uint8Array-BlVVH1tp.js +0 -129
  9. package/_baseAssignValue-CNbcU6Nb.js +0 -25
  10. package/_baseClone-D3a8Pa4T.js +0 -284
  11. package/_baseExtremum-B1o1zHjR.js +0 -33
  12. package/_baseFlatten-D4huXoEI.js +0 -92
  13. package/_baseGet-BSK_nnoz.js +0 -109
  14. package/_baseIsEqual-B5xLoweL.js +0 -238
  15. package/_baseIteratee-p6Nj07-n.js +0 -126
  16. package/_baseSlice-GAv_YFTT.js +0 -20
  17. package/_baseSum-D0WC1dN0.js +0 -13
  18. package/_baseUniq-CpupKWcL.js +0 -89
  19. package/_commonjsHelpers-CUmg6egw.js +0 -6
  20. package/_createAggregator-BpVy5xMi.js +0 -63
  21. package/_getPrototype-D1LAdQKO.js +0 -5
  22. package/_getTag-D3ToyefI.js +0 -126
  23. package/api/lookup/enrich.d.ts +0 -10
  24. package/api/lookup/index.d.ts +0 -5
  25. package/api/lookup/types.d.ts +0 -5
  26. package/api/lookup/types_detection.d.ts +0 -5
  27. package/cloneDeep-CjP5k9zW.js +0 -8
  28. package/components/AnnotationBody.d.ts +0 -6
  29. package/components/AnnotationBody.js +0 -56
  30. package/components/AnnotationDetailPopover.d.ts +0 -14
  31. package/components/AnnotationDetailPopover.js +0 -61
  32. package/components/AnnotationDetails.d.ts +0 -8
  33. package/components/AnnotationDetails.js +0 -172
  34. package/components/AnnotationEntry.d.ts +0 -6
  35. package/components/AnnotationEntry.js +0 -59
  36. package/components/AnnotationPreview.d.ts +0 -14
  37. package/components/AnnotationPreview.js +0 -11
  38. package/components/ClassificationChip.d.ts +0 -11
  39. package/components/ClassificationChip.js +0 -52
  40. package/components/CountBadge.d.ts +0 -8
  41. package/components/CountBadge.js +0 -34
  42. package/components/EnrichedCard.d.ts +0 -14
  43. package/components/EnrichedCard.js +0 -162
  44. package/components/EnrichedChip.d.ts +0 -9
  45. package/components/EnrichedChip.js +0 -176
  46. package/components/EnrichedTypography.d.ts +0 -16
  47. package/components/EnrichedTypography.js +0 -178
  48. package/components/ErrorBoundary.d.ts +0 -15
  49. package/components/ErrorBoundary.js +0 -36
  50. package/components/RetryFailedEnrichments.d.ts +0 -2
  51. package/components/RetryFailedEnrichments.js +0 -13
  52. package/components/SourcePicker.d.ts +0 -2
  53. package/components/SourcePicker.js +0 -98
  54. package/components/actions/ActionForm.d.ts +0 -6
  55. package/components/actions/ActionForm.js +0 -16
  56. package/components/actions/ExecutePopover.d.ts +0 -10
  57. package/components/actions/ExecutePopover.js +0 -93
  58. package/components/actions/ResultModal.d.ts +0 -9
  59. package/components/actions/ResultModal.js +0 -46
  60. package/components/actions/form/schemaAdapter.d.ts +0 -3
  61. package/components/actions/form/schemaAdapter.js +0 -47
  62. package/components/display/graph/ExpandMoreButton.d.ts +0 -7
  63. package/components/display/graph/ExpandMoreButton.js +0 -18
  64. package/components/display/graph/elements/NodeCard.d.ts +0 -10
  65. package/components/display/graph/elements/NodeCard.js +0 -146
  66. package/components/display/graph/elements/NodeTag.d.ts +0 -9
  67. package/components/display/graph/elements/NodeTag.js +0 -17
  68. package/components/display/graph/index.d.ts +0 -9
  69. package/components/display/graph/index.js +0 -438
  70. package/components/display/graph/visualizations/Leaf.d.ts +0 -25
  71. package/components/display/graph/visualizations/Leaf.js +0 -125
  72. package/components/display/graph/visualizations/cloud/index.d.ts +0 -24
  73. package/components/display/graph/visualizations/cloud/index.js +0 -141
  74. package/components/display/graph/visualizations/icons/BaseIcon.d.ts +0 -12
  75. package/components/display/graph/visualizations/icons/BaseIcon.js +0 -37
  76. package/components/display/graph/visualizations/icons/BugIcon.d.ts +0 -5
  77. package/components/display/graph/visualizations/icons/BugIcon.js +0 -18
  78. package/components/display/graph/visualizations/icons/HostIcon.d.ts +0 -5
  79. package/components/display/graph/visualizations/icons/HostIcon.js +0 -24
  80. package/components/display/graph/visualizations/icons/NetworkIcon.d.ts +0 -5
  81. package/components/display/graph/visualizations/icons/NetworkIcon.js +0 -24
  82. package/components/display/graph/visualizations/icons/ProcessIcon.d.ts +0 -5
  83. package/components/display/graph/visualizations/icons/ProcessIcon.js +0 -18
  84. package/components/display/graph/visualizations/icons/TargetIcon.d.ts +0 -5
  85. package/components/display/graph/visualizations/icons/TargetIcon.js +0 -19
  86. package/components/display/graph/visualizations/icons/index.d.ts +0 -2
  87. package/components/display/graph/visualizations/icons/index.js +0 -16
  88. package/components/display/graph/visualizations/panels/NodePanel.d.ts +0 -8
  89. package/components/display/graph/visualizations/panels/NodePanel.js +0 -12
  90. package/components/display/graph/visualizations/tree/BundleLine.d.ts +0 -29
  91. package/components/display/graph/visualizations/tree/BundleLine.js +0 -121
  92. package/components/display/graph/visualizations/tree/Triangle.d.ts +0 -9
  93. package/components/display/graph/visualizations/tree/Triangle.js +0 -26
  94. package/components/display/graph/visualizations/tree/index.d.ts +0 -36
  95. package/components/display/graph/visualizations/tree/index.js +0 -485
  96. package/components/display/graph/visualizations/tree/types.d.ts +0 -11
  97. package/components/display/graph/visualizations/tree/types.js +0 -1
  98. package/components/display/icons/Iconified.d.ts +0 -9
  99. package/components/display/icons/Iconified.js +0 -29
  100. package/components/display/json/index.d.ts +0 -14
  101. package/components/display/json/index.js +0 -12
  102. package/components/display/markdown/DynamicTabs.d.ts +0 -8
  103. package/components/display/markdown/DynamicTabs.js +0 -26
  104. package/components/display/markdown/index.d.ts +0 -9
  105. package/components/display/markdown/index.js +0 -13389
  106. package/components/display/markdown/markdownPlugins/tabs.d.ts +0 -3
  107. package/components/display/markdown/markdownPlugins/tabs.js +0 -4
  108. package/components/enrichment/EnrichPopover.d.ts +0 -10
  109. package/components/enrichment/EnrichPopover.js +0 -88
  110. package/components/fetchers/Fetcher.d.ts +0 -17
  111. package/components/fetchers/Fetcher.js +0 -188
  112. package/components/fetchers/PreviewModal.d.ts +0 -8
  113. package/components/fetchers/PreviewModal.js +0 -22
  114. package/components/fetchers/StatusChip.d.ts +0 -8
  115. package/components/fetchers/StatusChip.js +0 -30
  116. package/components/group/Entry.d.ts +0 -8
  117. package/components/group/Entry.js +0 -15
  118. package/components/group/Group.d.ts +0 -12
  119. package/components/group/Group.js +0 -15
  120. package/components/group/GroupControl.d.ts +0 -4
  121. package/components/group/GroupControl.js +0 -103
  122. package/components/stats/QueryStatus.d.ts +0 -4
  123. package/components/stats/QueryStatus.js +0 -61
  124. package/countBy-C69WslUA.js +0 -14
  125. package/data/event.d.ts +0 -12
  126. package/data/event.js +0 -8
  127. package/database/index.d.ts +0 -4
  128. package/database/index.js +0 -4
  129. package/database/selector.schema.json.d.ts +0 -119
  130. package/database/status.schema.json.d.ts +0 -38
  131. package/database/types.d.ts +0 -64
  132. package/debounce-bV0h5FC5.js +0 -92
  133. package/en/translation.json +0 -135
  134. package/fr/translation.json +0 -135
  135. package/get-D3C3lEU3.js +0 -8
  136. package/groupBy-DC2oOuBN.js +0 -14
  137. package/hooks/ClueActionContext.d.ts +0 -86
  138. package/hooks/ClueActionContext.js +0 -18
  139. package/hooks/ClueComponentContext.d.ts +0 -10
  140. package/hooks/ClueComponentContext.js +0 -40
  141. package/hooks/ClueConfigProvider.d.ts +0 -12
  142. package/hooks/ClueConfigProvider.js +0 -23
  143. package/hooks/ClueDatabaseContext.d.ts +0 -10
  144. package/hooks/ClueDatabaseContext.js +0 -23
  145. package/hooks/ClueEnrichContext.d.ts +0 -6
  146. package/hooks/ClueEnrichContext.js +0 -15
  147. package/hooks/ClueEnrichContextType.d.ts +0 -113
  148. package/hooks/ClueEnrichProps.d.ts +0 -81
  149. package/hooks/ClueFetcherContext.d.ts +0 -35
  150. package/hooks/ClueFetcherContext.js +0 -88
  151. package/hooks/ClueGroupContext.d.ts +0 -14
  152. package/hooks/ClueGroupContext.js +0 -23
  153. package/hooks/CluePopupContext.d.ts +0 -24
  154. package/hooks/CluePopupContext.js +0 -12
  155. package/hooks/ClueProvider.d.ts +0 -9
  156. package/hooks/ClueProvider.js +0 -14
  157. package/hooks/selectors.d.ts +0 -10
  158. package/hooks/selectors.js +0 -24
  159. package/hooks/useAnnotations.d.ts +0 -24
  160. package/hooks/useAnnotations.js +0 -69
  161. package/hooks/useClue.d.ts +0 -4
  162. package/hooks/useClue.js +0 -8
  163. package/hooks/useClueActions.d.ts +0 -4
  164. package/hooks/useClueActions.js +0 -5
  165. package/hooks/useClueConfig.d.ts +0 -1
  166. package/hooks/useClueConfig.js +0 -8
  167. package/hooks/useClueTypeConfig.d.ts +0 -17
  168. package/hooks/useClueTypeConfig.js +0 -7
  169. package/hooks/useComparator.d.ts +0 -16
  170. package/hooks/useComparator.js +0 -1060
  171. package/hooks/useErrors.d.ts +0 -17
  172. package/hooks/useErrors.js +0 -35
  173. package/hooks/useMyHighlights.d.ts +0 -11
  174. package/hooks/useMyHighlights.js +0 -74
  175. package/hooks/useMyLocalStorage.d.ts +0 -16
  176. package/hooks/useMyLocalStorage.js +0 -80
  177. package/iconify-CXMreGTg.js +0 -1782
  178. package/icons/Action.d.ts +0 -9
  179. package/icons/Action.js +0 -90
  180. package/icons/Assessment.d.ts +0 -11
  181. package/icons/Assessment.js +0 -123
  182. package/icons/Context.d.ts +0 -12
  183. package/icons/Context.js +0 -83
  184. package/icons/Opinion.d.ts +0 -11
  185. package/icons/Opinion.js +0 -125
  186. package/icons/iconMap.d.ts +0 -7
  187. package/icons/iconMap.js +0 -10
  188. package/identity-CPGTqrE4.js +0 -6
  189. package/index-BDVjGvMI.js +0 -696
  190. package/index-BDrtH5ec.js +0 -465
  191. package/index-C9lySIVX.js +0 -1172
  192. package/index-DJYqRcxJ.js +0 -15750
  193. package/index-Dn2NHyXg.js +0 -17654
  194. package/index.css +0 -21
  195. package/isEmpty-BQkZubqU.js +0 -29
  196. package/isNil-CIubwp4T.js +0 -6
  197. package/isObject-FTY-5JQX.js +0 -7
  198. package/isObjectLike-OAgjjZye.js +0 -48
  199. package/isSymbol-Xd2FsJyp.js +0 -8
  200. package/isUndefined-CE8h73dH.js +0 -10
  201. package/last-CUCl67Im.js +0 -7
  202. package/main.d.ts +0 -42
  203. package/main.js +0 -70
  204. package/public/manifest.json +0 -16
  205. package/public/robots.txt +0 -3
  206. package/public/svg/dark/clue-h.svg +0 -52
  207. package/public/svg/dark/clue-icon1-simple.svg +0 -33
  208. package/public/svg/dark/clue-icon1.svg +0 -44
  209. package/public/svg/dark/clue-icon2-simple.svg +0 -26
  210. package/public/svg/dark/clue-icon2.svg +0 -37
  211. package/public/svg/dark/clue-name.svg +0 -14
  212. package/public/svg/dark/clue-v.svg +0 -52
  213. package/public/svg/light/clue-h.svg +0 -60
  214. package/public/svg/light/clue-icon1-simple.svg +0 -37
  215. package/public/svg/light/clue-icon1.svg +0 -48
  216. package/public/svg/light/clue-icon2-simple.svg +0 -30
  217. package/public/svg/light/clue-icon2.svg +0 -41
  218. package/public/svg/light/clue-name.svg +0 -14
  219. package/public/svg/light/clue-v.svg +0 -60
  220. package/sortBy-B-UKp4GT.js +0 -100
  221. package/sumBy-MYkDPHZL.js +0 -8
  222. package/tabs-xGuUGsJd.js +0 -254
  223. package/text/Frequency.d.ts +0 -9
  224. package/text/Frequency.js +0 -49
  225. package/toFinite-CArjry_l.js +0 -16
  226. package/toNumber-DPxy1FBy.js +0 -39
  227. package/types/EnrichmentProps.d.ts +0 -73
  228. package/types/RunningActionData.d.ts +0 -15
  229. package/types/WithActionData.d.ts +0 -9
  230. package/types/action.d.ts +0 -25
  231. package/types/config.d.ts +0 -16
  232. package/types/fetcher.d.ts +0 -60
  233. package/types/graph.d.ts +0 -101
  234. package/types/lookup.d.ts +0 -62
  235. package/types/network.d.ts +0 -9
  236. package/useClueTypeConfig-D9ZSxa4F.js +0 -3096
  237. package/utils/chain.d.ts +0 -14
  238. package/utils/chain.js +0 -106
  239. package/utils/classificationParser.d.ts +0 -195
  240. package/utils/classificationParser.js +0 -553
  241. package/utils/constants.d.ts +0 -26
  242. package/utils/constants.js +0 -36
  243. package/utils/graph.d.ts +0 -13
  244. package/utils/graph.js +0 -79
  245. package/utils/hashUtil.d.ts +0 -6
  246. package/utils/hashUtil.js +0 -11
  247. package/utils/line.d.ts +0 -28
  248. package/utils/line.js +0 -136
  249. package/utils/loggerUtil.d.ts +0 -6
  250. package/utils/loggerUtil.js +0 -8
  251. package/utils/sessionStorage.d.ts +0 -9
  252. package/utils/sessionStorage.js +0 -51
  253. package/utils/utils.d.ts +0 -13
  254. package/utils/utils.js +0 -11
  255. package/utils/window.d.ts +0 -3
  256. package/utils/window.js +0 -24
  257. package/utils-CxIhC2xH.js +0 -4182
package/icons/Action.d.ts DELETED
@@ -1,9 +0,0 @@
1
- import { IconProps } from '@iconify/react';
2
- import { Selector } from "../types/lookup";
3
-
4
- declare const _default: import('react').NamedExoticComponent<{
5
- value: Selector;
6
- counters?: boolean;
7
- disableTooltip?: boolean;
8
- } & Omit<IconProps, "icon">>;
9
- export default _default;
package/icons/Action.js DELETED
@@ -1,90 +0,0 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { I as Icon } from "../iconify-CXMreGTg.js";
3
- import { useTheme, Stack, Divider, Typography } from "@mui/material";
4
- import CountBadge from "../components/CountBadge.js";
5
- import { C as CluePopupContext } from "../AnnotationPreview-BvNpZOP0.js";
6
- import { u as useClueActions } from "../ActionForm-DgfJwTzt.js";
7
- import { memo, useRef, useMemo, useEffect } from "react";
8
- import { u as useContextSelector } from "../index-BDVjGvMI.js";
9
- import { g as groupBy } from "../groupBy-DC2oOuBN.js";
10
- const ResultDetails = ({ result }) => {
11
- return /* @__PURE__ */ jsxs(Stack, { p: 1, children: [
12
- /* @__PURE__ */ jsx(Typography, { variant: "body1", children: result.action.name }),
13
- /* @__PURE__ */ jsx(Typography, { variant: "caption", color: "text.secondary", children: result.summary })
14
- ] });
15
- };
16
- const ActionIcon = ({ value, counters = true, disableTooltip = false, ...otherProps }) => {
17
- const theme = useTheme();
18
- const showInfo = useContextSelector(CluePopupContext, (state) => state.showInfo);
19
- const closeInfo = useContextSelector(CluePopupContext, (state) => state.closeInfo);
20
- const successAnchorRef = useRef();
21
- const failureAnchorRef = useRef();
22
- const { getActionResults } = useClueActions();
23
- const actionResults = useMemo(
24
- () => getActionResults(value.type, value.value, value.classification),
25
- [getActionResults, value.classification, value.type, value.value]
26
- );
27
- useEffect(() => {
28
- if (disableTooltip) {
29
- closeInfo("context", value);
30
- }
31
- }, [disableTooltip]);
32
- const [successes, failures] = useMemo(() => {
33
- const outcomes = groupBy(actionResults, (result) => result.outcome);
34
- return [outcomes.success ?? [], outcomes.failure ?? []];
35
- }, [actionResults]);
36
- const successContent = useMemo(() => {
37
- const entries = successes.map((result) => /* @__PURE__ */ jsx(ResultDetails, { result }, result.actionId));
38
- return /* @__PURE__ */ jsx(Stack, { spacing: 1, divider: /* @__PURE__ */ jsx(Divider, { flexItem: true, orientation: "horizontal" }), children: entries });
39
- }, [successes]);
40
- const failureContent = useMemo(() => {
41
- const entries = failures.map((result) => /* @__PURE__ */ jsx(ResultDetails, { result }, result.summary));
42
- return /* @__PURE__ */ jsx(Stack, { spacing: 1, divider: /* @__PURE__ */ jsx(Divider, { flexItem: true, orientation: "horizontal" }), children: entries });
43
- }, [failures]);
44
- if ((actionResults == null ? void 0 : actionResults.length) < 1) {
45
- return null;
46
- }
47
- return /* @__PURE__ */ jsxs(Stack, { direction: "row", spacing: 1, children: [
48
- /* @__PURE__ */ jsx(Divider, { flexItem: true, orientation: "vertical" }),
49
- successes.length > 0 && /* @__PURE__ */ jsx(
50
- "span",
51
- {
52
- ref: successAnchorRef,
53
- style: { display: "flex" },
54
- onMouseOver: disableTooltip ? void 0 : () => showInfo("actionResults", successAnchorRef.current, value, { content: successContent }),
55
- onMouseLeave: disableTooltip ? void 0 : () => closeInfo("actionResults", value),
56
- children: /* @__PURE__ */ jsx(CountBadge, { disabled: !counters, count: actionResults.filter((result) => result.outcome === "success").length, children: /* @__PURE__ */ jsx(
57
- Icon,
58
- {
59
- icon: "material-symbols:bookmark-check-rounded",
60
- color: theme.palette.success.main,
61
- fontSize: "1.5em",
62
- ...otherProps
63
- }
64
- ) })
65
- }
66
- ),
67
- failures.length > 0 && /* @__PURE__ */ jsx(
68
- "span",
69
- {
70
- ref: failureAnchorRef,
71
- style: { display: "flex" },
72
- onMouseOver: disableTooltip ? void 0 : () => showInfo("actionResults", failureAnchorRef.current, value, { content: failureContent }),
73
- onMouseLeave: disableTooltip ? void 0 : () => closeInfo("actionResults", value),
74
- children: /* @__PURE__ */ jsx(CountBadge, { disabled: !counters, count: actionResults.filter((result) => result.outcome === "failure").length, children: /* @__PURE__ */ jsx(
75
- Icon,
76
- {
77
- icon: "material-symbols:cancel-presentation-rounded",
78
- color: theme.palette.error.main,
79
- fontSize: "1.5em",
80
- ...otherProps
81
- }
82
- ) })
83
- }
84
- )
85
- ] });
86
- };
87
- const ActionIcon$1 = memo(ActionIcon);
88
- export {
89
- ActionIcon$1 as default
90
- };
@@ -1,11 +0,0 @@
1
- import { IconProps } from '@iconify/react';
2
- import { Annotation, Selector } from "../types/lookup";
3
-
4
- declare const _default: import('react').NamedExoticComponent<{
5
- annotations: Annotation[];
6
- value: Selector;
7
- counters?: boolean;
8
- disableTooltip?: boolean;
9
- ubiquitous?: boolean;
10
- } & Omit<IconProps, "icon">>;
11
- export default _default;
@@ -1,123 +0,0 @@
1
- import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
- import { I as Icon } from "../iconify-CXMreGTg.js";
3
- import { useTheme, Stack, Chip, Divider, Grid, Tooltip } from "@mui/material";
4
- import CountBadge from "../components/CountBadge.js";
5
- import { C as CluePopupContext } from "../AnnotationPreview-BvNpZOP0.js";
6
- import { memo, useRef, useState, useMemo, useEffect } from "react";
7
- import { u as useContextSelector } from "../index-BDVjGvMI.js";
8
- import { g as groupBy } from "../groupBy-DC2oOuBN.js";
9
- import { s as sumBy } from "../sumBy-MYkDPHZL.js";
10
- import { m as maxBy, s as sortBy } from "../sortBy-B-UKp4GT.js";
11
- import { l as last } from "../last-CUCl67Im.js";
12
- const AssessmentIcon = ({ annotations, value, counters = true, disableTooltip = false, ubiquitous = false, ...otherProps }) => {
13
- const theme = useTheme();
14
- const showInfo = useContextSelector(CluePopupContext, (state) => state.showInfo);
15
- const closeInfo = useContextSelector(CluePopupContext, (state) => state.closeInfo);
16
- const anchorRef = useRef();
17
- const [showTooltip, setShowTooltip] = useState(false);
18
- const assessmentAnnotations = useMemo(
19
- () => annotations.filter((annotation) => (annotation == null ? void 0 : annotation.type) === "assessment" && (annotation == null ? void 0 : annotation.ubiquitous) === ubiquitous),
20
- [annotations, ubiquitous]
21
- );
22
- const sortedAssessments = useMemo(
23
- () => Object.entries(groupBy(assessmentAnnotations, "value")).map(([_value, _annotations]) => [
24
- _value,
25
- sumBy(_annotations, "quantity")
26
- ]),
27
- [assessmentAnnotations]
28
- );
29
- const popularAssessment = useMemo(() => maxBy(sortedAssessments, last), [sortedAssessments]);
30
- useEffect(() => {
31
- if (disableTooltip) {
32
- setShowTooltip(false);
33
- }
34
- }, [disableTooltip]);
35
- if ((assessmentAnnotations == null ? void 0 : assessmentAnnotations.length) < 1) {
36
- return null;
37
- }
38
- const tooltipProps = {
39
- tooltip: {
40
- sx: {
41
- maxWidth: "500px",
42
- backgroundColor: theme.palette.background.paper,
43
- border: `thin solid ${theme.palette.divider}`,
44
- p: 1,
45
- boxShadow: theme.shadows[2]
46
- }
47
- }
48
- };
49
- const tooltipContent = /* @__PURE__ */ jsxs(Stack, { spacing: 1, onClick: (e) => e.stopPropagation(), children: [
50
- assessmentAnnotations.length > 1 && /* @__PURE__ */ jsxs(Fragment, { children: [
51
- /* @__PURE__ */ jsx(Stack, { direction: "row", children: sortedAssessments.map(([type, count]) => /* @__PURE__ */ jsx(
52
- Chip,
53
- {
54
- size: "small",
55
- variant: "outlined",
56
- label: `${type}: ${count}`,
57
- icon: /* @__PURE__ */ jsx(
58
- Icon,
59
- {
60
- icon: ["trivial", "recon", "attempt", "compromise", "mitigated"].includes(type) ? "healthicons:hazardous" : "fluent-mdl2:ribbon-solid"
61
- }
62
- ),
63
- color: ["trivial", "recon", "attempt", "compromise", "mitigated"].includes(type) ? "error" : "success"
64
- },
65
- type
66
- )) }),
67
- /* @__PURE__ */ jsx(Divider, { orientation: "horizontal", flexItem: true })
68
- ] }),
69
- /* @__PURE__ */ jsx(
70
- Grid,
71
- {
72
- sx: {
73
- mt: assessmentAnnotations.length < 2 && `${theme.spacing(-0.5)} !important`,
74
- ml: `${theme.spacing(-0.5)} !important`
75
- },
76
- container: true,
77
- spacing: 0.5,
78
- maxWidth: "500px",
79
- children: sortBy(assessmentAnnotations, "value").map((annotation) => /* @__PURE__ */ jsx(Grid, { item: true, children: /* @__PURE__ */ jsx(
80
- Chip,
81
- {
82
- size: "small",
83
- variant: "outlined",
84
- label: annotation.analytic + (annotation.quantity > 1 ? ` (x${annotation.quantity})` : ""),
85
- icon: /* @__PURE__ */ jsx(
86
- Icon,
87
- {
88
- icon: ["trivial", "recon", "attempt", "compromise", "mitigated"].includes(annotation.value) ? "healthicons:hazardous" : "fluent-mdl2:ribbon-solid"
89
- }
90
- ),
91
- color: ["trivial", "recon", "attempt", "compromise", "mitigated"].includes(annotation.value) ? "error" : "success"
92
- }
93
- ) }, annotation.analytic + annotation.value))
94
- }
95
- )
96
- ] });
97
- if (["trivial", "recon", "attempt", "compromise", "mitigated"].includes(popularAssessment[0])) {
98
- return /* @__PURE__ */ jsx(
99
- "span",
100
- {
101
- ref: anchorRef,
102
- style: { display: "flex" },
103
- onMouseOver: disableTooltip ? void 0 : () => showInfo("assessment", anchorRef.current, value, { content: tooltipContent }),
104
- onMouseLeave: disableTooltip ? void 0 : () => closeInfo("assessment", value),
105
- children: /* @__PURE__ */ jsx(CountBadge, { disabled: !counters, color: "error", count: popularAssessment[1], children: /* @__PURE__ */ jsx(Icon, { fontSize: "1.5em", ...otherProps, icon: "healthicons:hazardous", color: theme.palette.error.main }) })
106
- }
107
- );
108
- }
109
- return /* @__PURE__ */ jsx(
110
- "span",
111
- {
112
- ref: anchorRef,
113
- style: { display: "flex" },
114
- onMouseOver: disableTooltip ? void 0 : () => showInfo("assessment", anchorRef.current, value, { content: tooltipContent }),
115
- onMouseLeave: disableTooltip ? void 0 : () => closeInfo("assessment", value),
116
- children: /* @__PURE__ */ jsx(Tooltip, { disableInteractive: true, componentsProps: tooltipProps, open: showTooltip, title: tooltipContent, children: /* @__PURE__ */ jsx(CountBadge, { disabled: !counters, count: popularAssessment[1], children: /* @__PURE__ */ jsx(Icon, { fontSize: "1.5em", ...otherProps, icon: "fluent-mdl2:ribbon-solid", color: theme.palette.success.main }) }) })
117
- }
118
- );
119
- };
120
- const AssessmentIcon$1 = memo(AssessmentIcon);
121
- export {
122
- AssessmentIcon$1 as default
123
- };
@@ -1,12 +0,0 @@
1
- import { IconProps } from '@iconify/react';
2
- import { Annotation, Selector, WithExtra } from "../types/lookup";
3
-
4
- declare const _default: import('react').NamedExoticComponent<{
5
- annotations: WithExtra<Annotation>[];
6
- value: Selector;
7
- counters?: boolean;
8
- disableTooltip?: boolean;
9
- showExtraIcon?: boolean;
10
- ubiquitous?: boolean;
11
- } & Omit<IconProps, "icon">>;
12
- export default _default;
package/icons/Context.js DELETED
@@ -1,83 +0,0 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { I as Icon } from "../iconify-CXMreGTg.js";
3
- import { Stack, Divider } from "@mui/material";
4
- import AnnotationEntry from "../components/AnnotationEntry.js";
5
- import CountBadge from "../components/CountBadge.js";
6
- import Iconified from "../components/display/icons/Iconified.js";
7
- import { C as CluePopupContext } from "../AnnotationPreview-BvNpZOP0.js";
8
- import { memo, useRef, useMemo, useEffect } from "react";
9
- import { u as useContextSelector } from "../index-BDVjGvMI.js";
10
- import { g as groupBy } from "../groupBy-DC2oOuBN.js";
11
- const ContextIcon = ({
12
- annotations,
13
- value,
14
- counters = true,
15
- disableTooltip = false,
16
- showExtraIcon = false,
17
- ubiquitous = false,
18
- ...otherProps
19
- }) => {
20
- const showInfo = useContextSelector(CluePopupContext, (state) => state.showInfo);
21
- const closeInfo = useContextSelector(CluePopupContext, (state) => state.closeInfo);
22
- const anchorRef = useRef();
23
- const contextAnnotations = useMemo(
24
- () => annotations.filter((annotation) => annotation.type === "context" && annotation.ubiquitous === ubiquitous),
25
- [annotations, ubiquitous]
26
- );
27
- const additionalIcons = useMemo(() => contextAnnotations.filter((annotation) => annotation.icon), [contextAnnotations]);
28
- useEffect(() => {
29
- if (disableTooltip) {
30
- closeInfo("context", value);
31
- }
32
- }, [disableTooltip]);
33
- if ((contextAnnotations == null ? void 0 : contextAnnotations.length) < 1) {
34
- return null;
35
- }
36
- const icons = [];
37
- if (additionalIcons.length) {
38
- Object.entries(groupBy(additionalIcons, "icon")).forEach(
39
- ([icon, _annotations]) => icons.push(
40
- /* @__PURE__ */ jsx(
41
- "span",
42
- {
43
- ref: anchorRef,
44
- style: { display: "flex" },
45
- onMouseOver: disableTooltip ? void 0 : () => showInfo("context", anchorRef.current, value, {
46
- content: /* @__PURE__ */ jsx(
47
- Stack,
48
- {
49
- onClick: (e) => e.stopPropagation(),
50
- spacing: 1,
51
- divider: /* @__PURE__ */ jsx(Divider, { flexItem: true, orientation: "horizontal" }),
52
- children: _annotations.map((annotation) => /* @__PURE__ */ jsx(AnnotationEntry, { annotation }, JSON.stringify(annotation)))
53
- }
54
- )
55
- }),
56
- onMouseLeave: disableTooltip ? void 0 : () => closeInfo("context", value),
57
- children: /* @__PURE__ */ jsx(
58
- Icon,
59
- {
60
- icon,
61
- fontSize: otherProps.fontSize ?? "1.25em",
62
- style: { filter: "drop-shadow(0px 0px 1px rgb(0 0 0 / 0.4))", ...otherProps.style ?? {} },
63
- ...otherProps
64
- }
65
- )
66
- },
67
- icon
68
- )
69
- )
70
- );
71
- }
72
- const additionalSize = contextAnnotations.length - additionalIcons.length;
73
- if (additionalSize > 0 && showExtraIcon) {
74
- icons.push(
75
- /* @__PURE__ */ jsx(CountBadge, { disabled: !counters, count: additionalSize, children: /* @__PURE__ */ jsx(Iconified, { icon: "ic:baseline-newspaper", style: { zIndex: 2, ...otherProps.style ?? {} } }) }, "extra")
76
- );
77
- }
78
- return /* @__PURE__ */ jsx(Stack, { direction: "row", spacing: 1, children: icons });
79
- };
80
- const ContextIcon$1 = memo(ContextIcon);
81
- export {
82
- ContextIcon$1 as default
83
- };
@@ -1,11 +0,0 @@
1
- import { IconProps } from '@iconify/react';
2
- import { Annotation, Selector } from "../types/lookup";
3
-
4
- declare const _default: import('react').NamedExoticComponent<{
5
- annotations: Annotation[];
6
- value: Selector;
7
- counters?: boolean;
8
- disableTooltip?: boolean;
9
- ubiquitous?: boolean;
10
- } & Omit<IconProps, "icon">>;
11
- export default _default;
package/icons/Opinion.js DELETED
@@ -1,125 +0,0 @@
1
- import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
- import { I as Icon } from "../iconify-CXMreGTg.js";
3
- import { useTheme, Stack, Chip, Divider, Grid } from "@mui/material";
4
- import CountBadge from "../components/CountBadge.js";
5
- import { C as CluePopupContext } from "../AnnotationPreview-BvNpZOP0.js";
6
- import chain from "../utils/chain.js";
7
- import { memo, useRef, useMemo, useCallback, useEffect } from "react";
8
- import { u as useContextSelector } from "../index-BDVjGvMI.js";
9
- import { g as groupBy } from "../groupBy-DC2oOuBN.js";
10
- import { s as sumBy } from "../sumBy-MYkDPHZL.js";
11
- import { s as sortBy } from "../sortBy-B-UKp4GT.js";
12
- const OpinionIcon = ({ annotations, value, counters = true, disableTooltip = false, ubiquitous = false, ...otherProps }) => {
13
- const theme = useTheme();
14
- const showInfo = useContextSelector(CluePopupContext, (state) => state.showInfo);
15
- const closeInfo = useContextSelector(CluePopupContext, (state) => state.closeInfo);
16
- const anchorRef = useRef();
17
- const opinionAnnotations = useMemo(
18
- () => annotations.filter((annotation) => annotation.type === "opinion" && annotation.ubiquitous === ubiquitous),
19
- [annotations, ubiquitous]
20
- );
21
- const sortedOpinions = useMemo(
22
- () => chain(
23
- Object.entries(groupBy(opinionAnnotations, "value")).map(([_value, _annotations]) => [
24
- _value,
25
- sumBy(_annotations, "quantity")
26
- ])
27
- ).sortBy(([__, count]) => count).reverse().value(),
28
- [opinionAnnotations]
29
- );
30
- const icon = useCallback(
31
- (_opinion) => _opinion === "benign" ? "mdi:shield-check" : _opinion === "suspicious" ? "mdi:warning-outline" : _opinion === "obscure" ? "bi:eye-slash-fill" : "mdi:warning-decagram",
32
- []
33
- );
34
- useEffect(() => {
35
- if (disableTooltip) {
36
- closeInfo("opinion", value);
37
- }
38
- }, [disableTooltip]);
39
- const tooltipContent = useMemo(
40
- () => /* @__PURE__ */ jsxs(Stack, { spacing: 1, onClick: (e) => e.stopPropagation(), children: [
41
- opinionAnnotations.length > 1 && /* @__PURE__ */ jsxs(Fragment, { children: [
42
- /* @__PURE__ */ jsx(Stack, { direction: "row", children: sortedOpinions.map(([type, count]) => /* @__PURE__ */ jsx(
43
- Chip,
44
- {
45
- size: "small",
46
- variant: "outlined",
47
- label: `${type}: ${count}`,
48
- icon: /* @__PURE__ */ jsx(Icon, { icon: icon(type) }),
49
- sx: { textTransform: "capitalize" },
50
- color: {
51
- benign: "success",
52
- suspicious: "warning",
53
- obscure: "error",
54
- malicious: "error"
55
- }[type]
56
- },
57
- type
58
- )) }),
59
- /* @__PURE__ */ jsx(Divider, { orientation: "horizontal", flexItem: true })
60
- ] }),
61
- /* @__PURE__ */ jsx(
62
- Grid,
63
- {
64
- sx: {
65
- mt: opinionAnnotations.length < 2 && `${theme.spacing(-0.5)} !important`,
66
- ml: `${theme.spacing(-0.5)} !important`
67
- },
68
- container: true,
69
- spacing: 0.5,
70
- maxWidth: "500px",
71
- children: sortBy(opinionAnnotations, "value").map((annotation) => /* @__PURE__ */ jsx(Grid, { item: true, children: /* @__PURE__ */ jsx(
72
- Chip,
73
- {
74
- size: "small",
75
- variant: "outlined",
76
- label: (annotation.analytic ?? annotation.author) + (annotation.quantity > 1 ? ` (x${annotation.quantity})` : ""),
77
- icon: /* @__PURE__ */ jsx(Icon, { icon: icon(annotation.value) }),
78
- color: {
79
- benign: "success",
80
- suspicious: "warning",
81
- obscure: "error",
82
- malicious: "error"
83
- }[annotation.value]
84
- }
85
- ) }, (annotation.analytic ?? annotation.author) + annotation.value))
86
- }
87
- )
88
- ] }),
89
- [icon, opinionAnnotations, sortedOpinions, theme]
90
- );
91
- if ((opinionAnnotations == null ? void 0 : opinionAnnotations.length) < 1) {
92
- return null;
93
- }
94
- return /* @__PURE__ */ jsx(
95
- "span",
96
- {
97
- ref: anchorRef,
98
- style: { display: "flex" },
99
- onMouseOver: disableTooltip ? void 0 : () => showInfo("assessment", anchorRef.current, value, { content: tooltipContent }),
100
- onMouseLeave: disableTooltip ? void 0 : () => closeInfo("assessment", value),
101
- children: /* @__PURE__ */ jsx(CountBadge, { disabled: !counters, count: sortedOpinions[0][1], children: /* @__PURE__ */ jsx(
102
- Icon,
103
- {
104
- fontSize: "1.25em",
105
- ...otherProps,
106
- icon: icon(sortedOpinions[0][0]),
107
- color: {
108
- benign: theme.palette.success.light,
109
- suspicious: theme.palette.warning.light,
110
- obscure: theme.palette.error.light,
111
- malicious: theme.palette.error.light
112
- }[sortedOpinions[0][0]],
113
- style: {
114
- zIndex: 2,
115
- ...otherProps.style ?? {}
116
- }
117
- }
118
- ) })
119
- }
120
- );
121
- };
122
- const OpinionIcon$1 = memo(OpinionIcon);
123
- export {
124
- OpinionIcon$1 as default
125
- };
@@ -1,7 +0,0 @@
1
- export declare const ICON_MAP: {
2
- context: string;
3
- opinion: string;
4
- mitigation: string;
5
- frequency: string;
6
- assessment: string;
7
- };
package/icons/iconMap.js DELETED
@@ -1,10 +0,0 @@
1
- const ICON_MAP = {
2
- context: "material-symbols:contextual-token",
3
- opinion: "material-symbols:how-to-vote-rounded",
4
- mitigation: "material-symbols:shield-locked-rounded",
5
- frequency: "material-symbols:show-chart-rounded",
6
- assessment: "material-symbols:menu-book"
7
- };
8
- export {
9
- ICON_MAP
10
- };
@@ -1,6 +0,0 @@
1
- function identity(value) {
2
- return value;
3
- }
4
- export {
5
- identity as i
6
- };