UNPKG

storybook-framework-cedarjs

Version:
36 lines (35 loc) 1.43 kB
import { utils } from "react-docgen"; const { getNameOrValue, isReactForwardRefCall } = utils; const actualNameHandler = function actualNameHandler2(documentation, componentDefinition) { documentation.set("definedInFile", componentDefinition.hub.file.opts.filename); if ((componentDefinition.isClassDeclaration() || componentDefinition.isFunctionDeclaration()) && componentDefinition.has("id")) { documentation.set( "actualName", getNameOrValue(componentDefinition.get("id")) ); } else if (componentDefinition.isArrowFunctionExpression() || componentDefinition.isFunctionExpression() || isReactForwardRefCall(componentDefinition)) { let currentPath = componentDefinition; while (currentPath.parentPath) { if (currentPath.parentPath.isVariableDeclarator()) { documentation.set( "actualName", getNameOrValue(currentPath.parentPath.get("id")) ); return; } if (currentPath.parentPath.isAssignmentExpression()) { const leftPath = currentPath.parentPath.get("left"); if (leftPath.isIdentifier() || leftPath.isLiteral()) { documentation.set("actualName", getNameOrValue(leftPath)); return; } } currentPath = currentPath.parentPath; } documentation.set("actualName", ""); } }; var actualNameHandler_default = actualNameHandler; export { actualNameHandler_default as default };