@madie/madie-design-system 1.2.62 → 2.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 (118) hide show
  1. package/.eslintrc.js +1 -1
  2. package/.storybook/.babelrc +2 -1
  3. package/.storybook/main.js +3 -11
  4. package/components/AutoComplete/AutoComplete.jsx +1 -1
  5. package/components/Button/Button.stories.js +0 -2
  6. package/components/DateField/DateField.jsx +1 -1
  7. package/components/DateField/DateField.stories.jsx +23 -10
  8. package/components/DateTimeField/DateTimeField.jsx +6 -2
  9. package/components/DateTimeField/DateTimeField.stories.jsx +29 -19
  10. package/components/Instant/Instant.stories.js +14 -6
  11. package/components/MadieAlert/MadieAlert.stories.js +35 -29
  12. package/components/MadieAlert/index.jsx +5 -5
  13. package/components/MadieConfirmDialog/MadieConfirmDialog.stories.js +17 -27
  14. package/components/MadieDeleteDialog/MadieDeleteDialog.stories.js +9 -18
  15. package/components/MadieDialog/MadieDialog.stories.js +45 -116
  16. package/components/MadieDialog/index.jsx +4 -2
  17. package/components/MadieDiscardDialog/MadieDiscardDialog.stories.js +5 -7
  18. package/components/MadieSpinner/MadieSpinner.stories.js +1 -3
  19. package/components/MadieTooltip/MadieTooltip.stories.js +7 -2
  20. package/components/Modal/Modal.stories.js +18 -89
  21. package/components/NotificationBanner/NotificationBanner.stories.js +17 -11
  22. package/components/NotificationBanner/index.js +3 -3
  23. package/components/NumberInput/NumberInput.stories.js +51 -63
  24. package/components/Popover/Popover.stories.js +6 -14
  25. package/components/Popover/index.js +2 -2
  26. package/components/RadioButton/RadioButton.jsx +4 -2
  27. package/components/RadioButton/RadioButton.stories.jsx +6 -2
  28. package/components/ReadOnlyTextField/ReadOnlyTextField.stories.js +4 -3
  29. package/components/ReadOnlyTextField/index.jsx +1 -1
  30. package/components/RichTextEditor/RichTextEditor.stories.js +10 -8
  31. package/components/RichTextEditor/index.jsx +14 -15
  32. package/components/Search/Search.stories.js +2 -4
  33. package/components/Select/Select.stories.js +59 -160
  34. package/components/Select/index.jsx +1 -1
  35. package/components/Tabs/Tabs.stories.js +78 -210
  36. package/components/TextArea/TextArea.stories.js +88 -108
  37. package/components/TextArea/index.jsx +1 -1
  38. package/components/TextField/TextField.stories.js +101 -124
  39. package/components/TextField/index.jsx +1 -1
  40. package/components/TimeField/TimeField.stories.js +18 -8
  41. package/components/Toast/Toast.stories.js +42 -102
  42. package/components/TruncateText/TruncateText.stories.js +22 -17
  43. package/components/hooks/useGetConfig.js +2 -2
  44. package/components/index.js +0 -24
  45. package/dist/browser.js +1 -1
  46. package/dist/index.js +1 -1
  47. package/dist/react/index.js +182 -51
  48. package/dist/react/index.js.LICENSE.txt +27 -24
  49. package/dist/react/index.js.map +1 -1
  50. package/eslint.config.js +56 -0
  51. package/index.js +7 -9
  52. package/package.json +43 -75
  53. package/test/components/Accordion.test.js +1 -1
  54. package/test/components/AutoComplete.test.js +11 -6
  55. package/test/components/Button.test.js +7 -3
  56. package/test/components/DateField.test.js +25 -29
  57. package/test/components/DateTimeField.test.js +21 -25
  58. package/test/components/Instant.test.js +1 -1
  59. package/test/components/MadieAlert.test.js +22 -22
  60. package/test/components/MadieConfirmDialog.test.js +42 -64
  61. package/test/components/MadieDeleteDialog.test.js +51 -69
  62. package/test/components/MadieDialog.test.js +13 -13
  63. package/test/components/MadieDiscardDialog.test.js +28 -45
  64. package/test/components/MadieSpinner.test.js +12 -17
  65. package/test/components/Modal.test.js +115 -0
  66. package/test/components/Pagination.test.js +2 -2
  67. package/test/components/RadioButton.test.js +7 -7
  68. package/test/components/ReadOnlyTextField.test.js +4 -2
  69. package/test/components/RichTextEditor.test.js +90 -6
  70. package/test/components/Search.test.js +75 -0
  71. package/test/components/Select.test.js +97 -107
  72. package/test/components/Tabs.test.js +22 -24
  73. package/test/components/TextArea.test.js +78 -92
  74. package/test/components/TextField.test.js +128 -147
  75. package/test/components/Toast.test.js +67 -78
  76. package/test/components/TruncateText.test.js +75 -0
  77. package/test/components/index.test.js +23 -0
  78. package/webpack.config.js +0 -1
  79. package/.eslintignore +0 -5
  80. package/components/Alert/Alert.stories.js +0 -70
  81. package/components/Alert/index.js +0 -55
  82. package/components/Breadcrumb/Breadcrumb.md +0 -28
  83. package/components/Breadcrumb/Breadcrumb.stories.js +0 -76
  84. package/components/Breadcrumb/index.js +0 -92
  85. package/components/CalloutBox/CalloutBox.stories.js +0 -94
  86. package/components/CalloutBox/index.js +0 -109
  87. package/components/Card/Card.stories.js +0 -163
  88. package/components/Card/index.js +0 -144
  89. package/components/Dropdown/Dropdown.stories.js +0 -94
  90. package/components/Dropdown/index.js +0 -85
  91. package/components/Error/Collapsible.jsx +0 -93
  92. package/components/Error/ErrorUI.jsx +0 -31
  93. package/components/Error/error.js +0 -26
  94. package/components/FlashNotification/FlashNotificationUI.jsx +0 -91
  95. package/components/FlashNotification/index.js +0 -30
  96. package/components/Footer/Footer.stories.js +0 -20
  97. package/components/Footer/FooterUI.jsx +0 -137
  98. package/components/Footer/LegacyFooterUI.jsx +0 -204
  99. package/components/Footer/SocialLinks.jsx +0 -63
  100. package/components/Footer/Subscribe.jsx +0 -34
  101. package/components/Footer/footer.js +0 -30
  102. package/components/Infotip/Infotip.jsx +0 -75
  103. package/components/Infotip/Infotip.stories.js +0 -52
  104. package/components/Infotip/InfotipIcon.jsx +0 -41
  105. package/components/Infotip/index.js +0 -3
  106. package/components/Link/Link.stories.js +0 -82
  107. package/components/Link/index.js +0 -61
  108. package/components/Spinner/index.js +0 -9
  109. package/components/TextInput/TextInput.stories.js +0 -118
  110. package/components/TextInput/index.js +0 -137
  111. package/components/Tooltip/Tooltip.jsx +0 -88
  112. package/components/Tooltip/Tooltip.stories.js +0 -80
  113. package/components/Tooltip/index.js +0 -3
  114. package/components/Tooltip/position.js +0 -76
  115. package/test/components/ErrorUI.test.js +0 -32
  116. package/test/components/FooterUI.test.js +0 -122
  117. package/test/components/Infotip.test.js +0 -76
  118. package/test/components/Tooltip.test.js +0 -147
@@ -0,0 +1,56 @@
1
+ const {
2
+ defineConfig,
3
+ globalIgnores,
4
+ } = require("eslint/config");
5
+
6
+ const babelParser = require("@babel/eslint-parser");
7
+ const globals = require("globals");
8
+ const js = require("@eslint/js");
9
+
10
+ const {
11
+ FlatCompat,
12
+ } = require("@eslint/eslintrc");
13
+
14
+ const compat = new FlatCompat({
15
+ baseDirectory: __dirname,
16
+ recommendedConfig: js.configs.recommended,
17
+ allConfig: js.configs.all
18
+ });
19
+
20
+ module.exports = defineConfig([{
21
+ extends: compat.extends("eslint:recommended", "plugin:react/recommended"),
22
+
23
+ languageOptions: {
24
+ parser: babelParser,
25
+ sourceType: "module",
26
+
27
+ parserOptions: {
28
+ ecmaFeatures: {
29
+ jsx: true,
30
+ },
31
+ },
32
+
33
+ globals: {
34
+ ...globals.node,
35
+ ...globals.browser,
36
+ ...globals.jquery,
37
+ ...globals.mocha,
38
+ },
39
+ },
40
+
41
+ rules: {
42
+ "no-unused-vars": ["error", {
43
+ args: "none",
44
+ }],
45
+
46
+ "linebreak-style": ["error", "unix"],
47
+ "no-console": 0,
48
+ "no-prototype-builtins": [0],
49
+ },
50
+
51
+ settings: {
52
+ react: {
53
+ version: "detect",
54
+ },
55
+ },
56
+ }, globalIgnores(["**/_*", "**/css", "**/dist", "**/node_modules", "**/test"])]);
package/index.js CHANGED
@@ -1,15 +1,13 @@
1
- import ErrorPage from "./components/Error/error";
2
- import Footer from "./components/Footer/footer";
3
-
4
1
  import "what-input";
5
-
2
+ import React from 'react'
6
3
  const QppStyleComponents = {
7
- errorPage(options) {
8
- return new ErrorPage(options);
4
+ errorPage() {
5
+ return <div data-testId="error-page">
6
+ Something has gone terribly wrong.
7
+ </div>;
9
8
  },
10
-
11
- footer(options) {
12
- return new Footer(options);
9
+ footer() {
10
+ return <div data-testId="unused"></div>;
13
11
  },
14
12
  };
15
13
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@madie/madie-design-system",
3
- "version": "1.2.62",
3
+ "version": "2.0.00",
4
4
  "description": "Shared style guide across the Madie program.",
5
5
  "main": "dist/index.js",
6
6
  "homepage": "https://github.com/MeasureAuthoringTool/madie-design-system",
@@ -28,65 +28,36 @@
28
28
  "deploy": "gh-pages -d storybook-static"
29
29
  },
30
30
  "devDependencies": {
31
- "@babel/cli": "^7.25.6",
32
- "@babel/core": "^7.25.2",
33
- "@babel/preset-env": "^7.25.4",
34
- "@babel/preset-react": "^7.24.7",
35
- "@babel/register": "^7.24.6",
36
- "@storybook/addon-a11y": "^8.3.0",
37
- "@storybook/addon-actions": "^8.3.0",
38
- "@storybook/addon-backgrounds": "^8.3.0",
39
- "@storybook/addon-docs": "^8.3.0",
40
- "@storybook/addon-knobs": "^8.0.1",
41
- "@storybook/addon-links": "^8.3.0",
42
- "@storybook/addon-postcss": "^2.0.0",
43
- "@storybook/addon-storysource": "^8.3.0",
44
- "@storybook/addon-viewport": "^8.3.0",
45
- "@storybook/addon-webpack5-compiler-babel": "^3.0.3",
46
- "@storybook/addons": "^7.6.17",
47
- "@storybook/react": "^8.3.0",
48
- "@storybook/react-webpack5": "^8.3.0",
49
- "@testing-library/jest-dom": "^6.1.4",
50
- "@testing-library/react": "^12.1.2",
51
- "@testing-library/user-event": "^13.5.0",
52
- "@wojtekmaj/enzyme-adapter-react-17": "^0.6.6",
53
- "autoprefixer": "^10.4.2",
54
- "babel-eslint": "^10.1.0",
55
- "babel-jest": "^27.4.6",
56
- "babel-loader": "^8.2.3",
57
- "chai": "^4.3.4",
58
- "copy-webpack-plugin": "^5.1.2",
59
- "css-loader": "^7.1.2",
31
+ "@babel/eslint-parser": "^7.27.5",
32
+ "@storybook/addon-a11y": "^9.0.9",
33
+ "@storybook/addon-backgrounds": "^9.0.8",
34
+ "@storybook/addon-controls": "^9.0.8",
35
+ "@storybook/addon-docs": "^9.0.10",
36
+ "@storybook/addon-links": "^9.0.9",
37
+ "@storybook/addon-viewport": "^9.0.8",
38
+ "@storybook/addon-webpack5-compiler-babel": "^3.0.6",
39
+ "@storybook/react-webpack5": "^9.0.10",
40
+ "@testing-library/jest-dom": "^6.6.3",
41
+ "@testing-library/react": "^16.3.0",
42
+ "@testing-library/user-event": "^14.6.1",
43
+ "babel-loader": "^10.0.0",
44
+ "cross-env": "^7.0.3",
45
+ "d3-selection": "^1.4.2",
46
+ "d3-shape": "^1.3.7",
60
47
  "enzyme": "^3.11.0",
61
- "enzyme-to-json": "^3.6.2",
62
- "eslint": "^7.32.0",
63
- "eslint-config-prettier": "^6.15.0",
64
- "eslint-plugin-babel": "^5.3.1",
65
- "eslint-plugin-prettier": "^3.4.1",
66
- "eslint-plugin-react": "^7.28.0",
67
- "feather-icons-react": "^0.4.3",
68
- "file-loader": "^6.2.0",
69
- "gh-pages": "^6.0.0",
70
- "html-webpack-plugin": "^5.5.0",
71
- "jest": "^29.7.0",
72
- "jest-environment-jsdom": "^29.7.0",
73
- "mini-css-extract-plugin": "^0.11.3",
74
- "moxios": "^0.4.0",
75
- "node-fetch": "^2.6.7",
76
- "prettier": "^2.5.1",
77
- "raw-loader": "^4.0.2",
78
- "react": "^17.0.2",
79
- "react-dom": "^17.0.2",
80
- "react-test-renderer": "^17.0.2",
81
- "regenerator-runtime": "^0.13.9",
82
- "rimraf": "^3.0.2",
83
- "sass": "^1.48.0",
84
- "sass-loader": "^10.2.1",
85
- "sinon": "^12.0.1",
86
- "style-loader": "^1.3.0",
87
- "svgo-loader": "^4.0.0",
88
- "webpack": "^5.70.0",
89
- "webpack-cli": "^4.9.2"
48
+ "eslint": "^9.29.0",
49
+ "eslint-plugin-react": "^7.33.2",
50
+ "globals": "^16.2.0",
51
+ "jest": "^30.0.0",
52
+ "jest-environment-jsdom": "^30.0.0",
53
+ "mini-css-extract-plugin": "^2.9.2",
54
+ "prettier": "^3.5.3",
55
+ "rimraf": "^5.0.5",
56
+ "sass": "^1.89.2",
57
+ "sass-loader": "^16.0.5",
58
+ "stylelint": "^15.10.3",
59
+ "webpack": "^5.99.9",
60
+ "webpack-cli": "^6.0.1"
90
61
  },
91
62
  "repository": {
92
63
  "type": "git",
@@ -106,16 +77,17 @@
106
77
  "url": "https://github.com/MeasureAuthoringTool/madie-design-system/issues"
107
78
  },
108
79
  "dependencies": {
80
+ "@babel/plugin-transform-class-properties": "^7.27.1",
81
+ "@babel/plugin-transform-modules-umd": "^7.27.1",
82
+ "@babel/preset-env": "^7.27.2",
83
+ "@babel/preset-react": "^7.27.1",
109
84
  "@cmsgov/design-system": "^5.0.2",
110
- "@emotion/react": "^11.8.2",
111
- "@emotion/styled": "^11.8.1",
112
- "@mui/icons-material": "^6.1.0",
113
- "@mui/material": "^6.1.0",
114
- "@mui/styles": "^6.1.0",
115
- "@mui/system": "^6.1.0",
116
- "@mui/x-date-pickers": "^7.17.0",
117
- "@reach/portal": "^0.16.2",
118
- "@reach/tooltip": "^0.16.2",
85
+ "@emotion/react": "^11.11.1",
86
+ "@emotion/styled": "^11.11.0",
87
+ "@mui/icons-material": "^7.1.1",
88
+ "@mui/material": "7.1.1",
89
+ "@mui/system": "^7.1.1",
90
+ "@mui/x-date-pickers": "7.29.4",
119
91
  "@tiptap/extension-color": "^2.11.7",
120
92
  "@tiptap/extension-highlight": "^2.11.7",
121
93
  "@tiptap/extension-table": "^2.11.7",
@@ -128,15 +100,15 @@
128
100
  "@tiptap/starter-kit": "^2.11.7",
129
101
  "axios": "^1.7.4",
130
102
  "cookie": "^0.7.2",
131
- "cross-env": "^7.0.3",
132
- "d3-selection": "^1.4.2",
133
- "d3-shape": "^1.3.7",
134
103
  "dayjs": "^1.11.7",
135
104
  "dompurify": "^3.2.6",
105
+ "feather-icons-react": "^0.9.0",
136
106
  "jwt-decode": "^3.1.2",
137
107
  "lodash": "^4.17.21",
138
108
  "preact": "^10.6.4",
139
109
  "prop-types": "^15.8.1",
110
+ "react": "19.1.0",
111
+ "react-dom": "19.1.0",
140
112
  "react-draggable": "^4.4.6",
141
113
  "react-modal": "^3.14.4",
142
114
  "retry": "^0.13.1",
@@ -144,12 +116,8 @@
144
116
  "what-input": "^5.2.10",
145
117
  "xss": "^1.0.10"
146
118
  },
147
- "peerDependencies": {
148
- "classnames": "^2.3.1"
149
- },
150
119
  "overrides": {
151
120
  "trim": ">=0.0.3",
152
- "webpack": "^5.70.0",
153
121
  "trim-newlines": "^3.0.1",
154
122
  "glob-parent": "^6.0.1",
155
123
  "semver": "^7.5.3",
@@ -13,7 +13,7 @@ describe("Accordion", () => {
13
13
  leftItem="leftItem"
14
14
  >
15
15
  Content
16
- </Accordion>
16
+ </Accordion>,
17
17
  );
18
18
  expect(getByTestId("accordion")).toBeTruthy();
19
19
  const button = getByRole("button");
@@ -2,7 +2,7 @@ import * as React from "react";
2
2
  import "@testing-library/jest-dom";
3
3
  import { describe, expect } from "@jest/globals";
4
4
  import AutoComplete from "../../components/AutoComplete/AutoComplete";
5
- import {render, screen } from "@testing-library/react";
5
+ import { render, screen } from "@testing-library/react";
6
6
  import userEvent from "@testing-library/user-event";
7
7
 
8
8
  describe("AutoComplete Component", () => {
@@ -18,7 +18,7 @@ describe("AutoComplete Component", () => {
18
18
  options={options}
19
19
  onChange={mockOnChange}
20
20
  placeholder="Search for a value"
21
- />
21
+ />,
22
22
  );
23
23
 
24
24
  const input = screen.getByRole("combobox");
@@ -29,7 +29,12 @@ describe("AutoComplete Component", () => {
29
29
  expect(option).toBeInTheDocument();
30
30
 
31
31
  await userEvent.click(option);
32
- expect(mockOnChange).toHaveBeenCalledWith("autocomplete", "Option1", expect.any(String), expect.any(Object));
32
+ expect(mockOnChange).toHaveBeenCalledWith(
33
+ "autocomplete",
34
+ "Option1",
35
+ expect.any(String),
36
+ expect.any(Object),
37
+ );
33
38
  });
34
39
 
35
40
  it("renders AutoComplete in disabled mode", async () => {
@@ -40,7 +45,7 @@ describe("AutoComplete Component", () => {
40
45
  label="Auto Complete"
41
46
  disabled
42
47
  value="Option1"
43
- />
48
+ />,
44
49
  );
45
50
 
46
51
  const readOnlyField = screen.getByRole("textbox");
@@ -55,7 +60,7 @@ describe("AutoComplete Component", () => {
55
60
  dataTestId="autocomplete-helper"
56
61
  label="Auto Complete"
57
62
  helperText="Helper text goes here"
58
- />
63
+ />,
59
64
  );
60
65
 
61
66
  const helperText = screen.getByText("Helper text goes here");
@@ -70,7 +75,7 @@ describe("AutoComplete Component", () => {
70
75
  label="Auto Complete"
71
76
  error
72
77
  helperText="This field is required"
73
- />
78
+ />,
74
79
  );
75
80
 
76
81
  const errorText = screen.getByText("This field is required");
@@ -10,7 +10,11 @@ describe("Button", () => {
10
10
  it("Button renders with provided size, onClick triggers", async () => {
11
11
  const onClick = jest.fn();
12
12
  render(
13
- <Button size="big" onClick={onClick} data-testId="button-test-id" />
13
+ <Button
14
+ size="big"
15
+ onClick={onClick}
16
+ data-testId="button-test-id"
17
+ />,
14
18
  );
15
19
  const button = getByTestId("button-test-id");
16
20
  expect(button).toHaveClass("qpp-c-button--big");
@@ -33,7 +37,7 @@ describe("Button", () => {
33
37
  onClick={onClick}
34
38
  href="https://whatwouldkevindo.com/"
35
39
  children="test"
36
- />
40
+ />,
37
41
  );
38
42
  expect(getByText("test").href).toBe("https://whatwouldkevindo.com/");
39
43
  });
@@ -46,7 +50,7 @@ describe("Button", () => {
46
50
  className="test"
47
51
  data-testId="text-test-id"
48
52
  children="test"
49
- />
53
+ />,
50
54
  );
51
55
  expect(getByText("test")).toBeTruthy();
52
56
  });
@@ -2,46 +2,42 @@ import * as React from "react";
2
2
  import "@testing-library/jest-dom";
3
3
  import { describe, expect } from "@jest/globals";
4
4
  import DateField from "../../components/DateField/DateField";
5
- import { act } from "react-dom/test-utils";
6
5
  import { render, screen } from "@testing-library/react";
7
6
  import dayjs from "dayjs";
8
7
 
9
8
  describe("DateField", () => {
9
+ const { findByText, getByDisplayValue } = screen;
10
10
  it("DateField Exists", async () => {
11
- await act(async () => {
12
- const { findByText, getByDisplayValue } = render(
13
- <DateField
14
- label="Status Date"
15
- value={dayjs("2022-04-17")}
16
- handleDateChange={() => console.log("Status Date")}
17
- disabled={false}
18
- />
19
- );
11
+ render(
12
+ <DateField
13
+ label="Status Date"
14
+ value={dayjs("2022-04-17")}
15
+ handleDateChange={() => console.log("Status Date")}
16
+ disabled={false}
17
+ />,
18
+ );
20
19
 
21
- const labelText = await findByText("Status Date");
22
- expect(labelText).toBeInTheDocument();
23
- expect(await findByText("Status Date")).toBeInTheDocument();
24
- expect(getByDisplayValue("04/17/2022")).toBeInTheDocument();
25
- });
20
+ const labelText = await findByText("Status Date");
21
+ expect(labelText).toBeInTheDocument();
22
+ expect(await findByText("Status Date")).toBeInTheDocument();
23
+ expect(getByDisplayValue("04/17/2022")).toBeInTheDocument();
26
24
  });
27
25
 
28
26
  it("DateField Exists, with empty value", async () => {
29
- await act(async () => {
30
- const { findByText, container } = render(
31
- <DateField
32
- label="Status Date"
33
- handleDateChange={() => console.log("Status Date")}
34
- disabled={false}
35
- />
36
- );
27
+ const { findByText, container } = render(
28
+ <DateField
29
+ label="Status Date"
30
+ handleDateChange={() => console.log("Status Date")}
31
+ disabled={false}
32
+ />,
33
+ );
37
34
 
38
- const labelText = await findByText("Status Date");
39
- expect(labelText).toBeInTheDocument();
40
- expect(await findByText("Status Date")).toBeInTheDocument();
35
+ const labelText = await findByText("Status Date");
36
+ expect(labelText).toBeInTheDocument();
37
+ expect(await findByText("Status Date")).toBeInTheDocument();
41
38
 
42
- const dateDisplay = container.querySelector('[value="04/17/2022"]');
43
- expect(dateDisplay).toBeNull();
44
- });
39
+ const dateDisplay = container.querySelector('[value="04/17/2022"]');
40
+ expect(dateDisplay).toBeNull();
45
41
  });
46
42
 
47
43
  it("renders ReadOnlyTextField when disabled is true", () => {
@@ -2,34 +2,30 @@ import * as React from "react";
2
2
  import "@testing-library/jest-dom";
3
3
  import { describe, expect } from "@jest/globals";
4
4
  import DateTimeField from "../../components/DateTimeField/DateTimeField";
5
- import { act } from "react-dom/test-utils";
6
- import { render } from "@testing-library/react";
5
+ import { render, screen } from "@testing-library/react";
7
6
  import dayjs from "dayjs";
8
7
 
9
8
  describe("DateTimeField", () => {
9
+ const { findByText, findByTestId, getByDisplayValue } = screen;
10
10
  it("DateTimeField Exists", async () => {
11
- await act(async () => {
12
- const { findByText, findByTestId, getByDisplayValue } = render(
13
- <DateTimeField
14
- label="Active Date/Time"
15
- id="active-date-time"
16
- dateTimeValue={dayjs("2022-04-17T15:30Z")}
17
- handleDateTimeChange={() => {
18
- return;
19
- }}
20
- disabled={false}
21
- />
22
- );
11
+ render(
12
+ <DateTimeField
13
+ label="Active Date/Time"
14
+ id="active-date-time"
15
+ dateTimeValue={dayjs("2022-04-17T15:30Z")}
16
+ handleDateTimeChange={() => {
17
+ return;
18
+ }}
19
+ disabled={false}
20
+ />,
21
+ );
23
22
 
24
- const labelText = await findByText("Active Date/Time");
25
- expect(labelText).toBeInTheDocument();
26
- expect(
27
- await findByTestId("active-date-time-input")
28
- ).toBeInTheDocument();
29
- expect(
30
- getByDisplayValue("04/17/2022 03:30 PM")
31
- ).toBeInTheDocument();
32
- });
23
+ const labelText = await findByText("Active Date/Time");
24
+ expect(labelText).toBeInTheDocument();
25
+ expect(
26
+ await findByTestId("active-date-time-input"),
27
+ ).toBeInTheDocument();
28
+ expect(getByDisplayValue("04/17/2022 03:30 PM")).toBeInTheDocument();
33
29
  });
34
30
 
35
31
  it("renders ReadOnlyTextField when disabled is true", () => {
@@ -44,7 +40,7 @@ describe("DateTimeField", () => {
44
40
  handleDateTimeChange={() => {}}
45
41
  disabled={true}
46
42
  id={id}
47
- />
43
+ />,
48
44
  );
49
45
 
50
46
  const readOnlyField = getByLabelText(label);
@@ -64,7 +60,7 @@ describe("DateTimeField", () => {
64
60
  handleDateTimeChange={() => {}}
65
61
  disabled={true}
66
62
  id={id}
67
- />
63
+ />,
68
64
  );
69
65
 
70
66
  const readOnlyField = getByLabelText(label);
@@ -44,7 +44,7 @@ describe("Instant", () => {
44
44
  dateTimeValue={dayjs("2022-04-17")}
45
45
  dateFieldSx={{}}
46
46
  />
47
- </div>
47
+ </div>,
48
48
  );
49
49
  const labelText = await findByText("Status Date");
50
50
  expect(labelText).toBeInTheDocument();