karsten-design-system 2.0.23 → 2.0.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +107 -84
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Karsten Design System
2
2
 
3
- Uma biblioteca de componentes React estilizados para projetos da Karsten, construída sobre o PrimeReact.
3
+ Biblioteca de componentes React estilizados para projetos da Karsten, construída sobre PrimeReact, Tailwind e Vite.
4
4
 
5
5
  ## Instalação
6
6
 
@@ -10,12 +10,6 @@ Com npm:
10
10
  npm install karsten-design-system
11
11
  ```
12
12
 
13
- Com yarn:
14
-
15
- ```bash
16
- yarn add karsten-design-system
17
- ```
18
-
19
13
  ## Configuração do PrimeReact
20
14
 
21
15
  No main.tsx adicione:
@@ -41,20 +35,20 @@ createRoot(document.getElementById("root")!).render(
41
35
 
42
36
  ## Pré-requisitos
43
37
 
44
- Esta biblioteca requer as seguintes dependências:
38
+ Dependências peer necessárias no projeto consumidor:
45
39
 
46
- - React 18 ou superior
47
- - React DOM 18 ou superior
40
+ - React 19 ou superior
41
+ - React DOM 19 ou superior
48
42
  - React Router DOM 7 ou superior
49
- - Tailwind 3.4.0 ou superior
50
- - @types/date-fns 2 ou superior
51
- - Chart.js 4 ou superior
52
- - clsx 2 ou superior
53
- - date-fns 1 ou superior
54
- - Primeicons 7 ou superior
55
- - Primereact 10 ou superior
56
- - Postcss 8 ou superior
57
- - Autoprefixer 10 ou superior
43
+
44
+ Dependências internas importantes (já empacotadas na lib):
45
+
46
+ - PrimeReact 10+
47
+ - PrimeIcons 7+
48
+ - Tailwind 3+
49
+ - Chart.js 4+
50
+ - clsx 2+
51
+ - PostCSS 8+ e Autoprefixer 10+
58
52
 
59
53
  ## Como usar
60
54
 
@@ -74,31 +68,50 @@ function App() {
74
68
 
75
69
  ## Componentes Disponíveis
76
70
 
77
- - `Accordion` - Componente para exibir conteúdo em seções expansíveis e colapsáveis.
78
- - `AutoComplete` - Campo de entrada com sugestões automáticas baseadas no texto digitado.
79
- - `Breadcrumb` - Navegação hierárquica para indicar a localização atual do usuário.
80
- - `Button` - Botão estilizado com variantes primária e secundária.
81
- - `Card` - Contêiner estilizado para exibir informações agrupadas.
82
- - `Chart` - Gráficos para visualização de dados em diferentes formatos.
83
- - `DateInput` - Campo de entrada para seleção de datas.
84
- - `Dialog` - Modal para exibição de mensagens ou ações secundárias.
85
- - `Divider` - Linha divisória para separação visual de conteúdo.
86
- - `Header` - Cabeçalho estilizado para títulos ou menus.
87
- - `IconButton` - Botão com ícone, ideal para ações rápidas.
88
- - `InfoCard` - Cartão informativo para exibir alertas ou dados destacados.
89
- - `Input` - Campo de entrada para texto.
90
- - `InternalMenu` - Menu de navegação interna, útil para dashboards.
91
- - `Link` - Link estilizado para navegação.
92
- - `MegaMenu` - Menu expandido com múltiplas opções organizadas.
93
- - `Notification` - Notificação para exibir alertas e mensagens.
94
- - `Paginator` - Paginação para navegação em listas ou tabelas.
95
- - `RadioButton` - Botões de seleção única dentro de um grupo.
96
- - `Select` - Componente para seleção de opções em um menu suspenso.
97
- - `Sidebar` - Barra lateral para navegação ou exibição de conteúdo adicional.
98
- - `Skeleton` - Elementos de carregamento em estilo esqueleto.
99
- - `Spinner` - Indicador de carregamento animado.
100
- - `Table` - Tabela para exibição de dados estruturados.
101
- - `Toast` - Mensagens temporárias exibidas no canto da tela.
71
+ - `Accordion` - Seções expansíveis/colapsáveis de conteúdo.
72
+ - `BasicHeader` - Cabeçalho simples para páginas ou seções.
73
+ - `Breadcrumb` - Navegação hierárquica por páginas.
74
+ - `Button` - Botão com variantes de estilo.
75
+ - `CalendarInput` - Campo de data com calendário.
76
+ - `Card` - Contêiner estilizado para conteúdo.
77
+ - `CardButton` - Cartão clicável com ação.
78
+ - `CardIconsButton` - Cartão com ações por ícones.
79
+ - `Charts` - Gráficos usando Chart.js.
80
+ - `Checkbox` - Caixa de seleção.
81
+ - `CountryDropdown` - Seletor de país.
82
+ - `Divider` - Divisor visual de conteúdo.
83
+ - `EmptyContent` - Estado vazio para listas ou telas.
84
+ - `ExpandablePanel` - Painel expansível com conteúdo.
85
+ - `FileUpload` - Upload de arquivos.
86
+ - `Header` - Cabeçalho completo com ações.
87
+ - `IconButton` - Botão com ícone.
88
+ - `InfoCard` - Cartão informativo para destaque.
89
+ - `Input` - Campo de texto.
90
+ - `InputSwitch` - Toggle liga/desliga.
91
+ - `InputTextArea` - Área de texto multilinha.
92
+ - `InternalMenu` - Menu interno de navegação.
93
+ - `LanguageDropdown` - Seletor de idioma.
94
+ - `Link` - Link estilizado.
95
+ - `MegaMenu` - Menu expandido com múltiplas opções.
96
+ - `Modal` - Modal de conteúdo.
97
+ - `ModalForm` - Modal com formulário.
98
+ - `Multiselect` - Seleção múltipla de opções.
99
+ - `NotificationsSidebar` - Sidebar de notificações.
100
+ - `Paginator` - Paginação de listas.
101
+ - `RadioButton` - Seleção única entre opções.
102
+ - `RightSidebar` - Sidebar posicionada à direita.
103
+ - `Select` - Seletor de opções.
104
+ - `SelectButton` - Seleção por botões.
105
+ - `Sidebar` - Sidebar para navegação ou conteúdo.
106
+ - `Skeleton` - Placeholder de carregamento.
107
+ - `Spinner` - Indicador de carregamento.
108
+ - `Table` - Tabela de dados.
109
+ - `Tabs` - Navegação por abas.
110
+ - `TagStatus` - Tag de status.
111
+ - `TextColor` - Texto com variação de cor.
112
+ - `Toast` - Mensagens temporárias.
113
+ - `Tooltip` - Dica contextual.
114
+ - `TransferList` - Lista de transferência entre colunas.
102
115
 
103
116
  ## Desenvolvimento
104
117
 
@@ -118,12 +131,6 @@ Com npm:
118
131
  npm install
119
132
  ```
120
133
 
121
- Com yarn:
122
-
123
- ```bash
124
- yarn
125
- ```
126
-
127
134
  3. Execute o Storybook para desenvolvimento:
128
135
 
129
136
  Com npm:
@@ -132,33 +139,63 @@ Com npm:
132
139
  npm run storybook
133
140
  ```
134
141
 
135
- Com yarn:
142
+ ## Comandos
136
143
 
137
- ```bash
138
- yarn storybook
139
- ```
144
+ - `npm run dev` - Inicia o Vite em modo desenvolvimento
145
+ - `npm run storybook` - Inicia o Storybook
146
+ - `npm run build-storybook` - Gera o build do Storybook
147
+ - `npm run build` - Gera o build da biblioteca (types + rollup)
148
+ - `npm run lint` - Lint do projeto
149
+ - `npm run format` - Formata o código
150
+ - `npm run preview` - Preview do build do Vite
140
151
 
141
- ## Scripts Disponíveis
152
+ Os scripts estão definidos em [package.json](package.json).
142
153
 
143
- Com npm:
154
+ ## Estrutura do projeto
155
+
156
+ - [src/index.ts](src/index.ts): ponto de exportação da biblioteca
157
+ - [src/stories/components](src/stories/components): componentes e stories do Storybook
158
+ - [src/types](src/types): tipos compartilhados
159
+ - [src/utils](src/utils): utilitários
160
+ - [src/assets](src/assets): ícones, flags e assets gerais
161
+ - [src/mock](src/mock): mocks para exemplos
162
+
163
+ ## Como criar um componente
164
+
165
+ 1. Crie o componente em [src/stories/components](src/stories/components) seguindo o padrão existente:
166
+
167
+ - Arquivo do componente (ex.: [src/stories/components/button.tsx](src/stories/components/button.tsx))
168
+ - Story do componente (ex.: [src/stories/components/button.stories.ts](src/stories/components/button.stories.ts))
169
+
170
+ 2. Exporte o componente no índice da lib em [src/index.ts](src/index.ts):
144
171
 
145
- - `npm run storybook` - Inicia o ambiente de desenvolvimento do Storybook
146
- - `npm run build-storybook` - Gera o build da biblioteca para hospedagem
147
- - `npm run build` - Gera o build da biblioteca para publicação no npm
172
+ - `export * from './stories/components/meuComponente'`
148
173
 
149
- Com yarn:
174
+ 3. Se necessário, crie tipos em [src/types](src/types) e utilitários em [src/utils](src/utils).
150
175
 
151
- - `yarn storybook` - Inicia o ambiente de desenvolvimento do Storybook
152
- - `yarn build-storybook` - Gera o build do Storybook para hospedagem
153
- - `yarn build` - Gera o build da biblioteca para publicação no npm
176
+ 4. Execute o Storybook para validar o componente:
177
+
178
+ - `npm run storybook`
179
+
180
+ ### Padrão de implementação
181
+
182
+ - Baseie-se em componentes PrimeReact e aplique classes Tailwind.
183
+ - Use `clsx` para composição de classes.
184
+ - Exporte componentes e tipos de forma nomeada.
185
+ - Adicione `argTypes` e `tags: ['autodocs']` no story para gerar docs automáticas.
186
+
187
+ Exemplos de referência:
188
+
189
+ - [src/stories/components/button.tsx](src/stories/components/button.tsx)
190
+ - [src/stories/components/button.stories.ts](src/stories/components/button.stories.ts)
154
191
 
155
192
  ## Publicando uma Nova Versão no NPM
156
193
 
157
- 1. Atualizar a Versão
194
+ 1. Atualize a versão no [package.json](package.json)
158
195
 
159
196
  Antes de publicar, aumente a versão no `package.json` e `package-lock.json`.
160
197
 
161
- 2. Fazer o Build
198
+ 2. Faça o build
162
199
 
163
200
  Com npm:
164
201
 
@@ -166,12 +203,6 @@ Com npm:
166
203
  npm run build
167
204
  ```
168
205
 
169
- Com yarn:
170
-
171
- ```bash
172
- yarn build
173
- ```
174
-
175
206
  3. Login no NPM
176
207
 
177
208
  Se ainda não estiver autenticado, faça login:
@@ -180,7 +211,7 @@ Se ainda não estiver autenticado, faça login:
180
211
  npm login
181
212
  ```
182
213
 
183
- 4. Publicar
214
+ 4. Publique
184
215
 
185
216
  ```bash
186
217
  npm publish --access public
@@ -188,19 +219,11 @@ npm publish --access public
188
219
 
189
220
  ## Resolução de Problemas
190
221
 
191
- Se você encontrar o erro "peer dependencies missing", instale as dependências necessárias:
222
+ Se aparecer "peer dependencies missing", instale as dependências peer no projeto consumidor:
192
223
 
193
- Com npm:
194
-
195
- ```bash
196
- npm install react@^18 react-dom@^18 tailwindcss@^3.4.0 @types/date-fns@^2 chart.js@^4 clsx@^2 date-fns@^1 primeicons@^7 primereact@^10 postcss@^8 autoprefixer@^10
197
- ```
198
-
199
- Com yarn:
200
-
201
- ```bash
202
- yarn add react@^18 react-dom@^18 tailwindcss@^3.4.0 @types/date-fns@^2 chart.js@^4 clsx@^2 date-fns@^1 primeicons@^7 primereact@^10 postcss@^8 autoprefixer@^10
203
- ```
224
+ - React 19+
225
+ - React DOM 19+
226
+ - React Router DOM 7+
204
227
 
205
228
  ## Licença
206
229
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "karsten-design-system",
3
3
  "description": "Karsten Design System Components",
4
- "version": "2.0.23",
4
+ "version": "2.0.24",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "module": "./dist/index.js",