@nlabs/gothamjs
Version:
Platform
29 lines (28 loc) • 2.63 kB
JavaScript
import { useMemo } from "react";
import { cn } from "@nlabs/utils";
import { getTextClasses } from "../../utils/colorUtils.js";
import { jsx } from "react/jsx-runtime";
const Label = ({
className,
color = "neutral",
hasError = false,
label,
name
}) => {
const labelClasses = useMemo(() => getTextClasses(hasError ? "error" : color), [color, hasError]);
if (!label) {
return null;
}
return /* @__PURE__ */ jsx(
"label",
{
className: cn(className, labelClasses),
htmlFor: name,
children: label
}
);
};
export {
Label
};
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvTGFiZWwvTGFiZWwudHN4Il0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOC1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHt1c2VNZW1vfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQge2NufSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuXG5pbXBvcnQge2dldFRleHRDbGFzc2VzfSBmcm9tICcuLi8uLi91dGlscy9jb2xvclV0aWxzLmpzJztcblxuaW1wb3J0IHR5cGUge0dvdGhhbUNvbG9yfSBmcm9tICcuLi8uLi91dGlscy9jb2xvclV0aWxzLmpzJztcbmltcG9ydCB0eXBlIHtGQ30gZnJvbSAncmVhY3QnO1xuXG5leHBvcnQgaW50ZXJmYWNlIExhYmVsUHJvcHMge1xuICByZWFkb25seSBjbGFzc05hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGNvbG9yPzogR290aGFtQ29sb3I7XG4gIHJlYWRvbmx5IGVycm9yQ29sb3I/OiBHb3RoYW1Db2xvcjtcbiAgcmVhZG9ubHkgaGFzRXJyb3I/OiBib29sZWFuO1xuICByZWFkb25seSBsYWJlbDogc3RyaW5nO1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBMYWJlbDogRkM8TGFiZWxQcm9wcz4gPSAoe1xuICBjbGFzc05hbWUsXG4gIGNvbG9yID0gJ25ldXRyYWwnLFxuICBoYXNFcnJvciA9IGZhbHNlLFxuICBsYWJlbCxcbiAgbmFtZVxufSkgPT4ge1xuICBjb25zdCBsYWJlbENsYXNzZXMgPSB1c2VNZW1vKCgpID0+IGdldFRleHRDbGFzc2VzKGhhc0Vycm9yID8gJ2Vycm9yJyA6IGNvbG9yKSwgW2NvbG9yLCBoYXNFcnJvcl0pO1xuXG4gIGlmICghbGFiZWwpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGxhYmVsXG4gICAgICBjbGFzc05hbWU9e2NuKGNsYXNzTmFtZSwgbGFiZWxDbGFzc2VzKX1cbiAgICAgIGh0bWxGb3I9e25hbWV9XG4gICAgPlxuICAgICAge2xhYmVsfVxuICAgIDwvbGFiZWw+XG4gICk7XG59OyJdLAogICJtYXBwaW5ncyI6ICJBQUlBLFNBQVEsZUFBYztBQUN0QixTQUFRLFVBQVM7QUFFakIsU0FBUSxzQkFBcUI7QUE0QnpCO0FBZEcsTUFBTSxRQUF3QixDQUFDO0FBQUEsRUFDcEM7QUFBQSxFQUNBLFFBQVE7QUFBQSxFQUNSLFdBQVc7QUFBQSxFQUNYO0FBQUEsRUFDQTtBQUNGLE1BQU07QUFDSixRQUFNLGVBQWUsUUFBUSxNQUFNLGVBQWUsV0FBVyxVQUFVLEtBQUssR0FBRyxDQUFDLE9BQU8sUUFBUSxDQUFDO0FBRWhHLE1BQUksQ0FBQyxPQUFPO0FBQ1YsV0FBTztBQUFBLEVBQ1Q7QUFFQSxTQUNFO0FBQUEsSUFBQztBQUFBO0FBQUEsTUFDQyxXQUFXLEdBQUcsV0FBVyxZQUFZO0FBQUEsTUFDckMsU0FBUztBQUFBLE1BRVI7QUFBQTtBQUFBLEVBQ0g7QUFFSjsiLAogICJuYW1lcyI6IFtdCn0K