@truedat/core 7.10.4 → 7.11.1
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/package.json +3 -3
- package/src/components/GlossaryMenu.js +17 -5
- package/src/components/QualityMenu.js +6 -0
- package/src/components/__tests__/__snapshots__/GlossaryMenu.spec.js.snap +14 -0
- package/src/components/__tests__/__snapshots__/QualityMenu.spec.js.snap +14 -0
- package/src/components/__tests__/__snapshots__/SideMenu.spec.js.snap +21 -0
- package/src/routes.js +9 -3
- package/src/search/SearchContext.js +13 -3
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@truedat/core",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.11.1",
|
|
4
4
|
"description": "Truedat Web Core",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"module": "src/index.js",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"@testing-library/jest-dom": "^6.6.3",
|
|
49
49
|
"@testing-library/react": "^16.3.0",
|
|
50
50
|
"@testing-library/user-event": "^14.6.1",
|
|
51
|
-
"@truedat/test": "7.
|
|
51
|
+
"@truedat/test": "7.11.1",
|
|
52
52
|
"identity-obj-proxy": "^3.0.0",
|
|
53
53
|
"jest": "^29.7.0",
|
|
54
54
|
"redux-saga-test-plan": "^4.0.6"
|
|
@@ -85,5 +85,5 @@
|
|
|
85
85
|
"slate-react": "^0.22.10",
|
|
86
86
|
"swr": "^2.3.3"
|
|
87
87
|
},
|
|
88
|
-
"gitHead": "
|
|
88
|
+
"gitHead": "efc0969708811b5e4fc2ea39e628a1b2691e4042"
|
|
89
89
|
}
|
|
@@ -15,9 +15,8 @@ import {
|
|
|
15
15
|
CONCEPTS_PENDING,
|
|
16
16
|
CONCEPTS_DEPRECATED,
|
|
17
17
|
CONCEPT_LINKS_MANAGEMENT,
|
|
18
|
+
CONCEPT_LINKS_APPROVALS,
|
|
18
19
|
CONCEPTS_BULK_UPLOAD_EVENTS,
|
|
19
|
-
CONCEPTS_SIDEMENU_MANAGEMENT_LINKS,
|
|
20
|
-
CONCEPTS_SIDEMENU_MANAGEMENT_UPLOADS,
|
|
21
20
|
CONCEPTS_SUBSCOPE,
|
|
22
21
|
CONCEPTS_SIDEMENU_SUBSCOPE,
|
|
23
22
|
CONCEPTS_SIDEMENU_SUBSCOPE_DEPRECATED,
|
|
@@ -95,6 +94,12 @@ function buildMainConceptsSubmenuItems(
|
|
|
95
94
|
groups: ["business_glossary_management"],
|
|
96
95
|
isActive: () => pathname === CONCEPT_LINKS_MANAGEMENT,
|
|
97
96
|
};
|
|
97
|
+
const manageApprovals = {
|
|
98
|
+
name: "concepts_links_approvals",
|
|
99
|
+
routes: [CONCEPT_LINKS_APPROVALS],
|
|
100
|
+
groups: ["business_glossary_management"],
|
|
101
|
+
isActive: () => pathname === CONCEPT_LINKS_APPROVALS,
|
|
102
|
+
};
|
|
98
103
|
const manageUploads = {
|
|
99
104
|
name: "concepts_upload_events",
|
|
100
105
|
routes: [CONCEPTS_BULK_UPLOAD_EVENTS],
|
|
@@ -107,7 +112,9 @@ function buildMainConceptsSubmenuItems(
|
|
|
107
112
|
...leftoverSubscopeItems,
|
|
108
113
|
mainPending,
|
|
109
114
|
mainDeprecated,
|
|
110
|
-
...(rootSubscopes.length > 0
|
|
115
|
+
...(rootSubscopes.length > 0
|
|
116
|
+
? []
|
|
117
|
+
: [manageLinks, manageApprovals, manageUploads]),
|
|
111
118
|
];
|
|
112
119
|
}
|
|
113
120
|
|
|
@@ -155,12 +162,17 @@ function buildManagementSubmenuItems() {
|
|
|
155
162
|
return [
|
|
156
163
|
{
|
|
157
164
|
name: "concepts_links_management",
|
|
158
|
-
routes: [
|
|
165
|
+
routes: [CONCEPT_LINKS_MANAGEMENT],
|
|
166
|
+
groups: ["business_glossary_management"],
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
name: "concepts_links_approvals",
|
|
170
|
+
routes: [CONCEPT_LINKS_APPROVALS],
|
|
159
171
|
groups: ["business_glossary_management"],
|
|
160
172
|
},
|
|
161
173
|
{
|
|
162
174
|
name: "concepts_upload_events",
|
|
163
|
-
routes: [
|
|
175
|
+
routes: [CONCEPTS_BULK_UPLOAD_EVENTS],
|
|
164
176
|
groups: ["business_glossary_management"],
|
|
165
177
|
},
|
|
166
178
|
];
|
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
IMPLEMENTATIONS,
|
|
9
9
|
IMPLEMENTATIONS_DEPRECATED,
|
|
10
10
|
IMPLEMENTATIONS_PENDING,
|
|
11
|
+
IMPLEMENTATIONS_UPLOAD_JOBS,
|
|
11
12
|
QUALITY_DASHBOARD,
|
|
12
13
|
RULES,
|
|
13
14
|
} from "../routes";
|
|
@@ -27,6 +28,11 @@ export const ITEMS = [
|
|
|
27
28
|
routes: [IMPLEMENTATIONS_DEPRECATED],
|
|
28
29
|
groups: ["quality_implementation_workflow_management"],
|
|
29
30
|
},
|
|
31
|
+
{
|
|
32
|
+
name: "implementations_upload_jobs",
|
|
33
|
+
routes: [IMPLEMENTATIONS_UPLOAD_JOBS],
|
|
34
|
+
groups: ["quality"],
|
|
35
|
+
},
|
|
30
36
|
{
|
|
31
37
|
name: "executions",
|
|
32
38
|
routes: [EXECUTION_GROUPS],
|
|
@@ -114,6 +114,20 @@ exports[`<GlossaryMenu /> matches the latest snapshot, finds fixed and subscopes
|
|
|
114
114
|
concepts_links_management
|
|
115
115
|
</span>
|
|
116
116
|
</a>
|
|
117
|
+
<a
|
|
118
|
+
aria-checked="false"
|
|
119
|
+
class="item"
|
|
120
|
+
data-discover="true"
|
|
121
|
+
href="/concepts/management/approvals"
|
|
122
|
+
name="concepts_links_approvals"
|
|
123
|
+
role="option"
|
|
124
|
+
>
|
|
125
|
+
<span
|
|
126
|
+
class="text"
|
|
127
|
+
>
|
|
128
|
+
concepts_links_approvals
|
|
129
|
+
</span>
|
|
130
|
+
</a>
|
|
117
131
|
<a
|
|
118
132
|
aria-checked="false"
|
|
119
133
|
class="item"
|
|
@@ -88,6 +88,20 @@ exports[`<QualityMenu /> matches the latest snapshot 1`] = `
|
|
|
88
88
|
implementations_deprecated
|
|
89
89
|
</span>
|
|
90
90
|
</a>
|
|
91
|
+
<a
|
|
92
|
+
aria-checked="false"
|
|
93
|
+
class="item"
|
|
94
|
+
data-discover="true"
|
|
95
|
+
href="/implementations/uploadJobs"
|
|
96
|
+
name="implementations_upload_jobs"
|
|
97
|
+
role="option"
|
|
98
|
+
>
|
|
99
|
+
<span
|
|
100
|
+
class="text"
|
|
101
|
+
>
|
|
102
|
+
implementations_upload_jobs
|
|
103
|
+
</span>
|
|
104
|
+
</a>
|
|
91
105
|
<a
|
|
92
106
|
aria-checked="false"
|
|
93
107
|
class="item"
|
|
@@ -107,6 +107,20 @@ exports[`<SideMenu /> matches the latest snapshot 1`] = `
|
|
|
107
107
|
concepts_links_management
|
|
108
108
|
</span>
|
|
109
109
|
</a>
|
|
110
|
+
<a
|
|
111
|
+
aria-checked="false"
|
|
112
|
+
class="item"
|
|
113
|
+
data-discover="true"
|
|
114
|
+
href="/concepts/management/approvals"
|
|
115
|
+
name="concepts_links_approvals"
|
|
116
|
+
role="option"
|
|
117
|
+
>
|
|
118
|
+
<span
|
|
119
|
+
class="text"
|
|
120
|
+
>
|
|
121
|
+
concepts_links_approvals
|
|
122
|
+
</span>
|
|
123
|
+
</a>
|
|
110
124
|
<a
|
|
111
125
|
aria-checked="false"
|
|
112
126
|
class="item"
|
|
@@ -309,6 +323,13 @@ exports[`<SideMenu /> matches the latest snapshot 1`] = `
|
|
|
309
323
|
>
|
|
310
324
|
implementations_deprecated
|
|
311
325
|
</a>
|
|
326
|
+
<a
|
|
327
|
+
class="link item"
|
|
328
|
+
data-discover="true"
|
|
329
|
+
href="/implementations/uploadJobs"
|
|
330
|
+
>
|
|
331
|
+
implementations_upload_jobs
|
|
332
|
+
</a>
|
|
312
333
|
<a
|
|
313
334
|
class="link item"
|
|
314
335
|
data-discover="true"
|
package/src/routes.js
CHANGED
|
@@ -26,14 +26,14 @@ export const CONCEPTS_SIDEMENU_SUBSCOPE_DEPRECATED =
|
|
|
26
26
|
"/glossarySubscope/:subscope/deprecated";
|
|
27
27
|
export const CONCEPTS_SIDEMENU_SUBSCOPE_PENDING =
|
|
28
28
|
"/glossarySubscope/:subscope/pending";
|
|
29
|
-
export const CONCEPTS_SIDEMENU_MANAGEMENT_LINKS = "/glossaryManagement/links";
|
|
30
|
-
export const CONCEPTS_SIDEMENU_MANAGEMENT_UPLOADS =
|
|
31
|
-
"/glossaryManagement/uploads";
|
|
32
29
|
export const CONCEPT_ARCHIVE =
|
|
33
30
|
"/concepts/:business_concept_id/versions/:id/archive";
|
|
34
31
|
export const CONCEPT_EDIT = "/concepts/:business_concept_id/versions/:id/edit";
|
|
35
32
|
export const CONCEPT_EVENTS =
|
|
36
33
|
"/concepts/:business_concept_id/versions/:id/events";
|
|
34
|
+
export const CONCEPT_LINKS_APPROVALS = "/concepts/management/approvals";
|
|
35
|
+
export const CONCEPT_LINKS_APPROVALS_RESULTS =
|
|
36
|
+
"/concepts/management/approvals/results";
|
|
37
37
|
export const CONCEPT_LINKS_CONCEPTS =
|
|
38
38
|
"/concepts/:business_concept_id/versions/:id/links/concepts";
|
|
39
39
|
export const CONCEPT_LINKS_CONCEPTS_NEW =
|
|
@@ -103,6 +103,8 @@ export const IMPLEMENTATION = "/implementations/:implementation_id";
|
|
|
103
103
|
export const IMPLEMENTATIONS = "/implementations";
|
|
104
104
|
export const IMPLEMENTATIONS_DEPRECATED = "/implementations/deprecated";
|
|
105
105
|
export const IMPLEMENTATIONS_PENDING = "/implementations/pending";
|
|
106
|
+
export const IMPLEMENTATIONS_UPLOAD_JOBS = "/implementations/uploadJobs";
|
|
107
|
+
export const IMPLEMENTATIONS_UPLOAD_JOB = "/implementations/uploadJobs/:id";
|
|
106
108
|
export const IMPLEMENTATION_CLONE = "/implementations/:implementation_id/clone";
|
|
107
109
|
export const IMPLEMENTATION_CONCEPT_LINKS =
|
|
108
110
|
"/implementations/:implementation_id/links/concepts";
|
|
@@ -295,6 +297,8 @@ const routes = {
|
|
|
295
297
|
BUCKET_VIEW_CONFIGS,
|
|
296
298
|
CONCEPTS,
|
|
297
299
|
CONCEPTS_BULK_UPDATE,
|
|
300
|
+
CONCEPT_LINKS_APPROVALS,
|
|
301
|
+
CONCEPT_LINKS_APPROVALS_RESULTS,
|
|
298
302
|
CONCEPTS_NEW,
|
|
299
303
|
CONCEPTS_PENDING,
|
|
300
304
|
CONCEPTS_SUBSCOPE,
|
|
@@ -362,6 +366,8 @@ const routes = {
|
|
|
362
366
|
IMPLEMENTATIONS,
|
|
363
367
|
IMPLEMENTATIONS_DEPRECATED,
|
|
364
368
|
IMPLEMENTATIONS_PENDING,
|
|
369
|
+
IMPLEMENTATIONS_UPLOAD_JOBS,
|
|
370
|
+
IMPLEMENTATIONS_UPLOAD_JOB,
|
|
365
371
|
IMPLEMENTATION_CLONE,
|
|
366
372
|
IMPLEMENTATION_CONCEPT_LINKS,
|
|
367
373
|
IMPLEMENTATION_CONCEPT_LINKS_NEW,
|
|
@@ -72,7 +72,7 @@ export const SearchContextProvider = (props) => {
|
|
|
72
72
|
|
|
73
73
|
const debouncedTriggerSearchFilters = useCallback(
|
|
74
74
|
_.debounce(debounceQueryTime)((filterParam) => {
|
|
75
|
-
triggerFilters(filterParam).then(({ data }) => {
|
|
75
|
+
triggerFilters?.(filterParam).then(({ data }) => {
|
|
76
76
|
setFiltersPayload(data);
|
|
77
77
|
setLoadingFilters(false);
|
|
78
78
|
});
|
|
@@ -176,14 +176,23 @@ export const SearchContextProvider = (props) => {
|
|
|
176
176
|
toFilterValues
|
|
177
177
|
)(allActiveFilters);
|
|
178
178
|
|
|
179
|
+
const [customSearchMust, setCustomSearchMust] = useState({});
|
|
180
|
+
|
|
179
181
|
const searchMust = useMemo(
|
|
180
182
|
() => ({
|
|
181
183
|
...defaultFilters,
|
|
182
184
|
...dateFilters,
|
|
183
185
|
...hiddenFilters,
|
|
184
186
|
..._.pickBy(_.negate(_.isEmpty))(allActiveFilters),
|
|
187
|
+
...customSearchMust,
|
|
185
188
|
}),
|
|
186
|
-
[
|
|
189
|
+
[
|
|
190
|
+
allActiveFilters,
|
|
191
|
+
defaultFilters,
|
|
192
|
+
dateFilters,
|
|
193
|
+
hiddenFilters,
|
|
194
|
+
customSearchMust,
|
|
195
|
+
]
|
|
187
196
|
);
|
|
188
197
|
|
|
189
198
|
const filterMust = useMemo(
|
|
@@ -207,7 +216,7 @@ export const SearchContextProvider = (props) => {
|
|
|
207
216
|
[sortColumn, sortDirection]
|
|
208
217
|
);
|
|
209
218
|
|
|
210
|
-
const
|
|
219
|
+
const triggerFilters = useFilters?.()?.trigger;
|
|
211
220
|
|
|
212
221
|
useEffect(() => {
|
|
213
222
|
setLoadingFilters(true);
|
|
@@ -337,6 +346,7 @@ export const SearchContextProvider = (props) => {
|
|
|
337
346
|
toggleHiddenFilterValue,
|
|
338
347
|
setHiddenFilters,
|
|
339
348
|
searchMust,
|
|
349
|
+
setSearchMust: setCustomSearchMust,
|
|
340
350
|
setQuery: setQueryAndScoreSort,
|
|
341
351
|
cleanQuery,
|
|
342
352
|
setAllActiveFilters,
|