Skip to content

Commit

Permalink
Add parsed exports
Browse files Browse the repository at this point in the history
  • Loading branch information
DiegoAndai committed Aug 6, 2024
1 parent 744c5a6 commit c1e460d
Show file tree
Hide file tree
Showing 7 changed files with 73 additions and 11 deletions.
5 changes: 3 additions & 2 deletions packages/mui-material/src/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@ import * as React from 'react';
import { DistributiveOmit } from '@mui/types';
import { StyledComponentProps } from './styles';

export const version: string;

export { StyledComponentProps };

/**
Expand Down Expand Up @@ -477,6 +475,9 @@ export * from './useAutocomplete';
export { default as GlobalStyles } from './GlobalStyles';
export * from './GlobalStyles';

export { default as version } from './version';
export * from './version';

/**
* @deprecated will be removed in v5.beta, please use StyledEngineProvider from @mui/material/styles instead
*/
Expand Down
5 changes: 3 additions & 2 deletions packages/mui-material/src/index.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
/* eslint-disable import/export */
import * as colors from './colors';

export const version = process.env.MUI_PACKAGE_VERSION;

export { colors };
export * from './styles';

Expand Down Expand Up @@ -418,3 +416,6 @@ export * from './generateUtilityClass';
export { default as generateUtilityClasses } from './generateUtilityClasses';

export { default as Unstable_TrapFocus } from './Unstable_TrapFocus';

export { default as version } from './version';
export * from './version';
15 changes: 12 additions & 3 deletions packages/mui-material/src/index.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,24 @@
import { expect } from 'chai';
import * as MaterialUI from './index';

const versionExports = [
'version',
'major',
'minor',
'patch',
'preReleaseLabel',
'preReleaseNumber',
];

describe('material-ui', () => {
it('should have exports', () => {
expect(typeof MaterialUI).to.equal('object');
});

it('should not have undefined exports', () => {
Object.keys(MaterialUI).forEach((exportKey) =>
expect(Boolean(MaterialUI[exportKey])).to.equal(true),
);
Object.keys(MaterialUI)
.filter((exportKey) => !versionExports.includes(exportKey))
.forEach((exportKey) => expect(Boolean(MaterialUI[exportKey])).to.equal(true));
});

it('should reexport certain members from @mui/base', () => {
Expand Down
25 changes: 25 additions & 0 deletions packages/mui-material/src/version/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
const version = process.env.MUI_PACKAGE_VERSION || null;

let versionNumber: string | null = null;
let preReleaseInfo: string | null = null;

if (version) {
[versionNumber, preReleaseInfo] = version.split('-');
}

let destructuredVersion: number[] | null[] = [null, null, null];
let destructuredPreReleaseInfo: [string, number] | null[] = [null, null];

if (versionNumber) {
destructuredVersion = versionNumber.split('.').map(Number);
}

if (preReleaseInfo) {
destructuredPreReleaseInfo = [preReleaseInfo.split('.')[0], Number(preReleaseInfo.split('.')[1])];
}

const [major, minor, patch] = destructuredVersion;
const [preReleaseLabel, preReleaseNumber] = destructuredPreReleaseInfo;

export { version, major, minor, patch, preReleaseLabel, preReleaseNumber };
export default version;
5 changes: 3 additions & 2 deletions packages/mui-system/src/index.d.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
// disable automatic export
export {};

export const version: string;

export * from './borders';

export { default as breakpoints, handleBreakpoints, mergeBreakpointsInOrder } from './breakpoints';
Expand Down Expand Up @@ -124,3 +122,6 @@ export * from './Grid';

export { default as Stack } from './Stack';
export * from './Stack';

export { default as version } from './version';
export * from './version';
4 changes: 2 additions & 2 deletions packages/mui-system/src/index.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
import MuiError from '@mui/internal-babel-macros/MuiError.macro';

export const version = process.env.MUI_PACKAGE_VERSION;

export { css, keyframes, StyledEngineProvider } from '@mui/styled-engine';
export { default as GlobalStyles } from './GlobalStyles';
export { default as borders } from './borders';
Expand Down Expand Up @@ -69,6 +67,8 @@ export { default as unstable_createCssVarsTheme } from './cssVars/createCssVarsT
export { default as responsivePropType } from './responsivePropType';
export { default as RtlProvider } from './RtlProvider';
export * from './RtlProvider';
export { default as version } from './version';
export * from './version';

/** ----------------- */
/** Layout components */
Expand Down
25 changes: 25 additions & 0 deletions packages/mui-system/src/version/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
const version = process.env.MUI_PACKAGE_VERSION || null;

let versionNumber: string | null = null;
let preReleaseInfo: string | null = null;

if (version) {
[versionNumber, preReleaseInfo] = version.split('-');
}

let destructuredVersion: number[] | null[] = [null, null, null];
let destructuredPreReleaseInfo: [string, number] | null[] = [null, null];

if (versionNumber) {
destructuredVersion = versionNumber.split('.').map(Number);
}

if (preReleaseInfo) {
destructuredPreReleaseInfo = [preReleaseInfo.split('.')[0], Number(preReleaseInfo.split('.')[1])];
}

const [major, minor, patch] = destructuredVersion;
const [preReleaseLabel, preReleaseNumber] = destructuredPreReleaseInfo;

export { version, major, minor, patch, preReleaseLabel, preReleaseNumber };
export default version;

0 comments on commit c1e460d

Please sign in to comment.