added backup and email client

This commit is contained in:
2026-02-01 00:02:35 +01:00
parent ff857be01a
commit e4fdfbc95f
210 changed files with 24211 additions and 742 deletions
+43
View File
@@ -0,0 +1,43 @@
const { createMacro, MacroError } = require('babel-plugin-macros');
const { addNamed } = require('@babel/helper-module-imports');
module.exports = createMacro(gooberMacro);
function gooberMacro({ references, babel, state }) {
const program = state.file.path;
if (references.default) {
throw new MacroError('goober.macro does not support default import');
}
// Inject import {...} from 'goober'
Object.keys(references).forEach((refName) => {
const id = addNamed(program, refName, 'goober');
references[refName].forEach((referencePath) => {
referencePath.node.name = id.name;
});
});
const t = babel.types;
const styledReferences = references.styled || [];
styledReferences.forEach((referencePath) => {
const type = referencePath.parentPath.type;
if (type === 'MemberExpression') {
const node = referencePath.parentPath.node;
const functionName = node.object.name;
let elementName = node.property.name;
// Support custom elements
if (/[A-Z]/.test(elementName)) {
elementName = elementName.replace(/[A-Z]/g, '-$&').toLowerCase();
}
referencePath.parentPath.replaceWith(
t.callExpression(t.identifier(functionName), [t.stringLiteral(elementName)])
);
}
});
}
+22
View File
@@ -0,0 +1,22 @@
{
"name": "goober.macro",
"version": "1.0.0",
"description": "A babel macro for goober, rewriting styled.div to styled('div') calls",
"main": "index.js",
"repository": {
"type": "git",
"url": "https://github.com/cristianbote/goober.git",
"directory": "macro"
},
"author": "Hadeeb Farhan <hadeebfarhan1@gmail.com>",
"keywords": [
"babel-plugin-macros",
"goober",
"styled"
],
"license": "MIT",
"peerDependencies": {
"@babel/helper-module-imports": "^7.8.3",
"babel-plugin-macros": "^2.8.0"
}
}