@truedat/dd 8.11.2 → 8.11.3

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@truedat/dd",
3
- "version": "8.11.2",
3
+ "version": "8.11.3",
4
4
  "description": "Truedat Web Data Dictionary",
5
5
  "sideEffects": false,
6
6
  "module": "src/index.js",
@@ -50,44 +50,44 @@
50
50
  ]
51
51
  },
52
52
  "devDependencies": {
53
- "@testing-library/dom": "^10.4.0",
54
- "@testing-library/jest-dom": "^6.6.3",
55
- "@testing-library/react": "^16.3.0",
56
- "@testing-library/user-event": "^14.6.1",
57
- "@truedat/test": "8.11.2",
53
+ "@testing-library/dom": "^10.4.1",
54
+ "@testing-library/jest-dom": "^6.6.4",
55
+ "@testing-library/react": "^16.3.3",
56
+ "@testing-library/user-event": "^14.6.7",
57
+ "@truedat/test": "8.11.3",
58
58
  "identity-obj-proxy": "^3.0.0",
59
59
  "jest": "^29.7.0",
60
60
  "redux-saga-test-plan": "^4.0.6"
61
61
  },
62
62
  "dependencies": {
63
- "@apollo/client": "^3.13.8",
64
- "axios": "^1.15.0",
63
+ "@apollo/client": "^3.13.9",
64
+ "axios": "^1.15.2",
65
65
  "file-saver": "^2.0.5",
66
66
  "graphql": "^16.11.0",
67
67
  "is-hotkey": "^0.2.0",
68
68
  "is-url": "^1.2.4",
69
- "lodash": "^4.17.21",
70
- "match-sorter": "^8.0.1",
69
+ "lodash": "^4.17.23",
70
+ "match-sorter": "^8.0.3",
71
71
  "moment": "^2.30.1",
72
72
  "path-to-regexp": "^8.2.0",
73
73
  "prop-types": "^15.8.1",
74
74
  "query-string": "^7.1.3",
75
- "react": "^19.2.7",
75
+ "react": "^19.2.8",
76
76
  "react-csv": "^2.2.2",
77
- "react-dom": "^19.2.7",
77
+ "react-dom": "^19.2.8",
78
78
  "react-dropzone": "^14.3.8",
79
79
  "react-hook-form": "^7.56.4",
80
- "react-intl": "^7.1.11",
81
- "react-moment": "^1.1.3",
80
+ "react-intl": "^7.1.14",
81
+ "react-moment": "^1.1.4",
82
82
  "react-redux": "^9.2.0",
83
- "react-router": "^8.3.0",
83
+ "react-router": "^8.3.1",
84
84
  "redux": "^5.0.1",
85
85
  "redux-saga": "^1.3.0",
86
86
  "redux-saga-routines": "^3.2.3",
87
87
  "reselect": "^5.1.1",
88
88
  "semantic-ui-react": "^3.0.0-beta.2",
89
89
  "svg-pan-zoom": "^3.6.2",
90
- "swr": "^2.3.3"
90
+ "swr": "^2.3.8"
91
91
  },
92
- "gitHead": "5c0ce3c555de4c9e89021b4d0ab785ed27a87305"
92
+ "gitHead": "c0d3c1ed5c9480e6207a6e696d8941043c34de2f"
93
93
  }
@@ -164,6 +164,7 @@ export const GRANT_APPROVAL_RULES_QUERY = gql`
164
164
  action
165
165
  role
166
166
  domains {
167
+ id
167
168
  name
168
169
  }
169
170
  }
@@ -12,6 +12,7 @@ import {
12
12
  import { Link } from "react-router";
13
13
  import { GRANT_APPROVAL_RULE_NEW, linkTo } from "@truedat/core/routes";
14
14
  import { columnDecoratorComponent } from "@truedat/core/services";
15
+ import { DomainTooltip } from "@truedat/bg/taxonomy/components/DomainPath";
15
16
  import { GRANT_APPROVAL_RULES_QUERY } from "../api/queries";
16
17
 
17
18
  const ApprovalRuleLink = (rule) =>
@@ -34,7 +35,8 @@ export default function GrantApprovalRules() {
34
35
  { name: "role" },
35
36
  {
36
37
  name: "domain",
37
- fieldSelector: _.prop("domains[0].name"),
38
+ fieldSelector: (rule) => ({ domain: _.path("domains[0]")(rule) }),
39
+ fieldDecorator: DomainTooltip,
38
40
  },
39
41
  ];
40
42
 
@@ -148,7 +148,9 @@ exports[`<GrantApprovalRules /> matches the last snapshot 1`] = `
148
148
  <td
149
149
  class=""
150
150
  >
151
- domain_test
151
+ <span>
152
+ domain_test
153
+ </span>
152
154
  </td>
153
155
  </tr>
154
156
  <tr
@@ -178,7 +180,9 @@ exports[`<GrantApprovalRules /> matches the last snapshot 1`] = `
178
180
  <td
179
181
  class=""
180
182
  >
181
- domain_test
183
+ <span>
184
+ domain_test
185
+ </span>
182
186
  </td>
183
187
  </tr>
184
188
  </tbody>
@@ -2,9 +2,27 @@ import _ from "lodash/fp";
2
2
  import { useState } from "react";
3
3
  import { createSelector } from "reselect";
4
4
  import { FormattedMessage, useIntl } from "react-intl";
5
- import { Button, Label } from "semantic-ui-react";
5
+ import { Button, Label, Popup } from "semantic-ui-react";
6
+ import { useDomainPath } from "@truedat/bg/taxonomy/components/DomainPath";
6
7
  import EditDomainPopup from "../components/EditDomainPopup";
7
8
 
9
+ const DomainLabel = ({ domain }) => {
10
+ const path = useDomainPath(domain);
11
+ const content = _.isEmpty(path)
12
+ ? domain.name
13
+ : _.flow(_.map("name"), _.join(" > "))(path);
14
+ return (
15
+ <Popup
16
+ className="domain-path-popup"
17
+ content={content}
18
+ trigger={<Label key={domain.id}>{domain.name}</Label>}
19
+ on="hover"
20
+ position="top center"
21
+ basic
22
+ />
23
+ );
24
+ };
25
+
8
26
  const DomainValue = ({ domains }) => {
9
27
  const { formatMessage } = useIntl();
10
28
  const [popupOpen, setPopupOpen] = useState(false);
@@ -30,13 +48,8 @@ const DomainValue = ({ domains }) => {
30
48
 
31
49
  return (
32
50
  <div className={`domain-value${popupOpen ? " popup-open" : ""}`}>
33
- {domains.map(({ name, parents }, key) => (
34
- <Label
35
- key={key}
36
- title={_.flow(_.map("name"), _.union([name]), _.join(" > "))(parents)}
37
- >
38
- {name}
39
- </Label>
51
+ {domains.map((domain, key) => (
52
+ <DomainLabel key={domain.id || key} domain={domain} />
40
53
  ))}
41
54
  <EditDomainPopup onOpenChange={setPopupOpen} />
42
55
  </div>