init project
Some checks failed
No response / noResponse (push) Has been cancelled
CI / Continuous releases (push) Has been cancelled
CI / test-dev (macos-latest) (push) Has been cancelled
CI / test-dev (ubuntu-latest) (push) Has been cancelled
CI / test-dev (windows-latest) (push) Has been cancelled
Maintenance / main (push) Has been cancelled
Scorecards supply-chain security / Scorecards analysis (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled

This commit is contained in:
how2ice
2025-12-12 14:26:25 +09:00
commit 005cf56baf
43188 changed files with 1079531 additions and 0 deletions

View File

@@ -0,0 +1,120 @@
import { classes } from './postcss-plugin';
/**
* @param {import('jscodeshift').FileInfo} file
* @param {import('jscodeshift').API} api
*/
export default function transformer(file, api, options) {
const j = api.jscodeshift;
const root = j(file.source);
const printOptions = options.printOptions;
classes.forEach(({ deprecatedClass, replacementSelector }) => {
const replacementSelectorPrefix = '&';
root
.find(j.ImportDeclaration)
.filter((path) =>
path.node.source.value.match(
new RegExp(`^${options.packageName || '@mui/material'}(/Button)?$`),
),
)
.forEach((path) => {
path.node.specifiers.forEach((specifier) => {
if (specifier.type === 'ImportSpecifier' && specifier.imported.name === 'buttonClasses') {
const deprecatedAtomicClass = deprecatedClass.replace(
`${deprecatedClass.split('-')[0]}-`,
'',
);
root
.find(j.MemberExpression, {
object: { name: specifier.local.name },
property: { name: deprecatedAtomicClass },
})
.forEach((memberExpression) => {
const parent = memberExpression.parentPath.parentPath.value;
if (parent.type === j.TemplateLiteral.name) {
const memberExpressionIndex = parent.expressions.findIndex(
(expression) => expression === memberExpression.value,
);
const precedingTemplateElement = parent.quasis[memberExpressionIndex];
const atomicClasses = replacementSelector
.replaceAll('MuiButton-', '')
.replaceAll(replacementSelectorPrefix, '')
.replaceAll(' > ', '')
.split('.')
.filter(Boolean);
if (
precedingTemplateElement.value.raw.endsWith(
deprecatedClass.startsWith(' ')
? `${replacementSelectorPrefix} .`
: `${replacementSelectorPrefix}.`,
)
) {
parent.expressions.splice(
memberExpressionIndex,
1,
j.memberExpression(
memberExpression.value.object,
j.identifier(atomicClasses[0]),
),
j.memberExpression(
memberExpression.value.object,
j.identifier(atomicClasses[1]),
),
);
if (replacementSelector.includes(' > ')) {
parent.quasis.splice(
memberExpressionIndex,
1,
j.templateElement(
{
raw: precedingTemplateElement.value.raw.replace(' ', ''),
cooked: precedingTemplateElement.value.cooked.replace(' ', ''),
},
false,
),
j.templateElement({ raw: ' > .', cooked: ' > .' }, false),
);
} else {
parent.quasis.splice(
memberExpressionIndex,
1,
j.templateElement(
{
raw: precedingTemplateElement.value.raw,
cooked: precedingTemplateElement.value.cooked,
},
false,
),
j.templateElement({ raw: '.', cooked: '.' }, false),
);
}
}
}
});
}
});
});
const selectorRegex = new RegExp(`^${replacementSelectorPrefix}${deprecatedClass}`);
root
.find(
j.Literal,
(literal) => typeof literal.value === 'string' && literal.value.match(selectorRegex),
)
.forEach((path) => {
path.replace(
j.literal(
path.value.value.replace(
selectorRegex,
`${replacementSelectorPrefix}${replacementSelector}`,
),
),
);
});
});
return root.toSource(printOptions);
}

View File

@@ -0,0 +1,105 @@
import path from 'path';
import { expect } from 'chai';
import postcss from 'postcss';
import { jscodeshift } from '../../../testUtils';
import jsTransform from './button-classes';
import { plugin as postcssPlugin } from './postcss-plugin';
import readFile from '../../util/readFile';
function read(fileName) {
return readFile(path.join(__dirname, fileName));
}
const postcssProcessor = postcss([postcssPlugin]);
describe('@mui/codemod', () => {
describe('deprecations', () => {
describe('button-classes', () => {
describe('js-transform', () => {
it('transforms props as needed', () => {
const actual = jsTransform(
{ source: read('./test-cases/actual.js') },
{ jscodeshift },
{ printOptions: { quote: 'double', trailingComma: true } },
);
const expected = read('./test-cases/expected.js');
expect(actual).to.equal(expected, 'The transformed version should be correct');
});
it('should be idempotent', () => {
const actual = jsTransform(
{ source: read('./test-cases/expected.js') },
{ jscodeshift },
{},
);
const expected = read('./test-cases/expected.js');
expect(actual).to.equal(expected, 'The transformed version should be correct');
});
});
describe('[package] js-transform', () => {
it('transforms props as needed', () => {
const actual = jsTransform(
{ source: read('./test-cases/package.actual.js') },
{ jscodeshift },
{
printOptions: { quote: 'double', trailingComma: true },
packageName: '@org/ui/material',
},
);
const expected = read('./test-cases/package.expected.js');
expect(actual).to.equal(expected, 'The transformed version should be correct');
});
it('should be idempotent', () => {
const actual = jsTransform(
{ source: read('./test-cases/package.expected.js') },
{ jscodeshift },
{ packageName: '@org/ui/material' },
);
const expected = read('./test-cases/package.expected.js');
expect(actual).to.equal(expected, 'The transformed version should be correct');
});
});
describe('css-transform', () => {
it('transforms classes as needed', async () => {
const actual = await postcssProcessor.process(read('./test-cases/actual.css'), {
from: undefined,
});
const expected = read('./test-cases/expected.css');
expect(actual.css).to.equal(expected, 'The transformed version should be correct');
});
it('should be idempotent', async () => {
const actual = await postcssProcessor.process(read('./test-cases/expected.css'), {
from: undefined,
});
const expected = read('./test-cases/expected.css');
expect(actual.css).to.equal(expected, 'The transformed version should be correct');
});
});
describe('test-cases', () => {
it('should not be the same', () => {
const actualJS = read('./test-cases/actual.js');
const expectedJS = read('./test-cases/expected.js');
expect(actualJS).not.to.equal(expectedJS, 'The actual and expected should be different');
const actualCSS = read('./test-cases/actual.css');
const expectedCSS = read('./test-cases/expected.css');
expect(actualCSS).not.to.equal(
expectedCSS,
'The actual and expected should be different',
);
});
});
});
});
});

View File

@@ -0,0 +1 @@
export { default } from './button-classes';

View File

@@ -0,0 +1,157 @@
const classes = [
{
deprecatedClass: '.MuiButton-textInherit',
replacementSelector: '.MuiButton-text.MuiButton-colorInherit',
},
{
deprecatedClass: '.MuiButton-textPrimary',
replacementSelector: '.MuiButton-text.MuiButton-colorPrimary',
},
{
deprecatedClass: '.MuiButton-textSecondary',
replacementSelector: '.MuiButton-text.MuiButton-colorSecondary',
},
{
deprecatedClass: '.MuiButton-textSuccess',
replacementSelector: '.MuiButton-text.MuiButton-colorSuccess',
},
{
deprecatedClass: '.MuiButton-textError',
replacementSelector: '.MuiButton-text.MuiButton-colorError',
},
{
deprecatedClass: '.MuiButton-textInfo',
replacementSelector: '.MuiButton-text.MuiButton-colorInfo',
},
{
deprecatedClass: '.MuiButton-textWarning',
replacementSelector: '.MuiButton-text.MuiButton-colorWarning',
},
{
deprecatedClass: '.MuiButton-outlinedInherit',
replacementSelector: '.MuiButton-outlined.MuiButton-colorInherit',
},
{
deprecatedClass: '.MuiButton-outlinedPrimary',
replacementSelector: '.MuiButton-outlined.MuiButton-colorPrimary',
},
{
deprecatedClass: '.MuiButton-outlinedSecondary',
replacementSelector: '.MuiButton-outlined.MuiButton-colorSecondary',
},
{
deprecatedClass: '.MuiButton-outlinedSuccess',
replacementSelector: '.MuiButton-outlined.MuiButton-colorSuccess',
},
{
deprecatedClass: '.MuiButton-outlinedError',
replacementSelector: '.MuiButton-outlined.MuiButton-colorError',
},
{
deprecatedClass: '.MuiButton-outlinedInfo',
replacementSelector: '.MuiButton-outlined.MuiButton-colorInfo',
},
{
deprecatedClass: '.MuiButton-outlinedWarning',
replacementSelector: '.MuiButton-outlined.MuiButton-colorWarning',
},
{
deprecatedClass: '.MuiButton-containedInherit',
replacementSelector: '.MuiButton-contained.MuiButton-colorInherit',
},
{
deprecatedClass: '.MuiButton-containedPrimary',
replacementSelector: '.MuiButton-contained.MuiButton-colorPrimary',
},
{
deprecatedClass: '.MuiButton-containedSecondary',
replacementSelector: '.MuiButton-contained.MuiButton-colorSecondary',
},
{
deprecatedClass: '.MuiButton-containedSuccess',
replacementSelector: '.MuiButton-contained.MuiButton-colorSuccess',
},
{
deprecatedClass: '.MuiButton-containedError',
replacementSelector: '.MuiButton-contained.MuiButton-colorError',
},
{
deprecatedClass: '.MuiButton-containedInfo',
replacementSelector: '.MuiButton-contained.MuiButton-colorInfo',
},
{
deprecatedClass: '.MuiButton-containedWarning',
replacementSelector: '.MuiButton-contained.MuiButton-colorWarning',
},
{
deprecatedClass: '.MuiButton-textSizeSmall',
replacementSelector: '.MuiButton-text.MuiButton-sizeSmall',
},
{
deprecatedClass: '.MuiButton-textSizeLarge',
replacementSelector: '.MuiButton-text.MuiButton-sizeLarge',
},
{
deprecatedClass: '.MuiButton-outlinedSizeSmall',
replacementSelector: '.MuiButton-outlined.MuiButton-sizeSmall',
},
{
deprecatedClass: '.MuiButton-outlinedSizeLarge',
replacementSelector: '.MuiButton-outlined.MuiButton-sizeLarge',
},
{
deprecatedClass: '.MuiButton-containedSizeSmall',
replacementSelector: '.MuiButton-contained.MuiButton-sizeSmall',
},
{
deprecatedClass: '.MuiButton-containedSizeLarge',
replacementSelector: '.MuiButton-contained.MuiButton-sizeLarge',
},
{
deprecatedClass: '.MuiButton-textSizeMedium',
replacementSelector: '.MuiButton-text.MuiButton-sizeMedium',
},
{
deprecatedClass: '.MuiButton-outlinedSizeMedium',
replacementSelector: '.MuiButton-outlined.MuiButton-sizeMedium',
},
{
deprecatedClass: '.MuiButton-containedSizeMedium',
replacementSelector: '.MuiButton-contained.MuiButton-sizeMedium',
},
{
deprecatedClass: ' .MuiButton-iconSizeSmall',
replacementSelector: '.MuiButton-sizeSmall > .MuiButton-icon',
},
{
deprecatedClass: ' .MuiButton-iconSizeMedium',
replacementSelector: '.MuiButton-sizeMedium > .MuiButton-icon',
},
{
deprecatedClass: ' .MuiButton-iconSizeLarge',
replacementSelector: '.MuiButton-sizeLarge > .MuiButton-icon',
},
];
const plugin = () => {
return {
postcssPlugin: `Replace deprecated Button classes with new classes`,
Rule(rule) {
const { selector } = rule;
classes.forEach(({ deprecatedClass, replacementSelector }) => {
const selectorRegex = new RegExp(`${deprecatedClass}`);
if (selector.match(selectorRegex)) {
rule.selector = selector.replace(selectorRegex, replacementSelector);
}
});
},
};
};
plugin.postcss = true;
module.exports = {
plugin,
classes,
};

View File

@@ -0,0 +1,5 @@
const { plugin } = require('./postcss-plugin');
module.exports = {
plugins: [plugin],
};

View File

@@ -0,0 +1,133 @@
.MuiButton-textInherit {
color: red;
}
.MuiButton-textPrimary {
color: red;
}
.MuiButton-textSecondary {
color: red;
}
.MuiButton-textSuccess {
color: red;
}
.MuiButton-textError {
color: red;
}
.MuiButton-textInfo {
color: red;
}
.MuiButton-textWarning {
color: red;
}
.MuiButton-outlinedInherit {
color: red;
}
.MuiButton-outlinedPrimary {
color: red;
}
.MuiButton-outlinedSecondary {
color: red;
}
.MuiButton-outlinedSuccess {
color: red;
}
.MuiButton-outlinedError {
color: red;
}
.MuiButton-outlinedInfo {
color: red;
}
.MuiButton-outlinedWarning {
color: red;
}
.MuiButton-containedInherit {
color: red;
}
.MuiButton-containedPrimary {
color: red;
}
.MuiButton-containedSecondary {
color: red;
}
.MuiButton-containedSuccess {
color: red;
}
.MuiButton-containedError {
color: red;
}
.MuiButton-containedInfo {
color: red;
}
.MuiButton-containedWarning {
color: red;
}
.MuiButton-textSizeSmall {
color: red;
}
.MuiButton-textSizeMedium {
color: red;
}
.MuiButton-textSizeLarge {
color: red;
}
.MuiButton-outlinedSizeSmall {
color: red;
}
.MuiButton-outlinedSizeMedium {
color: red;
}
.MuiButton-outlinedSizeLarge {
color: red;
}
.MuiButton-containedSizeSmall {
color: red;
}
.MuiButton-containedSizeMedium {
color: red;
}
.MuiButton-containedSizeLarge {
color: red;
}
.MuiButton-root .MuiButton-iconSizeSmall {
color: red;
}
.MuiButton-root .MuiButton-iconSizeMedium {
color: red;
}
.MuiButton-root .MuiButton-iconSizeLarge {
color: red;
}

View File

@@ -0,0 +1,68 @@
import { buttonClasses } from '@mui/material/Button';
('&.MuiButton-textInherit');
('&.MuiButton-textPrimary');
('&.MuiButton-textSecondary');
('&.MuiButton-textSuccess');
('&.MuiButton-textError');
('&.MuiButton-textInfo');
('&.MuiButton-textWarning');
('&.MuiButton-outlinedInherit');
('&.MuiButton-outlinedPrimary');
('&.MuiButton-outlinedSecondary');
('&.MuiButton-outlinedSuccess');
('&.MuiButton-outlinedError');
('&.MuiButton-outlinedInfo');
('&.MuiButton-outlinedWarning');
('&.MuiButton-containedInherit');
('&.MuiButton-containedPrimary');
('&.MuiButton-containedSecondary');
('&.MuiButton-containedSuccess');
('&.MuiButton-containedError');
('&.MuiButton-containedInfo');
('&.MuiButton-containedWarning');
('&.MuiButton-textSizeSmall');
('&.MuiButton-textSizeMedium');
('&.MuiButton-textSizeLarge');
('&.MuiButton-outlinedSizeSmall');
('&.MuiButton-outlinedSizeMedium');
('&.MuiButton-outlinedSizeLarge');
('&.MuiButton-containedSizeSmall');
('&.MuiButton-containedSizeMedium');
('&.MuiButton-containedSizeLarge');
('& .MuiButton-iconSizeSmall');
('& .MuiButton-iconSizeMedium');
('& .MuiButton-iconSizeLarge');
`&.${buttonClasses.textInherit}`;
`&.${buttonClasses.textPrimary}`;
`&.${buttonClasses.textSecondary}`;
`&.${buttonClasses.textSuccess}`;
`&.${buttonClasses.textError}`;
`&.${buttonClasses.textInfo}`;
`&.${buttonClasses.textWarning}`;
`&.${buttonClasses.outlinedInherit}`;
`&.${buttonClasses.outlinedPrimary}`;
`&.${buttonClasses.outlinedSecondary}`;
`&.${buttonClasses.outlinedSuccess}`;
`&.${buttonClasses.outlinedError}`;
`&.${buttonClasses.outlinedInfo}`;
`&.${buttonClasses.outlinedWarning}`;
`&.${buttonClasses.containedInherit}`;
`&.${buttonClasses.containedPrimary}`;
`&.${buttonClasses.containedSecondary}`;
`&.${buttonClasses.containedSuccess}`;
`&.${buttonClasses.containedError}`;
`&.${buttonClasses.containedInfo}`;
`&.${buttonClasses.containedWarning}`;
`&.${buttonClasses.textSizeSmall}`;
`&.${buttonClasses.textSizeMedium}`;
`&.${buttonClasses.textSizeLarge}`;
`&.${buttonClasses.outlinedSizeSmall}`;
`&.${buttonClasses.outlinedSizeMedium}`;
`&.${buttonClasses.outlinedSizeLarge}`;
`&.${buttonClasses.containedSizeSmall}`;
`&.${buttonClasses.containedSizeMedium}`;
`&.${buttonClasses.containedSizeLarge}`;
`& .${buttonClasses.iconSizeSmall}`;
`& .${buttonClasses.iconSizeMedium}`;
`& .${buttonClasses.iconSizeLarge}`;

View File

@@ -0,0 +1,133 @@
.MuiButton-text.MuiButton-colorInherit {
color: red;
}
.MuiButton-text.MuiButton-colorPrimary {
color: red;
}
.MuiButton-text.MuiButton-colorSecondary {
color: red;
}
.MuiButton-text.MuiButton-colorSuccess {
color: red;
}
.MuiButton-text.MuiButton-colorError {
color: red;
}
.MuiButton-text.MuiButton-colorInfo {
color: red;
}
.MuiButton-text.MuiButton-colorWarning {
color: red;
}
.MuiButton-outlined.MuiButton-colorInherit {
color: red;
}
.MuiButton-outlined.MuiButton-colorPrimary {
color: red;
}
.MuiButton-outlined.MuiButton-colorSecondary {
color: red;
}
.MuiButton-outlined.MuiButton-colorSuccess {
color: red;
}
.MuiButton-outlined.MuiButton-colorError {
color: red;
}
.MuiButton-outlined.MuiButton-colorInfo {
color: red;
}
.MuiButton-outlined.MuiButton-colorWarning {
color: red;
}
.MuiButton-contained.MuiButton-colorInherit {
color: red;
}
.MuiButton-contained.MuiButton-colorPrimary {
color: red;
}
.MuiButton-contained.MuiButton-colorSecondary {
color: red;
}
.MuiButton-contained.MuiButton-colorSuccess {
color: red;
}
.MuiButton-contained.MuiButton-colorError {
color: red;
}
.MuiButton-contained.MuiButton-colorInfo {
color: red;
}
.MuiButton-contained.MuiButton-colorWarning {
color: red;
}
.MuiButton-text.MuiButton-sizeSmall {
color: red;
}
.MuiButton-text.MuiButton-sizeMedium {
color: red;
}
.MuiButton-text.MuiButton-sizeLarge {
color: red;
}
.MuiButton-outlined.MuiButton-sizeSmall {
color: red;
}
.MuiButton-outlined.MuiButton-sizeMedium {
color: red;
}
.MuiButton-outlined.MuiButton-sizeLarge {
color: red;
}
.MuiButton-contained.MuiButton-sizeSmall {
color: red;
}
.MuiButton-contained.MuiButton-sizeMedium {
color: red;
}
.MuiButton-contained.MuiButton-sizeLarge {
color: red;
}
.MuiButton-root.MuiButton-sizeSmall > .MuiButton-icon {
color: red;
}
.MuiButton-root.MuiButton-sizeMedium > .MuiButton-icon {
color: red;
}
.MuiButton-root.MuiButton-sizeLarge > .MuiButton-icon {
color: red;
}

View File

@@ -0,0 +1,68 @@
import { buttonClasses } from '@mui/material/Button';
("&.MuiButton-text.MuiButton-colorInherit");
("&.MuiButton-text.MuiButton-colorPrimary");
("&.MuiButton-text.MuiButton-colorSecondary");
("&.MuiButton-text.MuiButton-colorSuccess");
("&.MuiButton-text.MuiButton-colorError");
("&.MuiButton-text.MuiButton-colorInfo");
("&.MuiButton-text.MuiButton-colorWarning");
("&.MuiButton-outlined.MuiButton-colorInherit");
("&.MuiButton-outlined.MuiButton-colorPrimary");
("&.MuiButton-outlined.MuiButton-colorSecondary");
("&.MuiButton-outlined.MuiButton-colorSuccess");
("&.MuiButton-outlined.MuiButton-colorError");
("&.MuiButton-outlined.MuiButton-colorInfo");
("&.MuiButton-outlined.MuiButton-colorWarning");
("&.MuiButton-contained.MuiButton-colorInherit");
("&.MuiButton-contained.MuiButton-colorPrimary");
("&.MuiButton-contained.MuiButton-colorSecondary");
("&.MuiButton-contained.MuiButton-colorSuccess");
("&.MuiButton-contained.MuiButton-colorError");
("&.MuiButton-contained.MuiButton-colorInfo");
("&.MuiButton-contained.MuiButton-colorWarning");
("&.MuiButton-text.MuiButton-sizeSmall");
("&.MuiButton-text.MuiButton-sizeMedium");
("&.MuiButton-text.MuiButton-sizeLarge");
("&.MuiButton-outlined.MuiButton-sizeSmall");
("&.MuiButton-outlined.MuiButton-sizeMedium");
("&.MuiButton-outlined.MuiButton-sizeLarge");
("&.MuiButton-contained.MuiButton-sizeSmall");
("&.MuiButton-contained.MuiButton-sizeMedium");
("&.MuiButton-contained.MuiButton-sizeLarge");
("&.MuiButton-sizeSmall > .MuiButton-icon");
("&.MuiButton-sizeMedium > .MuiButton-icon");
("&.MuiButton-sizeLarge > .MuiButton-icon");
`&.${buttonClasses.text}.${buttonClasses.colorInherit}`;
`&.${buttonClasses.text}.${buttonClasses.colorPrimary}`;
`&.${buttonClasses.text}.${buttonClasses.colorSecondary}`;
`&.${buttonClasses.text}.${buttonClasses.colorSuccess}`;
`&.${buttonClasses.text}.${buttonClasses.colorError}`;
`&.${buttonClasses.text}.${buttonClasses.colorInfo}`;
`&.${buttonClasses.text}.${buttonClasses.colorWarning}`;
`&.${buttonClasses.outlined}.${buttonClasses.colorInherit}`;
`&.${buttonClasses.outlined}.${buttonClasses.colorPrimary}`;
`&.${buttonClasses.outlined}.${buttonClasses.colorSecondary}`;
`&.${buttonClasses.outlined}.${buttonClasses.colorSuccess}`;
`&.${buttonClasses.outlined}.${buttonClasses.colorError}`;
`&.${buttonClasses.outlined}.${buttonClasses.colorInfo}`;
`&.${buttonClasses.outlined}.${buttonClasses.colorWarning}`;
`&.${buttonClasses.contained}.${buttonClasses.colorInherit}`;
`&.${buttonClasses.contained}.${buttonClasses.colorPrimary}`;
`&.${buttonClasses.contained}.${buttonClasses.colorSecondary}`;
`&.${buttonClasses.contained}.${buttonClasses.colorSuccess}`;
`&.${buttonClasses.contained}.${buttonClasses.colorError}`;
`&.${buttonClasses.contained}.${buttonClasses.colorInfo}`;
`&.${buttonClasses.contained}.${buttonClasses.colorWarning}`;
`&.${buttonClasses.text}.${buttonClasses.sizeSmall}`;
`&.${buttonClasses.text}.${buttonClasses.sizeMedium}`;
`&.${buttonClasses.text}.${buttonClasses.sizeLarge}`;
`&.${buttonClasses.outlined}.${buttonClasses.sizeSmall}`;
`&.${buttonClasses.outlined}.${buttonClasses.sizeMedium}`;
`&.${buttonClasses.outlined}.${buttonClasses.sizeLarge}`;
`&.${buttonClasses.contained}.${buttonClasses.sizeSmall}`;
`&.${buttonClasses.contained}.${buttonClasses.sizeMedium}`;
`&.${buttonClasses.contained}.${buttonClasses.sizeLarge}`;
`&.${buttonClasses.sizeSmall} > .${buttonClasses.icon}`;
`&.${buttonClasses.sizeMedium} > .${buttonClasses.icon}`;
`&.${buttonClasses.sizeLarge} > .${buttonClasses.icon}`;

View File

@@ -0,0 +1,68 @@
import { buttonClasses } from '@org/ui/material/Button';
('&.MuiButton-textInherit');
('&.MuiButton-textPrimary');
('&.MuiButton-textSecondary');
('&.MuiButton-textSuccess');
('&.MuiButton-textError');
('&.MuiButton-textInfo');
('&.MuiButton-textWarning');
('&.MuiButton-outlinedInherit');
('&.MuiButton-outlinedPrimary');
('&.MuiButton-outlinedSecondary');
('&.MuiButton-outlinedSuccess');
('&.MuiButton-outlinedError');
('&.MuiButton-outlinedInfo');
('&.MuiButton-outlinedWarning');
('&.MuiButton-containedInherit');
('&.MuiButton-containedPrimary');
('&.MuiButton-containedSecondary');
('&.MuiButton-containedSuccess');
('&.MuiButton-containedError');
('&.MuiButton-containedInfo');
('&.MuiButton-containedWarning');
('&.MuiButton-textSizeSmall');
('&.MuiButton-textSizeMedium');
('&.MuiButton-textSizeLarge');
('&.MuiButton-outlinedSizeSmall');
('&.MuiButton-outlinedSizeMedium');
('&.MuiButton-outlinedSizeLarge');
('&.MuiButton-containedSizeSmall');
('&.MuiButton-containedSizeMedium');
('&.MuiButton-containedSizeLarge');
('& .MuiButton-iconSizeSmall');
('& .MuiButton-iconSizeMedium');
('& .MuiButton-iconSizeLarge');
`&.${buttonClasses.textInherit}`;
`&.${buttonClasses.textPrimary}`;
`&.${buttonClasses.textSecondary}`;
`&.${buttonClasses.textSuccess}`;
`&.${buttonClasses.textError}`;
`&.${buttonClasses.textInfo}`;
`&.${buttonClasses.textWarning}`;
`&.${buttonClasses.outlinedInherit}`;
`&.${buttonClasses.outlinedPrimary}`;
`&.${buttonClasses.outlinedSecondary}`;
`&.${buttonClasses.outlinedSuccess}`;
`&.${buttonClasses.outlinedError}`;
`&.${buttonClasses.outlinedInfo}`;
`&.${buttonClasses.outlinedWarning}`;
`&.${buttonClasses.containedInherit}`;
`&.${buttonClasses.containedPrimary}`;
`&.${buttonClasses.containedSecondary}`;
`&.${buttonClasses.containedSuccess}`;
`&.${buttonClasses.containedError}`;
`&.${buttonClasses.containedInfo}`;
`&.${buttonClasses.containedWarning}`;
`&.${buttonClasses.textSizeSmall}`;
`&.${buttonClasses.textSizeMedium}`;
`&.${buttonClasses.textSizeLarge}`;
`&.${buttonClasses.outlinedSizeSmall}`;
`&.${buttonClasses.outlinedSizeMedium}`;
`&.${buttonClasses.outlinedSizeLarge}`;
`&.${buttonClasses.containedSizeSmall}`;
`&.${buttonClasses.containedSizeMedium}`;
`&.${buttonClasses.containedSizeLarge}`;
`& .${buttonClasses.iconSizeSmall}`;
`& .${buttonClasses.iconSizeMedium}`;
`& .${buttonClasses.iconSizeLarge}`;

View File

@@ -0,0 +1,68 @@
import { buttonClasses } from '@org/ui/material/Button';
("&.MuiButton-text.MuiButton-colorInherit");
("&.MuiButton-text.MuiButton-colorPrimary");
("&.MuiButton-text.MuiButton-colorSecondary");
("&.MuiButton-text.MuiButton-colorSuccess");
("&.MuiButton-text.MuiButton-colorError");
("&.MuiButton-text.MuiButton-colorInfo");
("&.MuiButton-text.MuiButton-colorWarning");
("&.MuiButton-outlined.MuiButton-colorInherit");
("&.MuiButton-outlined.MuiButton-colorPrimary");
("&.MuiButton-outlined.MuiButton-colorSecondary");
("&.MuiButton-outlined.MuiButton-colorSuccess");
("&.MuiButton-outlined.MuiButton-colorError");
("&.MuiButton-outlined.MuiButton-colorInfo");
("&.MuiButton-outlined.MuiButton-colorWarning");
("&.MuiButton-contained.MuiButton-colorInherit");
("&.MuiButton-contained.MuiButton-colorPrimary");
("&.MuiButton-contained.MuiButton-colorSecondary");
("&.MuiButton-contained.MuiButton-colorSuccess");
("&.MuiButton-contained.MuiButton-colorError");
("&.MuiButton-contained.MuiButton-colorInfo");
("&.MuiButton-contained.MuiButton-colorWarning");
("&.MuiButton-text.MuiButton-sizeSmall");
("&.MuiButton-text.MuiButton-sizeMedium");
("&.MuiButton-text.MuiButton-sizeLarge");
("&.MuiButton-outlined.MuiButton-sizeSmall");
("&.MuiButton-outlined.MuiButton-sizeMedium");
("&.MuiButton-outlined.MuiButton-sizeLarge");
("&.MuiButton-contained.MuiButton-sizeSmall");
("&.MuiButton-contained.MuiButton-sizeMedium");
("&.MuiButton-contained.MuiButton-sizeLarge");
("&.MuiButton-sizeSmall > .MuiButton-icon");
("&.MuiButton-sizeMedium > .MuiButton-icon");
("&.MuiButton-sizeLarge > .MuiButton-icon");
`&.${buttonClasses.text}.${buttonClasses.colorInherit}`;
`&.${buttonClasses.text}.${buttonClasses.colorPrimary}`;
`&.${buttonClasses.text}.${buttonClasses.colorSecondary}`;
`&.${buttonClasses.text}.${buttonClasses.colorSuccess}`;
`&.${buttonClasses.text}.${buttonClasses.colorError}`;
`&.${buttonClasses.text}.${buttonClasses.colorInfo}`;
`&.${buttonClasses.text}.${buttonClasses.colorWarning}`;
`&.${buttonClasses.outlined}.${buttonClasses.colorInherit}`;
`&.${buttonClasses.outlined}.${buttonClasses.colorPrimary}`;
`&.${buttonClasses.outlined}.${buttonClasses.colorSecondary}`;
`&.${buttonClasses.outlined}.${buttonClasses.colorSuccess}`;
`&.${buttonClasses.outlined}.${buttonClasses.colorError}`;
`&.${buttonClasses.outlined}.${buttonClasses.colorInfo}`;
`&.${buttonClasses.outlined}.${buttonClasses.colorWarning}`;
`&.${buttonClasses.contained}.${buttonClasses.colorInherit}`;
`&.${buttonClasses.contained}.${buttonClasses.colorPrimary}`;
`&.${buttonClasses.contained}.${buttonClasses.colorSecondary}`;
`&.${buttonClasses.contained}.${buttonClasses.colorSuccess}`;
`&.${buttonClasses.contained}.${buttonClasses.colorError}`;
`&.${buttonClasses.contained}.${buttonClasses.colorInfo}`;
`&.${buttonClasses.contained}.${buttonClasses.colorWarning}`;
`&.${buttonClasses.text}.${buttonClasses.sizeSmall}`;
`&.${buttonClasses.text}.${buttonClasses.sizeMedium}`;
`&.${buttonClasses.text}.${buttonClasses.sizeLarge}`;
`&.${buttonClasses.outlined}.${buttonClasses.sizeSmall}`;
`&.${buttonClasses.outlined}.${buttonClasses.sizeMedium}`;
`&.${buttonClasses.outlined}.${buttonClasses.sizeLarge}`;
`&.${buttonClasses.contained}.${buttonClasses.sizeSmall}`;
`&.${buttonClasses.contained}.${buttonClasses.sizeMedium}`;
`&.${buttonClasses.contained}.${buttonClasses.sizeLarge}`;
`&.${buttonClasses.sizeSmall} > .${buttonClasses.icon}`;
`&.${buttonClasses.sizeMedium} > .${buttonClasses.icon}`;
`&.${buttonClasses.sizeLarge} > .${buttonClasses.icon}`;