@cccsaurora/clue-ui 1.2.0-dev.253 → 1.2.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 (179) hide show
  1. package/ActionForm-pWyIi01Z.js +4460 -0
  2. package/AnnotationDetails-11P7yhyx.js +160 -0
  3. package/AnnotationPreview-BGqlBBcp.js +140 -0
  4. package/ClueEnrichContext-DDZf646J.js +418 -0
  5. package/FlexOne-BXWFOd1T.js +6 -0
  6. package/_MapCache-BiTi0iqu.js +180 -0
  7. package/_Uint8Array-TJBs9NS2.js +101 -0
  8. package/_baseAssignValue-CNMLQZco.js +20 -0
  9. package/_baseClone-DajKHDCs.js +207 -0
  10. package/_baseExtremum-DhV10dXG.js +27 -0
  11. package/_baseFlatten-C8CjmqQ-.js +72 -0
  12. package/_baseGet-DSZygzyq.js +79 -0
  13. package/_baseIsEqual-C08cUUpA.js +147 -0
  14. package/_baseIteratee-DGZdhdqr.js +95 -0
  15. package/_baseSlice-M5RKzt1A.js +10 -0
  16. package/_baseSum-wEbgNeUs.js +10 -0
  17. package/_baseUniq-CGlHphLr.js +79 -0
  18. package/_commonjsHelpers-DaMA6jEr.js +8 -0
  19. package/_createAggregator-BvcoTZto.js +53 -0
  20. package/_getPrototype-Dm06JiGv.js +5 -0
  21. package/_getTag-Cfxlub3L.js +90 -0
  22. package/_setToArray-C7yMOeww.js +29 -0
  23. package/cloneDeep-wjl3XmFj.js +8 -0
  24. package/components/AnnotationBody.js +35 -49
  25. package/components/AnnotationDetailPopover.js +30 -36
  26. package/components/AnnotationDetails.js +7 -7
  27. package/components/AnnotationEntry.js +35 -35
  28. package/components/AnnotationPreview.js +5 -5
  29. package/components/ClassificationChip.js +23 -44
  30. package/components/CountBadge.js +26 -31
  31. package/components/EnrichedCard.js +97 -110
  32. package/components/EnrichedChip.js +105 -130
  33. package/components/EnrichedTypography.js +107 -133
  34. package/components/ErrorBoundary.js +24 -28
  35. package/components/RetryFailedEnrichments.js +9 -10
  36. package/components/SourcePicker.js +49 -57
  37. package/components/actions/ActionForm.js +4 -4
  38. package/components/actions/ExecutePopover.js +59 -75
  39. package/components/actions/ResultModal.js +4 -4
  40. package/components/actions/form/schemaAdapter.js +23 -39
  41. package/components/actions/formats/FileResult.js +59 -86
  42. package/components/actions/formats/index.js +10 -21
  43. package/components/display/graph/ExpandMoreButton.js +10 -10
  44. package/components/display/graph/elements/NodeCard.js +91 -111
  45. package/components/display/graph/elements/NodeTag.js +13 -15
  46. package/components/display/graph/index.js +202 -261
  47. package/components/display/graph/visualizations/Leaf.js +69 -88
  48. package/components/display/graph/visualizations/cloud/index.js +81 -98
  49. package/components/display/graph/visualizations/icons/BaseIcon.js +21 -26
  50. package/components/display/graph/visualizations/icons/BugIcon.js +12 -12
  51. package/components/display/graph/visualizations/icons/HostIcon.js +12 -12
  52. package/components/display/graph/visualizations/icons/NetworkIcon.js +12 -12
  53. package/components/display/graph/visualizations/icons/ProcessIcon.js +12 -12
  54. package/components/display/graph/visualizations/icons/TargetIcon.js +13 -13
  55. package/components/display/graph/visualizations/icons/index.js +13 -14
  56. package/components/display/graph/visualizations/panels/NodePanel.js +8 -10
  57. package/components/display/graph/visualizations/tree/BundleLine.js +81 -108
  58. package/components/display/graph/visualizations/tree/Triangle.js +13 -13
  59. package/components/display/graph/visualizations/tree/index.js +305 -407
  60. package/components/display/icons/Iconified.js +12 -27
  61. package/components/display/json/index.js +4 -4
  62. package/components/display/markdown/index.js +5770 -8678
  63. package/components/enrichment/EnrichPopover.js +46 -54
  64. package/components/fetchers/Fetcher.js +117 -155
  65. package/components/fetchers/PreviewModal.js +17 -20
  66. package/components/fetchers/StatusChip.js +17 -21
  67. package/components/group/Entry.js +11 -13
  68. package/components/group/Group.js +10 -13
  69. package/components/group/GroupControl.js +65 -76
  70. package/components/stats/QueryStatus.js +33 -43
  71. package/countBy-pIyxNZhO.js +8 -0
  72. package/data/event.js +4 -6
  73. package/database/index.js +2 -2
  74. package/debounce-DryYcbJ4.js +56 -0
  75. package/get-CH7kz5Ix.js +8 -0
  76. package/groupBy-yNrpdipq.js +8 -0
  77. package/hooks/ClueActionContext.js +6 -6
  78. package/hooks/ClueComponentContext.js +23 -29
  79. package/hooks/ClueConfigProvider.js +12 -14
  80. package/hooks/ClueDatabaseContext.js +13 -19
  81. package/hooks/ClueEnrichContext.js +8 -8
  82. package/hooks/ClueFetcherContext.js +56 -83
  83. package/hooks/ClueGroupContext.js +14 -17
  84. package/hooks/CluePopupContext.js +5 -5
  85. package/hooks/ClueProvider.js +10 -12
  86. package/hooks/selectors.js +7 -7
  87. package/hooks/useActionResult.js +2 -2
  88. package/hooks/useAnnotations.js +31 -47
  89. package/hooks/useClue.js +4 -6
  90. package/hooks/useClueActions.js +3 -3
  91. package/hooks/useClueConfig.js +4 -6
  92. package/hooks/useClueTypeConfig.js +3 -3
  93. package/hooks/useComparator.js +435 -722
  94. package/hooks/useErrors.js +18 -22
  95. package/hooks/useFetcherResult.js +24 -33
  96. package/hooks/useMyHighlights.js +36 -66
  97. package/hooks/useMyLocalStorage.js +37 -66
  98. package/iconify-BBckr5AQ.js +1263 -0
  99. package/icons/Action.js +49 -66
  100. package/icons/Assessment.js +68 -84
  101. package/icons/Context.js +63 -77
  102. package/icons/Opinion.js +65 -77
  103. package/icons/iconMap.js +2 -2
  104. package/identity-ByMq8VxU.js +6 -0
  105. package/index-BHAe_V9n.js +12768 -0
  106. package/index-CA5CUNZO.js +975 -0
  107. package/index-D_ZywK71.js +358 -0
  108. package/index-Dj5C04IX.js +568 -0
  109. package/index-p5_wX7q1.js +11729 -0
  110. package/isNil-CjWwlQS3.js +6 -0
  111. package/isObject-B53jY8Qg.js +7 -0
  112. package/isObjectLike-BatpeCIi.js +29 -0
  113. package/isSymbol-C3_SC0Qp.js +8 -0
  114. package/last-7CdUxN0r.js +7 -0
  115. package/main.js +60 -60
  116. package/package.json +1 -1
  117. package/sortBy-0BpKRt8p.js +79 -0
  118. package/sumBy-Do6Ff4Bw.js +8 -0
  119. package/text/Frequency.js +23 -42
  120. package/toFinite-BMy6GObD.js +14 -0
  121. package/toNumber-YVhnnJv4.js +31 -0
  122. package/useClueTypeConfig-77zd_zdF.js +2292 -0
  123. package/utils/chain.js +64 -91
  124. package/utils/classificationParser.js +256 -519
  125. package/utils/constants.js +10 -35
  126. package/utils/graph.js +45 -72
  127. package/utils/hashUtil.js +7 -7
  128. package/utils/line.js +81 -131
  129. package/utils/loggerUtil.js +3 -5
  130. package/utils/sessionStorage.js +27 -41
  131. package/utils/time.js +423 -423
  132. package/utils/utils.js +9 -9
  133. package/utils/window.js +10 -21
  134. package/utils-D5hPDE7N.js +129 -0
  135. package/ActionForm-C0aE9HUv.js +0 -5941
  136. package/AnnotationDetails-CEou0vCc.js +0 -175
  137. package/AnnotationPreview-CLMVD6Ec.js +0 -188
  138. package/ClueEnrichContext-BkD9ZwM9.js +0 -541
  139. package/FlexOne-BSYAhhtG.js +0 -9
  140. package/_MapCache-WmuDdwuH.js +0 -222
  141. package/_Uint8Array-DdG4KLKn.js +0 -128
  142. package/_baseAssignValue-CGTuELqU.js +0 -25
  143. package/_baseClone-BpWiBnMp.js +0 -283
  144. package/_baseExtremum-BY663UjY.js +0 -33
  145. package/_baseFlatten-B69cDsaV.js +0 -92
  146. package/_baseGet-Bx3A4Qfp.js +0 -108
  147. package/_baseIsEqual-B4IufFlL.js +0 -208
  148. package/_baseIteratee-7AQvAy1o.js +0 -126
  149. package/_baseSlice-GAv_YFTT.js +0 -20
  150. package/_baseSum-D0WC1dN0.js +0 -13
  151. package/_baseUniq-B8fK6hI-.js +0 -115
  152. package/_commonjsHelpers-DWwsNxpa.js +0 -8
  153. package/_createAggregator-CwGPThny.js +0 -63
  154. package/_getPrototype-CblfEidB.js +0 -5
  155. package/_getTag-jwz4XLoZ.js +0 -126
  156. package/_setToArray-CaPKQhcz.js +0 -33
  157. package/cloneDeep-DmUylbkM.js +0 -8
  158. package/countBy-DqlU5OwT.js +0 -14
  159. package/debounce-bV0h5FC5.js +0 -92
  160. package/get-DSsNkRQs.js +0 -8
  161. package/groupBy-ChDRT7uy.js +0 -14
  162. package/iconify-CXMreGTg.js +0 -1782
  163. package/identity-CPGTqrE4.js +0 -6
  164. package/index-AMfoEg_6.js +0 -696
  165. package/index-B6C2a_Lg.js +0 -1172
  166. package/index-C12gPw2W.js +0 -17698
  167. package/index-DCKkHTvx.js +0 -15750
  168. package/index-UkW8Sur3.js +0 -465
  169. package/isNil-CIubwp4T.js +0 -6
  170. package/isObject-FTY-5JQX.js +0 -7
  171. package/isObjectLike-OAgjjZye.js +0 -48
  172. package/isSymbol-Xd2FsJyp.js +0 -8
  173. package/last-CUCl67Im.js +0 -7
  174. package/sortBy-C7mGPI_D.js +0 -100
  175. package/sumBy-CGALjmwQ.js +0 -8
  176. package/toFinite-Bc55msYj.js +0 -16
  177. package/toNumber-DPxy1FBy.js +0 -39
  178. package/useClueTypeConfig-D2tf4-NM.js +0 -3289
  179. package/utils-71DpzFrA.js +0 -199
package/index-UkW8Sur3.js DELETED
@@ -1,465 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
4
- import { jsx, jsxs } from "react/jsx-runtime";
5
- import { ClickAwayListener, TextField, InputAdornment, Popper, Paper, MenuList, MenuItem, ListItemText, useTheme, Stack, Skeleton } from "@mui/material";
6
- import { useRef, useState, useEffect, useMemo, lazy } from "react";
7
- import { r as removeEmpty, s as searchObject, f as flatten } from "./utils-71DpzFrA.js";
8
- import { ClueComponentContext } from "./hooks/ClueComponentContext.js";
9
- import { useMyLocalStorageItem } from "./hooks/useMyLocalStorage.js";
10
- import { StorageKey } from "./utils/constants.js";
11
- import { u as useContextSelector } from "./index-AMfoEg_6.js";
12
- const ENTER = "Enter";
13
- const ESCAPE = "Escape";
14
- const ARROW_LEFT = "ArrowLeft";
15
- const ARROW_UP = "ArrowUp";
16
- const ARROW_RIGHT = "ArrowRight";
17
- const ARROW_DOWN = "ArrowDown";
18
- const BACKSPACE = "Backspace";
19
- const SPACE = " ";
20
- function is(key, check) {
21
- return key === check;
22
- }
23
- function isArrowUp(key) {
24
- return is(key, ARROW_UP);
25
- }
26
- function isArrowDown(key) {
27
- return is(key, ARROW_DOWN);
28
- }
29
- function isArrowLeft(key) {
30
- return is(key, ARROW_LEFT);
31
- }
32
- function isArrowRight(key) {
33
- return is(key, ARROW_RIGHT);
34
- }
35
- function isEscape(key) {
36
- return is(key, ESCAPE);
37
- }
38
- function isEnter(key) {
39
- return is(key, ENTER);
40
- }
41
- function isBackspace(key) {
42
- return is(key, BACKSPACE);
43
- }
44
- function isSpace(key) {
45
- return is(key, SPACE);
46
- }
47
- function parseEvent(event) {
48
- return {
49
- key: event.key,
50
- isCtrl: event.ctrlKey,
51
- isEnter: isEnter(event.key),
52
- isSpace: isSpace(event.key),
53
- isBackspace: isBackspace(event.key),
54
- isEscape: isEscape(event.key),
55
- isArrowLeft: isArrowLeft(event.key),
56
- isArrowRight: isArrowRight(event.key),
57
- isArrowUp: isArrowUp(event.key),
58
- isArrowDown: isArrowDown(event.key)
59
- };
60
- }
61
- class TuiPhraseLexer {
62
- constructor() {
63
- __publicField(this, "_phrase", null);
64
- __publicField(this, "_buffer", null);
65
- __publicField(this, "_tokens", null);
66
- __publicField(this, "_consumers", null);
67
- __publicField(this, "_consumer", null);
68
- __publicField(this, "_startIndex", 0);
69
- __publicField(this, "_endIndex", -1);
70
- }
71
- find(cursor, tokens) {
72
- const index = tokens.findIndex((t) => t.startIndex <= cursor && cursor <= t.endIndex);
73
- const token = tokens.at(index);
74
- return { index, token };
75
- }
76
- parse(phrase, cursor = 0) {
77
- this._phrase = phrase;
78
- this._buffer = [];
79
- this._tokens = [];
80
- this._consumers = this.consumers();
81
- this._consumer = null;
82
- this._startIndex = 0;
83
- this._endIndex = -1;
84
- for (let i = 0; i < this._phrase.length; i++) {
85
- this._endIndex += 1;
86
- const next = this._phrase[i];
87
- this._buffer.push(next);
88
- let newLock = false;
89
- if (!this._consumer) {
90
- this._consumer = this.lock();
91
- if (this._consumer) {
92
- newLock = true;
93
- this._consumer.init(this._buffer, this);
94
- }
95
- }
96
- if (this._consumer) {
97
- if (newLock) {
98
- newLock = false;
99
- } else {
100
- this._consumer.append(next, this);
101
- }
102
- const token = this._consumer.consume(this);
103
- if (token) {
104
- this._tokens.push(token);
105
- this._buffer = [];
106
- this._consumer = null;
107
- this._startIndex = this._endIndex + 1;
108
- }
109
- }
110
- }
111
- this._tokens.push({ type: "eop", startIndex: phrase.length, endIndex: phrase.length, value: "" });
112
- const flatTokens = this._tokens.flatMap((t) => t.children && t.children.length > 0 ? t.children : [t]);
113
- const { token: parent, index: parentIndex } = this.find(cursor, this._tokens);
114
- const { token: current, index: currentIndex } = this.find(cursor, flatTokens);
115
- const filter = cursor === current.startIndex && flatTokens[currentIndex - 1] ? flatTokens[currentIndex - 1] : current;
116
- return {
117
- cursor,
118
- parentIndex,
119
- parent,
120
- currentIndex,
121
- current,
122
- suggest: {
123
- token: filter,
124
- parent: this.find(filter.startIndex, this._tokens).token,
125
- value: filter.value.substring(0, cursor - filter.startIndex)
126
- },
127
- tokens: this._tokens
128
- };
129
- }
130
- lock() {
131
- return this._consumers.find((c) => c.lock(this));
132
- }
133
- buffer() {
134
- return this._buffer;
135
- }
136
- bufferValue() {
137
- return this._buffer.join("");
138
- }
139
- start() {
140
- return this._startIndex;
141
- }
142
- end() {
143
- return this._endIndex;
144
- }
145
- ahead(inc) {
146
- const start = this._endIndex + 1;
147
- if (inc) {
148
- return this._phrase.slice(start, start + inc);
149
- }
150
- return this._phrase.substring(start);
151
- }
152
- behind(inc) {
153
- if (inc) {
154
- return this.bufferValue().slice(-inc);
155
- }
156
- return this.bufferValue();
157
- }
158
- behindEndsWithAny(trim, ...values) {
159
- const behind = trim ? this.behind().trimEnd() : this.behind();
160
- return values.some((v) => behind.endsWith(v));
161
- }
162
- testBehind(regex) {
163
- return regex.test(this.behind());
164
- }
165
- aheadStartsWithAny(trim, ...values) {
166
- const ahead = trim ? this.ahead().trimStart() : this.ahead();
167
- return values.some((v) => ahead.startsWith(v));
168
- }
169
- aheadIsEmpty(trim = false) {
170
- return trim ? this.ahead().trim().length === 0 : this.ahead().length === 0;
171
- }
172
- testAhead(regex) {
173
- return regex.test(this.ahead());
174
- }
175
- }
176
- class TuiPhraseConsumer {
177
- constructor() {
178
- __publicField(this, "_buffer", []);
179
- }
180
- reset() {
181
- this._buffer = [];
182
- }
183
- init(buffer, lexer) {
184
- this._buffer = [...buffer];
185
- }
186
- append(next, lexer) {
187
- this._buffer.push(next);
188
- }
189
- bufferValue() {
190
- return this._buffer.join("");
191
- }
192
- endsWithAny(...values) {
193
- const _bufferValue = this.bufferValue();
194
- return values.some((v) => _bufferValue.endsWith(v));
195
- }
196
- test(regex) {
197
- return regex.test(this.bufferValue());
198
- }
199
- }
200
- class WhitespaceConsumer extends TuiPhraseConsumer {
201
- lock(lexer) {
202
- return lexer.bufferValue().match(/\s/) && lexer.ahead(1) !== " ";
203
- }
204
- consume(lexer) {
205
- if (lexer.ahead(1) !== " ") {
206
- return {
207
- type: "whitespace",
208
- startIndex: lexer.start(),
209
- endIndex: lexer.end(),
210
- value: this._buffer.join("")
211
- };
212
- }
213
- return null;
214
- }
215
- }
216
- class WordConsumer extends TuiPhraseConsumer {
217
- lock(lexer) {
218
- return !lexer.bufferValue().match(/\s/) && (lexer.ahead(1) === " " || lexer.ahead(1) === "");
219
- }
220
- consume(lexer) {
221
- if (lexer.ahead(1) === " " || lexer.aheadIsEmpty(true)) {
222
- return {
223
- type: "word",
224
- startIndex: lexer.start(),
225
- endIndex: lexer.end(),
226
- value: this._buffer.join("")
227
- };
228
- }
229
- return null;
230
- }
231
- }
232
- class WordLexer extends TuiPhraseLexer {
233
- consumers() {
234
- return [new WordConsumer(), new WhitespaceConsumer()];
235
- }
236
- }
237
- class WordSuggestor {
238
- constructor(suggestions) {
239
- this.suggestions = suggestions;
240
- }
241
- suggest(phrase) {
242
- return this.suggestions.filter((s) => s.indexOf(phrase.suggest.value) > -1);
243
- }
244
- }
245
- function TuiPhrase({
246
- value = "",
247
- variant = "outlined",
248
- suggestions = [],
249
- lexer,
250
- suggester,
251
- startAdornment,
252
- endAdornment,
253
- onChange,
254
- onKeyDown,
255
- ...props
256
- }) {
257
- const containerRef = useRef();
258
- const inputRef = useRef();
259
- const menuRef = useRef();
260
- const lexerRef = useRef(lexer || new WordLexer());
261
- const analysisRef = useRef();
262
- const suggesterRef = useRef(suggester || new WordSuggestor(suggestions));
263
- const [optionsOpen, setOptionsOpen] = useState(false);
264
- const [options, setOptions] = useState(suggestions);
265
- useEffect(() => {
266
- suggesterRef.current = suggester || new WordSuggestor(suggestions);
267
- }, [suggester, suggestions]);
268
- const lex = (inputValue, offset = 0) => {
269
- let cursor = inputRef.current.querySelector("input").selectionStart + offset;
270
- cursor = cursor < 0 ? 0 : cursor > inputValue.length ? inputValue.length : cursor;
271
- analysisRef.current = lexerRef.current.parse(inputValue, cursor);
272
- return analysisRef.current;
273
- };
274
- const _suggest = (inputValue, offset = 0) => {
275
- const _suggestions = suggesterRef.current.suggest(lex(inputValue, offset));
276
- setOptions((_suggestions == null ? void 0 : _suggestions.length) > 0 ? _suggestions : [...suggestions]);
277
- };
278
- const _onChange = (event) => {
279
- onChange(event.target.value);
280
- };
281
- const _onInputKeyDown = (event) => {
282
- const parsedEvent = parseEvent(event);
283
- const { isEnter: isEnter2, isCtrl, isSpace: isSpace2, isEscape: isEscape2, isArrowDown: isArrowDown2 } = parsedEvent;
284
- if (isArrowDown2) {
285
- event.preventDefault();
286
- menuRef.current.focus();
287
- } else if (isCtrl && isSpace2) {
288
- setOptionsOpen(true);
289
- _suggest(value);
290
- } else if (isEscape2) {
291
- setOptionsOpen(!optionsOpen);
292
- }
293
- if (isEnter2 && optionsOpen && options.length === 1) {
294
- onWordClick(options[0]);
295
- event.preventDefault();
296
- } else if (onKeyDown) {
297
- onKeyDown(parsedEvent);
298
- }
299
- };
300
- const _onSelectCapture = (event) => {
301
- if (optionsOpen) {
302
- _suggest(event.target.value);
303
- }
304
- };
305
- const _onMenuKeyDown = (event) => {
306
- const { isEscape: isEscape2 } = parseEvent(event);
307
- if (isEscape2) {
308
- inputRef.current.focus();
309
- setOptionsOpen(false);
310
- }
311
- };
312
- const onWordClick = (word) => {
313
- const { suggest } = analysisRef.current;
314
- const inputEl = inputRef.current.querySelector("input");
315
- inputEl.focus();
316
- inputEl.setSelectionRange(suggest.token.startIndex, suggest.token.endIndex + 1);
317
- document.execCommand("insertText", false, word);
318
- setOptionsOpen(false);
319
- };
320
- return /* @__PURE__ */ jsx(ClickAwayListener, { onClickAway: () => setOptionsOpen(false), children: /* @__PURE__ */ jsxs("div", { ref: containerRef, style: { position: "relative" }, children: [
321
- /* @__PURE__ */ jsx(
322
- TextField,
323
- {
324
- ref: inputRef,
325
- ...props,
326
- fullWidth: true,
327
- autoComplete: "off",
328
- value,
329
- variant,
330
- onChange: _onChange,
331
- onKeyDown: _onInputKeyDown,
332
- InputProps: {
333
- ...props.InputProps,
334
- onSelectCapture: _onSelectCapture,
335
- startAdornment: startAdornment && /* @__PURE__ */ jsx(InputAdornment, { position: "start", children: startAdornment }),
336
- endAdornment: endAdornment && /* @__PURE__ */ jsx(InputAdornment, { position: "end", children: endAdornment })
337
- }
338
- }
339
- ),
340
- /* @__PURE__ */ jsx(
341
- Popper,
342
- {
343
- anchorEl: containerRef.current,
344
- style: { width: "100%", zIndex: 100 },
345
- open: optionsOpen && options.length > 0,
346
- disablePortal: true,
347
- children: /* @__PURE__ */ jsx(
348
- Paper,
349
- {
350
- elevation: 2,
351
- sx: { maxHeight: 200, overflow: "auto", borderTopRightRadius: 0, borderTopLeftRadius: 0 },
352
- children: /* @__PURE__ */ jsx(
353
- MenuList,
354
- {
355
- ref: menuRef,
356
- onKeyDown: _onMenuKeyDown,
357
- sx: {
358
- "&:focus": {
359
- outline: "none"
360
- }
361
- },
362
- children: options == null ? void 0 : options.map((o) => /* @__PURE__ */ jsx(MenuItem, { onClick: () => onWordClick(o), children: /* @__PURE__ */ jsx(ListItemText, { children: o }) }, o))
363
- }
364
- )
365
- }
366
- )
367
- }
368
- )
369
- ] }) });
370
- }
371
- const JSONViewer = ({ data, collapse = true, hideSearch = false, forceCompact = false, slotProps }) => {
372
- var _a, _b, _c;
373
- const theme = useTheme();
374
- const [compact] = useMyLocalStorageItem(StorageKey.COMPACT_JSON);
375
- const [flat] = useMyLocalStorageItem(StorageKey.FLATTEN_JSON);
376
- const _ProvidedReactJson = useContextSelector(ClueComponentContext, (ctx) => ctx == null ? void 0 : ctx.ReactJson);
377
- const { t } = useContextSelector(ClueComponentContext, (ctx) => ctx == null ? void 0 : ctx.i18next);
378
- const [ReactJson, setReactJson] = useState(null);
379
- const [query, setQuery] = useState("");
380
- const isDark = useMemo(() => theme.palette.mode === "dark", [theme]);
381
- const filteredData = useMemo(() => removeEmpty(data, compact || forceCompact), [compact, data, forceCompact]);
382
- const searchedData = useMemo(() => {
383
- const _searchedData = searchObject(filteredData, query);
384
- return flat ? flatten(_searchedData) : _searchedData;
385
- }, [filteredData, flat, query]);
386
- const hasError = useMemo(() => {
387
- try {
388
- new RegExp(query);
389
- return false;
390
- } catch {
391
- return true;
392
- }
393
- }, [query]);
394
- useEffect(() => {
395
- if (_ProvidedReactJson) {
396
- setReactJson(() => _ProvidedReactJson);
397
- } else {
398
- setReactJson(lazy(() => import("@microlink/react-json-view")));
399
- }
400
- }, [_ProvidedReactJson]);
401
- const shouldCollapse = (field) => {
402
- return field.name !== "root" && field.type !== "object" || field.namespace.length > 3;
403
- };
404
- return data ? /* @__PURE__ */ jsxs(
405
- Stack,
406
- {
407
- direction: "column",
408
- spacing: 1,
409
- ...slotProps == null ? void 0 : slotProps.stack,
410
- sx: {
411
- "& > div:first-of-type": { mt: 1, mr: 0.5 },
412
- ...Array.isArray((_a = slotProps == null ? void 0 : slotProps.stack) == null ? void 0 : _a.sx) ? (_b = slotProps == null ? void 0 : slotProps.stack) == null ? void 0 : _b.sx : [(_c = slotProps == null ? void 0 : slotProps.stack) == null ? void 0 : _c.sx]
413
- },
414
- children: [
415
- !hideSearch && /* @__PURE__ */ jsx(
416
- TuiPhrase,
417
- {
418
- value: query,
419
- onChange: setQuery,
420
- size: "small",
421
- error: hasError,
422
- label: t("json.viewer.search.label"),
423
- placeholder: t("json.viewer.search.prompt")
424
- }
425
- ),
426
- ReactJson && /* @__PURE__ */ jsx(
427
- ReactJson,
428
- {
429
- src: searchedData,
430
- theme: isDark ? "summerfruit" : "summerfruit:inverted",
431
- indentWidth: 2,
432
- displayDataTypes: !compact && !forceCompact,
433
- displayObjectSize: !compact && !forceCompact,
434
- shouldCollapse: collapse ? shouldCollapse : false,
435
- quotesOnKeys: false,
436
- style: {
437
- flex: 1,
438
- overflow: "auto",
439
- height: "100%",
440
- fontSize: compact || forceCompact ? "small" : "smaller",
441
- borderRadius: theme.shape.borderRadius,
442
- padding: theme.spacing(1)
443
- },
444
- enableClipboard: (_data) => {
445
- if (typeof _data.src === "string") {
446
- navigator.clipboard.writeText(_data.src);
447
- } else {
448
- navigator.clipboard.writeText(JSON.stringify(_data.src));
449
- }
450
- },
451
- ...{
452
- // Type declaration is wrong - this is a valid prop
453
- displayArrayKey: !compact && !forceCompact
454
- },
455
- ...slotProps == null ? void 0 : slotProps.json
456
- }
457
- )
458
- ]
459
- }
460
- ) : /* @__PURE__ */ jsx(Skeleton, { width: "100%", height: "95%", variant: "rounded" });
461
- };
462
- export {
463
- JSONViewer as J,
464
- parseEvent as p
465
- };
package/isNil-CIubwp4T.js DELETED
@@ -1,6 +0,0 @@
1
- function isNil(value) {
2
- return value == null;
3
- }
4
- export {
5
- isNil as i
6
- };
@@ -1,7 +0,0 @@
1
- function isObject(value) {
2
- var type = typeof value;
3
- return value != null && (type == "object" || type == "function");
4
- }
5
- export {
6
- isObject as i
7
- };
@@ -1,48 +0,0 @@
1
- var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
2
- var freeSelf = typeof self == "object" && self && self.Object === Object && self;
3
- var root = freeGlobal || freeSelf || Function("return this")();
4
- var Symbol$1 = root.Symbol;
5
- var objectProto$1 = Object.prototype;
6
- var hasOwnProperty = objectProto$1.hasOwnProperty;
7
- var nativeObjectToString$1 = objectProto$1.toString;
8
- var symToStringTag$1 = Symbol$1 ? Symbol$1.toStringTag : void 0;
9
- function getRawTag(value) {
10
- var isOwn = hasOwnProperty.call(value, symToStringTag$1), tag = value[symToStringTag$1];
11
- try {
12
- value[symToStringTag$1] = void 0;
13
- var unmasked = true;
14
- } catch (e) {
15
- }
16
- var result = nativeObjectToString$1.call(value);
17
- if (unmasked) {
18
- if (isOwn) {
19
- value[symToStringTag$1] = tag;
20
- } else {
21
- delete value[symToStringTag$1];
22
- }
23
- }
24
- return result;
25
- }
26
- var objectProto = Object.prototype;
27
- var nativeObjectToString = objectProto.toString;
28
- function objectToString(value) {
29
- return nativeObjectToString.call(value);
30
- }
31
- var nullTag = "[object Null]", undefinedTag = "[object Undefined]";
32
- var symToStringTag = Symbol$1 ? Symbol$1.toStringTag : void 0;
33
- function baseGetTag(value) {
34
- if (value == null) {
35
- return value === void 0 ? undefinedTag : nullTag;
36
- }
37
- return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value);
38
- }
39
- function isObjectLike(value) {
40
- return value != null && typeof value == "object";
41
- }
42
- export {
43
- Symbol$1 as S,
44
- baseGetTag as b,
45
- freeGlobal as f,
46
- isObjectLike as i,
47
- root as r
48
- };
@@ -1,8 +0,0 @@
1
- import { i as isObjectLike, b as baseGetTag } from "./isObjectLike-OAgjjZye.js";
2
- var symbolTag = "[object Symbol]";
3
- function isSymbol(value) {
4
- return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag;
5
- }
6
- export {
7
- isSymbol as i
8
- };
package/last-CUCl67Im.js DELETED
@@ -1,7 +0,0 @@
1
- function last(array) {
2
- var length = array == null ? 0 : array.length;
3
- return length ? array[length - 1] : void 0;
4
- }
5
- export {
6
- last as l
7
- };
@@ -1,100 +0,0 @@
1
- import { b as baseExtremum, a as baseGt, i as isIterateeCall } from "./_baseExtremum-BY663UjY.js";
2
- import { b as baseIteratee } from "./_baseIteratee-7AQvAy1o.js";
3
- import { s as setToString, o as overRest, b as baseFlatten } from "./_baseFlatten-B69cDsaV.js";
4
- import { a as arrayMap, b as baseGet } from "./_baseGet-Bx3A4Qfp.js";
5
- import { b as baseEach } from "./_createAggregator-CwGPThny.js";
6
- import { i as isArrayLike, c as baseUnary } from "./_getTag-jwz4XLoZ.js";
7
- import { i as isSymbol } from "./isSymbol-Xd2FsJyp.js";
8
- import { i as identity } from "./identity-CPGTqrE4.js";
9
- import { i as isArray } from "./_MapCache-WmuDdwuH.js";
10
- function baseRest(func, start) {
11
- return setToString(overRest(func, start, identity), func + "");
12
- }
13
- function baseMap(collection, iteratee) {
14
- var index = -1, result = isArrayLike(collection) ? Array(collection.length) : [];
15
- baseEach(collection, function(value, key, collection2) {
16
- result[++index] = iteratee(value, key, collection2);
17
- });
18
- return result;
19
- }
20
- function maxBy(array, iteratee) {
21
- return array && array.length ? baseExtremum(array, baseIteratee(iteratee), baseGt) : void 0;
22
- }
23
- function baseSortBy(array, comparer) {
24
- var length = array.length;
25
- array.sort(comparer);
26
- while (length--) {
27
- array[length] = array[length].value;
28
- }
29
- return array;
30
- }
31
- function compareAscending(value, other) {
32
- if (value !== other) {
33
- var valIsDefined = value !== void 0, valIsNull = value === null, valIsReflexive = value === value, valIsSymbol = isSymbol(value);
34
- var othIsDefined = other !== void 0, othIsNull = other === null, othIsReflexive = other === other, othIsSymbol = isSymbol(other);
35
- if (!othIsNull && !othIsSymbol && !valIsSymbol && value > other || valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol || valIsNull && othIsDefined && othIsReflexive || !valIsDefined && othIsReflexive || !valIsReflexive) {
36
- return 1;
37
- }
38
- if (!valIsNull && !valIsSymbol && !othIsSymbol && value < other || othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol || othIsNull && valIsDefined && valIsReflexive || !othIsDefined && valIsReflexive || !othIsReflexive) {
39
- return -1;
40
- }
41
- }
42
- return 0;
43
- }
44
- function compareMultiple(object, other, orders) {
45
- var index = -1, objCriteria = object.criteria, othCriteria = other.criteria, length = objCriteria.length, ordersLength = orders.length;
46
- while (++index < length) {
47
- var result = compareAscending(objCriteria[index], othCriteria[index]);
48
- if (result) {
49
- if (index >= ordersLength) {
50
- return result;
51
- }
52
- var order = orders[index];
53
- return result * (order == "desc" ? -1 : 1);
54
- }
55
- }
56
- return object.index - other.index;
57
- }
58
- function baseOrderBy(collection, iteratees, orders) {
59
- if (iteratees.length) {
60
- iteratees = arrayMap(iteratees, function(iteratee) {
61
- if (isArray(iteratee)) {
62
- return function(value) {
63
- return baseGet(value, iteratee.length === 1 ? iteratee[0] : iteratee);
64
- };
65
- }
66
- return iteratee;
67
- });
68
- } else {
69
- iteratees = [identity];
70
- }
71
- var index = -1;
72
- iteratees = arrayMap(iteratees, baseUnary(baseIteratee));
73
- var result = baseMap(collection, function(value, key, collection2) {
74
- var criteria = arrayMap(iteratees, function(iteratee) {
75
- return iteratee(value);
76
- });
77
- return { "criteria": criteria, "index": ++index, "value": value };
78
- });
79
- return baseSortBy(result, function(object, other) {
80
- return compareMultiple(object, other, orders);
81
- });
82
- }
83
- var sortBy = baseRest(function(collection, iteratees) {
84
- if (collection == null) {
85
- return [];
86
- }
87
- var length = iteratees.length;
88
- if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) {
89
- iteratees = [];
90
- } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) {
91
- iteratees = [iteratees[0]];
92
- }
93
- return baseOrderBy(collection, baseFlatten(iteratees), []);
94
- });
95
- export {
96
- baseOrderBy as a,
97
- baseMap as b,
98
- maxBy as m,
99
- sortBy as s
100
- };
package/sumBy-CGALjmwQ.js DELETED
@@ -1,8 +0,0 @@
1
- import { b as baseIteratee } from "./_baseIteratee-7AQvAy1o.js";
2
- import { b as baseSum } from "./_baseSum-D0WC1dN0.js";
3
- function sumBy(array, iteratee) {
4
- return array && array.length ? baseSum(array, baseIteratee(iteratee)) : 0;
5
- }
6
- export {
7
- sumBy as s
8
- };
@@ -1,16 +0,0 @@
1
- import { t as toNumber } from "./toNumber-DPxy1FBy.js";
2
- var INFINITY = 1 / 0, MAX_INTEGER = 17976931348623157e292;
3
- function toFinite(value) {
4
- if (!value) {
5
- return value === 0 ? value : 0;
6
- }
7
- value = toNumber(value);
8
- if (value === INFINITY || value === -INFINITY) {
9
- var sign = value < 0 ? -1 : 1;
10
- return sign * MAX_INTEGER;
11
- }
12
- return value === value ? value : 0;
13
- }
14
- export {
15
- toFinite as t
16
- };