phx-react
Version:
PHX REACT
15 lines • 1.85 kB
JavaScript
import { __assign, __rest } from "tslib";
import React from 'react';
import { classNames } from '../types';
export var PHXTextarea = function (_a) {
var className = _a.className, error = _a.error, errorMessage = _a.errorMessage, helpText = _a.helpText, label = _a.label, register = _a.register, disabled = _a.disabled, rest = __rest(_a, ["className", "error", "errorMessage", "helpText", "label", "register", "disabled"]);
return (React.createElement("div", { className: className },
label && React.createElement("label", { className: 'mb-1 block text-xs font-normal text-gray-700' }, label),
React.createElement("textarea", __assign({}, register, rest, { disabled: disabled, className: classNames('font-normal block w-full rounded-lg border-[0.5px] border-gray-500 px-3 py-1.5 shadow-sm focus:outline-indigo-500 focus:outline-none focus:outline-offset-1 focus:bg-gray-50 hover:bg-gray-50 text-xs focus:ring-transparent focus:border-gray-500', error ? 'border-red-800 bg-red-50 hover:bg-red-50 focus:border-red-800 focus:bg-red-50' : '', disabled ? 'bg-gray-50' : '') })),
helpText ? React.createElement("div", { className: 'mt-1 pl-1 text-xs font-light text-gray-400' }, helpText) : null,
error && errorMessage ? (React.createElement("div", { className: 'ml-1 mt-1 flex items-center' },
React.createElement("svg", { className: 'mr-2 h-4 w-4 text-red-500', fill: 'none', stroke: 'currentColor', strokeWidth: '2', viewBox: '0 0 24 24', xmlns: 'http://www.w3.org/2000/svg' },
React.createElement("path", { d: 'M12 9v3.75m9-.75a9 9 0 11-18 0 9 9 0 0118 0zm-9 3.75h.008v.008H12v-.008z', strokeLinecap: 'round', strokeLinejoin: 'round' })),
React.createElement("p", { className: 'text-xs text-red-800' }, errorMessage))) : null));
};
//# sourceMappingURL=Textarea.js.map