UNPKG

storybook-framework-cedarjs

Version:

Storybook for CedarJS

35 lines (34 loc) 1.35 kB
import { utils } from "react-docgen"; const { getNameOrValue, isReactForwardRefCall } = utils; const actualNameHandler = function actualNameHandler2(documentation, componentDefinition) { 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 };