voa-ds-core 1.0.11 → 1.0.13

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 (59) hide show
  1. package/dist/collection/components/GetStarted/ComoUsar.stories.js +32 -3
  2. package/dist/collection/components/GetStarted/ComoUsar.stories.js.map +1 -1
  3. package/dist/collection/components/voa-tag/voa-tag.stories.js +6 -6
  4. package/dist/collection/components/voa-tag/voa-tag.stories.js.map +1 -1
  5. package/dist/collection/index.js +2 -0
  6. package/dist/collection/index.js.map +1 -0
  7. package/dist/styles/voa-components.css +4839 -0
  8. package/dist/types/index.d.ts +2 -0
  9. package/dist/types/types/index.d.ts +1 -0
  10. package/package.json +5 -2
  11. package/dist/collection/components/GetStarted/ImportandoEstilos.stories.js +0 -414
  12. package/dist/collection/components/GetStarted/ImportandoEstilos.stories.js.map +0 -1
  13. package/dist/collection/styles/external/saas-dashboard.css +0 -566
  14. package/dist/collection/styles/external/voa-accordion.external.css +0 -295
  15. package/dist/collection/styles/external/voa-alert.external.css +0 -348
  16. package/dist/collection/styles/external/voa-avatar.external.css +0 -118
  17. package/dist/collection/styles/external/voa-badge.external.css +0 -346
  18. package/dist/collection/styles/external/voa-breadcrumbs.external.css +0 -183
  19. package/dist/collection/styles/external/voa-button.external.css +0 -257
  20. package/dist/collection/styles/external/voa-card.external.css +0 -30
  21. package/dist/collection/styles/external/voa-checkbox.external.css +0 -303
  22. package/dist/collection/styles/external/voa-input-addon.external.css +0 -204
  23. package/dist/collection/styles/external/voa-input.external.css +0 -307
  24. package/dist/collection/styles/external/voa-keybinding.external.css +0 -34
  25. package/dist/collection/styles/external/voa-option.external.css +0 -213
  26. package/dist/collection/styles/external/voa-pagination.external.css +0 -125
  27. package/dist/collection/styles/external/voa-radio.external.css +0 -235
  28. package/dist/collection/styles/external/voa-radio.styles.ts +0 -155
  29. package/dist/collection/styles/external/voa-select.external.css +0 -568
  30. package/dist/collection/styles/external/voa-switch.external.css +0 -215
  31. package/dist/collection/styles/external/voa-tab.external.css +0 -284
  32. package/dist/collection/styles/external/voa-tag.external.css +0 -206
  33. package/dist/collection/styles/external/voa-text-area.external.css +0 -174
  34. package/dist/collection/styles/external/voa-tooltip.external.css +0 -320
  35. package/dist/collection/styles/voa-components.css +0 -32
  36. package/dist/types/components/GetStarted/ImportandoEstilos.stories.d.ts +0 -4
  37. package/dist/voa/styles/external/saas-dashboard.css +0 -566
  38. package/dist/voa/styles/external/voa-accordion.external.css +0 -295
  39. package/dist/voa/styles/external/voa-alert.external.css +0 -348
  40. package/dist/voa/styles/external/voa-avatar.external.css +0 -118
  41. package/dist/voa/styles/external/voa-badge.external.css +0 -346
  42. package/dist/voa/styles/external/voa-breadcrumbs.external.css +0 -183
  43. package/dist/voa/styles/external/voa-button.external.css +0 -257
  44. package/dist/voa/styles/external/voa-card.external.css +0 -30
  45. package/dist/voa/styles/external/voa-checkbox.external.css +0 -303
  46. package/dist/voa/styles/external/voa-input-addon.external.css +0 -204
  47. package/dist/voa/styles/external/voa-input.external.css +0 -307
  48. package/dist/voa/styles/external/voa-keybinding.external.css +0 -34
  49. package/dist/voa/styles/external/voa-option.external.css +0 -213
  50. package/dist/voa/styles/external/voa-pagination.external.css +0 -125
  51. package/dist/voa/styles/external/voa-radio.external.css +0 -235
  52. package/dist/voa/styles/external/voa-radio.styles.ts +0 -155
  53. package/dist/voa/styles/external/voa-select.external.css +0 -568
  54. package/dist/voa/styles/external/voa-switch.external.css +0 -215
  55. package/dist/voa/styles/external/voa-tab.external.css +0 -284
  56. package/dist/voa/styles/external/voa-tag.external.css +0 -206
  57. package/dist/voa/styles/external/voa-text-area.external.css +0 -174
  58. package/dist/voa/styles/external/voa-tooltip.external.css +0 -320
  59. package/dist/voa/styles/voa-components.css +0 -32
@@ -0,0 +1,2 @@
1
+ export * from './components';
2
+ export { Components, JSX } from './components';
@@ -0,0 +1 @@
1
+ export * from '../components';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "voa-ds-core",
3
- "version": "1.0.11",
3
+ "version": "1.0.13",
4
4
  "main": "dist/index.cjs.js",
5
5
  "module": "dist/index.js",
6
6
  "types": "dist/types/index.d.ts",
@@ -25,10 +25,13 @@
25
25
  }
26
26
  },
27
27
  "scripts": {
28
- "build": "stencil build --prod --docs && node convert-markdown-to-mdx.js",
28
+ "build": "stencil build --prod --docs && node convert-markdown-to-mdx.js && node scripts/build-styles.js",
29
29
  "dev": "stencil build --watch --serve"
30
30
  },
31
31
  "dependencies": {
32
32
  "@stencil/core": "^4.0.0"
33
+ },
34
+ "publishConfig": {
35
+ "registry": "https://proget-npm.aguiabranca.com.br/npm/npm-private/"
33
36
  }
34
37
  }
@@ -1,414 +0,0 @@
1
- import { html } from "lit-html";
2
- export default {
3
- title: "Documentação/Importando Estilos CSS",
4
- };
5
- const Template = () => html `
6
- <style>
7
- .guia-container {
8
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
9
- line-height: 1.7;
10
- max-width: 1000px;
11
- margin: 0 auto;
12
- padding: 30px;
13
- color: #2d3748;
14
- }
15
-
16
- .guia-container h1 {
17
- font-size: 2.5rem;
18
- margin-bottom: 10px;
19
- color: #1a202c;
20
- }
21
-
22
- .guia-container h2 {
23
- font-size: 1.8rem;
24
- margin-top: 40px;
25
- margin-bottom: 15px;
26
- color: #2d3748;
27
- border-bottom: 3px solid #3182ce;
28
- padding-bottom: 10px;
29
- }
30
-
31
- .guia-container h3 {
32
- font-size: 1.4rem;
33
- margin-top: 30px;
34
- margin-bottom: 12px;
35
- color: #4a5568;
36
- }
37
-
38
- .guia-container h4 {
39
- font-size: 1.1rem;
40
- margin-top: 20px;
41
- margin-bottom: 8px;
42
- color: #718096;
43
- }
44
-
45
- .guia-container pre {
46
- background-color: #2d3748;
47
- color: #f7fafc;
48
- padding: 20px;
49
- border-radius: 8px;
50
- overflow-x: auto;
51
- font-size: 14px;
52
- line-height: 1.5;
53
- margin: 15px 0;
54
- }
55
-
56
- .guia-container code {
57
- font-family: 'Fira Code', 'Courier New', monospace;
58
- }
59
-
60
- .guia-container ul {
61
- margin: 15px 0;
62
- padding-left: 25px;
63
- }
64
-
65
- .guia-container li {
66
- margin: 8px 0;
67
- }
68
-
69
- .alert-box {
70
- background: #ebf8ff;
71
- border-left: 4px solid #3182ce;
72
- padding: 15px 20px;
73
- margin: 20px 0;
74
- border-radius: 4px;
75
- }
76
-
77
- .warning-box {
78
- background: #fffaf0;
79
- border-left: 4px solid #ed8936;
80
- padding: 15px 20px;
81
- margin: 20px 0;
82
- border-radius: 4px;
83
- }
84
-
85
- .success-box {
86
- background: #f0fff4;
87
- border-left: 4px solid #48bb78;
88
- padding: 15px 20px;
89
- margin: 20px 0;
90
- border-radius: 4px;
91
- }
92
-
93
- .error-box {
94
- background: #fff5f5;
95
- border-left: 4px solid #f56565;
96
- padding: 15px 20px;
97
- margin: 20px 0;
98
- border-radius: 4px;
99
- }
100
-
101
- .variants-table {
102
- width: 100%;
103
- border-collapse: collapse;
104
- margin: 15px 0;
105
- }
106
-
107
- .variants-table th,
108
- .variants-table td {
109
- padding: 12px;
110
- text-align: left;
111
- border-bottom: 1px solid #e2e8f0;
112
- }
113
-
114
- .variants-table th {
115
- background: #edf2f7;
116
- font-weight: 600;
117
- }
118
-
119
- .code-inline {
120
- background: #edf2f7;
121
- padding: 2px 6px;
122
- border-radius: 3px;
123
- font-family: monospace;
124
- font-size: 0.9em;
125
- }
126
- </style>
127
-
128
- <div class="guia-container">
129
- <h1>Como Importar os Estilos CSS</h1>
130
- <p>
131
- Se você está usando os componentes mas eles aparecem sem estilização,
132
- provavelmente o CSS não está sendo carregado. Veja como resolver.
133
- </p>
134
-
135
- <div class="error-box">
136
- <strong>Problema Comum:</strong> Componentes aparecem sem cores, espaçamento ou qualquer estilo visual.
137
- </div>
138
-
139
- <h2>Importação Automática (Recomendado)</h2>
140
-
141
- <div class="success-box">
142
- Os estilos são importados automaticamente quando você importa qualquer componente dos pacotes wrapper.
143
- </div>
144
-
145
- <h3>React</h3>
146
- <pre><code>import { VoaButton } from 'voa-ds-react';
147
-
148
- function App() {
149
- return &lt;VoaButton&gt;Clique aqui&lt;/VoaButton&gt;;
150
- }
151
-
152
- // Os estilos já estão incluídos!</code></pre>
153
-
154
- <h3>Angular</h3>
155
- <p>No Angular, você precisa adicionar o CSS no arquivo <span class="code-inline">angular.json</span>:</p>
156
- <pre><code>{
157
- "projects": {
158
- "seu-projeto": {
159
- "architect": {
160
- "build": {
161
- "options": {
162
- "styles": [
163
- "node_modules/voa-ds-core/dist/voa/voa.css",
164
- "src/styles.css"
165
- ]
166
- }
167
- }
168
- }
169
- }
170
- }
171
- }</code></pre>
172
-
173
- <h3>Vue</h3>
174
- <pre><code>&lt;template&gt;
175
- &lt;VoaButton&gt;Clique aqui&lt;/VoaButton&gt;
176
- &lt;/template&gt;
177
-
178
- &lt;script&gt;
179
- import { VoaButton } from 'voa-ds-vue';
180
-
181
- export default {
182
- components: { VoaButton }
183
- }
184
- // Os estilos já estão incluídos!
185
- &lt;/script&gt;</code></pre>
186
-
187
- <hr style="margin: 50px 0; border: none; border-top: 1px solid #e2e8f0;">
188
-
189
- <h2>Importação Manual</h2>
190
-
191
- <p>Se os estilos não estiverem sendo aplicados automaticamente, você pode importá-los manualmente.</p>
192
-
193
- <h3>Opção 1: Importar do Pacote Wrapper</h3>
194
- <pre><code>// React
195
- import 'voa-ds-react/styles';
196
-
197
- // Angular
198
- import 'voa-ds-angular/styles';
199
-
200
- // Vue
201
- import 'voa-ds-vue/styles';</code></pre>
202
-
203
- <h3>Opção 2: Importar Direto do Core</h3>
204
- <pre><code>import 'voa-ds-core/dist/voa/voa.css';</code></pre>
205
-
206
- <h3>Opção 3: Adicionar no HTML (Apenas para Testes)</h3>
207
- <pre><code>&lt;link rel="stylesheet" href="node_modules/voa-ds-core/dist/voa/voa.css"&gt;</code></pre>
208
-
209
- <div class="warning-box">
210
- <strong>Atenção:</strong> A Opção 3 não é recomendada para produção, use apenas para testes rápidos.
211
- </div>
212
-
213
- <hr style="margin: 50px 0; border: none; border-top: 1px solid #e2e8f0;">
214
-
215
- <h2>Configuração de Bundlers</h2>
216
-
217
- <h3>Vite (React/Vue)</h3>
218
- <div class="success-box">
219
- Vite processa CSS automaticamente. Não é necessária configuração adicional.
220
- </div>
221
- <pre><code>// vite.config.ts ou vite.config.js
222
- import { defineConfig } from 'vite';
223
- import react from '@vitejs/plugin-react'; // ou vue
224
-
225
- export default defineConfig({
226
- plugins: [react()]
227
- // Pronto! Não precisa configurar mais nada
228
- });</code></pre>
229
-
230
- <h3>Webpack (React/Angular)</h3>
231
- <p>Certifique-se de ter o <span class="code-inline">css-loader</span> e <span class="code-inline">style-loader</span> configurados:</p>
232
- <pre><code>// webpack.config.js
233
- module.exports = {
234
- module: {
235
- rules: [
236
- {
237
- test: /\\.css$/,
238
- use: ['style-loader', 'css-loader']
239
- }
240
- ]
241
- }
242
- };</code></pre>
243
-
244
- <p>Se não tiver instalado:</p>
245
- <pre><code>npm install --save-dev css-loader style-loader</code></pre>
246
-
247
- <h3>Create React App</h3>
248
- <div class="success-box">
249
- O CRA já processa CSS automaticamente. Não é necessária configuração adicional.
250
- </div>
251
-
252
- <h3>Next.js</h3>
253
- <p>Importe no arquivo <span class="code-inline">_app.tsx</span> ou <span class="code-inline">_app.jsx</span>:</p>
254
- <pre><code>// pages/_app.tsx
255
- import 'voa-ds-react/styles';
256
- // ou
257
- import 'voa-ds-core/dist/voa/voa.css';
258
-
259
- function MyApp({ Component, pageProps }) {
260
- return &lt;Component {...pageProps} /&gt;;
261
- }
262
-
263
- export default MyApp;</code></pre>
264
-
265
- <h3>Angular CLI</h3>
266
- <p>Adicione os estilos no <span class="code-inline">angular.json</span>:</p>
267
- <pre><code>{
268
- "projects": {
269
- "seu-projeto": {
270
- "architect": {
271
- "build": {
272
- "options": {
273
- "styles": [
274
- "node_modules/voa-ds-core/dist/voa/voa.css",
275
- "src/styles.css"
276
- ]
277
- }
278
- }
279
- }
280
- }
281
- }
282
- }</code></pre>
283
-
284
- <h3>Nuxt.js (Vue)</h3>
285
- <p>Adicione no arquivo <span class="code-inline">nuxt.config.js</span>:</p>
286
- <pre><code>export default {
287
- css: [
288
- 'voa-ds-core/dist/voa/voa.css'
289
- ]
290
- }</code></pre>
291
-
292
- <p>Para Nuxt 3:</p>
293
- <pre><code>export default defineNuxtConfig({
294
- css: [
295
- 'voa-ds-core/dist/voa/voa.css'
296
- ]
297
- })</code></pre>
298
-
299
- <hr style="margin: 50px 0; border: none; border-top: 1px solid #e2e8f0;">
300
-
301
- <h2>Verificando se os Estilos Estão Carregados</h2>
302
-
303
- <h3>Método 1: DevTools - Network</h3>
304
- <ol>
305
- <li>Abra o DevTools do navegador (F12)</li>
306
- <li>Vá na aba <strong>Network</strong></li>
307
- <li>Filtre por <strong>CSS</strong></li>
308
- <li>Recarregue a página</li>
309
- <li>Verifique se o arquivo <span class="code-inline">voa.css</span> está sendo carregado</li>
310
- </ol>
311
-
312
- <h3>Método 2: Inspecionar Elemento</h3>
313
- <ol>
314
- <li>Clique com botão direito em um componente</li>
315
- <li>Selecione <strong>Inspecionar</strong></li>
316
- <li>Verifique se as classes CSS estão aplicadas</li>
317
- <li>Veja se os estilos aparecem no painel direito</li>
318
- </ol>
319
-
320
- <div class="alert-box">
321
- Se você vir classes como <span class="code-inline">voa-button</span>, <span class="code-inline">primary</span>, etc.,
322
- mas sem estilos aplicados, o CSS não está carregando.
323
- </div>
324
-
325
- <hr style="margin: 50px 0; border: none; border-top: 1px solid #e2e8f0;">
326
-
327
- <h2>Problemas Comuns e Soluções</h2>
328
-
329
- <h3>Componentes aparecem sem estilo</h3>
330
- <div class="warning-box">
331
- <strong>Solução:</strong>
332
- <ul style="margin: 10px 0 0 0; padding-left: 20px;">
333
- <li>Verifique se o CSS está sendo importado</li>
334
- <li>Confirme que o bundler está processando arquivos CSS</li>
335
- <li>Tente importar manualmente: <span class="code-inline">import 'voa-ds-core/dist/voa/voa.css'</span></li>
336
- </ul>
337
- </div>
338
-
339
- <h3>Erro: "Cannot find module 'voa-ds-core/styles'"</h3>
340
- <div class="warning-box">
341
- <strong>Solução:</strong> Use o caminho completo em vez disso:
342
- <pre style="margin-top: 10px;"><code>import 'voa-ds-core/dist/voa/voa.css';</code></pre>
343
- </div>
344
-
345
- <h3>Em Angular, os estilos não aparecem</h3>
346
- <div class="warning-box">
347
- <strong>Solução:</strong>
348
- <ul style="margin: 10px 0 0 0; padding-left: 20px;">
349
- <li>Certifique-se de adicionar o CSS no <span class="code-inline">angular.json</span></li>
350
- <li>Reinicie o servidor de desenvolvimento após alterar o <span class="code-inline">angular.json</span></li>
351
- <li>Verifique se o caminho está correto: <span class="code-inline">node_modules/voa-ds-core/dist/voa/voa.css</span></li>
352
- </ul>
353
- </div>
354
-
355
- <h3>Estilos funcionam localmente mas não em produção</h3>
356
- <div class="warning-box">
357
- <strong>Solução:</strong>
358
- <ul style="margin: 10px 0 0 0; padding-left: 20px;">
359
- <li>Verifique se o CSS está incluído no build de produção</li>
360
- <li>Confirme que o arquivo CSS está sendo copiado para a pasta de distribuição</li>
361
- <li>Verifique se o Content Security Policy (CSP) não está bloqueando estilos inline</li>
362
- </ul>
363
- </div>
364
-
365
- <hr style="margin: 50px 0; border: none; border-top: 1px solid #e2e8f0;">
366
-
367
- <h2>Resumo Rápido</h2>
368
-
369
- <table class="variants-table">
370
- <thead>
371
- <tr>
372
- <th>Framework</th>
373
- <th>Configuração Necessária</th>
374
- </tr>
375
- </thead>
376
- <tbody>
377
- <tr>
378
- <td><strong>React (Vite/CRA)</strong></td>
379
- <td>Importação automática funciona</td>
380
- </tr>
381
- <tr>
382
- <td><strong>React (Next.js)</strong></td>
383
- <td>Importar em <span class="code-inline">_app.tsx</span></td>
384
- </tr>
385
- <tr>
386
- <td><strong>Angular</strong></td>
387
- <td>Adicionar CSS no <span class="code-inline">angular.json</span></td>
388
- </tr>
389
- <tr>
390
- <td><strong>Vue (Vite)</strong></td>
391
- <td>Importação automática funciona</td>
392
- </tr>
393
- <tr>
394
- <td><strong>Vue (Nuxt)</strong></td>
395
- <td>Adicionar no <span class="code-inline">nuxt.config.js</span></td>
396
- </tr>
397
- </tbody>
398
- </table>
399
-
400
- <div class="success-box">
401
- <strong>Dica Final:</strong> Na dúvida, sempre pode importar manualmente:
402
- <pre style="margin-top: 10px;"><code>import 'voa-ds-core/dist/voa/voa.css';</code></pre>
403
- Isso funciona em todos os frameworks!
404
- </div>
405
-
406
- <hr style="margin: 50px 0; border: none; border-top: 1px solid #e2e8f0;">
407
-
408
- <div style="text-align: center; color: #718096; padding: 20px;">
409
- <p>Ainda com problemas? Verifique a configuração do seu bundler ou procure o time!</p>
410
- </div>
411
- </div>
412
- `;
413
- export const Default = Template.bind({});
414
- //# sourceMappingURL=ImportandoEstilos.stories.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ImportandoEstilos.stories.js","sourceRoot":"","sources":["../../../src/components/GetStarted/ImportandoEstilos.stories.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC,eAAe;IACb,KAAK,EAAE,qCAAqC;CACrC,CAAC;AAEV,MAAM,QAAQ,GAAY,GAAG,EAAE,CAAC,IAAI,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuZnC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC","sourcesContent":["import { Meta, StoryFn } from \"@storybook/web-components\";\r\nimport { html } from \"lit-html\";\r\n\r\nexport default {\r\n title: \"Documentação/Importando Estilos CSS\",\r\n} as Meta;\r\n\r\nconst Template: StoryFn = () => html`\r\n <style>\r\n .guia-container {\r\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\r\n line-height: 1.7;\r\n max-width: 1000px;\r\n margin: 0 auto;\r\n padding: 30px;\r\n color: #2d3748;\r\n }\r\n\r\n .guia-container h1 {\r\n font-size: 2.5rem;\r\n margin-bottom: 10px;\r\n color: #1a202c;\r\n }\r\n\r\n .guia-container h2 {\r\n font-size: 1.8rem;\r\n margin-top: 40px;\r\n margin-bottom: 15px;\r\n color: #2d3748;\r\n border-bottom: 3px solid #3182ce;\r\n padding-bottom: 10px;\r\n }\r\n\r\n .guia-container h3 {\r\n font-size: 1.4rem;\r\n margin-top: 30px;\r\n margin-bottom: 12px;\r\n color: #4a5568;\r\n }\r\n\r\n .guia-container h4 {\r\n font-size: 1.1rem;\r\n margin-top: 20px;\r\n margin-bottom: 8px;\r\n color: #718096;\r\n }\r\n\r\n .guia-container pre {\r\n background-color: #2d3748;\r\n color: #f7fafc;\r\n padding: 20px;\r\n border-radius: 8px;\r\n overflow-x: auto;\r\n font-size: 14px;\r\n line-height: 1.5;\r\n margin: 15px 0;\r\n }\r\n\r\n .guia-container code {\r\n font-family: 'Fira Code', 'Courier New', monospace;\r\n }\r\n\r\n .guia-container ul {\r\n margin: 15px 0;\r\n padding-left: 25px;\r\n }\r\n\r\n .guia-container li {\r\n margin: 8px 0;\r\n }\r\n\r\n .alert-box {\r\n background: #ebf8ff;\r\n border-left: 4px solid #3182ce;\r\n padding: 15px 20px;\r\n margin: 20px 0;\r\n border-radius: 4px;\r\n }\r\n\r\n .warning-box {\r\n background: #fffaf0;\r\n border-left: 4px solid #ed8936;\r\n padding: 15px 20px;\r\n margin: 20px 0;\r\n border-radius: 4px;\r\n }\r\n\r\n .success-box {\r\n background: #f0fff4;\r\n border-left: 4px solid #48bb78;\r\n padding: 15px 20px;\r\n margin: 20px 0;\r\n border-radius: 4px;\r\n }\r\n\r\n .error-box {\r\n background: #fff5f5;\r\n border-left: 4px solid #f56565;\r\n padding: 15px 20px;\r\n margin: 20px 0;\r\n border-radius: 4px;\r\n }\r\n\r\n .variants-table {\r\n width: 100%;\r\n border-collapse: collapse;\r\n margin: 15px 0;\r\n }\r\n\r\n .variants-table th,\r\n .variants-table td {\r\n padding: 12px;\r\n text-align: left;\r\n border-bottom: 1px solid #e2e8f0;\r\n }\r\n\r\n .variants-table th {\r\n background: #edf2f7;\r\n font-weight: 600;\r\n }\r\n\r\n .code-inline {\r\n background: #edf2f7;\r\n padding: 2px 6px;\r\n border-radius: 3px;\r\n font-family: monospace;\r\n font-size: 0.9em;\r\n }\r\n </style>\r\n\r\n <div class=\"guia-container\">\r\n <h1>Como Importar os Estilos CSS</h1>\r\n <p>\r\n Se você está usando os componentes mas eles aparecem sem estilização,\r\n provavelmente o CSS não está sendo carregado. Veja como resolver.\r\n </p>\r\n\r\n <div class=\"error-box\">\r\n <strong>Problema Comum:</strong> Componentes aparecem sem cores, espaçamento ou qualquer estilo visual.\r\n </div>\r\n\r\n <h2>Importação Automática (Recomendado)</h2>\r\n\r\n <div class=\"success-box\">\r\n Os estilos são importados automaticamente quando você importa qualquer componente dos pacotes wrapper.\r\n </div>\r\n\r\n <h3>React</h3>\r\n <pre><code>import { VoaButton } from 'voa-ds-react';\r\n\r\nfunction App() {\r\n return &lt;VoaButton&gt;Clique aqui&lt;/VoaButton&gt;;\r\n}\r\n\r\n// Os estilos já estão incluídos!</code></pre>\r\n\r\n <h3>Angular</h3>\r\n <p>No Angular, você precisa adicionar o CSS no arquivo <span class=\"code-inline\">angular.json</span>:</p>\r\n <pre><code>{\r\n \"projects\": {\r\n \"seu-projeto\": {\r\n \"architect\": {\r\n \"build\": {\r\n \"options\": {\r\n \"styles\": [\r\n \"node_modules/voa-ds-core/dist/voa/voa.css\",\r\n \"src/styles.css\"\r\n ]\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}</code></pre>\r\n\r\n <h3>Vue</h3>\r\n <pre><code>&lt;template&gt;\r\n &lt;VoaButton&gt;Clique aqui&lt;/VoaButton&gt;\r\n&lt;/template&gt;\r\n\r\n&lt;script&gt;\r\nimport { VoaButton } from 'voa-ds-vue';\r\n\r\nexport default {\r\n components: { VoaButton }\r\n}\r\n// Os estilos já estão incluídos!\r\n&lt;/script&gt;</code></pre>\r\n\r\n <hr style=\"margin: 50px 0; border: none; border-top: 1px solid #e2e8f0;\">\r\n\r\n <h2>Importação Manual</h2>\r\n\r\n <p>Se os estilos não estiverem sendo aplicados automaticamente, você pode importá-los manualmente.</p>\r\n\r\n <h3>Opção 1: Importar do Pacote Wrapper</h3>\r\n <pre><code>// React\r\nimport 'voa-ds-react/styles';\r\n\r\n// Angular\r\nimport 'voa-ds-angular/styles';\r\n\r\n// Vue\r\nimport 'voa-ds-vue/styles';</code></pre>\r\n\r\n <h3>Opção 2: Importar Direto do Core</h3>\r\n <pre><code>import 'voa-ds-core/dist/voa/voa.css';</code></pre>\r\n\r\n <h3>Opção 3: Adicionar no HTML (Apenas para Testes)</h3>\r\n <pre><code>&lt;link rel=\"stylesheet\" href=\"node_modules/voa-ds-core/dist/voa/voa.css\"&gt;</code></pre>\r\n\r\n <div class=\"warning-box\">\r\n <strong>Atenção:</strong> A Opção 3 não é recomendada para produção, use apenas para testes rápidos.\r\n </div>\r\n\r\n <hr style=\"margin: 50px 0; border: none; border-top: 1px solid #e2e8f0;\">\r\n\r\n <h2>Configuração de Bundlers</h2>\r\n\r\n <h3>Vite (React/Vue)</h3>\r\n <div class=\"success-box\">\r\n Vite processa CSS automaticamente. Não é necessária configuração adicional.\r\n </div>\r\n <pre><code>// vite.config.ts ou vite.config.js\r\nimport { defineConfig } from 'vite';\r\nimport react from '@vitejs/plugin-react'; // ou vue\r\n\r\nexport default defineConfig({\r\n plugins: [react()]\r\n // Pronto! Não precisa configurar mais nada\r\n});</code></pre>\r\n\r\n <h3>Webpack (React/Angular)</h3>\r\n <p>Certifique-se de ter o <span class=\"code-inline\">css-loader</span> e <span class=\"code-inline\">style-loader</span> configurados:</p>\r\n <pre><code>// webpack.config.js\r\nmodule.exports = {\r\n module: {\r\n rules: [\r\n {\r\n test: /\\\\.css$/,\r\n use: ['style-loader', 'css-loader']\r\n }\r\n ]\r\n }\r\n};</code></pre>\r\n\r\n <p>Se não tiver instalado:</p>\r\n <pre><code>npm install --save-dev css-loader style-loader</code></pre>\r\n\r\n <h3>Create React App</h3>\r\n <div class=\"success-box\">\r\n O CRA já processa CSS automaticamente. Não é necessária configuração adicional.\r\n </div>\r\n\r\n <h3>Next.js</h3>\r\n <p>Importe no arquivo <span class=\"code-inline\">_app.tsx</span> ou <span class=\"code-inline\">_app.jsx</span>:</p>\r\n <pre><code>// pages/_app.tsx\r\nimport 'voa-ds-react/styles';\r\n// ou\r\nimport 'voa-ds-core/dist/voa/voa.css';\r\n\r\nfunction MyApp({ Component, pageProps }) {\r\n return &lt;Component {...pageProps} /&gt;;\r\n}\r\n\r\nexport default MyApp;</code></pre>\r\n\r\n <h3>Angular CLI</h3>\r\n <p>Adicione os estilos no <span class=\"code-inline\">angular.json</span>:</p>\r\n <pre><code>{\r\n \"projects\": {\r\n \"seu-projeto\": {\r\n \"architect\": {\r\n \"build\": {\r\n \"options\": {\r\n \"styles\": [\r\n \"node_modules/voa-ds-core/dist/voa/voa.css\",\r\n \"src/styles.css\"\r\n ]\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}</code></pre>\r\n\r\n <h3>Nuxt.js (Vue)</h3>\r\n <p>Adicione no arquivo <span class=\"code-inline\">nuxt.config.js</span>:</p>\r\n <pre><code>export default {\r\n css: [\r\n 'voa-ds-core/dist/voa/voa.css'\r\n ]\r\n}</code></pre>\r\n\r\n <p>Para Nuxt 3:</p>\r\n <pre><code>export default defineNuxtConfig({\r\n css: [\r\n 'voa-ds-core/dist/voa/voa.css'\r\n ]\r\n})</code></pre>\r\n\r\n <hr style=\"margin: 50px 0; border: none; border-top: 1px solid #e2e8f0;\">\r\n\r\n <h2>Verificando se os Estilos Estão Carregados</h2>\r\n\r\n <h3>Método 1: DevTools - Network</h3>\r\n <ol>\r\n <li>Abra o DevTools do navegador (F12)</li>\r\n <li>Vá na aba <strong>Network</strong></li>\r\n <li>Filtre por <strong>CSS</strong></li>\r\n <li>Recarregue a página</li>\r\n <li>Verifique se o arquivo <span class=\"code-inline\">voa.css</span> está sendo carregado</li>\r\n </ol>\r\n\r\n <h3>Método 2: Inspecionar Elemento</h3>\r\n <ol>\r\n <li>Clique com botão direito em um componente</li>\r\n <li>Selecione <strong>Inspecionar</strong></li>\r\n <li>Verifique se as classes CSS estão aplicadas</li>\r\n <li>Veja se os estilos aparecem no painel direito</li>\r\n </ol>\r\n\r\n <div class=\"alert-box\">\r\n Se você vir classes como <span class=\"code-inline\">voa-button</span>, <span class=\"code-inline\">primary</span>, etc.,\r\n mas sem estilos aplicados, o CSS não está carregando.\r\n </div>\r\n\r\n <hr style=\"margin: 50px 0; border: none; border-top: 1px solid #e2e8f0;\">\r\n\r\n <h2>Problemas Comuns e Soluções</h2>\r\n\r\n <h3>Componentes aparecem sem estilo</h3>\r\n <div class=\"warning-box\">\r\n <strong>Solução:</strong>\r\n <ul style=\"margin: 10px 0 0 0; padding-left: 20px;\">\r\n <li>Verifique se o CSS está sendo importado</li>\r\n <li>Confirme que o bundler está processando arquivos CSS</li>\r\n <li>Tente importar manualmente: <span class=\"code-inline\">import 'voa-ds-core/dist/voa/voa.css'</span></li>\r\n </ul>\r\n </div>\r\n\r\n <h3>Erro: \"Cannot find module 'voa-ds-core/styles'\"</h3>\r\n <div class=\"warning-box\">\r\n <strong>Solução:</strong> Use o caminho completo em vez disso:\r\n <pre style=\"margin-top: 10px;\"><code>import 'voa-ds-core/dist/voa/voa.css';</code></pre>\r\n </div>\r\n\r\n <h3>Em Angular, os estilos não aparecem</h3>\r\n <div class=\"warning-box\">\r\n <strong>Solução:</strong>\r\n <ul style=\"margin: 10px 0 0 0; padding-left: 20px;\">\r\n <li>Certifique-se de adicionar o CSS no <span class=\"code-inline\">angular.json</span></li>\r\n <li>Reinicie o servidor de desenvolvimento após alterar o <span class=\"code-inline\">angular.json</span></li>\r\n <li>Verifique se o caminho está correto: <span class=\"code-inline\">node_modules/voa-ds-core/dist/voa/voa.css</span></li>\r\n </ul>\r\n </div>\r\n\r\n <h3>Estilos funcionam localmente mas não em produção</h3>\r\n <div class=\"warning-box\">\r\n <strong>Solução:</strong>\r\n <ul style=\"margin: 10px 0 0 0; padding-left: 20px;\">\r\n <li>Verifique se o CSS está incluído no build de produção</li>\r\n <li>Confirme que o arquivo CSS está sendo copiado para a pasta de distribuição</li>\r\n <li>Verifique se o Content Security Policy (CSP) não está bloqueando estilos inline</li>\r\n </ul>\r\n </div>\r\n\r\n <hr style=\"margin: 50px 0; border: none; border-top: 1px solid #e2e8f0;\">\r\n\r\n <h2>Resumo Rápido</h2>\r\n\r\n <table class=\"variants-table\">\r\n <thead>\r\n <tr>\r\n <th>Framework</th>\r\n <th>Configuração Necessária</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr>\r\n <td><strong>React (Vite/CRA)</strong></td>\r\n <td>Importação automática funciona</td>\r\n </tr>\r\n <tr>\r\n <td><strong>React (Next.js)</strong></td>\r\n <td>Importar em <span class=\"code-inline\">_app.tsx</span></td>\r\n </tr>\r\n <tr>\r\n <td><strong>Angular</strong></td>\r\n <td>Adicionar CSS no <span class=\"code-inline\">angular.json</span></td>\r\n </tr>\r\n <tr>\r\n <td><strong>Vue (Vite)</strong></td>\r\n <td>Importação automática funciona</td>\r\n </tr>\r\n <tr>\r\n <td><strong>Vue (Nuxt)</strong></td>\r\n <td>Adicionar no <span class=\"code-inline\">nuxt.config.js</span></td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n\r\n <div class=\"success-box\">\r\n <strong>Dica Final:</strong> Na dúvida, sempre pode importar manualmente:\r\n <pre style=\"margin-top: 10px;\"><code>import 'voa-ds-core/dist/voa/voa.css';</code></pre>\r\n Isso funciona em todos os frameworks!\r\n </div>\r\n\r\n <hr style=\"margin: 50px 0; border: none; border-top: 1px solid #e2e8f0;\">\r\n\r\n <div style=\"text-align: center; color: #718096; padding: 20px;\">\r\n <p>Ainda com problemas? Verifique a configuração do seu bundler ou procure o time!</p>\r\n </div>\r\n </div>\r\n`;\r\n\r\nexport const Default = Template.bind({});\r\n"]}