UNPKG

design-system-govbr-rnp

Version:

## Padrão Digital de Governo - React Biblioteca de componentes React que implementa o [Padrão Visual digital do governo](https://www.gov.br/ds/). O objetivo da biblioteca é facilitar a implementação e promover a padronização das interfaces de sistemas do

168 lines (167 loc) 5.46 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = exports.States = exports.SidedLabel = exports.MaxLength = exports.Inverted = exports.Density = exports.Default = exports.CharacterCount = void 0; var _react = _interopRequireDefault(require("react")); var _Textarea = _interopRequireDefault(require("./Textarea")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var _default = { title: "Components/Textarea", component: _Textarea.default, argTypes: { characterCount: { description: "Propriedade que mostra a contagem dos caracteres." }, disabled: { description: "Propriedade que desabilita ou nao a textarea." }, feedback: { description: "Objeto que detalha as mensagens para o campo de textarea. A propriedade message é a mensagem que deverar ser apresentada na parte de baixo do input. A propriedade type descreve qual o tipo de sinalização será visível, podendo ser: success (sucesso), error (erros), warn (alerta de campo)." }, id: { description: "Id único para fazer o campo de input e referenciar o label para a textarea." }, informativeText: { description: "Texto informativo fixo abaixo da textarea." }, inverted: { description: "Propriedade para light e dark theme." }, label: { description: "Label relacionado a textarea." }, maxLength: { description: "Propriedade que diz quanto caracteres no máximo terá a textarea." }, onChange: { description: "Função que passa o evento para controlar o componente." }, placeholder: { description: "Placeholder da textarea." }, textareaRef: { description: "Referencência da textarea para manipulações." }, sided: { description: "Propriedade que coloca o label na lateral." }, size: { description: "Representa a densidade da textarea, podendo ser: small, medium e large." } } }; exports.default = _default; var Template = function Template(args) { return /*#__PURE__*/_react.default.createElement(_Textarea.default, args); }; var Default = Template.bind({}); exports.Default = Default; Default.storyName = "Textarea padrão"; Default.args = { id: "default", informativeText: "Texto auxiliar ao preenchimento.", label: "Label", placeholder: "Exemplo de textarea simples" }; var MaxLength = Template.bind({}); exports.MaxLength = MaxLength; MaxLength.storyName = "Com limite e contador de caracteres"; MaxLength.args = { id: "maxLength", characterCount: true, label: "Label", maxLength: 200, placeholder: "Exemplo de textarea com limite e contador de caracteres" }; var CharacterCount = Template.bind({}); exports.CharacterCount = CharacterCount; CharacterCount.storyName = "Sem limite com contador de caracteres"; CharacterCount.args = { id: "characterCount", characterCount: true, label: "Label", placeholder: "Exemplo de textarea sem limite e contador de caracteres" }; var SidedLabel = Template.bind({}); exports.SidedLabel = SidedLabel; SidedLabel.storyName = "Label à esquerda"; SidedLabel.args = { id: "sided", label: "Label", placeholder: "Exemplo de textarea com label lateral", sided: true }; var Density = function Density() { return /*#__PURE__*/_react.default.createElement("div", { style: { display: "grid", gridColumnGap: "24px", gridTemplateColumns: "calc(50% - 12px) calc(50% - 12px)" } }, /*#__PURE__*/_react.default.createElement(_Textarea.default, { id: "small", label: "densidade baixa", placeholder: "Digite aqui", size: "small" }), /*#__PURE__*/_react.default.createElement(_Textarea.default, { id: "large", label: "densidade alta", placeholder: "Digite aqui", size: "large" })); }; exports.Density = Density; Density.storyName = "Densidades"; var States = function States() { return /*#__PURE__*/_react.default.createElement("div", { style: { display: "grid", gridColumnGap: "24px", gridTemplateColumns: "calc(32% - 8px) calc(32% - 8px) calc(32% - 8px)" } }, /*#__PURE__*/_react.default.createElement(_Textarea.default, { feedback: { type: "success", message: "Campo correto" }, id: "success", label: "Label", placeholder: "Exemplo de textarea com sucesso" }), /*#__PURE__*/_react.default.createElement(_Textarea.default, { feedback: { type: "error", message: "Campo com erro" }, id: "large", label: "densidade alta", placeholder: "Exemplo de textarea com erro" }), /*#__PURE__*/_react.default.createElement(_Textarea.default, { disabled: true, feedback: { type: "warn", message: "Campo desabilitado" }, id: "large", label: "densidade alta", placeholder: "Exemplo de textarea com desabilitado" })); }; exports.States = States; States.storyName = "Validação e estados"; var Inverted = function Inverted() { return /*#__PURE__*/_react.default.createElement("div", { style: { backgroundColor: "#071d41", padding: "32px" } }, /*#__PURE__*/_react.default.createElement(_Textarea.default, { id: "inverted", informativeText: "Texto auxiliar ao preenchimento.", inverted: true, label: "Label", placeholder: "Exemplo de textarea simples" })); }; exports.Inverted = Inverted; Inverted.storyName = "Em fundo escuro";