@databiosphere/findable-ui 12.0.0 → 14.0.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 (185) hide show
  1. package/.github/workflows/release-please.yml +48 -0
  2. package/.github/workflows/run-checks.yml +41 -15
  3. package/.prettierignore +1 -0
  4. package/CHANGELOG.md +49 -0
  5. package/jest.config.js +1 -1
  6. package/lib/common/analytics/entities.d.ts +10 -9
  7. package/lib/common/analytics/entities.js +2 -4
  8. package/lib/components/Export/common/tracking.d.ts +12 -3
  9. package/lib/components/Export/common/tracking.js +23 -13
  10. package/lib/components/Export/components/DownloadCurlCommand/downloadCurlCommand.d.ts +1 -1
  11. package/lib/components/Export/components/DownloadCurlCommand/downloadCurlCommand.js +2 -16
  12. package/lib/components/Export/components/ExportMethod/exportMethod.d.ts +2 -1
  13. package/lib/components/Export/components/ExportMethod/exportMethod.js +2 -3
  14. package/lib/components/Export/components/ExportToTerra/components/TerraSetUpForm/components/NIHAccountExpiryWarning/nihAccountExpiryWarning.js +6 -3
  15. package/lib/components/Export/components/ExportToTerra/exportToTerra.js +9 -1
  16. package/lib/components/Export/components/ManifestDownload/manifestDownload.js +7 -1
  17. package/lib/components/Index/components/Hero/components/ExportButton/exportButton.js +1 -1
  18. package/lib/components/Layout/components/Header/components/Content/components/Logo/logo.d.ts +2 -2
  19. package/lib/components/Layout/components/Header/components/Content/components/Logo/logo.js +1 -1
  20. package/lib/components/Layout/components/Header/components/Content/components/Logo/logo.styles.js +0 -1
  21. package/lib/components/Links/components/Link/link.d.ts +2 -3
  22. package/lib/components/Links/components/Link/link.js +1 -2
  23. package/lib/components/Support/components/SupportRequest/components/SupportRequestForm/supportRequestForm.js +1 -3
  24. package/lib/components/TempError/tempError.d.ts +2 -2
  25. package/lib/components/TempError/tempError.js +4 -4
  26. package/lib/components/common/Alert/alert.d.ts +4 -12
  27. package/lib/components/common/Alert/alert.js +5 -7
  28. package/lib/components/common/Alert/alert.styles.d.ts +1 -11
  29. package/lib/components/common/Alert/alert.styles.js +18 -24
  30. package/lib/components/common/Alert/constants.d.ts +2 -0
  31. package/lib/components/common/Alert/constants.js +27 -0
  32. package/lib/components/common/Alert/hooks/useTransition/types.d.ts +5 -0
  33. package/lib/components/common/Alert/hooks/useTransition/types.js +1 -0
  34. package/lib/components/common/Alert/hooks/useTransition/useTransition.d.ts +7 -0
  35. package/lib/components/common/Alert/hooks/useTransition/useTransition.js +20 -0
  36. package/lib/components/common/Banner/banner.d.ts +4 -7
  37. package/lib/components/common/Banner/banner.js +4 -3
  38. package/lib/components/common/Banner/banner.styles.d.ts +3 -0
  39. package/lib/components/common/Banner/banner.styles.js +28 -0
  40. package/lib/components/common/Banner/components/CookieBanner/constants.d.ts +2 -0
  41. package/lib/components/common/Banner/components/CookieBanner/constants.js +7 -0
  42. package/lib/components/common/Banner/components/CookieBanner/cookieBanner.d.ts +3 -3
  43. package/lib/components/common/Banner/components/CookieBanner/cookieBanner.js +17 -31
  44. package/lib/components/common/Banner/components/CookieBanner/cookieBanner.styles.d.ts +1 -1
  45. package/lib/components/common/Banner/components/CookieBanner/cookieBanner.styles.js +2 -16
  46. package/lib/components/common/Banner/components/SessionTimeout/sessionTimeout.d.ts +3 -7
  47. package/lib/components/common/Banner/components/SessionTimeout/sessionTimeout.js +6 -4
  48. package/lib/components/common/Banner/components/SystemIndexing/systemIndexing.d.ts +3 -8
  49. package/lib/components/common/Banner/components/SystemIndexing/systemIndexing.js +6 -8
  50. package/lib/components/common/Banner/components/SystemStatus/systemStatus.d.ts +3 -8
  51. package/lib/components/common/Banner/components/SystemStatus/systemStatus.js +6 -8
  52. package/lib/components/common/Banner/constants.d.ts +2 -0
  53. package/lib/components/common/Banner/constants.js +9 -0
  54. package/lib/components/common/Breadcrumbs/breadcrumbs.d.ts +2 -2
  55. package/lib/components/common/Breadcrumbs/breadcrumbs.js +3 -4
  56. package/lib/components/common/Paper/paper.styles.js +18 -12
  57. package/lib/components/types.d.ts +10 -0
  58. package/lib/components/types.js +1 -0
  59. package/lib/config/entities.d.ts +0 -1
  60. package/lib/entity/api/service.js +16 -18
  61. package/lib/entity/common/client.d.ts +6 -10
  62. package/lib/entity/common/client.js +21 -31
  63. package/lib/entity/common/service.js +6 -8
  64. package/lib/entity/common/utils.d.ts +4 -4
  65. package/lib/entity/common/utils.js +3 -3
  66. package/lib/hooks/useLocalStorage/useLocalStorage.d.ts +1 -1
  67. package/lib/hooks/useLocalStorage/useLocalStorage.js +1 -1
  68. package/lib/shared/utils.d.ts +0 -5
  69. package/lib/shared/utils.js +0 -8
  70. package/lib/styles/common/constants/size.d.ts +5 -0
  71. package/lib/styles/common/constants/size.js +6 -0
  72. package/lib/styles/common/mui/alert.d.ts +4 -0
  73. package/lib/styles/common/mui/alert.js +20 -0
  74. package/lib/styles/common/mui/icon.d.ts +2 -0
  75. package/lib/styles/common/mui/icon.js +6 -0
  76. package/lib/theme/common/components.d.ts +0 -12
  77. package/lib/theme/common/components.js +17 -157
  78. package/lib/theme/components/index.d.ts +2 -0
  79. package/lib/theme/components/index.js +2 -0
  80. package/lib/theme/components/muiAlert.d.ts +2 -0
  81. package/lib/theme/components/muiAlert.js +121 -0
  82. package/lib/theme/components/muiAlertTitle.d.ts +2 -0
  83. package/lib/theme/components/muiAlertTitle.js +12 -0
  84. package/lib/theme/theme.js +3 -2
  85. package/package.json +7 -6
  86. package/src/common/analytics/entities.ts +9 -8
  87. package/src/common/analytics/readme-analytics.md +19 -7
  88. package/src/components/Export/common/tracking.ts +26 -16
  89. package/src/components/Export/components/DownloadCurlCommand/downloadCurlCommand.tsx +2 -30
  90. package/src/components/Export/components/ExportMethod/exportMethod.tsx +14 -4
  91. package/src/components/Export/components/ExportToTerra/components/TerraSetUpForm/components/NIHAccountExpiryWarning/nihAccountExpiryWarning.tsx +16 -18
  92. package/src/components/Export/components/ExportToTerra/exportToTerra.tsx +11 -1
  93. package/src/components/Export/components/ManifestDownload/manifestDownload.tsx +9 -1
  94. package/src/components/Index/components/Hero/components/ExportButton/exportButton.tsx +5 -1
  95. package/src/components/Layout/components/Header/components/Content/components/Logo/logo.styles.ts +0 -1
  96. package/src/components/Layout/components/Header/components/Content/components/Logo/logo.tsx +3 -2
  97. package/src/components/Links/components/Link/link.tsx +17 -16
  98. package/src/components/Support/components/SupportRequest/components/SupportRequestForm/supportRequestForm.tsx +1 -2
  99. package/src/components/TempError/tempError.tsx +10 -9
  100. package/src/components/common/Alert/alert.styles.ts +22 -25
  101. package/src/components/common/Alert/alert.tsx +14 -35
  102. package/src/components/common/Alert/constants.ts +29 -0
  103. package/src/components/common/Alert/hooks/useTransition/types.ts +5 -0
  104. package/src/components/common/Alert/hooks/useTransition/useTransition.ts +25 -0
  105. package/src/components/common/Banner/banner.styles.ts +29 -0
  106. package/src/components/common/Banner/banner.tsx +11 -18
  107. package/src/components/common/Banner/components/CookieBanner/constants.ts +9 -0
  108. package/src/components/common/Banner/components/CookieBanner/cookieBanner.styles.ts +2 -16
  109. package/src/components/common/Banner/components/CookieBanner/cookieBanner.tsx +36 -64
  110. package/src/components/common/Banner/components/SessionTimeout/sessionTimeout.tsx +12 -17
  111. package/src/components/common/Banner/components/SystemIndexing/systemIndexing.tsx +11 -22
  112. package/src/components/common/Banner/components/SystemStatus/systemStatus.tsx +11 -22
  113. package/src/components/common/Banner/constants.ts +11 -0
  114. package/src/components/common/Breadcrumbs/breadcrumbs.tsx +6 -10
  115. package/src/components/common/Paper/paper.styles.ts +18 -12
  116. package/src/components/types.ts +13 -0
  117. package/src/config/entities.ts +0 -1
  118. package/src/entity/api/service.ts +24 -27
  119. package/src/entity/common/client.ts +22 -40
  120. package/src/entity/common/service.ts +8 -10
  121. package/src/entity/common/utils.ts +4 -6
  122. package/src/hooks/useLocalStorage/useLocalStorage.ts +2 -2
  123. package/src/shared/utils.ts +0 -9
  124. package/src/styles/common/constants/size.ts +5 -0
  125. package/src/styles/common/mui/alert.ts +24 -0
  126. package/src/styles/common/mui/icon.ts +8 -0
  127. package/src/theme/common/components.ts +16 -159
  128. package/src/theme/components/index.ts +2 -0
  129. package/src/theme/components/muiAlert.ts +123 -0
  130. package/src/theme/components/muiAlertTitle.ts +14 -0
  131. package/src/theme/theme.ts +3 -2
  132. package/tests/authentication.test.ts +7 -1
  133. package/tests/azulFileDownload.test.tsx +9 -3
  134. package/tests/fetchApi.test.ts +93 -0
  135. package/tests/tsconfig.json +1 -0
  136. package/tests/useFileLocation.test.ts +6 -2
  137. package/types/data-explorer-ui.d.ts +6 -5
  138. package/lib/components/Detail/components/Table/components/TableHead/tableHead.d.ts +0 -8
  139. package/lib/components/Detail/components/Table/components/TableHead/tableHead.js +0 -36
  140. package/lib/components/Index/components/TitleCell/titleCell.d.ts +0 -6
  141. package/lib/components/Index/components/TitleCell/titleCell.js +0 -10
  142. package/lib/components/Index/components/TitleCell/titleCell.styles.d.ts +0 -3
  143. package/lib/components/Index/components/TitleCell/titleCell.styles.js +0 -6
  144. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/RequestAuthentication/requestAuthentication.d.ts +0 -6
  145. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/RequestAuthentication/requestAuthentication.js +0 -13
  146. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/RequestAuthentication/requestAuthentication.styles.d.ts +0 -36
  147. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/RequestAuthentication/requestAuthentication.styles.js +0 -9
  148. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchButton/searchButton.d.ts +0 -5
  149. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchButton/searchButton.js +0 -10
  150. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchButton/searchButton.styles.d.ts +0 -36
  151. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchButton/searchButton.styles.js +0 -9
  152. package/lib/components/Table/components/EntityViewToggle/entityViewToggle.d.ts +0 -2
  153. package/lib/components/Table/components/EntityViewToggle/entityViewToggle.js +0 -37
  154. package/lib/components/common/Alert/alert.stories.d.ts +0 -6
  155. package/lib/components/common/Alert/alert.stories.js +0 -36
  156. package/lib/components/common/Alert/components/AlertText/alertText.styles.d.ts +0 -4
  157. package/lib/components/common/Alert/components/AlertText/alertText.styles.js +0 -19
  158. package/lib/components/common/Banner/components/BannerPrimary/bannerPrimary.d.ts +0 -7
  159. package/lib/components/common/Banner/components/BannerPrimary/bannerPrimary.js +0 -5
  160. package/lib/components/common/Banner/components/BannerPrimary/bannerPrimary.styles.d.ts +0 -3
  161. package/lib/components/common/Banner/components/BannerPrimary/bannerPrimary.styles.js +0 -19
  162. package/lib/components/common/Banner/components/DismissibleBanner/dismissibleBanner.d.ts +0 -10
  163. package/lib/components/common/Banner/components/DismissibleBanner/dismissibleBanner.js +0 -16
  164. package/lib/components/common/Banner/components/SessionTimeout/sessionTimeout.styles.d.ts +0 -3
  165. package/lib/components/common/Banner/components/SessionTimeout/sessionTimeout.styles.js +0 -21
  166. package/lib/components/common/IconButton/components/LoadingIconButton/loadingIconButton.d.ts +0 -5
  167. package/lib/components/common/IconButton/components/LoadingIconButton/loadingIconButton.js +0 -10
  168. package/lib/components/common/IconButton/components/LoadingIconButton/loadingIconButton.stories.d.ts +0 -3
  169. package/lib/components/common/IconButton/components/LoadingIconButton/loadingIconButton.stories.js +0 -9
  170. package/lib/hooks/useCategoryConfigs.d.ts +0 -6
  171. package/lib/hooks/useCategoryConfigs.js +0 -17
  172. package/lib/hooks/useEntityListRelatedView.d.ts +0 -15
  173. package/lib/hooks/useEntityListRelatedView.js +0 -62
  174. package/lib/hooks/useMenu.d.ts +0 -10
  175. package/lib/hooks/useMenu.js +0 -17
  176. package/lib/hooks/useMenuWithPosition.d.ts +0 -14
  177. package/lib/hooks/useMenuWithPosition.js +0 -33
  178. package/src/components/Index/components/TitleCell/titleCell.styles.ts +0 -7
  179. package/src/components/Index/components/TitleCell/titleCell.tsx +0 -22
  180. package/src/components/common/Alert/alert.stories.tsx +0 -41
  181. package/src/components/common/Alert/components/AlertText/alertText.styles.ts +0 -20
  182. package/src/components/common/Banner/components/BannerPrimary/bannerPrimary.styles.ts +0 -20
  183. package/src/components/common/Banner/components/BannerPrimary/bannerPrimary.tsx +0 -27
  184. package/src/components/common/Banner/components/DismissibleBanner/dismissibleBanner.tsx +0 -44
  185. package/src/components/common/Banner/components/SessionTimeout/sessionTimeout.styles.ts +0 -22
@@ -1,3 +1,4 @@
1
+ import { jest } from "@jest/globals";
1
2
  import { LOGIN_STATUS_NOT_STARTED } from "../src/hooks/useAuthentication/common/constants";
2
3
  import {
3
4
  LoginStatus,
@@ -6,7 +7,12 @@ import {
6
7
  import { GoogleResponse } from "../src/hooks/useAuthentication/useFetchGoogleProfile";
7
8
  import { TerraResponse } from "../src/hooks/useAuthentication/useFetchTerraProfile";
8
9
  import { TerraTermsOfServiceResponse } from "../src/hooks/useAuthentication/useFetchTerraTermsOfService";
9
- import { shouldReleaseToken } from "../src/providers/authentication";
10
+
11
+ jest.unstable_mockModule("react-idle-timer", () => ({
12
+ useIdleTimer: jest.fn(),
13
+ }));
14
+
15
+ const { shouldReleaseToken } = await import("../src/providers/authentication");
10
16
 
11
17
  describe("authentication", () => {
12
18
  // Boolean constants.
@@ -1,15 +1,21 @@
1
+ import { jest } from "@jest/globals";
1
2
  import { fireEvent, render, screen, waitFor } from "@testing-library/react";
2
3
  import React from "react";
3
- import { AzulFileDownload } from "../src/components/Index/components/AzulFileDownload/azulFileDownload";
4
4
  import {
5
5
  AZUL_FILE_DOWNLOAD_TEST_ID,
6
6
  AZUL_FILE_REQUEST_DOWNLOAD_PENDING_TEST_ID,
7
7
  AZUL_FILE_REQUEST_DOWNLOAD_TEST_ID,
8
8
  } from "../src/components/Index/components/AzulFileDownload/common/constants";
9
- import { useFileLocation } from "../src/hooks/useFileLocation";
10
9
  import { getAnchorEl, getButtonById } from "../src/utils/tests";
11
10
 
12
- jest.mock("../src/hooks/useFileLocation");
11
+ jest.unstable_mockModule("../src/hooks/useFileLocation", () => ({
12
+ useFileLocation: jest.fn(),
13
+ }));
14
+
15
+ const { AzulFileDownload } = await import(
16
+ "../src/components/Index/components/AzulFileDownload/azulFileDownload"
17
+ );
18
+ const { useFileLocation } = await import("../src/hooks/useFileLocation");
13
19
 
14
20
  describe("AzulFileDownload", () => {
15
21
  const FILE_URL = "https://example.com/storage/file";
@@ -0,0 +1,93 @@
1
+ import { jest } from "@jest/globals";
2
+ import fetchMock from "jest-fetch-mock";
3
+
4
+ jest.unstable_mockModule("../src/shared/utils", () => ({
5
+ getURL: (): string => "http://example.com",
6
+ }));
7
+
8
+ const { fetchApi } = await import("../src/entity/common/client");
9
+
10
+ const actualSetTimeout = setTimeout;
11
+
12
+ const mockSetTimeout = jest
13
+ .spyOn(globalThis, "setTimeout")
14
+ .mockImplementation(((callback: () => void, timeout: number) => {
15
+ if (timeout === 20000) actualSetTimeout(callback, timeout);
16
+ else callback();
17
+ }) as typeof setTimeout);
18
+
19
+ beforeAll(async () => {
20
+ fetchMock.doMock();
21
+ globalThis.fetch = ((...args) => {
22
+ return fetchMock(...(args as Parameters<typeof fetchMock>));
23
+ }) as typeof fetch;
24
+ AbortSignal.prototype.throwIfAborted = function (): void {
25
+ if (this.aborted) throw this.reason;
26
+ };
27
+ });
28
+
29
+ describe("api", () => {
30
+ it("returns immediately-successful response", async () => {
31
+ fetchMock.mockResponseOnce("immediately-successful");
32
+ const res = await fetchApi("");
33
+ expect(res.status).toBe(200);
34
+ expect(await res.text()).toBe("immediately-successful");
35
+ });
36
+
37
+ it("returns response after backing off from three 503 responses", async () => {
38
+ mockSetTimeout.mockClear();
39
+
40
+ fetchMock.mockResponseOnce("", { status: 503 });
41
+ fetchMock.mockResponseOnce("", { status: 503 });
42
+ fetchMock.mockResponseOnce("", { status: 503 });
43
+ fetchMock.mockResponseOnce("after-three-503");
44
+ const res = await fetchApi("");
45
+ expect(res.status).toBe(200);
46
+ expect(await res.text()).toBe("after-three-503");
47
+
48
+ expect(mockSetTimeout).toBeCalledTimes(7);
49
+ expect(mockSetTimeout.mock.calls[1][1]).toBe(1000);
50
+ expect(mockSetTimeout.mock.calls[3][1]).toBe(3000);
51
+ expect(mockSetTimeout.mock.calls[5][1]).toBe(9000);
52
+ });
53
+
54
+ it("throws error after four 503 responses", async () => {
55
+ mockSetTimeout.mockClear();
56
+
57
+ fetchMock.mockResponseOnce("", { status: 503 });
58
+ fetchMock.mockResponseOnce("", { status: 503 });
59
+ fetchMock.mockResponseOnce("", { status: 503 });
60
+ fetchMock.mockResponseOnce("", { status: 503 });
61
+ const error = await fetchApi("").catch((e) => e);
62
+ expect(error).toMatchObject({ response: { status: 503 } });
63
+
64
+ expect(mockSetTimeout).toBeCalledTimes(7);
65
+ });
66
+
67
+ it("throws error after one 503 response and one 400 response", async () => {
68
+ mockSetTimeout.mockClear();
69
+
70
+ fetchMock.mockResponseOnce("", { status: 503 });
71
+ fetchMock.mockResponseOnce("", { status: 400 });
72
+ const error = await fetchApi("").catch((e) => e);
73
+ expect(error).toMatchObject({ response: { status: 400 } });
74
+
75
+ expect(mockSetTimeout).toBeCalledTimes(3);
76
+ });
77
+
78
+ it("returns response after delaying based on Retry-After", async () => {
79
+ mockSetTimeout.mockClear();
80
+
81
+ fetchMock.mockResponseOnce("", {
82
+ headers: { "Retry-After": "7" },
83
+ status: 503,
84
+ });
85
+ fetchMock.mockResponseOnce("after-retry-after");
86
+ const res = await fetchApi("");
87
+ expect(res.status).toBe(200);
88
+ expect(await res.text()).toBe("after-retry-after");
89
+
90
+ expect(mockSetTimeout).toBeCalledTimes(3);
91
+ expect(mockSetTimeout.mock.calls[1][1]).toBe(7000);
92
+ });
93
+ });
@@ -1,4 +1,5 @@
1
1
  {
2
+ "allowJs": true,
2
3
  "compilerOptions": {
3
4
  "rootDir": "../"
4
5
  },
@@ -1,10 +1,14 @@
1
- import { buildFetchFileUrl } from "../src/hooks/useFileLocation";
1
+ import { jest } from "@jest/globals";
2
2
 
3
3
  const URL_INVALID = "invalidUrl";
4
4
  const URL_WITH_FETCH_PREPEND = "https://example.com/fetch/repository/file";
5
5
  const URL_WITHOUT_FETCH_PREPEND = "https://example.com/repository/file";
6
6
 
7
- jest.mock("../src/hooks/useRequestFileLocation");
7
+ jest.unstable_mockModule("../src/hooks/useRequestFileLocation", () => ({
8
+ useRequestFileLocation: jest.fn(),
9
+ }));
10
+
11
+ const { buildFetchFileUrl } = await import("../src/hooks/useFileLocation");
8
12
 
9
13
  describe("useFileLocation", () => {
10
14
  describe("build file URL", () => {
@@ -25,19 +25,20 @@ import {
25
25
  CustomFeatureTableState,
26
26
  } from "../src/components/Table/features/entities";
27
27
  import { GridTrackSize } from "../src/config/entities";
28
+ import { SIZE } from "../src/styles/common/constants/size";
28
29
 
29
30
  /**
30
31
  * Alert prop options.
31
32
  */
32
33
  declare module "@mui/material/Alert" {
34
+ interface AlertProps {
35
+ size?: SIZE.MEDIUM | SIZE.LARGE;
36
+ }
37
+
33
38
  interface AlertPropsColorOverrides {
34
39
  ink: true;
35
40
  primary: true;
36
- }
37
-
38
- interface AlertPropsVariantOverrides {
39
- banner: true; // Single line alert.
40
- neutral: true;
41
+ smoke: true;
41
42
  }
42
43
  }
43
44
 
@@ -1,8 +0,0 @@
1
- /// <reference types="react" />
2
- import { Table } from "@tanstack/react-table";
3
- import { ROW_DIRECTION } from "../../../../../Table/common/entities";
4
- export interface TableBodyProps<T> {
5
- rowDirection: ROW_DIRECTION;
6
- tableInstance: Table<T>;
7
- }
8
- export declare const TableHead: <T extends object>({ rowDirection, tableInstance, }: TableBodyProps<T>) => JSX.Element;
@@ -1,36 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.TableHead = void 0;
27
- const material_1 = require("@mui/material");
28
- const react_table_1 = require("@tanstack/react-table");
29
- const react_1 = __importStar(require("react"));
30
- const entities_1 = require("../../../../../Table/common/entities");
31
- const TableHead = ({ rowDirection, tableInstance, }) => {
32
- return (react_1.default.createElement(react_1.Fragment, null, rowDirection === entities_1.ROW_DIRECTION.DEFAULT &&
33
- tableInstance.getHeaderGroups().map((headerGroup) => (react_1.default.createElement(material_1.TableHead, { key: headerGroup.id },
34
- react_1.default.createElement(material_1.TableRow, null, headerGroup.headers.map((header) => (react_1.default.createElement(material_1.TableCell, { key: header.id }, (0, react_table_1.flexRender)(header.column.columnDef.header, header.getContext()))))))))));
35
- };
36
- exports.TableHead = TableHead;
@@ -1,6 +0,0 @@
1
- import { ReactNode } from "react";
2
- import { LinkProps } from "../../../Links/components/Link/link";
3
- export interface TitleCellProps extends LinkProps {
4
- title: ReactNode;
5
- }
6
- export declare const TitleCell: ({ title, ...props }: TitleCellProps) => JSX.Element;
@@ -1,10 +0,0 @@
1
- import { Typography } from "@mui/material";
2
- import React from "react";
3
- import { TEXT_BODY_400 } from "../../../../theme/common/typography";
4
- import { Link } from "../../../Links/components/Link/link";
5
- import { TitleCell as Cell } from "./titleCell.styles";
6
- export const TitleCell = ({ title, ...props }) => {
7
- return (React.createElement(Cell, { gridSx: { gap: 1 } },
8
- typeof title === "string" ? (React.createElement(Typography, { variant: TEXT_BODY_400 }, title)) : (title),
9
- React.createElement(Link, { ...props })));
10
- };
@@ -1,3 +0,0 @@
1
- export declare const TitleCell: import("@emotion/styled").StyledComponent<import("../../../common/Grid/grid").GridProps & {
2
- theme?: import("@emotion/react").Theme;
3
- }, {}, {}>;
@@ -1,6 +0,0 @@
1
- import styled from "@emotion/styled";
2
- import { textBodySmall400 } from "../../../../styles/common/mixins/fonts";
3
- import { Grid } from "../../../common/Grid/grid";
4
- export const TitleCell = styled(Grid) `
5
- ${textBodySmall400};
6
- `;
@@ -1,6 +0,0 @@
1
- /// <reference types="react" />
2
- export interface RequestAuthenticationProps {
3
- closeMenu: () => void;
4
- requestAuthorization: () => void;
5
- }
6
- export declare const RequestAuthentication: ({ closeMenu, requestAuthorization, }: RequestAuthenticationProps) => JSX.Element;
@@ -1,13 +0,0 @@
1
- import LoginRoundedIcon from "@mui/icons-material/LoginRounded";
2
- import { IconButton as MIconButton } from "@mui/material";
3
- import React from "react";
4
- import { useBreakpoint } from "../../../../../../../../../../../../hooks/useBreakpoint";
5
- import { Button } from "./requestAuthentication.styles";
6
- export const RequestAuthentication = ({ closeMenu, requestAuthorization, }) => {
7
- const { mdUp } = useBreakpoint();
8
- return mdUp ? (React.createElement(Button, { onClick: requestAuthorization, startIcon: React.createElement(LoginRoundedIcon, null), variant: "nav" }, "Sign in")) : (React.createElement(MIconButton, { color: "ink", onClick: () => {
9
- closeMenu();
10
- requestAuthorization();
11
- } },
12
- React.createElement(LoginRoundedIcon, null)));
13
- };
@@ -1,36 +0,0 @@
1
- /// <reference types="react" />
2
- export declare const Button: import("@emotion/styled").StyledComponent<{
3
- children?: import("react").ReactNode;
4
- classes?: Partial<import("@mui/material").ButtonClasses> | undefined;
5
- color?: "inherit" | "primary" | "secondary" | "error" | "info" | "success" | "warning" | undefined;
6
- disabled?: boolean | undefined;
7
- disableElevation?: boolean | undefined;
8
- disableFocusRipple?: boolean | undefined;
9
- endIcon?: import("react").ReactNode;
10
- fullWidth?: boolean | undefined;
11
- href?: string | undefined;
12
- size?: "large" | "medium" | "small" | undefined;
13
- startIcon?: import("react").ReactNode;
14
- sx?: import("@mui/material").SxProps<import("@mui/material").Theme> | undefined;
15
- variant?: "nav" | "text" | "outlined" | "contained" | "activeNav" | "backNav" | undefined;
16
- } & Omit<{
17
- action?: import("react").Ref<import("@mui/material").ButtonBaseActions> | undefined;
18
- centerRipple?: boolean | undefined;
19
- children?: import("react").ReactNode;
20
- classes?: Partial<import("@mui/material").ButtonBaseClasses> | undefined;
21
- disabled?: boolean | undefined;
22
- disableRipple?: boolean | undefined;
23
- disableTouchRipple?: boolean | undefined;
24
- focusRipple?: boolean | undefined;
25
- focusVisibleClassName?: string | undefined;
26
- LinkComponent?: import("react").ElementType<any> | undefined;
27
- onFocusVisible?: import("react").FocusEventHandler<any> | undefined;
28
- sx?: import("@mui/material").SxProps<import("@mui/material").Theme> | undefined;
29
- tabIndex?: number | undefined;
30
- TouchRippleProps?: Partial<import("@mui/material/ButtonBase/TouchRipple").TouchRippleProps> | undefined;
31
- touchRippleRef?: import("react").Ref<import("@mui/material/ButtonBase/TouchRipple").TouchRippleActions> | undefined;
32
- }, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
33
- ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
34
- }, keyof import("@mui/material/OverridableComponent").CommonProps | "tabIndex" | "color" | "children" | "sx" | "variant" | "href" | "disabled" | "action" | "size" | "fullWidth" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableElevation" | "disableFocusRipple" | "endIcon" | "startIcon"> & {
35
- theme?: import("@emotion/react").Theme | undefined;
36
- }, {}, {}>;
@@ -1,9 +0,0 @@
1
- import styled from "@emotion/styled";
2
- import { Button as MButton } from "@mui/material";
3
- import { textBody500 } from "../../../../../../../../../../../../styles/common/mixins/fonts";
4
- export const Button = styled(MButton) `
5
- & {
6
- ${textBody500};
7
- padding: 6px 12px;
8
- }
9
- `;
@@ -1,5 +0,0 @@
1
- /// <reference types="react" />
2
- export interface SearchProps {
3
- openSearch: () => void;
4
- }
5
- export declare const SearchButton: ({ openSearch }: SearchProps) => JSX.Element;
@@ -1,10 +0,0 @@
1
- import { IconButton } from "@mui/material";
2
- import React from "react";
3
- import { useBreakpoint } from "../../../../../../../../../../../../hooks/useBreakpoint";
4
- import { SearchIcon } from "../../../../../../../../../../../common/CustomIcon/components/SearchIcon/searchIcon";
5
- import { Button } from "./searchButton.styles";
6
- export const SearchButton = ({ openSearch }) => {
7
- const { mdUp } = useBreakpoint();
8
- return mdUp ? (React.createElement(Button, { onClick: openSearch, startIcon: React.createElement(SearchIcon, null), variant: "nav" }, "Search")) : (React.createElement(IconButton, { color: "ink", onClick: openSearch },
9
- React.createElement(SearchIcon, { fontSize: "medium" })));
10
- };
@@ -1,36 +0,0 @@
1
- /// <reference types="react" />
2
- export declare const Button: import("@emotion/styled").StyledComponent<{
3
- children?: import("react").ReactNode;
4
- classes?: Partial<import("@mui/material").ButtonClasses> | undefined;
5
- color?: "inherit" | "primary" | "secondary" | "error" | "info" | "success" | "warning" | undefined;
6
- disabled?: boolean | undefined;
7
- disableElevation?: boolean | undefined;
8
- disableFocusRipple?: boolean | undefined;
9
- endIcon?: import("react").ReactNode;
10
- fullWidth?: boolean | undefined;
11
- href?: string | undefined;
12
- size?: "large" | "medium" | "small" | undefined;
13
- startIcon?: import("react").ReactNode;
14
- sx?: import("@mui/material").SxProps<import("@mui/material").Theme> | undefined;
15
- variant?: "nav" | "text" | "outlined" | "contained" | "activeNav" | "backNav" | undefined;
16
- } & Omit<{
17
- action?: import("react").Ref<import("@mui/material").ButtonBaseActions> | undefined;
18
- centerRipple?: boolean | undefined;
19
- children?: import("react").ReactNode;
20
- classes?: Partial<import("@mui/material").ButtonBaseClasses> | undefined;
21
- disabled?: boolean | undefined;
22
- disableRipple?: boolean | undefined;
23
- disableTouchRipple?: boolean | undefined;
24
- focusRipple?: boolean | undefined;
25
- focusVisibleClassName?: string | undefined;
26
- LinkComponent?: import("react").ElementType<any> | undefined;
27
- onFocusVisible?: import("react").FocusEventHandler<any> | undefined;
28
- sx?: import("@mui/material").SxProps<import("@mui/material").Theme> | undefined;
29
- tabIndex?: number | undefined;
30
- TouchRippleProps?: Partial<import("@mui/material/ButtonBase/TouchRipple").TouchRippleProps> | undefined;
31
- touchRippleRef?: import("react").Ref<import("@mui/material/ButtonBase/TouchRipple").TouchRippleActions> | undefined;
32
- }, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
33
- ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
34
- }, keyof import("@mui/material/OverridableComponent").CommonProps | "tabIndex" | "color" | "children" | "sx" | "variant" | "href" | "disabled" | "action" | "size" | "fullWidth" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableElevation" | "disableFocusRipple" | "endIcon" | "startIcon"> & {
35
- theme?: import("@emotion/react").Theme | undefined;
36
- }, {}, {}>;
@@ -1,9 +0,0 @@
1
- import styled from "@emotion/styled";
2
- import { Button as MButton } from "@mui/material";
3
- import { textBody500 } from "../../../../../../../../../../../../styles/common/mixins/fonts";
4
- export const Button = styled(MButton) `
5
- & {
6
- ${textBody500};
7
- padding: 6px 12px;
8
- }
9
- `;
@@ -1,2 +0,0 @@
1
- /// <reference types="react" />
2
- export declare const EntityViewToggle: () => JSX.Element;
@@ -1,37 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.EntityViewToggle = void 0;
7
- const react_1 = __importDefault(require("react"));
8
- const useExploreState_1 = require("../../../../hooks/useExploreState");
9
- const exploreState_1 = require("../../../../providers/exploreState");
10
- const toggleButtonGroup_1 = require("../../../common/ToggleButtonGroup/toggleButtonGroup");
11
- const EntityViewToggle = () => {
12
- const { exploreDispatch } = (0, useExploreState_1.useExploreState)();
13
- const toggleButtons = [
14
- {
15
- label: "Exact Match",
16
- onToggle: () => onChange(exploreState_1.ENTITY_VIEW.EXACT),
17
- value: exploreState_1.ENTITY_VIEW.EXACT,
18
- },
19
- {
20
- label: "Related Match",
21
- onToggle: () => onChange(exploreState_1.ENTITY_VIEW.RELATED),
22
- value: exploreState_1.ENTITY_VIEW.RELATED,
23
- },
24
- ];
25
- /**
26
- * Callback fired when toggle button value changes.
27
- * @param entityView - Entity list view.
28
- */
29
- const onChange = (entityView) => {
30
- exploreDispatch({
31
- payload: entityView,
32
- type: exploreState_1.ExploreActionKind.ToggleEntityView,
33
- });
34
- };
35
- return react_1.default.createElement(toggleButtonGroup_1.ToggleButtonGroup, { toggleButtons: toggleButtons });
36
- };
37
- exports.EntityViewToggle = EntityViewToggle;
@@ -1,6 +0,0 @@
1
- import { Meta, StoryObj } from "@storybook/react";
2
- import { Alert } from "./alert";
3
- declare const _default: Meta<typeof Alert>;
4
- export default _default;
5
- type Story = StoryObj<typeof Alert>;
6
- export declare const AlertStory: Story;
@@ -1,36 +0,0 @@
1
- import { Alert } from "./alert";
2
- export default {
3
- argTypes: {
4
- children: {
5
- control: "text",
6
- description: "Inner text",
7
- },
8
- color: {
9
- description: "Color of alert",
10
- },
11
- icon: {
12
- control: "text",
13
- description: "Top left icon. If provided will replace severity.",
14
- },
15
- severity: {
16
- description: "Top left predefined icon. Combine with color.",
17
- },
18
- title: {
19
- control: "text",
20
- description: "Highlighted text",
21
- },
22
- variant: {
23
- description: "Type of the alert",
24
- },
25
- },
26
- component: Alert,
27
- title: "Components/Common/Alert",
28
- };
29
- export const AlertStory = {
30
- args: {
31
- children: "Something certainly happened",
32
- color: "warning",
33
- severity: "warning",
34
- title: "Ouch!",
35
- },
36
- };
@@ -1,4 +0,0 @@
1
- export declare const AlertText: import("@emotion/styled").StyledComponent<{
2
- theme?: import("@emotion/react").Theme;
3
- as?: React.ElementType;
4
- }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
@@ -1,19 +0,0 @@
1
- import styled from "@emotion/styled";
2
- export const AlertText = styled.div `
3
- ul {
4
- padding-left: 24px;
5
- margin: 8px 0;
6
-
7
- li {
8
- margin: 4px 0;
9
-
10
- &:last-child {
11
- margin-bottom: 0;
12
- }
13
- }
14
- }
15
-
16
- *:last-child {
17
- margin-bottom: 0;
18
- }
19
- `;
@@ -1,7 +0,0 @@
1
- import { AlertProps as MAlertProps } from "@mui/material";
2
- import { ReactNode } from "react";
3
- export interface BannerPrimaryProps extends MAlertProps {
4
- children: ReactNode;
5
- className?: string;
6
- }
7
- export declare const BannerPrimary: ({ children, className, ...props }: BannerPrimaryProps) => JSX.Element;
@@ -1,5 +0,0 @@
1
- import React from "react";
2
- import { Alert } from "./bannerPrimary.styles";
3
- export const BannerPrimary = ({ children, className, ...props /* Spread props to allow for Mui AlertProps specific prop overrides. */ }) => {
4
- return (React.createElement(Alert, { className: className, color: "primary", elevation: 0, icon: false, variant: "standard", ...props }, children));
5
- };
@@ -1,3 +0,0 @@
1
- export declare const Alert: import("@emotion/styled").StyledComponent<import("@mui/material").AlertProps & {
2
- theme?: import("@emotion/react").Theme;
3
- }, {}, {}>;
@@ -1,19 +0,0 @@
1
- import styled from "@emotion/styled";
2
- import { Alert as MAlert } from "@mui/material";
3
- import { primaryMain, white } from "../../../../../styles/common/mixins/colors";
4
- import { textBodySmall400 } from "../../../../../styles/common/mixins/fonts";
5
- export const Alert = styled(MAlert) `
6
- border-radius: 0;
7
- justify-content: center;
8
- padding: 8px;
9
-
10
- &.MuiAlert-standardPrimary {
11
- background-color: ${primaryMain};
12
- color: ${white};
13
- }
14
-
15
- .MuiAlert-message {
16
- ${textBodySmall400};
17
- text-align: center;
18
- }
19
- `;
@@ -1,10 +0,0 @@
1
- import { AlertProps as MAlertProps } from "@mui/material";
2
- import { ElementType, ReactNode } from "react";
3
- export interface CookieBannerProps extends MAlertProps {
4
- Alert?: ElementType;
5
- children: ReactNode;
6
- className?: string;
7
- onDismiss?: () => void;
8
- open: boolean;
9
- }
10
- export declare const DismissibleBanner: ({ Alert, className, children, onDismiss, open, ...props }: CookieBannerProps) => JSX.Element;
@@ -1,16 +0,0 @@
1
- import { Fade, Alert as MAlert, } from "@mui/material";
2
- import React, { useEffect, useState } from "react";
3
- export const DismissibleBanner = ({ Alert = MAlert /* Requires forwardRef to be used as a child of Fade. */, className, children, onDismiss, open, ...props /* Spread props to allow for Mui AlertProps specific prop overrides. */ }) => {
4
- const [isIn, setIsIn] = useState(false);
5
- // Callback fired when the component requests to be closed.
6
- const onClose = () => {
7
- onDismiss?.();
8
- setIsIn(false);
9
- };
10
- // Sets the open state.
11
- useEffect(() => {
12
- setIsIn(open);
13
- }, [open]);
14
- return (React.createElement(Fade, { in: isIn, unmountOnExit: true },
15
- React.createElement(Alert, { className: className, onClose: onClose, ...props }, children)));
16
- };
@@ -1,3 +0,0 @@
1
- export declare const Banner: import("@emotion/styled").StyledComponent<import("../BannerPrimary/bannerPrimary").BannerPrimaryProps & {
2
- theme?: import("@emotion/react").Theme;
3
- }, {}, {}>;
@@ -1,21 +0,0 @@
1
- import styled from "@emotion/styled";
2
- import { mediaDesktopUp } from "../../../../../styles/common/mixins/breakpoints";
3
- import { BannerPrimary } from "../BannerPrimary/bannerPrimary";
4
- export const Banner = styled(BannerPrimary) `
5
- gap: 12px;
6
- padding: 8px 12px;
7
-
8
- ${mediaDesktopUp} {
9
- padding: 8px 16px;
10
- }
11
-
12
- .MuiAlert-message {
13
- align-self: center;
14
- flex: 1;
15
- }
16
-
17
- .MuiAlert-action {
18
- margin: -8px;
19
- padding: 0;
20
- }
21
- `;
@@ -1,5 +0,0 @@
1
- /// <reference types="react" />
2
- /**
3
- * Mock "loading" icon button - a placeholder element styled like a primary icon button without the use of a button element.
4
- */
5
- export declare const LoadingIconButton: () => JSX.Element;