Add yet-another-react-lightbox package and update .gitignore to exclude node_modules
This commit is contained in:
8
frontend/node_modules/vite-plugin-svgr/codemods/package.json
generated
vendored
8
frontend/node_modules/vite-plugin-svgr/codemods/package.json
generated
vendored
@@ -1,8 +0,0 @@
|
||||
{
|
||||
"name": "codemods",
|
||||
"version": "0.0.0",
|
||||
"type": "commonjs",
|
||||
"exports": {
|
||||
"./package.json": "./package.json"
|
||||
}
|
||||
}
|
||||
31
frontend/node_modules/vite-plugin-svgr/codemods/readme.md
generated
vendored
31
frontend/node_modules/vite-plugin-svgr/codemods/readme.md
generated
vendored
@@ -1,31 +0,0 @@
|
||||
# Codemod
|
||||
|
||||
## V4
|
||||
|
||||
convert named export to default
|
||||
|
||||
If you want to run it against `.js` or `.jsx` files, please use the command below:
|
||||
|
||||
```
|
||||
npx jscodeshift@latest ./path/to/src/ \
|
||||
--extensions=js,jsx \
|
||||
--transform=./node_modules/vite-plugin-svgr/codemods/src/v4/default-export/default-export.js
|
||||
```
|
||||
|
||||
If you want to run it against `.ts` or `.tsx` files, please use the command below:
|
||||
|
||||
```
|
||||
npx jscodeshift@latest ./path/to/src/ \
|
||||
--extensions=ts,tsx \
|
||||
--parser=tsx \
|
||||
--transform=./node_modules/vite-plugin-svgr/codemods/src/v4/default-export/default-export.js
|
||||
```
|
||||
|
||||
**Note:** Applying the codemod might break your code formatting, so please don't forget to run `prettier` and/or `eslint` after you've applied the codemod!
|
||||
|
||||
Above codemod will convert as imports as bellow
|
||||
|
||||
```diff
|
||||
- import { ReactComponent as NoticeModeIconActive2 } from 'assets/icon.svg';
|
||||
+ import NoticeModeIconActive2 from 'assets/icon.svg?react';
|
||||
```
|
||||
33
frontend/node_modules/vite-plugin-svgr/codemods/src/v4/default-export/default-export.js
generated
vendored
33
frontend/node_modules/vite-plugin-svgr/codemods/src/v4/default-export/default-export.js
generated
vendored
@@ -1,33 +0,0 @@
|
||||
module.exports = function (file, api) {
|
||||
const jscodeshift = api.jscodeshift;
|
||||
const root = jscodeshift(file.source);
|
||||
|
||||
root.find(jscodeshift.ImportDeclaration).forEach((path) => {
|
||||
const importPath = path.node.source.value;
|
||||
|
||||
if (importPath.endsWith(".svg")) {
|
||||
const hasDefaultSpecifier = path.node.specifiers.some((specifier) =>
|
||||
jscodeshift.ImportDefaultSpecifier.check(specifier),
|
||||
);
|
||||
|
||||
// Skip transformation if there is a default import specifier
|
||||
if (!hasDefaultSpecifier) {
|
||||
const updatedImportPath = `${importPath}?react`;
|
||||
|
||||
path.node.specifiers.forEach((specifier) => {
|
||||
if (jscodeshift.ImportSpecifier.check(specifier)) {
|
||||
// Convert named import to default import
|
||||
const newSpecifier = jscodeshift.importDefaultSpecifier(
|
||||
jscodeshift.identifier(specifier.local.name),
|
||||
);
|
||||
specifier.type = "ImportDefaultSpecifier";
|
||||
specifier.local = newSpecifier.local;
|
||||
}
|
||||
});
|
||||
|
||||
path.node.source = jscodeshift.literal(updatedImportPath);
|
||||
}
|
||||
}
|
||||
});
|
||||
return root.toSource();
|
||||
};
|
||||
Reference in New Issue
Block a user