@madie/madie-design-system 1.2.101 → 1.2.103

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 (87) hide show
  1. package/.babelrc +0 -1
  2. package/.storybook/main.mjs +38 -0
  3. package/README.md +18 -0
  4. package/components/Breadcrumb/Breadcrumb.stories.js +9 -8
  5. package/components/Button/Button.stories.js +0 -2
  6. package/components/CalloutBox/CalloutBox.stories.js +0 -2
  7. package/components/Card/Card.stories.js +0 -2
  8. package/components/DateField/DateField.stories.jsx +0 -2
  9. package/components/DateTimeField/DateTimeField.stories.jsx +0 -2
  10. package/components/Dropdown/Dropdown.stories.js +0 -2
  11. package/components/Footer/Footer.stories.js +11 -7
  12. package/components/HowItWorks/HowItWorks.stories.js +0 -2
  13. package/components/Infotip/Infotip.stories.js +3 -4
  14. package/components/Instant/Instant.stories.js +0 -2
  15. package/components/Link/Link.stories.js +0 -2
  16. package/components/MadieAlert/MadieAlert.stories.js +0 -2
  17. package/components/MadieConfirmDialog/MadieConfirmDialog.stories.js +0 -2
  18. package/components/MadieDeleteDialog/MadieDeleteDialog.stories.js +0 -2
  19. package/components/MadieDialog/MadieDialog.stories.js +0 -2
  20. package/components/MadieDiscardDialog/MadieDiscardDialog.stories.js +0 -2
  21. package/components/MadieSpinner/MadieSpinner.stories.js +0 -2
  22. package/components/MadieTable/MadieTable.stories.js +93 -0
  23. package/components/MadieTable/index.jsx +34 -8
  24. package/components/Modal/Modal.stories.js +19 -25
  25. package/components/NotificationBanner/NotificationBanner.stories.js +5 -4
  26. package/components/NumberInput/NumberInput.stories.js +0 -2
  27. package/components/Pagination/index.jsx +3 -8
  28. package/components/Popover/Popover.stories.js +0 -2
  29. package/components/ReadOnlyTextField/ReadOnlyTextField.stories.js +0 -2
  30. package/components/RichTextEditor/RichTextEditor.stories.js +0 -2
  31. package/components/SearchAndFilter/index.jsx +1 -1
  32. package/components/Select/Select.stories.js +0 -2
  33. package/components/Tabs/Tabs.stories.js +0 -2
  34. package/components/TextArea/TextArea.stories.js +0 -2
  35. package/components/TextField/TextField.stories.js +0 -2
  36. package/components/TextInput/TextInput.stories.js +0 -2
  37. package/components/TimeField/TimeField.jsx +1 -1
  38. package/components/TimeField/TimeField.stories.js +0 -2
  39. package/components/Toast/Toast.stories.js +0 -2
  40. package/components/TruncateText/TruncateText.stories.js +0 -2
  41. package/components/TruncateText/index.js +12 -1
  42. package/components/index.js +0 -2
  43. package/dist/browser.js +1 -1
  44. package/dist/index.js +1 -1
  45. package/dist/react/index.js +5 -5
  46. package/dist/react/index.js.LICENSE.txt +3 -1
  47. package/dist/react/index.js.map +1 -1
  48. package/jest.config.js +0 -4
  49. package/package.json +15 -25
  50. package/styles/_main.scss +0 -6
  51. package/test/components/MadieTable.test.js +38 -0
  52. package/test/components/Pagination.test.js +56 -0
  53. package/test/components/TruncateText.test.js +38 -0
  54. package/.storybook/main.js +0 -61
  55. package/components/Spinner/index.js +0 -9
  56. package/components/UnwrappedSpinner/index.js +0 -8
  57. package/storybook-static/favicon.svg +0 -1
  58. package/storybook-static/index.html +0 -169
  59. package/storybook-static/index.json +0 -1
  60. package/storybook-static/nunito-sans-bold-italic.woff2 +0 -0
  61. package/storybook-static/nunito-sans-bold.woff2 +0 -0
  62. package/storybook-static/nunito-sans-italic.woff2 +0 -0
  63. package/storybook-static/nunito-sans-regular.woff2 +0 -0
  64. package/storybook-static/project.json +0 -1
  65. package/storybook-static/sb-addons/a11y-5/manager-bundle.js +0 -220
  66. package/storybook-static/sb-addons/actions-1/manager-bundle.js +0 -3
  67. package/storybook-static/sb-addons/backgrounds-7/manager-bundle.js +0 -12
  68. package/storybook-static/sb-addons/docs-6/manager-bundle.js +0 -245
  69. package/storybook-static/sb-addons/knobs-4/register-bundle.js +0 -23
  70. package/storybook-static/sb-addons/knobs-4/register-bundle.js.LEGAL.txt +0 -11
  71. package/storybook-static/sb-addons/links-2/manager-bundle.js +0 -3
  72. package/storybook-static/sb-addons/storybook-core-core-server-presets-0/common-manager-bundle.js +0 -3
  73. package/storybook-static/sb-addons/storysource-3/manager-bundle.js +0 -3
  74. package/storybook-static/sb-addons/viewport-8/manager-bundle.js +0 -3
  75. package/storybook-static/sb-common-assets/favicon.svg +0 -1
  76. package/storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  77. package/storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  78. package/storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  79. package/storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  80. package/storybook-static/sb-manager/globals-module-info.js +0 -1052
  81. package/storybook-static/sb-manager/globals-runtime.js +0 -41775
  82. package/storybook-static/sb-manager/globals.js +0 -48
  83. package/storybook-static/sb-manager/runtime.js +0 -12048
  84. package/storybook-static/sb-preview/globals.js +0 -33
  85. package/storybook-static/sb-preview/runtime.js +0 -7745
  86. package/test/__mocks__/styled-components-macro.js +0 -2
  87. package/test/__mocks__/twin.macro.js +0 -24
package/jest.config.js CHANGED
@@ -6,10 +6,6 @@ module.exports = {
6
6
  "^.+\\.(j|t)sx?$": "babel-jest",
7
7
  },
8
8
  setupFilesAfterEnv: ["@testing-library/jest-dom"],
9
- moduleNameMapper: {
10
- "^twin.macro$": "<rootDir>/test/__mocks__/twin.macro.js",
11
- "^styled-components/macro$": "<rootDir>/test/__mocks__/styled-components-macro.js",
12
- },
13
9
  globals: {
14
10
  "ts-jest": {
15
11
  tsconfig: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@madie/madie-design-system",
3
- "version": "1.2.101",
3
+ "version": "1.2.103",
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",
@@ -23,37 +23,26 @@
23
23
  "stylelint": "stylelint 'styles/**/*.{css,scss}'",
24
24
  "format-styles": "prettier 'styles/**/*.{css,scss}' --write --quiet",
25
25
  "storybook": "storybook dev -p 6007",
26
- "build-storybook": "storybook build",
27
- "predeploy": "npm run build-storybook",
28
- "deploy": "gh-pages -d storybook-static"
26
+ "build-storybook": "storybook build"
29
27
  },
30
28
  "devDependencies": {
31
- "@babel/cli": "^7.25.6",
32
29
  "@babel/core": "^7.25.2",
33
30
  "@babel/preset-env": "^7.25.4",
34
31
  "@babel/preset-react": "^7.24.7",
35
32
  "@babel/register": "^7.24.6",
36
- "@storybook/addon-a11y": "^8.3.0",
37
- "@storybook/addon-actions": "^8.6.18",
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-storysource": "^8.3.0",
43
- "@storybook/addon-viewport": "^8.3.0",
44
- "@storybook/addon-webpack5-compiler-babel": "^3.0.3",
45
- "@storybook/addons": "^7.6.17",
46
- "@storybook/react": "^8.3.0",
47
- "@storybook/react-webpack5": "^8.3.0",
33
+ "@storybook/addon-a11y": "^10.6.2",
34
+ "@storybook/addon-docs": "^10.6.2",
35
+ "@storybook/addon-links": "^10.6.2",
36
+ "@storybook/react": "^10.6.2",
37
+ "@storybook/react-vite": "^10.6.2",
48
38
  "@testing-library/jest-dom": "^6.1.4",
49
39
  "@testing-library/react": "^12.1.2",
50
40
  "@testing-library/user-event": "^13.5.0",
51
41
  "@wojtekmaj/enzyme-adapter-react-17": "^0.6.6",
52
42
  "autoprefixer": "^10.4.2",
53
43
  "babel-eslint": "^10.1.0",
54
- "babel-jest": "^27.4.6",
44
+ "babel-jest": "^30.0.0",
55
45
  "babel-loader": "^8.2.3",
56
- "babel-plugin-macros": "^3.1.0",
57
46
  "chai": "^4.3.4",
58
47
  "css-loader": "^7.1.2",
59
48
  "enzyme": "^3.11.0",
@@ -65,10 +54,9 @@
65
54
  "eslint-plugin-react": "^7.28.0",
66
55
  "feather-icons-react": "^0.4.3",
67
56
  "file-loader": "^6.2.0",
68
- "gh-pages": "^6.0.0",
69
57
  "html-webpack-plugin": "^5.5.0",
70
- "jest": "^29.7.0",
71
- "jest-environment-jsdom": "^29.7.0",
58
+ "jest": "^30.0.0",
59
+ "jest-environment-jsdom": "^30.0.0",
72
60
  "mini-css-extract-plugin": "^0.11.3",
73
61
  "moxios": "^0.4.0",
74
62
  "node-fetch": "^2.6.7",
@@ -83,8 +71,11 @@
83
71
  "sass": "^1.48.0",
84
72
  "sass-loader": "^10.2.1",
85
73
  "sinon": "^12.0.1",
74
+ "storybook": "^10.6.2",
86
75
  "style-loader": "^1.3.0",
87
76
  "svgo-loader": "^4.0.0",
77
+ "terser-webpack-plugin": "^5.6.1",
78
+ "vite": "^7.3.7",
88
79
  "webpack": "^5.70.0",
89
80
  "webpack-cli": "^4.9.2"
90
81
  },
@@ -106,7 +97,6 @@
106
97
  "url": "https://github.com/MeasureAuthoringTool/madie-design-system/issues"
107
98
  },
108
99
  "dependencies": {
109
- "@cmsgov/design-system": "^5.0.2",
110
100
  "@emotion/react": "^11.8.2",
111
101
  "@emotion/styled": "^11.8.1",
112
102
  "@mui/icons-material": "^6.1.0",
@@ -144,8 +134,7 @@
144
134
  "retry": "^0.13.1",
145
135
  "styled-components": "^5.3.7",
146
136
  "svgo": "^3.3.4",
147
- "tailwindcss": "^3.4.10",
148
- "twin.macro": "^3.4.0",
137
+ "tailwindcss": "^4.3.3",
149
138
  "what-input": "^5.2.10",
150
139
  "xss": "^1.0.10",
151
140
  "yaml": "^2.9.0"
@@ -162,6 +151,7 @@
162
151
  "glob-parent": "^6.0.1",
163
152
  "semver": "^7.5.3",
164
153
  "optionator": "0.9.3",
154
+ "webpack-dev-middleware": "^7.4.5",
165
155
  "@cmsgov/design-system": {
166
156
  "inquirer": {
167
157
  "external-editor": {
package/styles/_main.scss CHANGED
@@ -1,11 +1,5 @@
1
1
  @charset "utf-8";
2
2
 
3
- // TODO: Remove @cmsgov/design-system dependancies from shared package
4
- $font-path: "~@cmsgov/design-system/dist/fonts";
5
- $image-path: "~@cmsgov/design-system/dist/images";
6
-
7
- @import "@cmsgov/design-system/dist/scss/index";
8
-
9
3
  @import "paths";
10
4
 
11
5
  @import "third-party/legacy-bootstrap";
@@ -15,6 +15,7 @@ const TestTableWrapper = ({
15
15
  handleSort = jest.fn(),
16
16
  renderExpandedRow,
17
17
  emptyMessage,
18
+ ariaLabel,
18
19
  }) => {
19
20
  const table = useReactTable({
20
21
  data,
@@ -30,6 +31,7 @@ const TestTableWrapper = ({
30
31
  handleSort={handleSort}
31
32
  renderExpandedRow={renderExpandedRow}
32
33
  emptyMessage={emptyMessage}
34
+ ariaLabel={ariaLabel}
33
35
  />
34
36
  );
35
37
  };
@@ -188,4 +190,40 @@ it("renders descending sort icon when currentSort is DESC", () => {
188
190
  ).toBeInTheDocument();
189
191
  });
190
192
 
193
+ it("exposes sort state through aria-sort on the column header", () => {
194
+ render(
195
+ <TestTableWrapper
196
+ data={data}
197
+ columns={columns}
198
+ currentSort="name"
199
+ currentDirection="ASC"
200
+ />
201
+ );
202
+ expect(
203
+ screen.getByRole("columnheader", { name: /measure name/i })
204
+ ).toHaveAttribute("aria-sort", "ascending");
205
+ });
206
+
207
+ it("marks unsorted sortable headers with aria-sort none", () => {
208
+ render(<TestTableWrapper data={data} columns={columns} />);
209
+ expect(
210
+ screen.getByRole("columnheader", { name: /measure name/i })
211
+ ).toHaveAttribute("aria-sort", "none");
212
+ });
213
+
214
+ it("makes sortable headers keyboard focusable and shows the sort affordance on focus", () => {
215
+ render(<TestTableWrapper data={data} columns={columns} />);
216
+ const button = screen.getByRole("button", { name: /measure name/i });
217
+ button.focus();
218
+ expect(button).toHaveFocus();
219
+ expect(screen.getByTestId("unfold-more-icon")).toBeInTheDocument();
220
+ });
221
+
222
+ it("applies an accessible name to the table", () => {
223
+ render(
224
+ <TestTableWrapper data={data} columns={columns} ariaLabel="Measures" />
225
+ );
226
+ expect(screen.getByRole("table", { name: "Measures" })).toBeInTheDocument();
227
+ });
228
+
191
229
  });
@@ -9,6 +9,62 @@ describe("Pagination", () => {
9
9
  const { getByTestId } = render(<Pagination />);
10
10
  expect(getByTestId("NavigateNextIcon")).toBeInTheDocument();
11
11
  });
12
+ it("provides an accessible name for the items per page select", () => {
13
+ const { getByRole } = render(
14
+ <Pagination
15
+ totalItems={30}
16
+ visibleItems={10}
17
+ count={3}
18
+ offset={0}
19
+ page={1}
20
+ limit={10}
21
+ />
22
+ );
23
+
24
+ const limitSelect = getByRole("combobox", {
25
+ name: /items per page/i,
26
+ });
27
+
28
+ expect(limitSelect).toHaveTextContent("10");
29
+ expect(limitSelect).toHaveAttribute(
30
+ "aria-labelledby",
31
+ "items-per-page pagination-limit-select"
32
+ );
33
+ expect(limitSelect).toHaveAttribute(
34
+ "aria-describedby",
35
+ "offset-of-total-items"
36
+ );
37
+ expect(limitSelect).toHaveAttribute("aria-haspopup", "listbox");
38
+ expect(limitSelect).toHaveAttribute("aria-expanded", "false");
39
+ expect(limitSelect).toHaveAttribute("tabindex", "0");
40
+ });
41
+ it("labels pagination controls accessibly", () => {
42
+ const { getByRole } = render(
43
+ <Pagination
44
+ count={3}
45
+ page={2}
46
+ hidePrevButton={false}
47
+ hideNextButton={false}
48
+ />
49
+ );
50
+
51
+ expect(
52
+ getByRole("navigation", { name: "pagination navigation" })
53
+ ).toBeInTheDocument();
54
+ expect(
55
+ getByRole("button", { name: "Go to previous page" })
56
+ ).toBeInTheDocument();
57
+ expect(
58
+ getByRole("button", { name: "Go to next page" })
59
+ ).toBeInTheDocument();
60
+ expect(
61
+ getByRole("button", { name: "Go to page 1" })
62
+ ).toBeInTheDocument();
63
+ expect(getByRole("button", { name: "page 2" })).toHaveAttribute(
64
+ "aria-current",
65
+ "page"
66
+ );
67
+ });
12
68
  it("renders the next button when more pages are available", () => {
13
69
  const { getByTestId } = render(
14
70
  <Pagination
@@ -0,0 +1,38 @@
1
+ import React from "react";
2
+ import { render, screen } from "@testing-library/react";
3
+ import userEvent from "@testing-library/user-event";
4
+ import { TruncateText } from "../../components";
5
+
6
+ describe("TruncateText", () => {
7
+ const longText = "This is a long description that should be truncated";
8
+
9
+ it("renders full text without a toggle when within the limit", () => {
10
+ render(<TruncateText text="short" maxLength={10} dataTestId="t" />);
11
+ expect(screen.getByText("short")).toBeInTheDocument();
12
+ expect(screen.queryByRole("button")).not.toBeInTheDocument();
13
+ });
14
+
15
+ it("is reachable by keyboard and toggles with Enter", () => {
16
+ render(<TruncateText text={longText} maxLength={5} dataTestId="t" />);
17
+ userEvent.tab();
18
+ const button = screen.getByRole("button", { name: "Show more" });
19
+ expect(button).toHaveFocus();
20
+ expect(button).toHaveAttribute("type", "button");
21
+ expect(button).toHaveAttribute("aria-expanded", "false");
22
+ userEvent.keyboard("{enter}");
23
+ expect(screen.getByText(longText)).toBeInTheDocument();
24
+ expect(screen.getByRole("button", { name: "Show less" })).toHaveAttribute(
25
+ "aria-expanded",
26
+ "true"
27
+ );
28
+ });
29
+
30
+ it("links the toggle to the text it controls", () => {
31
+ render(<TruncateText text={longText} maxLength={5} dataTestId="t" />);
32
+ const button = screen.getByRole("button");
33
+ const target = document.getElementById(
34
+ button.getAttribute("aria-controls")
35
+ );
36
+ expect(target).toHaveTextContent("This");
37
+ });
38
+ });
@@ -1,61 +0,0 @@
1
- module.exports = {
2
- stories: [
3
- "../components/**/*.@(mdx|stories.@(js|jsx))",
4
- "../lib/**/*.@(mdx|stories.@(js|jsx))"
5
- ],
6
-
7
- addons: [
8
- "@storybook/addon-actions",
9
- "@storybook/addon-links",
10
- "@storybook/addon-storysource",
11
- "@storybook/addon-knobs",
12
- "@storybook/addon-a11y",
13
- "@storybook/addon-docs",
14
- "@storybook/addon-backgrounds",
15
- "@storybook/addon-viewport",
16
- "@storybook/addon-webpack5-compiler-babel"
17
- ],
18
-
19
- webpackFinal: async (config) => {
20
- // do mutation to the config
21
-
22
- config.module.rules.push({
23
- test: /\.scss$/,
24
- resolve: {
25
- extensions: [".scss", ".sass"],
26
- },
27
- use: [
28
- { loader: "style-loader" },
29
- {
30
- loader: "css-loader",
31
- options: { sourceMap: true, importLoaders: 1 },
32
- },
33
- {
34
- loader: "sass-loader",
35
- options: {
36
- sourceMap: true,
37
- },
38
- },
39
- ],
40
- });
41
- // the below lines add hot reload, but somehow put CI/CD into a hanging state
42
- // config.watchOptions = {
43
- // aggregateTimeout: 300, // Delay before rebuilding after the first change
44
- // poll: 1000, // Check for changes every second
45
- // ignored: /node_modules/, // Ignore node_modules to improve performance
46
- // };
47
-
48
- return config;
49
- },
50
-
51
- framework: {
52
- name: "@storybook/react-webpack5",
53
- options: {}
54
- },
55
-
56
- docs: {},
57
-
58
- typescript: {
59
- reactDocgen: "react-docgen-typescript"
60
- }
61
- };
@@ -1,9 +0,0 @@
1
- import React from "react";
2
- import { render } from "react-dom";
3
- import DSSpinner from "@cmsgov/design-system/dist/components/Spinner/Spinner";
4
-
5
- export default class Spinner {
6
- constructor(options) {
7
- render(<DSSpinner />, options.rootElement);
8
- }
9
- }
@@ -1,8 +0,0 @@
1
- import React, { Component } from "react";
2
- import DSSpinner from "@cmsgov/design-system/dist/components/Spinner/Spinner";
3
-
4
- export default class SpinnerUI extends Component {
5
- render() {
6
- return <DSSpinner />;
7
- }
8
- }
@@ -1 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" xmlns:svgjs="http://svgjs.com/svgjs" xmlns:xlink="http://www.w3.org/1999/xlink" width="164" height="164" version="1.1"><svg xmlns="http://www.w3.org/2000/svg" width="164" height="164" fill="none" viewBox="0 0 164 164"><path fill="#FF4785" d="M22.467 147.762 17.5 15.402a8.062 8.062 0 0 1 7.553-8.35L137.637.016a8.061 8.061 0 0 1 8.565 8.047v144.23a8.063 8.063 0 0 1-8.424 8.054l-107.615-4.833a8.062 8.062 0 0 1-7.695-7.752Z"/><path fill="#fff" fill-rule="evenodd" d="m128.785.57-15.495.968-.755 18.172a1.203 1.203 0 0 0 1.928 1.008l7.06-5.354 5.962 4.697a1.202 1.202 0 0 0 1.946-.987L128.785.569Zm-12.059 60.856c-2.836 2.203-23.965 3.707-23.965.57.447-11.969-4.912-12.494-7.889-12.494-2.828 0-7.59.855-7.59 7.267 0 6.534 6.96 10.223 15.13 14.553 11.607 6.15 25.654 13.594 25.654 32.326 0 17.953-14.588 27.871-33.194 27.871-19.201 0-35.981-7.769-34.086-34.702.744-3.163 25.156-2.411 25.156 0-.298 11.114 2.232 14.383 8.633 14.383 4.912 0 7.144-2.708 7.144-7.267 0-6.9-7.252-10.973-15.595-15.657C64.827 81.933 51.53 74.468 51.53 57.34c0-17.098 11.76-28.497 32.747-28.497 20.988 0 32.449 11.224 32.449 32.584Z" clip-rule="evenodd"/></svg><style>@media (prefers-color-scheme:light){:root{filter:none}}</style></svg>
@@ -1,169 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="utf-8" />
5
-
6
- <title>@storybook/core - Storybook</title>
7
- <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
8
-
9
-
10
- <link rel="icon" type="image/svg+xml" href="./favicon.svg" />
11
-
12
- <style>
13
- @font-face {
14
- font-family: 'Nunito Sans';
15
- font-style: normal;
16
- font-weight: 400;
17
- font-display: swap;
18
- src: url('./sb-common-assets/nunito-sans-regular.woff2') format('woff2');
19
- }
20
-
21
- @font-face {
22
- font-family: 'Nunito Sans';
23
- font-style: italic;
24
- font-weight: 400;
25
- font-display: swap;
26
- src: url('./sb-common-assets/nunito-sans-italic.woff2') format('woff2');
27
- }
28
-
29
- @font-face {
30
- font-family: 'Nunito Sans';
31
- font-style: normal;
32
- font-weight: 700;
33
- font-display: swap;
34
- src: url('./sb-common-assets/nunito-sans-bold.woff2') format('woff2');
35
- }
36
-
37
- @font-face {
38
- font-family: 'Nunito Sans';
39
- font-style: italic;
40
- font-weight: 700;
41
- font-display: swap;
42
- src: url('./sb-common-assets/nunito-sans-bold-italic.woff2') format('woff2');
43
- }
44
- </style>
45
-
46
- <link href="./sb-manager/runtime.js" rel="modulepreload" />
47
-
48
-
49
- <link href="./sb-addons/storybook-core-core-server-presets-0/common-manager-bundle.js" rel="modulepreload" />
50
-
51
- <link href="./sb-addons/actions-1/manager-bundle.js" rel="modulepreload" />
52
-
53
- <link href="./sb-addons/links-2/manager-bundle.js" rel="modulepreload" />
54
-
55
- <link href="./sb-addons/storysource-3/manager-bundle.js" rel="modulepreload" />
56
-
57
- <link href="./sb-addons/knobs-4/register-bundle.js" rel="modulepreload" />
58
-
59
- <link href="./sb-addons/a11y-5/manager-bundle.js" rel="modulepreload" />
60
-
61
- <link href="./sb-addons/docs-6/manager-bundle.js" rel="modulepreload" />
62
-
63
- <link href="./sb-addons/backgrounds-7/manager-bundle.js" rel="modulepreload" />
64
-
65
- <link href="./sb-addons/viewport-8/manager-bundle.js" rel="modulepreload" />
66
-
67
-
68
- <style>
69
- #storybook-root[hidden] {
70
- display: none !important;
71
- }
72
- </style>
73
-
74
-
75
- </head>
76
- <body>
77
- <div id="root"></div>
78
-
79
-
80
- <script>
81
-
82
-
83
- window['FEATURES'] = {
84
- "argTypeTargetsV7": true,
85
- "legacyDecoratorFileOrder": false,
86
- "disallowImplicitActionsInRenderV8": true
87
- };
88
-
89
-
90
-
91
- window['REFS'] = {};
92
-
93
-
94
-
95
- window['LOGLEVEL'] = "info";
96
-
97
-
98
-
99
- window['DOCS_OPTIONS'] = {
100
- "defaultName": "Docs",
101
- "autodocs": "tag"
102
- };
103
-
104
-
105
-
106
- window['CONFIG_TYPE'] = "PRODUCTION";
107
-
108
-
109
-
110
-
111
-
112
-
113
-
114
- window['TAGS_OPTIONS'] = {
115
- "dev-only": {
116
- "excludeFromDocsStories": true
117
- },
118
- "docs-only": {
119
- "excludeFromSidebar": true
120
- },
121
- "test-only": {
122
- "excludeFromSidebar": true,
123
- "excludeFromDocsStories": true
124
- }
125
- };
126
-
127
-
128
-
129
- window['STORYBOOK_RENDERER'] = "react";
130
-
131
-
132
-
133
- window['STORYBOOK_BUILDER'] = "@storybook/builder-webpack5";
134
-
135
-
136
-
137
- window['STORYBOOK_FRAMEWORK'] = "@storybook/react-webpack5";
138
-
139
-
140
- </script>
141
-
142
-
143
- <script type="module">
144
- import './sb-manager/globals-runtime.js';
145
-
146
-
147
- import './sb-addons/storybook-core-core-server-presets-0/common-manager-bundle.js';
148
-
149
- import './sb-addons/actions-1/manager-bundle.js';
150
-
151
- import './sb-addons/links-2/manager-bundle.js';
152
-
153
- import './sb-addons/storysource-3/manager-bundle.js';
154
-
155
- import './sb-addons/knobs-4/register-bundle.js';
156
-
157
- import './sb-addons/a11y-5/manager-bundle.js';
158
-
159
- import './sb-addons/docs-6/manager-bundle.js';
160
-
161
- import './sb-addons/backgrounds-7/manager-bundle.js';
162
-
163
- import './sb-addons/viewport-8/manager-bundle.js';
164
-
165
-
166
- import './sb-manager/runtime.js';
167
- </script>
168
- </body>
169
- </html>