@visio-io/design-system 1.0.2 → 1.2.0

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 (36) hide show
  1. package/README.md +90 -181
  2. package/dist/index.cjs.js +43 -43
  3. package/dist/index.cjs.js.map +1 -1
  4. package/dist/index.es.js +5088 -6102
  5. package/dist/index.es.js.map +1 -1
  6. package/dist/style.css +1 -1
  7. package/dist/types/components/DisplayTypes/DisplayTypes.d.ts +5 -0
  8. package/dist/types/components/DisplayTypes/DisplayTypes.stories.d.ts +10 -0
  9. package/dist/types/components/DisplayTypes/index.d.ts +2 -0
  10. package/dist/types/components/DisplayTypes/types.d.ts +10 -0
  11. package/dist/types/components/index.d.ts +2 -6
  12. package/dist/types/index.d.ts +0 -2
  13. package/dist/types/styles/tokens/spacing.d.ts +0 -1
  14. package/dist/types/theme/theme.d.ts +0 -1
  15. package/package.json +1 -1
  16. package/src/styles/tokens/css-variables.scss +27 -0
  17. package/src/styles/tokens/spacing.ts +0 -1
  18. package/dist/types/components/ModuleMenu/ModuleMenu.d.ts +0 -5
  19. package/dist/types/components/ModuleMenu/ModuleMenu.stories.d.ts +0 -7
  20. package/dist/types/components/ModuleMenu/index.d.ts +0 -2
  21. package/dist/types/components/ModuleMenu/types.d.ts +0 -25
  22. package/dist/types/components/ModuleMenu/useModuleMenu.d.ts +0 -12
  23. package/dist/types/components/SidebarMenu/SidebarMenu.d.ts +0 -5
  24. package/dist/types/components/SidebarMenu/SidebarMenu.stories.d.ts +0 -8
  25. package/dist/types/components/SidebarMenu/index.d.ts +0 -2
  26. package/dist/types/components/SidebarMenu/types.d.ts +0 -25
  27. package/dist/types/components/SidebarMenu/useSidebarMenu.d.ts +0 -19
  28. package/dist/types/components/VideoPlayer/VideoPlayer.d.ts +0 -5
  29. package/dist/types/components/VideoPlayer/VideoPlayer.stories.d.ts +0 -21
  30. package/dist/types/components/VideoPlayer/components/ControlMenu.d.ts +0 -16
  31. package/dist/types/components/VideoPlayer/handlers.d.ts +0 -9
  32. package/dist/types/components/VideoPlayer/index.d.ts +0 -3
  33. package/dist/types/components/VideoPlayer/types.d.ts +0 -28
  34. package/dist/types/components/VideoPlayer/useVideoPlayer.d.ts +0 -21
  35. package/dist/types/components/VideoPlayer/utils.d.ts +0 -2
  36. package/dist/types/theme/VisioThemeProvider.d.ts +0 -18
package/README.md CHANGED
@@ -1,242 +1,151 @@
1
1
  # Visio Design System
2
2
 
3
- Sistema de design unificado da Visio com componentes React reutilizáveis.
3
+ Biblioteca de componentes de design system baseada em React e Material-UI.
4
4
 
5
- ## 📦 Instalação
5
+ ## Instalação
6
6
 
7
- ### Usando Yalc (desenvolvimento local)
7
+ ### Como repositório privado (GitHub/GitLab)
8
8
 
9
- ```bash
10
- # No diretório do design system
11
- pnpm build
12
- yalc push
13
-
14
- # No projeto que vai consumir
15
- yalc add @visio-io/design-system
16
- ```
17
-
18
- ### Usando npm/pnpm (produção)
9
+ Para usar este repositório como biblioteca privada diretamente do Git:
19
10
 
20
11
  ```bash
21
- npm install @visio-io/design-system
22
- # ou
23
- pnpm add @visio-io/design-system
24
- ```
25
-
26
- ## 🚀 Uso básico
27
-
28
- ### 1. Importar o CSS global
29
-
30
- No arquivo principal da aplicação (ex: `layout.tsx`, `_app.tsx`, `main.tsx`):
31
-
32
- ```tsx
33
- import "@visio-io/design-system/style.css";
34
- ```
35
-
36
- **⚠️ Importante:** Use `@visio-io/design-system/style.css` (sem `/dist`) porque o `package.json` já mapeia o caminho corretamente.
37
-
38
- ### 2. Importar componentes
39
-
40
- ```tsx
41
- import { Button, VideoPlayer, SearchBar } from "@visio-io/design-system";
42
-
43
- function App() {
44
- return (
45
- <div>
46
- <Button>Click me</Button>
47
- <VideoPlayer availableQualities={[...]} />
48
- </div>
49
- );
50
- }
51
- ```
52
-
53
- ### 3. Usar tokens de design (opcional)
54
-
55
- ```tsx
56
- import { lightColors, darkColors, spacingTokens } from "@visio-io/design-system/tokens";
57
-
58
- // Use os tokens nos seus estilos customizados
59
- const myStyle = {
60
- color: lightColors.primary,
61
- padding: spacingTokens.md,
62
- };
63
- ```
64
-
65
- ## 📚 Componentes disponíveis
66
-
67
- - **Button** - Botão customizável com variantes
68
- - **VideoPlayer** - Player de vídeo com suporte a WebRTC, controles completos e responsivo
69
- - **SearchBar** - Barra de busca com autocomplete e filtros
70
- - **ModuleMenu** - Menu de módulos com estados expandido/colapsado
71
- - **SidebarMenu** - Menu lateral com subitens
72
- - **GoogleMap** - Integração com Google Maps
73
- - **MapSpot** - Marcadores customizados para mapas
74
- - **CountCard** - Cartão para exibir contadores
75
- - **FilterButton** - Botão com dropdown de filtros
76
- - **NotFoundContent** - Tela de conteúdo não encontrado
77
- - **ZoomControls** - Controles de zoom para mapas
12
+ # Com pnpm
13
+ pnpm add git+https://github.com/USUARIO/visio-design-system.git
14
+ # ou com branch/tag específica
15
+ pnpm add git+https://github.com/USUARIO/visio-design-system.git#main
78
16
 
79
- ## 🎨 Tema e estilização
17
+ # Com npm
18
+ npm install git+https://github.com/USUARIO/visio-design-system.git
80
19
 
81
- O design system usa Material-UI como base. Para personalizar o tema:
82
-
83
- ```tsx
84
- import { ThemeProvider, createTheme } from '@mui/material/styles';
85
- import { lightTheme, darkTheme } from '@visio-io/design-system';
86
-
87
- // Use o tema padrão
88
- <ThemeProvider theme={lightTheme}>
89
- <App />
90
- </ThemeProvider>
91
-
92
- // Ou customize
93
- const customTheme = createTheme({
94
- ...lightTheme,
95
- palette: {
96
- ...lightTheme.palette,
97
- primary: {
98
- main: '#your-color',
99
- },
100
- },
101
- });
20
+ # Com yarn
21
+ yarn add git+https://github.com/USUARIO/visio-design-system.git
102
22
  ```
103
23
 
104
- ## 🔧 Desenvolvimento
105
-
106
- ### Executar Storybook
24
+ **Para repositórios privados**, você precisará configurar autenticação:
107
25
 
26
+ 1. **Usando SSH** (recomendado):
108
27
  ```bash
109
- pnpm dev
28
+ pnpm add git+ssh://git@github.com/USUARIO/visio-design-system.git
110
29
  ```
111
30
 
112
- Acesse: http://localhost:6006
113
-
114
- ### Build
115
-
31
+ 2. **Usando token de acesso pessoal**:
116
32
  ```bash
117
- pnpm build
33
+ pnpm add git+https://SEU_TOKEN@github.com/USUARIO/visio-design-system.git
118
34
  ```
119
35
 
120
- ### Publicar (yalc)
121
-
122
- ```bash
123
- pnpm build && yalc push
36
+ 3. **Configurando no `.npmrc`** do projeto que vai usar a lib:
37
+ ```
38
+ @visio-io:registry=https://npm.pkg.github.com
39
+ //npm.pkg.github.com/:_authToken=SEU_TOKEN
124
40
  ```
125
41
 
126
- ## 📖 Documentação
42
+ **Nota:** O script `prepare` executa automaticamente o build quando o pacote é instalado via Git.
127
43
 
128
- Acesse o Storybook para ver a documentação completa de cada componente com exemplos interativos:
44
+ ## Dependências Peer
129
45
 
130
- ```bash
131
- pnpm dev
132
- ```
46
+ Este pacote requer as seguintes dependências no seu projeto:
133
47
 
134
- ## 🐛 Troubleshooting
48
+ - `react` ^19.0.0
49
+ - `react-dom` ^19.0.0
50
+ - `@mui/material` ^5.0.0
51
+ - `@emotion/react` ^11.0.0
52
+ - `@emotion/styled` ^11.0.0
135
53
 
136
- ### Erro: "Module not found: Can't resolve '@visio-io/design-system/dist/style.css'"
54
+ ## Uso
137
55
 
138
- **Causa:** Import incorreto do CSS.
139
-
140
- **Solução:** Use `@visio-io/design-system/style.css` (sem `/dist`):
56
+ ### Importar componentes
141
57
 
142
58
  ```tsx
143
- // Errado
144
- import "@visio-io/design-system/dist/style.css";
59
+ import { Button } from "@visio-io/design-system";
145
60
 
146
- // Correto
147
- import "@visio-io/design-system/style.css";
61
+ function App() {
62
+ return <Button variant="contained">Clique aqui</Button>;
63
+ }
148
64
  ```
149
65
 
150
- ### Erro: "Cannot find module '@visio-io/design-system'"
151
-
152
- **Causa:** Pacote não instalado.
66
+ **Nota:** Os estilos CSS são incluídos automaticamente quando você importa qualquer componente. Não é necessário importar o CSS manualmente.
153
67
 
154
- **Solução:** Execute `yalc add @visio-io/design-system` no projeto receptor.
68
+ ### Importar temas
155
69
 
156
- ### Estilos não aplicados
70
+ ```tsx
71
+ import { ThemeProvider } from "@mui/material/styles";
72
+ import { lightTheme, darkTheme } from "@visio-io/design-system";
157
73
 
158
- **Causa:** CSS não importado ou ordem de importação incorreta.
74
+ function App() {
75
+ return (
76
+ <ThemeProvider theme={lightTheme}>
77
+ {/* Seus componentes aqui */}
78
+ </ThemeProvider>
79
+ );
80
+ }
81
+ ```
159
82
 
160
- **Solução:**
161
- 1. Certifique-se de importar o CSS antes dos componentes
162
- 2. Verifique se o CSS está sendo importado no arquivo raiz da aplicação
83
+ ### Importar tokens
163
84
 
164
85
  ```tsx
165
- // Ordem correta
166
- import "@/app/styles/globals.css";
167
- import "@visio-io/design-system/style.css";
168
- import { Button } from "@visio-io/design-system";
86
+ import { spacingTokens, colorsTokens } from "@visio-io/design-system/tokens";
169
87
  ```
170
88
 
171
- ## 📝 Estrutura de exports
89
+ ## Desenvolvimento
172
90
 
173
- O `package.json` exporta:
91
+ ```bash
92
+ # Instalar dependências
93
+ pnpm install
174
94
 
175
- ```json
176
- {
177
- ".": "./dist/index.es.js", // Componentes
178
- "./style.css": "./dist/style.css", // Estilos
179
- "./tokens": "./src/styles/tokens" // Tokens de design
180
- }
95
+ # Executar Storybook
96
+ pnpm dev
97
+
98
+ # Build da biblioteca
99
+ pnpm build
100
+
101
+ # Verificar tipos
102
+ pnpm type-check
181
103
  ```
182
104
 
183
- ## 🤝 Contribuindo
105
+ ## Publicação
184
106
 
185
- 1. Clone o repositório
186
- 2. Instale as dependências: `pnpm install`
187
- 3. Faça suas alterações
188
- 4. Execute o Storybook: `pnpm dev`
189
- 5. Build: `pnpm build`
190
- 6. Teste localmente com yalc: `yalc push`
107
+ O projeto usa [Changesets](https://github.com/changesets/changesets) para gerenciamento de versões e é publicado no GitHub Packages.
191
108
 
192
- ## 📦 Publicando nova versão
109
+ ### Publicação Automática (Recomendado)
193
110
 
194
- ### Usando Changesets (recomendado)
111
+ O projeto possui um workflow do GitHub Actions que publica automaticamente quando há changesets no branch `main` ou `master`.
195
112
 
113
+ 1. Crie um changeset:
196
114
  ```bash
197
- # 1. Criar um changeset documentando as mudanças
198
115
  pnpm changeset
116
+ ```
199
117
 
200
- # 2. Atualizar versão e CHANGELOG
201
- pnpm changeset version
202
-
203
- # 3. Build e publicar
204
- pnpm release
118
+ 2. Commit e push:
119
+ ```bash
120
+ git add .
121
+ git commit -m "feat: nova funcionalidade"
122
+ git push
205
123
  ```
206
124
 
207
- ### Publicação manual
125
+ 3. O workflow irá:
126
+ - Detectar o changeset
127
+ - Criar um PR com a atualização de versão
128
+ - Após merge, publicar automaticamente no GitHub Packages
208
129
 
209
- ```bash
210
- # 1. Atualizar versão no package.json
211
- # Edite manualmente ou use:
212
- npm version patch # 1.0.1 -> 1.0.2
213
- npm version minor # 1.0.1 -> 1.1.0
214
- npm version major # 1.0.1 -> 2.0.0
130
+ ### Publicação Manual
215
131
 
216
- # 2. Build
132
+ ```bash
133
+ # Build do projeto
217
134
  pnpm build
218
135
 
219
- # 3. Publicar no npm
220
- npm publish --access public
221
-
222
- # 4. Push das tags
223
- git push --follow-tags
136
+ # Publicar no GitHub Packages
137
+ pnpm publish
224
138
  ```
225
139
 
226
- ### Versionamento semântico
140
+ **Nota:** Você precisará configurar autenticação. Veja o arquivo `TUTORIAL_GITHUB_PACKAGES.md` para instruções completas.
227
141
 
228
- - **PATCH** (1.0.x): Correções de bugs, pequenas melhorias
229
- - **MINOR** (1.x.0): Novas funcionalidades, backward compatible
230
- - **MAJOR** (x.0.0): Breaking changes
142
+ ### Instalação do Pacote Publicado
231
143
 
232
- ### ⚠️ Antes de publicar
144
+ Para instalar o pacote publicado no GitHub Packages:
233
145
 
234
- - Certifique-se de estar autenticado no npm: `npm login`
235
- - Verifique se tem permissões no package `@visio-io/design-system`
236
- - ✅ Atualize o CHANGELOG.md com as mudanças
237
- - Teste a build localmente: `pnpm build`
238
- - ✅ Verifique os arquivos que serão publicados: `npm pack --dry-run`
239
-
240
- ## 📄 Licença
146
+ 1. Configure autenticação (veja `TUTORIAL_GITHUB_PACKAGES.md`)
147
+ 2. Instale o pacote:
148
+ ```bash
149
+ pnpm add @visio-io/design-system
150
+ ```
241
151
 
242
- Proprietary - Visio.io