@portnet/ui 4.0.0 → 4.0.1

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.
@@ -73,7 +73,11 @@ const getPuiSectionStyles = theme => {
73
73
  border: "2px solid ".concat(_apperance.palette.gray.dark),
74
74
  borderRadius: "5px",
75
75
  boxShadow: "0px 2px 1px -1px rgb(0 0 0 / 20%), 0px 1px 1px 0px rgb(0 0 0 / 14%), 0px 1px 3px 0px rgb(0 0 0 / 12%)",
76
- titleColor: _apperance.palette.primary
76
+ titleColor: _apperance.palette.primary,
77
+ titleFontFamily: "'Poppins', sans-serif",
78
+ titleFontWeight: "400",
79
+ titleFontSize: "1.1rem",
80
+ titlePosition: "16px"
77
81
  };
78
82
  };
79
83
  const StyledMuiPaper = (0, _styles.styled)(/*#__PURE__*/React.forwardRef((props, ref) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Paper, _objectSpread({
@@ -103,46 +107,36 @@ const PuiSection = /*#__PURE__*/React.forwardRef((_ref, ref) => {
103
107
  id: id,
104
108
  className: className,
105
109
  sx: _objectSpread({
106
- padding: 2
110
+ paddingX: 3,
111
+ paddingY: 2,
112
+ paddingTop: title ? 6 : 2
107
113
  }, sx),
108
114
  ref: ref,
109
115
  elevation: 1,
110
- children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {
111
- sx: {
112
- position: "absolute",
113
- top: "-1px",
114
- left: "30px",
115
- transform: "translate(0,-50%)"
116
+ children: [Boolean(title) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
117
+ sx: theme => {
118
+ const sectionStyles = getPuiSectionStyles(theme);
119
+ return {
120
+ position: "absolute",
121
+ top: sectionStyles.titlePosition || "16px",
122
+ left: "24px"
123
+ };
116
124
  },
117
- children: [Boolean(title) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
118
- sx: theme => {
119
- const themePalette = getPalette(theme);
120
- return {
121
- transform: "translateY(-50%)",
122
- top: "50%",
123
- zIndex: "-1",
124
- position: "absolute",
125
- width: "100%",
126
- height: "4px",
127
- backgroundColor: themePalette.gray.light
128
- };
129
- }
130
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {
125
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {
131
126
  variant: titleVariant,
132
127
  sx: theme => {
133
128
  const sectionStyles = getPuiSectionStyles(theme);
134
- const themePalette = getPalette(theme);
135
129
  return {
136
- textAlign: "center",
137
- paddingX: 1,
138
- fontWeight: "600",
139
- lineSpacing: "-0.03em",
140
- color: sectionStyles.titleColor || themePalette.primary,
141
- fontSize: "1.2rem"
130
+ textAlign: "left",
131
+ fontWeight: sectionStyles.titleFontWeight || "400",
132
+ fontFamily: sectionStyles.titleFontFamily || "'Poppins', sans-serif",
133
+ color: sectionStyles.titleColor || "#202224",
134
+ fontSize: sectionStyles.titleFontSize || "1.1rem",
135
+ lineHeight: "1.5"
142
136
  };
143
137
  },
144
138
  children: title
145
- })]
139
+ })
146
140
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
147
141
  children: children
148
142
  })]
@@ -145,12 +145,13 @@ const StyledMuiTable = (0, _styles.styled)(/*#__PURE__*/React.forwardRef((props,
145
145
  },
146
146
  "& .MuiLinearProgress-root": {
147
147
  zIndex: 1,
148
- backgroundColor: themePalette.info,
148
+ backgroundColor: "#f4f9fa !important",
149
149
  "& .MuiLinearProgress-bar": {
150
150
  backgroundColor: themePalette.primary
151
151
  }
152
152
  },
153
153
  "& .MuiDataGrid-columnHeaders": {
154
+ backgroundColor: "#F1F4F9 !important",
154
155
  "& .MuiDataGrid-columnHeader": {
155
156
  "& .MuiDataGrid-columnHeaderTitle": {
156
157
  display: "flex",
@@ -172,40 +173,45 @@ const StyledMuiTable = (0, _styles.styled)(/*#__PURE__*/React.forwardRef((props,
172
173
  }
173
174
  },
174
175
  "& .MuiDataGrid-columnSeparator": {
175
- color: themePalette.gray.dark
176
+ display: "none !important"
176
177
  }
177
178
  },
178
179
  "& .MuiDataGrid-cell": {
179
- paddingTop: "2px",
180
- paddingBottom: "2px",
180
+ padding: "8px",
181
+ display: "flex",
182
+ alignItems: "center",
181
183
  whiteSpace: "normal",
182
- textOverflow: "ellipsis",
184
+ wordWrap: "break-word",
185
+ lineHeight: "1.4 !important",
183
186
  overflow: "hidden",
184
- maxHeight: "".concat(tableStyles.rowHeight.maxHeight, " !important"),
185
- minWidth: 'maxWidth',
186
- wordBreak: "break-word",
187
187
  justifyContent: "".concat(tableStyles.cellJustifyContent, " !important"),
188
188
  "&.tableAction": {
189
189
  justifyContent: "center !important",
190
190
  position: "relative",
191
- overflow: "initial !important"
191
+ overflow: "initial !important",
192
+ "& .MuiIconButton-root": {
193
+ opacity: 0,
194
+ transition: "opacity 0.2s ease-in-out"
195
+ }
192
196
  },
193
197
  "&:focus-within": {
194
198
  outline: "none"
195
199
  }
196
200
  },
197
201
  "& .MuiDataGrid-row": {
198
- maxHeight: "".concat(tableStyles.rowHeight.maxHeight, " !important"),
199
- minHeight: "".concat(tableStyles.rowHeight.minHeight, " !important"),
200
- lineHeight: "".concat(tableStyles.rowHeight.lineHeight, " !important"),
201
202
  "&:nth-of-type(odd)": {
202
- backgroundColor: "#ffffff"
203
+ backgroundColor: "#ffffff !important"
203
204
  },
204
205
  "&:nth-of-type(even)": {
205
- backgroundColor: "#F6F9FF"
206
+ backgroundColor: "#f4f9fa !important"
206
207
  },
207
208
  "&:hover": {
208
- backgroundColor: "#95C7FC"
209
+ backgroundColor: "#e8f1f5 !important",
210
+ "& .tableAction": {
211
+ "& .MuiIconButton-root": {
212
+ opacity: 1
213
+ }
214
+ }
209
215
  }
210
216
  },
211
217
  "& .MuiDataGrid-virtualScrollerContent": {
@@ -453,13 +459,12 @@ const PuiTable = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
453
459
  className: "".concat(className, " ").concat(stripped ? "table-stripped" : "", " ").concat(loading ? "table-loading" : "", " ").concat(elevate ? "elevate" : ""),
454
460
  sx: {
455
461
  ["& .".concat(_xDataGrid.gridClasses.cell)]: {
456
- py: 0.5
462
+ py: 1
457
463
  }
458
464
  },
459
465
  autoHeight: true,
460
466
  headerHeight: 60,
461
467
  footerHeight: 40,
462
- rowHeight: 40,
463
468
  rows: rows,
464
469
  rowCount: rowCount,
465
470
  columns: appColumns,
@@ -8,6 +8,7 @@ Object.defineProperty(exports, "__esModule", {
8
8
  });
9
9
  exports.default = void 0;
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _styles = require("@mui/material/styles");
11
12
  var _PuiIconButton = _interopRequireDefault(require("../buttons/PuiIconButton"));
12
13
  var _jsxRuntime = require("react/jsx-runtime");
13
14
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
@@ -15,7 +16,14 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
15
16
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16
17
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
17
18
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
18
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
19
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } // Helper function to get PuiTableAction color from theme
20
+ const getPuiTableActionColor = theme => {
21
+ if (theme && theme.components && theme.components.PuiTableAction && theme.components.PuiTableAction.color) {
22
+ return theme.components.PuiTableAction.color;
23
+ }
24
+ // Fallback to default color
25
+ return "#1e498c";
26
+ };
19
27
  const PuiTableAction = _ref => {
20
28
  let {
21
29
  id,
@@ -29,6 +37,8 @@ const PuiTableAction = _ref => {
29
37
  onClick: _onClick,
30
38
  children
31
39
  } = _ref;
40
+ const theme = (0, _styles.useTheme)();
41
+ const actionColor = getPuiTableActionColor(theme);
32
42
  return hide || hideFunc(row) ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiIconButton.default, {
33
43
  id: id,
34
44
  className: className,
@@ -36,7 +46,7 @@ const PuiTableAction = _ref => {
36
46
  "& .MuiSvgIcon-root": {
37
47
  width: ".75em !important",
38
48
  height: ".75em !important",
39
- color: "#1e498c"
49
+ color: actionColor
40
50
  }
41
51
  }),
42
52
  title: title,
@@ -73,6 +73,30 @@ const getPuiMainTitleColor = theme => {
73
73
  const themePalette = getPalette(theme);
74
74
  return themePalette.primary;
75
75
  };
76
+
77
+ // Helper function to get PuiMainTitle font family from theme
78
+ const getPuiMainTitleFontFamily = theme => {
79
+ if (theme && theme.components && theme.components.PuiMainTitle && theme.components.PuiMainTitle.fontFamily) {
80
+ return theme.components.PuiMainTitle.fontFamily;
81
+ }
82
+ return "'Poppins', sans-serif";
83
+ };
84
+
85
+ // Helper function to get PuiMainTitle font weight from theme
86
+ const getPuiMainTitleFontWeight = theme => {
87
+ if (theme && theme.components && theme.components.PuiMainTitle && theme.components.PuiMainTitle.fontWeight) {
88
+ return theme.components.PuiMainTitle.fontWeight;
89
+ }
90
+ return "bold";
91
+ };
92
+
93
+ // Helper function to check if icon should be shown
94
+ const getPuiMainTitleShowIcon = theme => {
95
+ if (theme && theme.components && theme.components.PuiMainTitle && typeof theme.components.PuiMainTitle.showIcon !== 'undefined') {
96
+ return theme.components.PuiMainTitle.showIcon;
97
+ }
98
+ return true;
99
+ };
76
100
  const PuiMainTitle = _ref => {
77
101
  let {
78
102
  id,
@@ -84,53 +108,65 @@ const PuiMainTitle = _ref => {
84
108
  } = _ref;
85
109
  const theme = (0, _styles.useTheme)();
86
110
  const mainTitleColor = getPuiMainTitleColor(theme);
87
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {
111
+ const mainTitleFontFamily = getPuiMainTitleFontFamily(theme);
112
+ const mainTitleFontWeight = getPuiMainTitleFontWeight(theme);
113
+ const showIcon = getPuiMainTitleShowIcon(theme);
114
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
88
115
  id: id,
89
116
  className: className,
90
117
  sx: _objectSpread({
91
118
  display: "flex",
92
- alignItems: "center",
93
- marginBottom: 2
119
+ flexDirection: "column",
120
+ marginBottom: 3.5
94
121
  }, sx),
95
- children: [Boolean(icon) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
96
- children: /*#__PURE__*/React.cloneElement(icon, {
97
- sx: {
98
- marginRight: 1,
99
- fontSize: "2.4em",
100
- color: mainTitleColor
101
- }
102
- })
103
- }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {
104
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {
105
- sx: {
106
- color: mainTitleColor,
107
- fontSize: "1.8rem",
108
- fontWeight: "bold"
109
- },
110
- variant: "h1",
111
- children: title
112
- }), Boolean(trace) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {
113
- sx: {
114
- color: mainTitleColor,
115
- fontSize: ".8rem",
116
- fontWeight: "bold"
117
- },
118
- variant: "h2",
119
- children: trace.map((element, index) => {
120
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
121
- component: "span",
122
- children: "".concat(element).concat(index + 1 !== trace.length ? " > " : "")
123
- }, index);
122
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {
123
+ sx: {
124
+ display: "flex",
125
+ alignItems: "center"
126
+ },
127
+ children: [Boolean(icon) && showIcon && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
128
+ children: /*#__PURE__*/React.cloneElement(icon, {
129
+ sx: {
130
+ marginRight: 1,
131
+ fontSize: "2.4em",
132
+ color: mainTitleColor
133
+ }
124
134
  })
135
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {
136
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {
137
+ sx: {
138
+ color: mainTitleColor,
139
+ fontSize: "1.8rem",
140
+ fontWeight: mainTitleFontWeight,
141
+ fontFamily: mainTitleFontFamily,
142
+ marginBottom: 0.5
143
+ },
144
+ variant: "h1",
145
+ children: title
146
+ }), Boolean(trace) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {
147
+ sx: {
148
+ color: mainTitleColor,
149
+ fontSize: ".8rem",
150
+ fontWeight: mainTitleFontWeight,
151
+ fontFamily: mainTitleFontFamily
152
+ },
153
+ variant: "h2",
154
+ children: trace.map((element, index) => {
155
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
156
+ component: "span",
157
+ children: "".concat(element).concat(index + 1 !== trace.length ? " > " : "")
158
+ }, index);
159
+ })
160
+ })]
125
161
  })]
126
- })]
162
+ })
127
163
  });
128
164
  };
129
165
  PuiMainTitle.propTypes = {
130
166
  id: _propTypes.default.string,
131
167
  className: _propTypes.default.string,
132
168
  sx: _propTypes.default.object,
133
- icon: _propTypes.default.element.isRequired,
169
+ icon: _propTypes.default.element,
134
170
  trace: _propTypes.default.arrayOf(_propTypes.default.string),
135
171
  title: _propTypes.default.string.isRequired
136
172
  };
@@ -90,12 +90,12 @@ const PuiSearchPage = _ref2 => {
90
90
  alignItems: "center",
91
91
  cursor: collapsibleSearchSection ? "pointer" : "default"
92
92
  },
93
- children: [collapsibleSearchSection && (isSearchSectionExpanded ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandLess.default, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandMore.default, {})), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
93
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
94
94
  style: {
95
- marginLeft: collapsibleSearchSection ? "8px" : "0px"
95
+ marginRight: collapsibleSearchSection ? "8px" : "0px"
96
96
  },
97
97
  children: "Param\xE8tres de recherche"
98
- })]
98
+ }), collapsibleSearchSection && (isSearchSectionExpanded ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandLess.default, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandMore.default, {}))]
99
99
  }),
100
100
  sx: {
101
101
  marginBottom: 2
package/package.json CHANGED
@@ -1,105 +1,105 @@
1
- {
2
- "name": "@portnet/ui",
3
- "version": "4.0.0",
4
- "description": "Portnet UI",
5
- "keywords": [
6
- "react",
7
- "components",
8
- "ui"
9
- ],
10
- "main": "dist/index.js",
11
- "private": false,
12
- "files": [
13
- "dist",
14
- "README.md"
15
- ],
16
- "dependencies": {
17
- "@emotion/react": "^11.10.5",
18
- "@emotion/styled": "^11.10.5",
19
- "@mui/icons-material": "^5.10.16",
20
- "@mui/lab": "^5.0.0-alpha.60",
21
- "@mui/material": "^5.10.16",
22
- "@mui/x-data-grid": "^5.17.26",
23
- "@mui/x-data-grid-pro": "^5.17.26",
24
- "@mui/x-date-pickers": "^7.26.0",
25
- "@testing-library/jest-dom": "^5.16.5",
26
- "@testing-library/react": "^13.4.0",
27
- "@testing-library/user-event": "^13.5.0",
28
- "ajv": "^8.17.1",
29
- "ajv-keywords": "^5.1.0",
30
- "axios": "^0.27.2",
31
- "dayjs": "^1.11.13",
32
- "formik": "^2.2.9",
33
- "lodash": "^4.17.21",
34
- "moment": "^2.29.4",
35
- "moment-timezone": "^0.5.45",
36
- "react": "^18.2.0",
37
- "react-dom": "^18.2.0",
38
- "react-scripts": "^5.0.1",
39
- "react-transition-group": "^4.4.5",
40
- "styled-components": "^6.1.3",
41
- "uuid": "^9.0.0",
42
- "web-vitals": "^2.1.4",
43
- "yup": "^0.32.11"
44
- },
45
- "peerDependencies": {
46
- "react-router-dom": "^6.0.0"
47
- },
48
- "scripts": {
49
- "start": "react-scripts start",
50
- "build": "rimraf dist && cross-env NODE_ENV=production babel src/lib --out-dir dist --copy-files",
51
- "test": "react-scripts test",
52
- "eject": "react-scripts eject",
53
- "storybook": "storybook dev -p 6006 -s public",
54
- "build-storybook": "storybook build -s public"
55
- },
56
- "eslintConfig": {
57
- "extends": [
58
- "react-app",
59
- "react-app/jest"
60
- ],
61
- "overrides": [
62
- {
63
- "files": [
64
- "**/*.stories.*"
65
- ],
66
- "rules": {
67
- "import/no-anonymous-default-export": "off"
68
- }
69
- }
70
- ]
71
- },
72
- "browserslist": {
73
- "production": [
74
- ">0.2%",
75
- "not dead",
76
- "not op_mini all"
77
- ],
78
- "development": [
79
- "last 1 chrome version",
80
- "last 1 firefox version",
81
- "last 1 safari version"
82
- ]
83
- },
84
- "devDependencies": {
85
- "@babel/cli": "^7.19.3",
86
- "@babel/core": "^7.20.5",
87
- "@babel/preset-env": "^7.20.2",
88
- "@babel/preset-react": "^7.18.6",
89
- "@storybook/addon-actions": "^7.6.4",
90
- "@storybook/addon-essentials": "^7.6.4",
91
- "@storybook/addon-interactions": "^7.6.4",
92
- "@storybook/addon-links": "^7.6.4",
93
- "@storybook/node-logger": "^7.6.4",
94
- "@storybook/preset-create-react-app": "^7.6.4",
95
- "@storybook/react": "^7.6.4",
96
- "@storybook/react-webpack5": "^7.6.4",
97
- "@storybook/testing-library": "^0.2.2",
98
- "cross-env": "^7.0.3",
99
- "husky": "^4.3.8",
100
- "prop-types": "^15.8.1",
101
- "rimraf": "^5.0.5",
102
- "storybook": "^7.6.4",
103
- "webpack": "^5.75.0"
104
- }
105
- }
1
+ {
2
+ "name": "@portnet/ui",
3
+ "version": "4.0.1",
4
+ "description": "Portnet UI",
5
+ "keywords": [
6
+ "react",
7
+ "components",
8
+ "ui"
9
+ ],
10
+ "main": "dist/index.js",
11
+ "private": false,
12
+ "files": [
13
+ "dist",
14
+ "README.md"
15
+ ],
16
+ "dependencies": {
17
+ "@emotion/react": "^11.10.5",
18
+ "@emotion/styled": "^11.10.5",
19
+ "@mui/icons-material": "^5.10.16",
20
+ "@mui/lab": "^5.0.0-alpha.60",
21
+ "@mui/material": "^5.10.16",
22
+ "@mui/x-data-grid": "^5.17.26",
23
+ "@mui/x-data-grid-pro": "^5.17.26",
24
+ "@mui/x-date-pickers": "^7.26.0",
25
+ "@testing-library/jest-dom": "^5.16.5",
26
+ "@testing-library/react": "^13.4.0",
27
+ "@testing-library/user-event": "^13.5.0",
28
+ "ajv": "^8.17.1",
29
+ "ajv-keywords": "^5.1.0",
30
+ "axios": "^0.27.2",
31
+ "dayjs": "^1.11.13",
32
+ "formik": "^2.2.9",
33
+ "lodash": "^4.17.21",
34
+ "moment": "^2.29.4",
35
+ "moment-timezone": "^0.5.45",
36
+ "react": "^18.2.0",
37
+ "react-dom": "^18.2.0",
38
+ "react-scripts": "^5.0.1",
39
+ "react-transition-group": "^4.4.5",
40
+ "styled-components": "^6.1.3",
41
+ "uuid": "^9.0.0",
42
+ "web-vitals": "^2.1.4",
43
+ "yup": "^0.32.11"
44
+ },
45
+ "peerDependencies": {
46
+ "react-router-dom": "^6.0.0"
47
+ },
48
+ "scripts": {
49
+ "start": "react-scripts start",
50
+ "build": "rimraf dist && cross-env NODE_ENV=production babel src/lib --out-dir dist --copy-files",
51
+ "test": "react-scripts test",
52
+ "eject": "react-scripts eject",
53
+ "storybook": "storybook dev -p 6006 -s public",
54
+ "build-storybook": "storybook build -s public"
55
+ },
56
+ "eslintConfig": {
57
+ "extends": [
58
+ "react-app",
59
+ "react-app/jest"
60
+ ],
61
+ "overrides": [
62
+ {
63
+ "files": [
64
+ "**/*.stories.*"
65
+ ],
66
+ "rules": {
67
+ "import/no-anonymous-default-export": "off"
68
+ }
69
+ }
70
+ ]
71
+ },
72
+ "browserslist": {
73
+ "production": [
74
+ ">0.2%",
75
+ "not dead",
76
+ "not op_mini all"
77
+ ],
78
+ "development": [
79
+ "last 1 chrome version",
80
+ "last 1 firefox version",
81
+ "last 1 safari version"
82
+ ]
83
+ },
84
+ "devDependencies": {
85
+ "@babel/cli": "^7.19.3",
86
+ "@babel/core": "^7.20.5",
87
+ "@babel/preset-env": "^7.20.2",
88
+ "@babel/preset-react": "^7.18.6",
89
+ "@storybook/addon-actions": "^7.6.4",
90
+ "@storybook/addon-essentials": "^7.6.4",
91
+ "@storybook/addon-interactions": "^7.6.4",
92
+ "@storybook/addon-links": "^7.6.4",
93
+ "@storybook/node-logger": "^7.6.4",
94
+ "@storybook/preset-create-react-app": "^7.6.4",
95
+ "@storybook/react": "^7.6.4",
96
+ "@storybook/react-webpack5": "^7.6.4",
97
+ "@storybook/testing-library": "^0.2.2",
98
+ "cross-env": "^7.0.3",
99
+ "husky": "^4.3.8",
100
+ "prop-types": "^15.8.1",
101
+ "rimraf": "^5.0.5",
102
+ "storybook": "^7.6.4",
103
+ "webpack": "^5.75.0"
104
+ }
105
+ }