UNPKG

babel-plugin-styled-components

Version:

Improve the debugging experience and add server-side rendering support to styled-components

40 lines (39 loc) 1.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = _default; var _pluginSyntaxJsx = _interopRequireDefault(require("@babel/plugin-syntax-jsx")); var _assignStyledRequired = _interopRequireDefault(require("./visitors/assignStyledRequired")); var _transpileCssProp = _interopRequireDefault(require("./visitors/transpileCssProp")); var _process = require("./visitors/process"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } function _default({ types: t }) { const transpileCssPropVisit = (0, _transpileCssProp.default)(t); const assignStyledRequiredVisit = (0, _assignStyledRequired.default)(t); const processCallExpressionVisit = (0, _process.processCallExpression)(t); const processTaggedTemplateVisit = (0, _process.processTaggedTemplate)(t); return { inherits: _pluginSyntaxJsx.default, visitor: { Program(path, state) { path.traverse({ JSXAttribute(path, state) { transpileCssPropVisit(path, state); }, VariableDeclarator(path, state) { assignStyledRequiredVisit(path, state); } }, state); }, CallExpression(path, state) { processCallExpressionVisit(path, state); }, TaggedTemplateExpression(path, state) { processTaggedTemplateVisit(path, state); } } }; }