energy-foundations 0.0.1-beta.2
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.
- package/README.md +20 -0
- package/dist/energy-foundations.js +1 -0
- package/dist/energy-foundations.umd.cjs +1 -0
- package/dist/fonts/SoleRepsolText_W_Bd.woff +0 -0
- package/dist/fonts/SoleRepsolText_W_Lt.woff +0 -0
- package/dist/fonts/SoleRepsolText_W_Rg.woff +0 -0
- package/dist/fonts/SoleRepsolText_W_SBd.woff +0 -0
- package/dist/fonts/icomoon.eot +0 -0
- package/dist/fonts/icomoon.ttf +0 -0
- package/dist/fonts/icomoon.woff +0 -0
- package/dist/fonts/selection.json +1 -0
- package/dist/foundations/_border.scss +15 -0
- package/dist/foundations/_color.scss +43 -0
- package/dist/foundations/_elevation.scss +9 -0
- package/dist/foundations/_fonts.scss +759 -0
- package/dist/foundations/_grid.scss +68 -0
- package/dist/foundations/_reset.scss +70 -0
- package/dist/foundations/_shadow.scss +10 -0
- package/dist/foundations/_spacing.scss +56 -0
- package/dist/foundations/_state.scss +5 -0
- package/dist/foundations/_typography.scss +33 -0
- package/dist/global.scss +6 -0
- package/dist/logo-repsol.png +0 -0
- package/dist/main.ts +1 -0
- package/dist/mixins/_elevation.scss +15 -0
- package/dist/mixins/_layout.scss +30 -0
- package/dist/mixins/_shadow.scss +9 -0
- package/dist/mixins/_state.scss +5 -0
- package/dist/mixins/_typography.scss +59 -0
- package/dist/mixins/_utils.scss +8 -0
- package/dist/rds-foundations.scss +20 -0
- package/dist/rds-reset.scss +1 -0
- package/dist/rds-variables.scss +24 -0
- package/dist/stories/assets/accessibility.png +0 -0
- package/dist/stories/assets/accessibility.svg +5 -0
- package/dist/stories/assets/addon-library.png +0 -0
- package/dist/stories/assets/assets.png +0 -0
- package/dist/stories/assets/avif-test-image.avif +0 -0
- package/dist/stories/assets/context.png +0 -0
- package/dist/stories/assets/discord.svg +15 -0
- package/dist/stories/assets/docs.png +0 -0
- package/dist/stories/assets/figma-plugin.png +0 -0
- package/dist/stories/assets/figma.png +0 -0
- package/dist/stories/assets/github.svg +3 -0
- package/dist/stories/assets/grid-desktop.png +0 -0
- package/dist/stories/assets/grid-mobile.png +0 -0
- package/dist/stories/assets/grid-tablet.png +0 -0
- package/dist/stories/assets/grid-xd.png +0 -0
- package/dist/stories/assets/logo-repsol.png +0 -0
- package/dist/stories/assets/npm.png +0 -0
- package/dist/stories/assets/portal.png +0 -0
- package/dist/stories/assets/share.png +0 -0
- package/dist/stories/assets/styling.png +0 -0
- package/dist/stories/assets/testing.png +0 -0
- package/dist/stories/assets/theming.png +0 -0
- package/dist/stories/assets/tutorials.svg +12 -0
- package/dist/stories/assets/variables.png +0 -0
- package/dist/stories/assets/youtube.svg +4 -0
- package/dist/stories/border/border.mdx +71 -0
- package/dist/stories/colors/componentColor.mdx +96 -0
- package/dist/stories/colors/componentColors.scss +2 -0
- package/dist/stories/colors/semanticColor.mdx +458 -0
- package/dist/stories/docs/init.mdx +129 -0
- package/dist/stories/docs/quickStartVue.mdx +98 -0
- package/dist/stories/elevation/elevation.mdx +113 -0
- package/dist/stories/fonts/fonts.mdx +165 -0
- package/dist/stories/functional/Layaout.mdx +42 -0
- package/dist/stories/functional/Utils.mdx +22 -0
- package/dist/stories/grid/Breakpoint.stories.js +16 -0
- package/dist/stories/grid/Gridsystem.mdx +172 -0
- package/dist/stories/grid/ResponsiveGrid.stories.js +47 -0
- package/dist/stories/grid/SimpleGridsystem.stories.js +39 -0
- package/dist/stories/grid/gridsystem.scss +86 -0
- package/dist/stories/icons/icon-list.ts +5 -0
- package/dist/stories/icons/icons.mdx +84 -0
- package/dist/stories/spacing/Spacing.mdx +296 -0
- package/dist/stories/spacing/Spacing.stories.js +132 -0
- package/dist/stories/spacing/spacing-story.scss +94 -0
- package/dist/stories/styles/index.scss +373 -0
- package/dist/stories/styles/overwrite.scss +197 -0
- package/dist/style.css +1 -0
- package/dist/variables/_border.scss +16 -0
- package/dist/variables/_color-system.scss +227 -0
- package/dist/variables/_color.scss +207 -0
- package/dist/variables/_elevation.scss +16 -0
- package/dist/variables/_grid.scss +21 -0
- package/dist/variables/_layout.scss +27 -0
- package/dist/variables/_shadow.scss +3 -0
- package/dist/variables/_spacing.scss +47 -0
- package/dist/variables/_state.scss +10 -0
- package/dist/variables/_typography.scss +380 -0
- package/dist/vite-env.d.ts +1 -0
- package/dist/vite.svg +1 -0
- package/package.json +97 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { Meta } from '@storybook/blocks';
|
|
2
|
+
import './../styles/index.scss';
|
|
3
|
+
|
|
4
|
+
<Meta title="Quick Start VUE" />
|
|
5
|
+
|
|
6
|
+
# Instalar
|
|
7
|
+
|
|
8
|
+
```
|
|
9
|
+
yarn add energy-foundations
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
npm install energy-foundations
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Contenido
|
|
17
|
+
|
|
18
|
+
<div class="mt-0">
|
|
19
|
+
|
|
20
|
+
#### CSS
|
|
21
|
+
|
|
22
|
+
Importar el compilado de css.
|
|
23
|
+
Si se van a usar otras librerías Energy, este import debe ir el primero en el orden
|
|
24
|
+
|
|
25
|
+
```<style lang="scss" src="./energy-foundations/dist/style.css"></style>```
|
|
26
|
+
|
|
27
|
+
#### SCSS
|
|
28
|
+
|
|
29
|
+
El paquete genera varios exports para diferentes usos:
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
- rds-reset.scss
|
|
33
|
+
- rds-variables.scss
|
|
34
|
+
- rds-foundations.scss
|
|
35
|
+
- global.scss (contiene todos los anteriores)
|
|
36
|
+
|
|
37
|
+
</div>
|
|
38
|
+
|
|
39
|
+
## Uso
|
|
40
|
+
|
|
41
|
+
En una aplicación SPA, para optimizar la carga, se recomienda diferenciar los ficheros que contienen clases de los que contienen mixins y variables.
|
|
42
|
+
Para ello, los primeros se deben importar una única vez.
|
|
43
|
+
|
|
44
|
+
Esto lo encontramos en ```style.css```.
|
|
45
|
+
|
|
46
|
+
Se recomienda generar en nuestro proyecto raíz un fichero que haga @import de ```style.css``` y este se cargue en el App.vue
|
|
47
|
+
|
|
48
|
+
**main.scss**
|
|
49
|
+
```css
|
|
50
|
+
@import 'energy-foundations/dist/style.css';
|
|
51
|
+
// otros estilos aquí
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
**App.vue**
|
|
55
|
+
|
|
56
|
+
importante: no añadir el atributo 'scoped'
|
|
57
|
+
|
|
58
|
+
```html
|
|
59
|
+
<style lang="scss" src="./styles/main.scss"></style>
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
#### Variables y mixins
|
|
63
|
+
|
|
64
|
+
Recomendamos crear primero un fichero que sea basic.scss en nuestro directorio raíz.
|
|
65
|
+
En él hacemos un @import de las variables y mixins de la librería que están en el fichero ```rds-variables```.
|
|
66
|
+
|
|
67
|
+
**basic.scss**
|
|
68
|
+
```css
|
|
69
|
+
@import 'energy-foundations/dist/rds-variables.scss';
|
|
70
|
+
// otras variables y/o mixins aquí
|
|
71
|
+
````
|
|
72
|
+
|
|
73
|
+
Posteriormente, en el fichero de vite.config:
|
|
74
|
+
|
|
75
|
+
**vite.config**
|
|
76
|
+
```js
|
|
77
|
+
css: {
|
|
78
|
+
preprocessorOptions: {
|
|
79
|
+
scss: {
|
|
80
|
+
additionalData: `@import "./src/styles/basic.scss";`
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
De esta manera, estos estilos serán accesibles a todos los componentes del proyecto Vue.
|
|
88
|
+
|
|
89
|
+
Tambien deberemos de añadir el siguiente codigo para poder usar los estilos de node_modules en nuestro proyecto:
|
|
90
|
+
|
|
91
|
+
**vite.config**
|
|
92
|
+
```js
|
|
93
|
+
server: {
|
|
94
|
+
fs: {
|
|
95
|
+
allow: [".."]
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
```
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { Meta, Unstyled } from '@storybook/blocks';
|
|
2
|
+
import './../styles/index.scss';
|
|
3
|
+
|
|
4
|
+
<Meta title="Foundations/Elevaciones" name="Elevaciones" />
|
|
5
|
+
|
|
6
|
+
# Elevaciones
|
|
7
|
+
|
|
8
|
+
<Unstyled>
|
|
9
|
+
<table>
|
|
10
|
+
|
|
11
|
+
<tr>
|
|
12
|
+
<td class="width__one-third">
|
|
13
|
+
<h1 class="rds-title-01 rds-doc__color-headline">Imagen</h1>
|
|
14
|
+
Referencia para los ejemplos
|
|
15
|
+
</td>
|
|
16
|
+
<td class="width__one-third">
|
|
17
|
+
<div class="rds-doc-elevation rds-doc-elevation__background-image">
|
|
18
|
+
<div class="rds-doc-elevation"></div>
|
|
19
|
+
</div>
|
|
20
|
+
</td>
|
|
21
|
+
<td class="right"></td>
|
|
22
|
+
</tr>
|
|
23
|
+
|
|
24
|
+
<tr>
|
|
25
|
+
<td class="width__one-third">
|
|
26
|
+
<h1 class="rds-title-01 rds-doc__color-headline">Overlay</h1>
|
|
27
|
+
</td>
|
|
28
|
+
<td class="width__one-third">
|
|
29
|
+
<div class="rds-doc-elevation rds-doc-elevation__background-image">
|
|
30
|
+
<div class="rds-doc-elevation rds-doc-elevation__overlay"></div>
|
|
31
|
+
</div>
|
|
32
|
+
</td>
|
|
33
|
+
<td class="right">
|
|
34
|
+
`.rds-style-effect-overlay` <br />
|
|
35
|
+
`@include rds-style-effect-overlay`
|
|
36
|
+
</td>
|
|
37
|
+
</tr>
|
|
38
|
+
|
|
39
|
+
<tr>
|
|
40
|
+
<td class="width__one-third">
|
|
41
|
+
<h1 class="rds-title-01 rds-doc__color-headline">Glass</h1>
|
|
42
|
+
</td>
|
|
43
|
+
<td class="width__one-third">
|
|
44
|
+
<div class="rds-doc-elevation rds-doc-elevation__background-image">
|
|
45
|
+
<div class="rds-doc-elevation rds-style-effect-glass"></div>
|
|
46
|
+
</div>
|
|
47
|
+
</td>
|
|
48
|
+
<td class="right">
|
|
49
|
+
`.rds-style-effect-glass` <br />
|
|
50
|
+
`@include rds-style-effect-glass`
|
|
51
|
+
</td>
|
|
52
|
+
</tr>
|
|
53
|
+
|
|
54
|
+
</table>
|
|
55
|
+
</Unstyled>
|
|
56
|
+
|
|
57
|
+
# Estados
|
|
58
|
+
|
|
59
|
+
<Unstyled>
|
|
60
|
+
<table>
|
|
61
|
+
|
|
62
|
+
<tr>
|
|
63
|
+
<td class="width__one-third">
|
|
64
|
+
<h1 class="rds-title-01 rds-doc__color-headline">Disabled</h1>
|
|
65
|
+
</td>
|
|
66
|
+
<td class="width__one-third">
|
|
67
|
+
<div class="rds-doc-elevation rds-doc-elevation__background-image rds-style-state-disabled">
|
|
68
|
+
</div>
|
|
69
|
+
</td>
|
|
70
|
+
<td class="right">
|
|
71
|
+
`.rds-style-state-disabled` <br />
|
|
72
|
+
`@include rds-style-state-disabled`
|
|
73
|
+
</td>
|
|
74
|
+
</tr>
|
|
75
|
+
|
|
76
|
+
</table>
|
|
77
|
+
</Unstyled>
|
|
78
|
+
|
|
79
|
+
# Sombras
|
|
80
|
+
|
|
81
|
+
<Unstyled>
|
|
82
|
+
<table>
|
|
83
|
+
|
|
84
|
+
<tr>
|
|
85
|
+
<td class="width__one-third">
|
|
86
|
+
<h1 class="rds-title-01 rds-doc__color-headline">Shadow S</h1>
|
|
87
|
+
</td>
|
|
88
|
+
<td class="width__one-third">
|
|
89
|
+
<div class="rds-style-shadow-s rds-doc-elevation rds-doc-elevation__background-color rds-mb-m">
|
|
90
|
+
</div>
|
|
91
|
+
</td>
|
|
92
|
+
<td class="right">
|
|
93
|
+
`.rds-style-shadow-s` <br />
|
|
94
|
+
`@include rds-style-shadow-s`
|
|
95
|
+
</td>
|
|
96
|
+
</tr>
|
|
97
|
+
|
|
98
|
+
<tr>
|
|
99
|
+
<td class="width__one-third">
|
|
100
|
+
<h1 class="rds-title-01 rds-doc__color-headline">Shadow M</h1>
|
|
101
|
+
</td>
|
|
102
|
+
<td class="width__one-third">
|
|
103
|
+
<div class="rds-style-shadow-m rds-doc-elevation rds-doc-elevation__background-color">
|
|
104
|
+
</div>
|
|
105
|
+
</td>
|
|
106
|
+
<td class="right">
|
|
107
|
+
`.rds-style-shadow-m` <br />
|
|
108
|
+
`@include rds-style-shadow-m`
|
|
109
|
+
</td>
|
|
110
|
+
</tr>
|
|
111
|
+
|
|
112
|
+
</table>
|
|
113
|
+
</Unstyled>
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
import { Meta, Unstyled } from '@storybook/blocks';
|
|
2
|
+
import './../styles/index.scss';
|
|
3
|
+
|
|
4
|
+
<Meta title="Foundations/Fonts" name="Definition" />
|
|
5
|
+
|
|
6
|
+
# Fonts
|
|
7
|
+
|
|
8
|
+
Energy-foundations actualmente cuenta con dos familias de fuentes corporativas: "Sole" y "Display".
|
|
9
|
+
Se encuentran disponible en los ```/assets```
|
|
10
|
+
|
|
11
|
+
Las siguientes clases incluyen las media queries para el uso de las fuentes en diferentes dispositivos.
|
|
12
|
+
Basta con aplicarlas para que la fuente se ajuste a la pantalla en la que se visualiza.
|
|
13
|
+
|
|
14
|
+
También es posible utilizar las fuentes a través de mixins, para poder añadirlas directamente en otra clase.
|
|
15
|
+
Basta con invocar el mixin ```rds-font-style```que recibe como parámetro el nombre de la tipografía que se desea utilizar.
|
|
16
|
+
El nombre va sin el prefijo ```rds-```.
|
|
17
|
+
|
|
18
|
+
```scss
|
|
19
|
+
.my-class {
|
|
20
|
+
@include rds-font-style('headline-01')
|
|
21
|
+
}
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
<Unstyled>
|
|
25
|
+
<table>
|
|
26
|
+
<tr>
|
|
27
|
+
<th>HEADLINES</th>
|
|
28
|
+
</tr>
|
|
29
|
+
<tr>
|
|
30
|
+
<td><h2 class="rds-headline-00">Sole Repsol H1</h2></td>
|
|
31
|
+
<td class="right">```.rds-headline-00```</td>
|
|
32
|
+
</tr>
|
|
33
|
+
<tr>
|
|
34
|
+
<td><h2 class="rds-headline-01">Sole Repsol H1</h2></td>
|
|
35
|
+
<td class="right">```.rds-headline-01```</td>
|
|
36
|
+
</tr>
|
|
37
|
+
<tr>
|
|
38
|
+
<td><h2 class="rds-headline-02">Sole Repsol H2</h2></td>
|
|
39
|
+
<td class="right">```.rds-headline-02```</td>
|
|
40
|
+
</tr>
|
|
41
|
+
<tr>
|
|
42
|
+
<td><h2 class="rds-headline-03">Sole Repsol H3</h2></td>
|
|
43
|
+
<td class="right">```.rds-headline-03```</td>
|
|
44
|
+
</tr>
|
|
45
|
+
</table>
|
|
46
|
+
</Unstyled>
|
|
47
|
+
|
|
48
|
+
<Unstyled>
|
|
49
|
+
<table>
|
|
50
|
+
<tr>
|
|
51
|
+
<th>TITLES</th>
|
|
52
|
+
</tr>
|
|
53
|
+
<tr>
|
|
54
|
+
<td><h2 class="rds-title-01">Title 1</h2></td>
|
|
55
|
+
<td class="right">```.rds-title-01```</td>
|
|
56
|
+
</tr>
|
|
57
|
+
<tr>
|
|
58
|
+
<td><h2 class="rds-title-02">Title 2</h2></td>
|
|
59
|
+
<td class="right">```.rds-title-02```</td>
|
|
60
|
+
</tr>
|
|
61
|
+
</table>
|
|
62
|
+
</Unstyled>
|
|
63
|
+
|
|
64
|
+
<Unstyled>
|
|
65
|
+
<table>
|
|
66
|
+
<tr>
|
|
67
|
+
<th>BODY</th>
|
|
68
|
+
</tr>
|
|
69
|
+
<tr>
|
|
70
|
+
<td><p class="rds-body-01">Sole Repsol body 1</p></td>
|
|
71
|
+
<td class="right">```.rds-body-01```</td>
|
|
72
|
+
</tr>
|
|
73
|
+
<tr>
|
|
74
|
+
<td><p class="rds-body-01-bold">Sole Repsol body 1 - bold</p></td>
|
|
75
|
+
<td class="right">```.rds-body-01-bold```</td>
|
|
76
|
+
</tr>
|
|
77
|
+
<tr>
|
|
78
|
+
<td><p class="rds-body-01-underline">Sole Repsol body 1 - underline</p></td>
|
|
79
|
+
<td class="right">```.rds-body-01-underline```</td>
|
|
80
|
+
</tr>
|
|
81
|
+
<tr>
|
|
82
|
+
<td><p class="rds-body-02">Sole Repsol body 2</p></td>
|
|
83
|
+
<td class="right">```.rds-body-02```</td>
|
|
84
|
+
</tr>
|
|
85
|
+
<tr>
|
|
86
|
+
<td><p class="rds-body-02-bold">Sole Repsol body 2 - bold</p></td>
|
|
87
|
+
<td class="right">```.rds-body-02-bold```</td>
|
|
88
|
+
</tr>
|
|
89
|
+
<tr>
|
|
90
|
+
<td><p class="rds-body-02-underline">Sole Repsol body 2 - underline</p></td>
|
|
91
|
+
<td class="right">```.rds-body-02-underline```</td>
|
|
92
|
+
</tr>
|
|
93
|
+
<tr>
|
|
94
|
+
<td><p class="rds-caption-01">Sole Repsol caption 1</p></td>
|
|
95
|
+
<td class="right">```.rds-caption-01```</td>
|
|
96
|
+
</tr>
|
|
97
|
+
<tr>
|
|
98
|
+
<td><p class="rds-caption-02">Sole Repsol caption 2</p></td>
|
|
99
|
+
<td class="right">```.rds-caption-02```</td>
|
|
100
|
+
</tr>
|
|
101
|
+
<tr>
|
|
102
|
+
<td><p class="rds-caption-tag">Sole Repsol caption tag</p></td>
|
|
103
|
+
<td class="right">```.rds-caption-tag```</td>
|
|
104
|
+
</tr>
|
|
105
|
+
<tr>
|
|
106
|
+
<td><p class="rds-button-01">Sole Repsol Button text</p></td>
|
|
107
|
+
<td class="right">```.rds-button-01```</td>
|
|
108
|
+
</tr>
|
|
109
|
+
<tr>
|
|
110
|
+
<td><p class="rds-button-01-small">Sole Repsol Button text - small</p></td>
|
|
111
|
+
<td class="right">```.rds-button-01-small```</td>
|
|
112
|
+
</tr>
|
|
113
|
+
</table>
|
|
114
|
+
</Unstyled>
|
|
115
|
+
|
|
116
|
+
<Unstyled>
|
|
117
|
+
<table>
|
|
118
|
+
<tr>
|
|
119
|
+
<th>NUMBERS</th>
|
|
120
|
+
</tr>
|
|
121
|
+
<tr>
|
|
122
|
+
<td class="full-col"><span class="rds-numbers-00">1234</span></td>
|
|
123
|
+
<td class="right">```.rds-numbers-00```</td>
|
|
124
|
+
</tr>
|
|
125
|
+
<tr>
|
|
126
|
+
<td class="full-col"><span class="rds-numbers-01">1234</span></td>
|
|
127
|
+
<td class="right">```.rds-numbers-01```</td>
|
|
128
|
+
</tr>
|
|
129
|
+
<tr>
|
|
130
|
+
<td class="full-col"><span class="rds-numbers-02">1234</span></td>
|
|
131
|
+
<td class="right">```.rds-numbers-02```</td>
|
|
132
|
+
</tr>
|
|
133
|
+
<tr>
|
|
134
|
+
<td class="full-col"><span class="rds-numbers-03">1234</span></td>
|
|
135
|
+
<td class="right">```.rds-numbers-03```</td>
|
|
136
|
+
</tr>
|
|
137
|
+
</table>
|
|
138
|
+
</Unstyled>
|
|
139
|
+
|
|
140
|
+
## Guía de migración
|
|
141
|
+
|
|
142
|
+
<Unstyled>
|
|
143
|
+
<table>
|
|
144
|
+
<tr>
|
|
145
|
+
<th>Oxygen</th>
|
|
146
|
+
<th>Energy</th>
|
|
147
|
+
</tr>
|
|
148
|
+
<tr>
|
|
149
|
+
<td><p><del>headline-bold-1</del></p></td>
|
|
150
|
+
<td>Se recomienda cambiar por headline-01</td>
|
|
151
|
+
</tr>
|
|
152
|
+
<tr>
|
|
153
|
+
<td><p><del>headline-bold-2</del></p></td>
|
|
154
|
+
<td>Se recomienda cambiar por headline-02</td>
|
|
155
|
+
</tr>
|
|
156
|
+
<tr>
|
|
157
|
+
<td><p><del>subheadline</del></p></td>
|
|
158
|
+
<td>Se recomienda cambiar por headline-03 o title-01</td>
|
|
159
|
+
</tr>
|
|
160
|
+
<tr>
|
|
161
|
+
<td><p><del>highlighted-body</del></p></td>
|
|
162
|
+
<td>Se recomienda cambiar por title-01 o title-02</td>
|
|
163
|
+
</tr>
|
|
164
|
+
</table>
|
|
165
|
+
</Unstyled>
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Meta, Unstyled } from '@storybook/blocks';
|
|
2
|
+
import './../styles/index.scss';
|
|
3
|
+
|
|
4
|
+
<Meta title="Functional/Layout" name="Layout" />
|
|
5
|
+
|
|
6
|
+
# Layout mixins
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
### breakpoint
|
|
11
|
+
El siguiente listado se muestra en orden de preferencia para su uso. <br />
|
|
12
|
+
Se prioriza el uso de <a href="https://developer.mozilla.org/es/docs/Glossary/Mobile_First" target="_blank" rel="noopener">mobile first</a>
|
|
13
|
+
|
|
14
|
+
* $breakpoint:
|
|
15
|
+
* `mobile`
|
|
16
|
+
* `tablet`
|
|
17
|
+
* `desktop`
|
|
18
|
+
* `desktop-large`
|
|
19
|
+
|
|
20
|
+
```css
|
|
21
|
+
[selector] {
|
|
22
|
+
@include breakpoint($breakpoint) {
|
|
23
|
+
// Estilos
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
```css
|
|
29
|
+
[selector] {
|
|
30
|
+
// Estilos generales para mobile
|
|
31
|
+
|
|
32
|
+
@include breakpoint('tablet') {
|
|
33
|
+
// Estilos para tablet
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
// ...
|
|
37
|
+
|
|
38
|
+
@include breakpoint('desktop-large') {
|
|
39
|
+
// Estilos para desktop-large
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
```
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Meta, Unstyled } from '@storybook/blocks';
|
|
2
|
+
import './../styles/index.scss';
|
|
3
|
+
|
|
4
|
+
<Meta title="Functional/Utils" name="Utils" />
|
|
5
|
+
|
|
6
|
+
# General
|
|
7
|
+
|
|
8
|
+
### Convertir px to rem
|
|
9
|
+
|
|
10
|
+
```css
|
|
11
|
+
[selector]: {
|
|
12
|
+
width: pxToRem(16px);
|
|
13
|
+
}
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
El uso de esta función nos devolvera el sigueinte `css`
|
|
17
|
+
|
|
18
|
+
```css
|
|
19
|
+
[selector]: {
|
|
20
|
+
width: 1rem;
|
|
21
|
+
}
|
|
22
|
+
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import './gridsystem.scss'
|
|
2
|
+
|
|
3
|
+
export default {
|
|
4
|
+
title: 'Foundations/grid',
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
export function Breakpoint() {
|
|
8
|
+
const container = document.createElement('div')
|
|
9
|
+
container.className = `playground-grid`
|
|
10
|
+
|
|
11
|
+
const container_breakpoint = document.createElement('div')
|
|
12
|
+
container_breakpoint.className = `rds-layout-max grid-item rds-docs-breakpoint`
|
|
13
|
+
container.appendChild(container_breakpoint)
|
|
14
|
+
|
|
15
|
+
return container
|
|
16
|
+
}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { Meta, Unstyled } from '@storybook/blocks';
|
|
2
|
+
import './../styles/index.scss';
|
|
3
|
+
import './gridsystem.scss';
|
|
4
|
+
|
|
5
|
+
import GridMobile from "./../assets/grid-mobile.png";
|
|
6
|
+
import GridTablet from "./../assets/grid-tablet.png";
|
|
7
|
+
import GridDesktop from "./../assets/grid-desktop.png";
|
|
8
|
+
import GridXd from "./../assets/grid-xd.png";
|
|
9
|
+
|
|
10
|
+
<Meta title="Foundations/grid" name="Layout" />
|
|
11
|
+
|
|
12
|
+
# Layout
|
|
13
|
+
|
|
14
|
+
<Unstyled>
|
|
15
|
+
<table>
|
|
16
|
+
<tr>
|
|
17
|
+
<th>BREAKPOINTS</th>
|
|
18
|
+
</tr>
|
|
19
|
+
<tr>
|
|
20
|
+
<td class="width__one-third rds-doc__layout-cell--label">
|
|
21
|
+
<h2 class="rds-title-01 rds-doc__color-headline">Breakpoint S</h2>
|
|
22
|
+
Mobile
|
|
23
|
+
</td>
|
|
24
|
+
<td class="width__one-third rds-doc__layout-graph rds-body-02">
|
|
25
|
+
Screen size: 375px<br />Content size: 343px
|
|
26
|
+
</td>
|
|
27
|
+
<td class="width__one-third rds-doc__layout-cell--right right">
|
|
28
|
+
```@include breakpoint(mobile){}```
|
|
29
|
+
</td>
|
|
30
|
+
</tr>
|
|
31
|
+
|
|
32
|
+
<tr>
|
|
33
|
+
<td class="width__one-third rds-doc__layout-cell--label">
|
|
34
|
+
<h2 class="rds-title-01 rds-doc__color-headline">Breakpoint M</h2>
|
|
35
|
+
<span class="rds-body-02">Tablet</span>
|
|
36
|
+
</td>
|
|
37
|
+
<td class="width__one-third rds-doc__layout-graph rds-body-02">
|
|
38
|
+
Screen size: 720px<br />Content size: 672px
|
|
39
|
+
</td>
|
|
40
|
+
<td class="width__one-third rds-doc__layout-cell--right right">
|
|
41
|
+
```@include breakpoint(tablet){}```
|
|
42
|
+
</td>
|
|
43
|
+
</tr>
|
|
44
|
+
|
|
45
|
+
<tr>
|
|
46
|
+
<td class="width__one-third rds-doc__layout-cell--label">
|
|
47
|
+
<h2 class="rds-title-01 rds-doc__color-headline">Breakpoint L</h2>
|
|
48
|
+
<span class="rds-body-02">Desktop</span>
|
|
49
|
+
</td>
|
|
50
|
+
<td class="width__one-third rds-doc__layout-graph rds-body-02">
|
|
51
|
+
Screen size: 1440px<br />Content size: 1376px
|
|
52
|
+
</td>
|
|
53
|
+
<td class="width__one-third rds-doc__layout-cell--right right">
|
|
54
|
+
```@include breakpoint(desktop){}```
|
|
55
|
+
</td>
|
|
56
|
+
</tr>
|
|
57
|
+
|
|
58
|
+
<tr>
|
|
59
|
+
<td class="width__one-third rds-doc__layout-cell--label">
|
|
60
|
+
<h2 class="rds-title-01 rds-doc__color-headline">Breakpoint XL</h2>
|
|
61
|
+
<span class="rds-body-02">Ultrawide Desktop</span>
|
|
62
|
+
</td>
|
|
63
|
+
<td class="width__one-third rds-doc__layout-graph rds-body-02">
|
|
64
|
+
Screen size: 2200px<br />Content size: 1536px
|
|
65
|
+
</td>
|
|
66
|
+
<td class="width__one-third rds-doc__layout-cell--right right">
|
|
67
|
+
```@include breakpoint(ultrawide){}```
|
|
68
|
+
</td>
|
|
69
|
+
</tr>
|
|
70
|
+
</table>
|
|
71
|
+
|
|
72
|
+
</Unstyled>
|
|
73
|
+
|
|
74
|
+
<Unstyled>
|
|
75
|
+
<table>
|
|
76
|
+
<tr>
|
|
77
|
+
<th>Layout-max</th>
|
|
78
|
+
</tr>
|
|
79
|
+
<tr>
|
|
80
|
+
<td class="rds-doc__layout-cell--label">
|
|
81
|
+
```.rds-layout-max```
|
|
82
|
+
</td>
|
|
83
|
+
<td class="rds-body-02">
|
|
84
|
+
Esta clase ajusta el padding según el tamaño de la pantalla y establece un ancho máximo y margen centrado para pantallas de cada dispositivo.
|
|
85
|
+
</td>
|
|
86
|
+
</tr>
|
|
87
|
+
</table>
|
|
88
|
+
|
|
89
|
+
<div class="">
|
|
90
|
+
<div class="grid-item grid-item--no-padding">
|
|
91
|
+
<div class="rds-docs-breakpoint__layout-inner">
|
|
92
|
+
Layout max
|
|
93
|
+
</div>
|
|
94
|
+
</div>
|
|
95
|
+
</div>
|
|
96
|
+
|
|
97
|
+
<table>
|
|
98
|
+
<tr>
|
|
99
|
+
<th>Grid</th>
|
|
100
|
+
</tr>
|
|
101
|
+
<tr>
|
|
102
|
+
<td class="rds-doc__layout-cell--label ">
|
|
103
|
+
```.rds-grid```
|
|
104
|
+
</td>
|
|
105
|
+
<td class="rds-body-02">
|
|
106
|
+
El wrapper `.rds-grid` establece un contenedor con display grid, centrado horizontalmente con márgenes automáticos y ancho del 100%.
|
|
107
|
+
Configura una cuadrícula responsive con los siguientes ajustes específicos:
|
|
108
|
+
```
|
|
109
|
+
- Mobile (sd): hasta 4 columnas, con un espaciado de 16px entre elementos.
|
|
110
|
+
- Tablet (md): hasta 8 columnas, con un espaciado de 16px entre elementos.
|
|
111
|
+
- Desktop (ld): hasta 12 columnas, con un espaciado de 24px entre elementos.
|
|
112
|
+
- Ultrawide: similar al anterior, por lo tanto usa las mismas clases.
|
|
113
|
+
```
|
|
114
|
+
</td>
|
|
115
|
+
</tr>
|
|
116
|
+
</table>
|
|
117
|
+
|
|
118
|
+
<table>
|
|
119
|
+
<tr>
|
|
120
|
+
<td class="rds-doc__layout-cell--label">
|
|
121
|
+
```.rds-col-{abbr}-{number}```
|
|
122
|
+
</td>
|
|
123
|
+
<td class="rds-body-02">
|
|
124
|
+
Define el número de columnas que un elemento debe ocupar en la cuadrícula en el breakpoint especificado.
|
|
125
|
+
Reemplaza `{abbr}` con la abreviatura del breakpoint (`sd`, `md`, `ld`, `xd`) y `{number}` con el número de columnas que el elemento ocupará.
|
|
126
|
+
</td>
|
|
127
|
+
</tr>
|
|
128
|
+
</table>
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
<table>
|
|
132
|
+
<tr>
|
|
133
|
+
<td class="rds-doc__layout-cell--label">
|
|
134
|
+
```.rds-col-{n}```
|
|
135
|
+
</td>
|
|
136
|
+
<td class="rds-body-02">
|
|
137
|
+
Define que un elemento debe ocupar `{n}` columnas en la cuadrícula en todos los breakpoints.
|
|
138
|
+
Esta clase asigna automáticamente `{n}` columnas a un elemento en cualquier tamaño de pantalla definido en la cuadrícula.
|
|
139
|
+
|
|
140
|
+
<br />
|
|
141
|
+
|
|
142
|
+
Ejemplos:
|
|
143
|
+
```
|
|
144
|
+
<ul>
|
|
145
|
+
<li><code>.rds-col-1</code>: Asigna una columna.</li>
|
|
146
|
+
<li><code>.rds-col-2</code>: Asigna dos columnas.</li>
|
|
147
|
+
<li><code>.rds-col-3</code>: Asigna tres columnas.</li>
|
|
148
|
+
</ul>
|
|
149
|
+
```
|
|
150
|
+
</td>
|
|
151
|
+
</tr>
|
|
152
|
+
</table>
|
|
153
|
+
|
|
154
|
+
<div class="rds-docs-breakpoint__grid-example-container">
|
|
155
|
+
<div>
|
|
156
|
+
<h1 class="rds-title-02">Mobile</h1>
|
|
157
|
+
<h2 class="rds-body-01">rds-col-sd-[1-4]</h2>
|
|
158
|
+
<div><img src={GridMobile}/></div>
|
|
159
|
+
</div>
|
|
160
|
+
<div>
|
|
161
|
+
<h1 class="rds-title-02">Tablet</h1>
|
|
162
|
+
<h2 class="rds-body-01">rds-col-md-[1-8]</h2>
|
|
163
|
+
<div><img src={GridTablet}/></div>
|
|
164
|
+
</div>
|
|
165
|
+
<div>
|
|
166
|
+
<h1 class="rds-title-02">Desktop y Ultrawide</h1>
|
|
167
|
+
<h2 class="rds-body-01">rds-col-ld-[1-12]</h2>
|
|
168
|
+
<div><img src={GridDesktop}/></div>
|
|
169
|
+
</div>
|
|
170
|
+
</div>
|
|
171
|
+
|
|
172
|
+
</Unstyled>
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import './gridsystem.scss'
|
|
2
|
+
|
|
3
|
+
export default {
|
|
4
|
+
title: 'Foundations/grid',
|
|
5
|
+
argTypes: {
|
|
6
|
+
gridItems: {
|
|
7
|
+
control: 'object',
|
|
8
|
+
},
|
|
9
|
+
},
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
function createGridItem(content) {
|
|
13
|
+
const div = document.createElement('div')
|
|
14
|
+
div.className = 'grid-item'
|
|
15
|
+
div.textContent = content
|
|
16
|
+
return div
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export function ResponsiveGridSystem({ gridItems }) {
|
|
20
|
+
const container = document.createElement('div')
|
|
21
|
+
container.className = 'rds-layout-max playground-grid'
|
|
22
|
+
|
|
23
|
+
const containerGrid = document.createElement('div')
|
|
24
|
+
containerGrid.className = 'rds-grid'
|
|
25
|
+
container.appendChild(containerGrid)
|
|
26
|
+
|
|
27
|
+
gridItems.forEach((item, index) => {
|
|
28
|
+
const columnDiv = document.createElement('div')
|
|
29
|
+
columnDiv.className = Object.entries(item)
|
|
30
|
+
.map(([breakpoint, columns]) => `rds-col-${breakpoint}-${columns}`)
|
|
31
|
+
.join(' ')
|
|
32
|
+
const gridItem = createGridItem(`Item ${index + 1}`)
|
|
33
|
+
columnDiv.appendChild(gridItem)
|
|
34
|
+
containerGrid.appendChild(columnDiv)
|
|
35
|
+
})
|
|
36
|
+
|
|
37
|
+
return container
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
ResponsiveGridSystem.args = {
|
|
41
|
+
gridItems: [
|
|
42
|
+
{ sm: 3, md: 6, lg: 4, xl: 3 },
|
|
43
|
+
{ sm: 1, md: 6, lg: 4, xl: 3 },
|
|
44
|
+
{ sm: 1, md: 6, lg: 4, xl: 3 },
|
|
45
|
+
{ sm: 3, md: 6, lg: 4, xl: 3 },
|
|
46
|
+
],
|
|
47
|
+
}
|