@mui/utils 5.7.0 → 5.8.6

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 (55) hide show
  1. package/CHANGELOG.md +491 -12
  2. package/ClassNameGenerator/ClassNameGenerator.d.ts +6 -0
  3. package/ClassNameGenerator/ClassNameGenerator.js +30 -0
  4. package/ClassNameGenerator/index.d.ts +1 -0
  5. package/ClassNameGenerator/index.js +15 -0
  6. package/ClassNameGenerator/package.json +6 -0
  7. package/composeClasses/composeClasses.d.ts +1 -0
  8. package/composeClasses/composeClasses.js +26 -0
  9. package/composeClasses/index.d.ts +1 -0
  10. package/composeClasses/index.js +15 -0
  11. package/composeClasses/package.json +6 -0
  12. package/elementAcceptingRef.js +1 -1
  13. package/esm/ClassNameGenerator/ClassNameGenerator.js +22 -0
  14. package/esm/ClassNameGenerator/index.js +1 -0
  15. package/esm/composeClasses/composeClasses.js +19 -0
  16. package/esm/composeClasses/index.js +1 -0
  17. package/esm/elementAcceptingRef.js +1 -1
  18. package/esm/generateUtilityClass/generateUtilityClass.js +17 -0
  19. package/esm/generateUtilityClass/index.js +2 -0
  20. package/esm/generateUtilityClasses/generateUtilityClasses.js +8 -0
  21. package/esm/generateUtilityClasses/index.js +1 -0
  22. package/esm/index.js +6 -1
  23. package/generateUtilityClass/generateUtilityClass.d.ts +2 -0
  24. package/generateUtilityClass/generateUtilityClass.js +28 -0
  25. package/generateUtilityClass/index.d.ts +2 -0
  26. package/generateUtilityClass/index.js +30 -0
  27. package/generateUtilityClass/package.json +6 -0
  28. package/generateUtilityClasses/generateUtilityClasses.d.ts +1 -0
  29. package/generateUtilityClasses/generateUtilityClasses.js +18 -0
  30. package/generateUtilityClasses/index.d.ts +1 -0
  31. package/generateUtilityClasses/index.js +15 -0
  32. package/generateUtilityClasses/package.json +6 -0
  33. package/index.d.ts +5 -0
  34. package/index.js +85 -1
  35. package/legacy/ClassNameGenerator/ClassNameGenerator.js +21 -0
  36. package/legacy/ClassNameGenerator/index.js +1 -0
  37. package/legacy/composeClasses/composeClasses.js +19 -0
  38. package/legacy/composeClasses/index.js +1 -0
  39. package/legacy/elementAcceptingRef.js +1 -1
  40. package/legacy/generateUtilityClass/generateUtilityClass.js +18 -0
  41. package/legacy/generateUtilityClass/index.js +2 -0
  42. package/legacy/generateUtilityClasses/generateUtilityClasses.js +9 -0
  43. package/legacy/generateUtilityClasses/index.js +1 -0
  44. package/legacy/index.js +7 -2
  45. package/modern/ClassNameGenerator/ClassNameGenerator.js +22 -0
  46. package/modern/ClassNameGenerator/index.js +1 -0
  47. package/modern/composeClasses/composeClasses.js +19 -0
  48. package/modern/composeClasses/index.js +1 -0
  49. package/modern/elementAcceptingRef.js +1 -1
  50. package/modern/generateUtilityClass/generateUtilityClass.js +17 -0
  51. package/modern/generateUtilityClass/index.js +2 -0
  52. package/modern/generateUtilityClasses/generateUtilityClasses.js +8 -0
  53. package/modern/generateUtilityClasses/index.js +1 -0
  54. package/modern/index.js +7 -2
  55. package/package.json +1 -1
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = composeClasses;
7
+
8
+ function composeClasses(slots, getUtilityClass, classes) {
9
+ const output = {};
10
+ Object.keys(slots).forEach( // `Objet.keys(slots)` can't be wider than `T` because we infer `T` from `slots`.
11
+ // @ts-expect-error https://github.com/microsoft/TypeScript/pull/12253#issuecomment-263132208
12
+ slot => {
13
+ output[slot] = slots[slot].reduce((acc, key) => {
14
+ if (key) {
15
+ if (classes && classes[key]) {
16
+ acc.push(classes[key]);
17
+ }
18
+
19
+ acc.push(getUtilityClass(key));
20
+ }
21
+
22
+ return acc;
23
+ }, []).join(' ');
24
+ });
25
+ return output;
26
+ }
@@ -0,0 +1 @@
1
+ export { default } from './composeClasses';
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ Object.defineProperty(exports, "default", {
9
+ enumerable: true,
10
+ get: function () {
11
+ return _composeClasses.default;
12
+ }
13
+ });
14
+
15
+ var _composeClasses = _interopRequireDefault(require("./composeClasses"));
@@ -0,0 +1,6 @@
1
+ {
2
+ "sideEffects": false,
3
+ "module": "../esm/composeClasses/index.js",
4
+ "main": "./index.js",
5
+ "types": "./index.d.ts"
6
+ }
@@ -25,7 +25,7 @@ function acceptingRef(props, propName, componentName, location, propFullName) {
25
25
 
26
26
  if (element == null || // When server-side rendering React doesn't warn either.
27
27
  // This is not an accurate check for SSR.
28
- // This is only in place for emotion compat.
28
+ // This is only in place for Emotion compat.
29
29
  // TODO: Revisit once https://github.com/facebook/react/issues/20047 is resolved.
30
30
  typeof window === 'undefined') {
31
31
  return null;
@@ -0,0 +1,22 @@
1
+ const defaultGenerator = componentName => componentName;
2
+
3
+ const createClassNameGenerator = () => {
4
+ let generate = defaultGenerator;
5
+ return {
6
+ configure(generator) {
7
+ generate = generator;
8
+ },
9
+
10
+ generate(componentName) {
11
+ return generate(componentName);
12
+ },
13
+
14
+ reset() {
15
+ generate = defaultGenerator;
16
+ }
17
+
18
+ };
19
+ };
20
+
21
+ const ClassNameGenerator = createClassNameGenerator();
22
+ export default ClassNameGenerator;
@@ -0,0 +1 @@
1
+ export { default } from './ClassNameGenerator';
@@ -0,0 +1,19 @@
1
+ export default function composeClasses(slots, getUtilityClass, classes) {
2
+ const output = {};
3
+ Object.keys(slots).forEach( // `Objet.keys(slots)` can't be wider than `T` because we infer `T` from `slots`.
4
+ // @ts-expect-error https://github.com/microsoft/TypeScript/pull/12253#issuecomment-263132208
5
+ slot => {
6
+ output[slot] = slots[slot].reduce((acc, key) => {
7
+ if (key) {
8
+ if (classes && classes[key]) {
9
+ acc.push(classes[key]);
10
+ }
11
+
12
+ acc.push(getUtilityClass(key));
13
+ }
14
+
15
+ return acc;
16
+ }, []).join(' ');
17
+ });
18
+ return output;
19
+ }
@@ -0,0 +1 @@
1
+ export { default } from './composeClasses';
@@ -15,7 +15,7 @@ function acceptingRef(props, propName, componentName, location, propFullName) {
15
15
 
16
16
  if (element == null || // When server-side rendering React doesn't warn either.
17
17
  // This is not an accurate check for SSR.
18
- // This is only in place for emotion compat.
18
+ // This is only in place for Emotion compat.
19
19
  // TODO: Revisit once https://github.com/facebook/react/issues/20047 is resolved.
20
20
  typeof window === 'undefined') {
21
21
  return null;
@@ -0,0 +1,17 @@
1
+ import ClassNameGenerator from '../ClassNameGenerator';
2
+ const globalStateClassesMapping = {
3
+ active: 'active',
4
+ checked: 'checked',
5
+ completed: 'completed',
6
+ disabled: 'disabled',
7
+ error: 'error',
8
+ expanded: 'expanded',
9
+ focused: 'focused',
10
+ focusVisible: 'focusVisible',
11
+ required: 'required',
12
+ selected: 'selected'
13
+ };
14
+ export default function generateUtilityClass(componentName, slot, globalStatePrefix = 'Mui') {
15
+ const globalStateClass = globalStateClassesMapping[slot];
16
+ return globalStateClass ? `${globalStatePrefix}-${globalStateClass}` : `${ClassNameGenerator.generate(componentName)}-${slot}`;
17
+ }
@@ -0,0 +1,2 @@
1
+ export { default } from './generateUtilityClass';
2
+ export * from './generateUtilityClass';
@@ -0,0 +1,8 @@
1
+ import generateUtilityClass from '../generateUtilityClass';
2
+ export default function generateUtilityClasses(componentName, slots, globalStatePrefix = 'Mui') {
3
+ const result = {};
4
+ slots.forEach(slot => {
5
+ result[slot] = generateUtilityClass(componentName, slot, globalStatePrefix);
6
+ });
7
+ return result;
8
+ }
@@ -0,0 +1 @@
1
+ export { default } from './generateUtilityClasses';
package/esm/index.js CHANGED
@@ -30,4 +30,9 @@ export { detectScrollType as unstable_detectScrollType, getNormalizedScrollLeft
30
30
  export { default as usePreviousProps } from './usePreviousProps';
31
31
  export { default as visuallyHidden } from './visuallyHidden';
32
32
  export { default as integerPropType } from './integerPropType';
33
- export { default as internal_resolveProps } from './resolveProps';
33
+ export { default as internal_resolveProps } from './resolveProps';
34
+ export { default as unstable_composeClasses } from './composeClasses';
35
+ export { default as unstable_generateUtilityClass } from './generateUtilityClass';
36
+ export * from './generateUtilityClass';
37
+ export { default as unstable_generateUtilityClasses } from './generateUtilityClasses';
38
+ export { default as unstable_ClassNameGenerator } from './ClassNameGenerator';
@@ -0,0 +1,2 @@
1
+ export declare type GlobalStateSlot = 'active' | 'checked' | 'completed' | 'disabled' | 'error' | 'expanded' | 'focused' | 'focusVisible' | 'required' | 'selected';
2
+ export default function generateUtilityClass(componentName: string, slot: string, globalStatePrefix?: string): string;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = generateUtilityClass;
9
+
10
+ var _ClassNameGenerator = _interopRequireDefault(require("../ClassNameGenerator"));
11
+
12
+ const globalStateClassesMapping = {
13
+ active: 'active',
14
+ checked: 'checked',
15
+ completed: 'completed',
16
+ disabled: 'disabled',
17
+ error: 'error',
18
+ expanded: 'expanded',
19
+ focused: 'focused',
20
+ focusVisible: 'focusVisible',
21
+ required: 'required',
22
+ selected: 'selected'
23
+ };
24
+
25
+ function generateUtilityClass(componentName, slot, globalStatePrefix = 'Mui') {
26
+ const globalStateClass = globalStateClassesMapping[slot];
27
+ return globalStateClass ? `${globalStatePrefix}-${globalStateClass}` : `${_ClassNameGenerator.default.generate(componentName)}-${slot}`;
28
+ }
@@ -0,0 +1,2 @@
1
+ export { default } from './generateUtilityClass';
2
+ export * from './generateUtilityClass';
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _exportNames = {};
7
+ Object.defineProperty(exports, "default", {
8
+ enumerable: true,
9
+ get: function () {
10
+ return _generateUtilityClass.default;
11
+ }
12
+ });
13
+
14
+ var _generateUtilityClass = _interopRequireWildcard(require("./generateUtilityClass"));
15
+
16
+ Object.keys(_generateUtilityClass).forEach(function (key) {
17
+ if (key === "default" || key === "__esModule") return;
18
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
19
+ if (key in exports && exports[key] === _generateUtilityClass[key]) return;
20
+ Object.defineProperty(exports, key, {
21
+ enumerable: true,
22
+ get: function () {
23
+ return _generateUtilityClass[key];
24
+ }
25
+ });
26
+ });
27
+
28
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
29
+
30
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -0,0 +1,6 @@
1
+ {
2
+ "sideEffects": false,
3
+ "module": "../esm/generateUtilityClass/index.js",
4
+ "main": "./index.js",
5
+ "types": "./index.d.ts"
6
+ }
@@ -0,0 +1 @@
1
+ export default function generateUtilityClasses<T extends string>(componentName: string, slots: T[], globalStatePrefix?: string): Record<T, string>;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = generateUtilityClasses;
9
+
10
+ var _generateUtilityClass = _interopRequireDefault(require("../generateUtilityClass"));
11
+
12
+ function generateUtilityClasses(componentName, slots, globalStatePrefix = 'Mui') {
13
+ const result = {};
14
+ slots.forEach(slot => {
15
+ result[slot] = (0, _generateUtilityClass.default)(componentName, slot, globalStatePrefix);
16
+ });
17
+ return result;
18
+ }
@@ -0,0 +1 @@
1
+ export { default } from './generateUtilityClasses';
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ Object.defineProperty(exports, "default", {
9
+ enumerable: true,
10
+ get: function () {
11
+ return _generateUtilityClasses.default;
12
+ }
13
+ });
14
+
15
+ var _generateUtilityClasses = _interopRequireDefault(require("./generateUtilityClasses"));
@@ -0,0 +1,6 @@
1
+ {
2
+ "sideEffects": false,
3
+ "module": "../esm/generateUtilityClasses/index.js",
4
+ "main": "./index.js",
5
+ "types": "./index.d.ts"
6
+ }
package/index.d.ts CHANGED
@@ -31,3 +31,8 @@ export { default as usePreviousProps } from './usePreviousProps';
31
31
  export { default as visuallyHidden } from './visuallyHidden';
32
32
  export { default as integerPropType } from './integerPropType';
33
33
  export { default as internal_resolveProps } from './resolveProps';
34
+ export { default as unstable_composeClasses } from './composeClasses';
35
+ export { default as unstable_generateUtilityClass } from './generateUtilityClass';
36
+ export * from './generateUtilityClass';
37
+ export { default as unstable_generateUtilityClasses } from './generateUtilityClasses';
38
+ export { default as unstable_ClassNameGenerator } from './ClassNameGenerator';
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.7.0
1
+ /** @license MUI v5.8.6
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
@@ -10,6 +10,46 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
10
10
  Object.defineProperty(exports, "__esModule", {
11
11
  value: true
12
12
  });
13
+ var _exportNames = {
14
+ chainPropTypes: true,
15
+ deepmerge: true,
16
+ isPlainObject: true,
17
+ elementAcceptingRef: true,
18
+ elementTypeAcceptingRef: true,
19
+ exactProp: true,
20
+ formatMuiErrorMessage: true,
21
+ getDisplayName: true,
22
+ HTMLElementType: true,
23
+ ponyfillGlobal: true,
24
+ refType: true,
25
+ unstable_capitalize: true,
26
+ unstable_createChainedFunction: true,
27
+ unstable_debounce: true,
28
+ unstable_deprecatedPropType: true,
29
+ unstable_isMuiElement: true,
30
+ unstable_ownerDocument: true,
31
+ unstable_ownerWindow: true,
32
+ unstable_requirePropFactory: true,
33
+ unstable_setRef: true,
34
+ unstable_useEnhancedEffect: true,
35
+ unstable_useId: true,
36
+ unstable_unsupportedProp: true,
37
+ unstable_useControlled: true,
38
+ unstable_useEventCallback: true,
39
+ unstable_useForkRef: true,
40
+ unstable_useIsFocusVisible: true,
41
+ unstable_getScrollbarSize: true,
42
+ unstable_detectScrollType: true,
43
+ unstable_getNormalizedScrollLeft: true,
44
+ usePreviousProps: true,
45
+ visuallyHidden: true,
46
+ integerPropType: true,
47
+ internal_resolveProps: true,
48
+ unstable_composeClasses: true,
49
+ unstable_generateUtilityClass: true,
50
+ unstable_generateUtilityClasses: true,
51
+ unstable_ClassNameGenerator: true
52
+ };
13
53
  Object.defineProperty(exports, "HTMLElementType", {
14
54
  enumerable: true,
15
55
  get: function () {
@@ -88,12 +128,24 @@ Object.defineProperty(exports, "refType", {
88
128
  return _refType.default;
89
129
  }
90
130
  });
131
+ Object.defineProperty(exports, "unstable_ClassNameGenerator", {
132
+ enumerable: true,
133
+ get: function () {
134
+ return _ClassNameGenerator.default;
135
+ }
136
+ });
91
137
  Object.defineProperty(exports, "unstable_capitalize", {
92
138
  enumerable: true,
93
139
  get: function () {
94
140
  return _capitalize.default;
95
141
  }
96
142
  });
143
+ Object.defineProperty(exports, "unstable_composeClasses", {
144
+ enumerable: true,
145
+ get: function () {
146
+ return _composeClasses.default;
147
+ }
148
+ });
97
149
  Object.defineProperty(exports, "unstable_createChainedFunction", {
98
150
  enumerable: true,
99
151
  get: function () {
@@ -118,6 +170,18 @@ Object.defineProperty(exports, "unstable_detectScrollType", {
118
170
  return _scrollLeft.detectScrollType;
119
171
  }
120
172
  });
173
+ Object.defineProperty(exports, "unstable_generateUtilityClass", {
174
+ enumerable: true,
175
+ get: function () {
176
+ return _generateUtilityClass.default;
177
+ }
178
+ });
179
+ Object.defineProperty(exports, "unstable_generateUtilityClasses", {
180
+ enumerable: true,
181
+ get: function () {
182
+ return _generateUtilityClasses.default;
183
+ }
184
+ });
121
185
  Object.defineProperty(exports, "unstable_getNormalizedScrollLeft", {
122
186
  enumerable: true,
123
187
  get: function () {
@@ -279,6 +343,26 @@ var _integerPropType = _interopRequireDefault(require("./integerPropType"));
279
343
 
280
344
  var _resolveProps = _interopRequireDefault(require("./resolveProps"));
281
345
 
346
+ var _composeClasses = _interopRequireDefault(require("./composeClasses"));
347
+
348
+ var _generateUtilityClass = _interopRequireWildcard(require("./generateUtilityClass"));
349
+
350
+ Object.keys(_generateUtilityClass).forEach(function (key) {
351
+ if (key === "default" || key === "__esModule") return;
352
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
353
+ if (key in exports && exports[key] === _generateUtilityClass[key]) return;
354
+ Object.defineProperty(exports, key, {
355
+ enumerable: true,
356
+ get: function () {
357
+ return _generateUtilityClass[key];
358
+ }
359
+ });
360
+ });
361
+
362
+ var _generateUtilityClasses = _interopRequireDefault(require("./generateUtilityClasses"));
363
+
364
+ var _ClassNameGenerator = _interopRequireDefault(require("./ClassNameGenerator"));
365
+
282
366
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
283
367
 
284
368
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -0,0 +1,21 @@
1
+ var defaultGenerator = function defaultGenerator(componentName) {
2
+ return componentName;
3
+ };
4
+
5
+ var createClassNameGenerator = function createClassNameGenerator() {
6
+ var _generate = defaultGenerator;
7
+ return {
8
+ configure: function configure(generator) {
9
+ _generate = generator;
10
+ },
11
+ generate: function generate(componentName) {
12
+ return _generate(componentName);
13
+ },
14
+ reset: function reset() {
15
+ _generate = defaultGenerator;
16
+ }
17
+ };
18
+ };
19
+
20
+ var ClassNameGenerator = createClassNameGenerator();
21
+ export default ClassNameGenerator;
@@ -0,0 +1 @@
1
+ export { default } from './ClassNameGenerator';
@@ -0,0 +1,19 @@
1
+ export default function composeClasses(slots, getUtilityClass, classes) {
2
+ var output = {};
3
+ Object.keys(slots).forEach( // `Objet.keys(slots)` can't be wider than `T` because we infer `T` from `slots`.
4
+ // @ts-expect-error https://github.com/microsoft/TypeScript/pull/12253#issuecomment-263132208
5
+ function (slot) {
6
+ output[slot] = slots[slot].reduce(function (acc, key) {
7
+ if (key) {
8
+ if (classes && classes[key]) {
9
+ acc.push(classes[key]);
10
+ }
11
+
12
+ acc.push(getUtilityClass(key));
13
+ }
14
+
15
+ return acc;
16
+ }, []).join(' ');
17
+ });
18
+ return output;
19
+ }
@@ -0,0 +1 @@
1
+ export { default } from './composeClasses';
@@ -14,7 +14,7 @@ function acceptingRef(props, propName, componentName, location, propFullName) {
14
14
 
15
15
  if (element == null || // When server-side rendering React doesn't warn either.
16
16
  // This is not an accurate check for SSR.
17
- // This is only in place for emotion compat.
17
+ // This is only in place for Emotion compat.
18
18
  // TODO: Revisit once https://github.com/facebook/react/issues/20047 is resolved.
19
19
  typeof window === 'undefined') {
20
20
  return null;
@@ -0,0 +1,18 @@
1
+ import ClassNameGenerator from '../ClassNameGenerator';
2
+ var globalStateClassesMapping = {
3
+ active: 'active',
4
+ checked: 'checked',
5
+ completed: 'completed',
6
+ disabled: 'disabled',
7
+ error: 'error',
8
+ expanded: 'expanded',
9
+ focused: 'focused',
10
+ focusVisible: 'focusVisible',
11
+ required: 'required',
12
+ selected: 'selected'
13
+ };
14
+ export default function generateUtilityClass(componentName, slot) {
15
+ var globalStatePrefix = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'Mui';
16
+ var globalStateClass = globalStateClassesMapping[slot];
17
+ return globalStateClass ? "".concat(globalStatePrefix, "-").concat(globalStateClass) : "".concat(ClassNameGenerator.generate(componentName), "-").concat(slot);
18
+ }
@@ -0,0 +1,2 @@
1
+ export { default } from './generateUtilityClass';
2
+ export * from './generateUtilityClass';
@@ -0,0 +1,9 @@
1
+ import generateUtilityClass from '../generateUtilityClass';
2
+ export default function generateUtilityClasses(componentName, slots) {
3
+ var globalStatePrefix = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'Mui';
4
+ var result = {};
5
+ slots.forEach(function (slot) {
6
+ result[slot] = generateUtilityClass(componentName, slot, globalStatePrefix);
7
+ });
8
+ return result;
9
+ }
@@ -0,0 +1 @@
1
+ export { default } from './generateUtilityClasses';
package/legacy/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.7.0
1
+ /** @license MUI v5.8.6
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
@@ -35,4 +35,9 @@ export { detectScrollType as unstable_detectScrollType, getNormalizedScrollLeft
35
35
  export { default as usePreviousProps } from './usePreviousProps';
36
36
  export { default as visuallyHidden } from './visuallyHidden';
37
37
  export { default as integerPropType } from './integerPropType';
38
- export { default as internal_resolveProps } from './resolveProps';
38
+ export { default as internal_resolveProps } from './resolveProps';
39
+ export { default as unstable_composeClasses } from './composeClasses';
40
+ export { default as unstable_generateUtilityClass } from './generateUtilityClass';
41
+ export * from './generateUtilityClass';
42
+ export { default as unstable_generateUtilityClasses } from './generateUtilityClasses';
43
+ export { default as unstable_ClassNameGenerator } from './ClassNameGenerator';
@@ -0,0 +1,22 @@
1
+ const defaultGenerator = componentName => componentName;
2
+
3
+ const createClassNameGenerator = () => {
4
+ let generate = defaultGenerator;
5
+ return {
6
+ configure(generator) {
7
+ generate = generator;
8
+ },
9
+
10
+ generate(componentName) {
11
+ return generate(componentName);
12
+ },
13
+
14
+ reset() {
15
+ generate = defaultGenerator;
16
+ }
17
+
18
+ };
19
+ };
20
+
21
+ const ClassNameGenerator = createClassNameGenerator();
22
+ export default ClassNameGenerator;
@@ -0,0 +1 @@
1
+ export { default } from './ClassNameGenerator';
@@ -0,0 +1,19 @@
1
+ export default function composeClasses(slots, getUtilityClass, classes) {
2
+ const output = {};
3
+ Object.keys(slots).forEach( // `Objet.keys(slots)` can't be wider than `T` because we infer `T` from `slots`.
4
+ // @ts-expect-error https://github.com/microsoft/TypeScript/pull/12253#issuecomment-263132208
5
+ slot => {
6
+ output[slot] = slots[slot].reduce((acc, key) => {
7
+ if (key) {
8
+ if (classes && classes[key]) {
9
+ acc.push(classes[key]);
10
+ }
11
+
12
+ acc.push(getUtilityClass(key));
13
+ }
14
+
15
+ return acc;
16
+ }, []).join(' ');
17
+ });
18
+ return output;
19
+ }
@@ -0,0 +1 @@
1
+ export { default } from './composeClasses';
@@ -15,7 +15,7 @@ function acceptingRef(props, propName, componentName, location, propFullName) {
15
15
 
16
16
  if (element == null || // When server-side rendering React doesn't warn either.
17
17
  // This is not an accurate check for SSR.
18
- // This is only in place for emotion compat.
18
+ // This is only in place for Emotion compat.
19
19
  // TODO: Revisit once https://github.com/facebook/react/issues/20047 is resolved.
20
20
  typeof window === 'undefined') {
21
21
  return null;
@@ -0,0 +1,17 @@
1
+ import ClassNameGenerator from '../ClassNameGenerator';
2
+ const globalStateClassesMapping = {
3
+ active: 'active',
4
+ checked: 'checked',
5
+ completed: 'completed',
6
+ disabled: 'disabled',
7
+ error: 'error',
8
+ expanded: 'expanded',
9
+ focused: 'focused',
10
+ focusVisible: 'focusVisible',
11
+ required: 'required',
12
+ selected: 'selected'
13
+ };
14
+ export default function generateUtilityClass(componentName, slot, globalStatePrefix = 'Mui') {
15
+ const globalStateClass = globalStateClassesMapping[slot];
16
+ return globalStateClass ? `${globalStatePrefix}-${globalStateClass}` : `${ClassNameGenerator.generate(componentName)}-${slot}`;
17
+ }
@@ -0,0 +1,2 @@
1
+ export { default } from './generateUtilityClass';
2
+ export * from './generateUtilityClass';
@@ -0,0 +1,8 @@
1
+ import generateUtilityClass from '../generateUtilityClass';
2
+ export default function generateUtilityClasses(componentName, slots, globalStatePrefix = 'Mui') {
3
+ const result = {};
4
+ slots.forEach(slot => {
5
+ result[slot] = generateUtilityClass(componentName, slot, globalStatePrefix);
6
+ });
7
+ return result;
8
+ }
@@ -0,0 +1 @@
1
+ export { default } from './generateUtilityClasses';