@truedat/dd 7.0.0 → 7.0.2

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 (37) hide show
  1. package/package.json +6 -6
  2. package/src/components/CatalogViewConfigs.js +62 -57
  3. package/src/components/GrantApprovalRules.js +15 -12
  4. package/src/components/GrantsTable.js +7 -1
  5. package/src/components/PendingStructureNoteRow.js +2 -10
  6. package/src/components/PendingStructureNotesTable.js +1 -1
  7. package/src/components/StructureGrantCartUserSelector.js +14 -22
  8. package/src/components/StructureRow.js +0 -1
  9. package/src/components/StructureSelector.js +5 -1
  10. package/src/components/StructuresGrantRequestView.js +0 -1
  11. package/src/components/StructuresSearchResults.js +3 -0
  12. package/src/components/StructuresTable.js +2 -1
  13. package/src/components/StructuresView.js +3 -8
  14. package/src/components/__tests__/CatalogViewConfigs.spec.js +1 -11
  15. package/src/components/__tests__/GrantApprovalRules.spec.js +4 -17
  16. package/src/components/__tests__/GrantsTable.spec.js +6 -7
  17. package/src/components/__tests__/PendingStructureNoteRow.spec.js +4 -5
  18. package/src/components/__tests__/PendingStructureNotesTable.spec.js +2 -4
  19. package/src/components/__tests__/StructureStructureForm.spec.js +2 -1
  20. package/src/components/__tests__/StructuresView.spec.js +1 -0
  21. package/src/components/__tests__/__snapshots__/GrantApprovalRules.spec.js.snap +13 -3
  22. package/src/components/__tests__/__snapshots__/GrantsTable.spec.js.snap +17 -41
  23. package/src/components/__tests__/__snapshots__/PendingStructureNoteRow.spec.js.snap +6 -2
  24. package/src/components/__tests__/__snapshots__/PendingStructureNotes.spec.js.snap +13 -5
  25. package/src/components/__tests__/__snapshots__/PendingStructureNotesTable.spec.js.snap +13 -5
  26. package/src/components/__tests__/__snapshots__/StructureRow.spec.js.snap +0 -1
  27. package/src/components/__tests__/__snapshots__/StructureSelector.spec.js.snap +12 -4
  28. package/src/components/__tests__/__snapshots__/StructuresGrantRequestView.spec.js.snap +19 -7
  29. package/src/components/__tests__/__snapshots__/StructuresSearchResults.spec.js.snap +1 -4
  30. package/src/components/__tests__/__snapshots__/StructuresTable.spec.js.snap +3 -12
  31. package/src/selectors/__tests__/__snapshots__/getGrantsColumns.spec.js.snap +0 -10
  32. package/src/selectors/__tests__/getGrantsColumns.spec.js +0 -9
  33. package/src/selectors/getGrantRequestsColumns.js +21 -2
  34. package/src/selectors/getGrantRequestsSearchColumns.js +20 -3
  35. package/src/selectors/getGrantsColumns.js +14 -30
  36. package/src/selectors/structureColumnsSelector.js +11 -0
  37. package/src/selectors/structureNotesColumnsSelector.js +11 -0
@@ -33,6 +33,12 @@ PathDecorator.propTypes = {
33
33
 
34
34
  export const StructureDecorator = (grantRequest) => {
35
35
  const { formatMessage } = useIntl();
36
+ const data_structure_version = grantRequest?.data_structure_version?.name
37
+ ? grantRequest?.data_structure_version
38
+ : grantRequest?.grant?.data_structure_version?.name
39
+ ? grantRequest?.grant?.data_structure_version
40
+ : null;
41
+
36
42
  return (
37
43
  <>
38
44
  {grantRequest.modification_grant_id ? (
@@ -44,14 +50,25 @@ export const StructureDecorator = (grantRequest) => {
44
50
  <Popup
45
51
  content={formatMessage({ id: "request.grantRemoval" })}
46
52
  trigger={
47
- <Link to={linkTo.GRANT({ id: grantRequest.grant.id })}>
53
+ <Link
54
+ onClick={(e) => e.stopPropagation()}
55
+ to={linkTo.GRANT({ id: grantRequest.grant.id })}
56
+ >
48
57
  <Icon name="user delete" style={{ color: "black" }} />{" "}
49
58
  </Link>
50
59
  }
51
60
  />
52
61
  ) : null}
53
- {grantRequest?.data_structure_version?.name ||
54
- grantRequest?.grant?.data_structure_version?.name}
62
+ {data_structure_version ? (
63
+ <Link
64
+ onClick={(e) => e.stopPropagation()}
65
+ to={linkTo.STRUCTURE({
66
+ id: data_structure_version?.data_structure_id,
67
+ })}
68
+ >
69
+ {data_structure_version?.name}
70
+ </Link>
71
+ ) : null}
55
72
  </>
56
73
  );
57
74
  };
@@ -8,16 +8,6 @@ import { useIntl } from "react-intl";
8
8
  import Moment from "react-moment";
9
9
  import PropTypes from "prop-types";
10
10
 
11
- export const GrantIdDecorator = ({ id }) => (
12
- <Link to={linkTo.GRANT({ id })}>{id}</Link>
13
- );
14
-
15
- GrantIdDecorator.propTypes = {
16
- id: PropTypes.number,
17
- };
18
-
19
- export const idDecorator = ({ id }) => GrantIdDecorator({ id });
20
-
21
11
  export const GrantUserDecorator = ({ authentication, user }) => {
22
12
  const { formatMessage } = useIntl();
23
13
  const sameUser = user?.user_name === authentication?.user_name;
@@ -69,7 +59,12 @@ export const GrantStructureDecorator = ({
69
59
  </Header.Subheader>
70
60
  </Header>
71
61
  ) : (
72
- <Link to={linkTo.STRUCTURE(data_structure)}>{path}</Link>
62
+ <Link
63
+ onClick={(e) => e.stopPropagation()}
64
+ to={linkTo.STRUCTURE(data_structure)}
65
+ >
66
+ {path}
67
+ </Link>
73
68
  );
74
69
  };
75
70
 
@@ -83,15 +78,14 @@ export const structureDecorator = (structure) => (props) => {
83
78
  return GrantStructureDecorator({ grant_structure: structure, ...props });
84
79
  };
85
80
 
86
- export const GrantTableStructureDecorator = ({ data_structure_version }) => {
87
- return (
88
- <Link
89
- to={linkTo.STRUCTURE({ id: data_structure_version.data_structure_id })}
90
- >
91
- {data_structure_version.name}
92
- </Link>
93
- );
94
- };
81
+ export const GrantTableStructureDecorator = ({ data_structure_version }) => (
82
+ <Link
83
+ onClick={(e) => e.stopPropagation()}
84
+ to={linkTo.STRUCTURE({ id: data_structure_version.data_structure_id })}
85
+ >
86
+ {data_structure_version.name}
87
+ </Link>
88
+ );
95
89
 
96
90
  GrantTableStructureDecorator.propTypes = {
97
91
  data_structure_version: PropTypes.object,
@@ -166,11 +160,6 @@ EndDateDecorator.propTypes = {
166
160
  };
167
161
 
168
162
  export const defaultGrantsColumns = [
169
- {
170
- name: "id",
171
- fieldSelector: _.pick(["id"]),
172
- fieldDecorator: idDecorator,
173
- },
174
163
  {
175
164
  name: "user",
176
165
  fieldSelector: _.pick(["user"]),
@@ -209,11 +198,6 @@ export const getGrantsColumns = createSelector(
209
198
  );
210
199
 
211
200
  export const defaultGrantsTableColumns = [
212
- {
213
- name: "id",
214
- fieldSelector: _.pick(["id"]),
215
- fieldDecorator: idDecorator,
216
- },
217
201
  {
218
202
  name: "user",
219
203
  sort: { name: "user.user_name.raw" },
@@ -2,8 +2,17 @@ import _ from "lodash/fp";
2
2
  import React from "react";
3
3
  import { createSelector } from "reselect";
4
4
  import { FormattedMessage } from "react-intl";
5
+ import { linkTo } from "@truedat/core/routes";
6
+ import { Link } from "react-router-dom";
5
7
  import Moment from "react-moment";
6
8
 
9
+ const StructureLink = (structure) =>
10
+ structure?.id ? (
11
+ <Link to={linkTo.STRUCTURE(structure)} title={structure?.name}>
12
+ {structure?.name}
13
+ </Link>
14
+ ) : null;
15
+
7
16
  const typeTranslateDecorator = ({ type }) => (
8
17
  <FormattedMessage id={`structure.type.${type}.text`} defaultMessage={type} />
9
18
  );
@@ -24,6 +33,8 @@ export const defaultStructureColumns = [
24
33
  {
25
34
  name: "name",
26
35
  sort: { name: "name.sort" },
36
+ fieldDecorator: StructureLink,
37
+ fieldSelector: _.identity,
27
38
  width: 2,
28
39
  },
29
40
  {
@@ -2,8 +2,17 @@ import _ from "lodash/fp";
2
2
  import React from "react";
3
3
  import PropTypes from "prop-types";
4
4
  import { createSelector } from "reselect";
5
+ import { Link } from "react-router-dom";
6
+ import { linkTo } from "@truedat/core/routes";
5
7
  import { FormattedMessage } from "react-intl";
6
8
 
9
+ const StructureLink = (structure) =>
10
+ structure?.id ? (
11
+ <Link to={linkTo.STRUCTURE_NOTES(structure)} title={structure?.name}>
12
+ {structure?.name}
13
+ </Link>
14
+ ) : null;
15
+
7
16
  const translateDecorator = (id) =>
8
17
  id ? <FormattedMessage id={id} defaultMessage={id} /> : null;
9
18
 
@@ -27,6 +36,8 @@ export const defaultStructureNoteColumns = [
27
36
  {
28
37
  name: "name",
29
38
  sort: { name: "name.sort" },
39
+ fieldDecorator: StructureLink,
40
+ fieldSelector: _.identity,
30
41
  width: 2,
31
42
  },
32
43
  {