UNPKG

@kuma-ui/compiler

Version:

🐻 Kuma UI is a utility-first, zero-runtime CSS-in-JS library that offers an outstanding developer experience and optimized performance.

42 lines (39 loc) 1.15 kB
import { decode } from "./chunk-4VG2IAQS.mjs"; import { handleJsxExpression } from "./chunk-CSBP7RYO.mjs"; // src/collector/pseudo.ts import { Node } from "ts-morph"; var extractPseudoAttribute = (jsxAttribute) => { const initializer = jsxAttribute.getInitializer(); if (Node.isJsxExpression(initializer)) { const expression = initializer.getExpression(); if (!expression) return; const decodedNode = decode(expression); return handlePseudoJsxExpression(decodedNode); } return void 0; }; var handlePseudoJsxExpression = (node) => { if (Node.isObjectLiteralExpression(node)) { const objProps = {}; for (const prop of node.getProperties()) { if (Node.isPropertyAssignment(prop)) { const initializer = prop.getInitializer(); if (initializer) { const decodedNode = decode(initializer); const propName = prop.getName(); objProps[propName] = handleJsxExpression(decodedNode); } } } return Object.values(objProps).includes(void 0) ? void 0 : objProps; } return handleJsxExpression(node); }; export { extractPseudoAttribute };