spoko-design-system 0.0.1 → 0.0.5

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 (113) hide show
  1. package/.astro/icon.d.ts +8109 -10
  2. package/.github/workflows/deploy.yml +39 -39
  3. package/.stackblitzrc +5 -5
  4. package/.vscode/extensions.json +5 -4
  5. package/.vscode/launch.json +11 -11
  6. package/.vscode/settings.json +6 -0
  7. package/LICENSE +21 -21
  8. package/Layout/Header.astro +111 -89
  9. package/README.md +94 -69
  10. package/astro-i18next.config.mjs +17 -17
  11. package/astro-i18next.config.ts +10 -10
  12. package/astro.config.mjs +51 -42
  13. package/index.ts +6 -6
  14. package/package.json +25 -17
  15. package/public/astro-design-system-logo.svg +10 -10
  16. package/public/favicon.ico +0 -0
  17. package/public/favicon.svg +0 -0
  18. package/public/fonts/lg.svg +53 -53
  19. package/public/fonts/vwhead-bold-demo.html +549 -549
  20. package/public/fonts/vwhead-regular-demo.html +549 -549
  21. package/public/fonts/vwtext-bold-demo.html +549 -549
  22. package/public/fonts/vwtext-regular-demo.html +549 -549
  23. package/public/github.svg +3 -3
  24. package/public/grid_dot.svg +4 -4
  25. package/public/linkedin.svg +44 -44
  26. package/public/locales/en/translation.json +8 -5
  27. package/public/locales/pl/translation.json +8 -5
  28. package/public/make-scrollable-code-focusable.js +3 -3
  29. package/public/polo.blue.svg +29 -0
  30. package/public/spoko.space.svg +71 -0
  31. package/public/twitter.svg +46 -46
  32. package/sandbox.config.json +11 -11
  33. package/src/MyComponent.astro +8 -8
  34. package/src/components/Badge.vue +19 -19
  35. package/src/components/Badges.vue +24 -23
  36. package/src/components/Breadcrumbs.vue +108 -111
  37. package/src/components/Button.vue +37 -0
  38. package/src/components/ButtonCopy.vue +52 -0
  39. package/src/components/Card.astro +25 -0
  40. package/src/components/CategoryLink.astro +18 -0
  41. package/src/components/Copyright.astro +11 -11
  42. package/src/components/Date.astro +7 -0
  43. package/src/components/FuckRussia.vue +65 -65
  44. package/src/components/HandDrive.astro +29 -30
  45. package/src/components/HeadCommon.astro +40 -40
  46. package/src/components/HeadSEO.astro +41 -41
  47. package/src/components/Header/AstroLogo.astro +7 -27
  48. package/src/components/Header/Header.astro +44 -48
  49. package/src/components/Header/SkipToContent.astro +1 -1
  50. package/src/components/Headline.vue +60 -0
  51. package/src/components/Image.astro +30 -0
  52. package/src/components/Jumbatron.vue +46 -31
  53. package/src/components/LeftSidebar.astro +45 -44
  54. package/src/components/MainColors.vue +29 -29
  55. package/src/components/MainInput.vue +18 -18
  56. package/src/components/MainTable.vue +40 -45
  57. package/src/components/Modal.astro +30 -0
  58. package/src/components/PageContent.astro +14 -14
  59. package/src/components/PostHeader.astro +104 -0
  60. package/src/components/PrCode.vue +156 -0
  61. package/src/components/ProductNumber.astro +117 -0
  62. package/src/components/ProductTile.astro +54 -0
  63. package/src/components/RightSidebar.astro +15 -11
  64. package/src/components/SlimBanner.vue +59 -59
  65. package/src/components/TableOfContents.astro +11 -11
  66. package/src/components/Translations.vue +27 -0
  67. package/src/components/flags/FlagPL.vue +2 -2
  68. package/src/components/flags/FlagUA.vue +2 -2
  69. package/src/components/layout/Header.astro +50 -69
  70. package/src/config.ts +51 -42
  71. package/src/design.config.ts +73 -92
  72. package/src/env.d.ts +1 -1
  73. package/src/flag-poland.svg +1 -0
  74. package/src/flag-uk.svg +1 -0
  75. package/src/layouts/Layout.astro +43 -0
  76. package/src/layouts/MainLayout.astro +60 -50
  77. package/src/pages/components/badges.mdx +69 -35
  78. package/src/pages/components/breadcrumbs.mdx +136 -103
  79. package/src/pages/components/buttons.mdx +143 -60
  80. package/src/pages/components/card.mdx +40 -0
  81. package/src/pages/components/copyright.mdx +41 -24
  82. package/src/pages/components/flags.mdx +40 -26
  83. package/src/pages/components/fuck-russia.mdx +39 -16
  84. package/src/pages/components/hand-drive.mdx +38 -27
  85. package/src/pages/components/headline.mdx +148 -0
  86. package/src/pages/components/icons.astro +54 -45
  87. package/src/pages/components/image.mdx +502 -0
  88. package/src/pages/components/input.mdx +45 -14
  89. package/src/pages/components/jumbatron.mdx +71 -48
  90. package/src/pages/components/modal.mdx +64 -0
  91. package/src/pages/components/post-header.mdx +58 -0
  92. package/src/pages/components/pr-code.mdx +41 -0
  93. package/src/pages/components/product-number.mdx +65 -0
  94. package/src/pages/components/product-tile.mdx +39 -0
  95. package/src/pages/components/slimbanner.mdx +29 -27
  96. package/src/pages/components/table.mdx +39 -20
  97. package/src/pages/core/colors.mdx +8 -8
  98. package/src/pages/core/introduction.mdx +74 -68
  99. package/src/pages/core/shadows.astro +20 -20
  100. package/src/pages/core/typography.astro +46 -46
  101. package/src/pages/index.astro +70 -52
  102. package/src/pages/patterns/introduction.mdx +60 -61
  103. package/src/styles/_variables.scss +75 -75
  104. package/src/styles/base/_base.scss +166 -158
  105. package/src/styles/base/_typography.scss +147 -147
  106. package/src/styles/content.scss +66 -71
  107. package/src/styles/main.scss +22 -22
  108. package/tailwind.config.cjs +8 -8
  109. package/tsconfig.json +11 -11
  110. package/uno.config.ts +246 -227
  111. package/src/components/MainButton.vue +0 -26
  112. package/src/components/MainStatusPill.vue +0 -32
  113. package/src/pages/components/status-pill.mdx +0 -22
@@ -1,45 +1,54 @@
1
- ---
2
- import MainLayout from '../../layouts/MainLayout.astro';
3
- import { Icon } from 'astro-icon/components';
4
-
5
- const ICONS = {
6
- mdi: ["facebook", "instagram", "post-it-note-edit-outline"], // Loads only Material Design Icon's "account" SVG
7
- 'ant-design': ["menu-fold-outlined", "menu-unfold-outlined", "menu-outlined" ],
8
- bi: ["envelope-open", "credit-card"],
9
- bx: ["arrow-back"],
10
- carbon: ["language", "checkmark", "home", "dicom-overlay"],
11
- el: ["star-empty", "star"],
12
- 'eos-icons': ["three-dots-loading"],
13
- fluent: ["share-android-24-regular"],
14
- 'fluent-emoji': ["cookie"],
15
- la: ["arrow-right", "arrow-left"],
16
- octicon: ["chevron-left-24", "x-24"],
17
- uil: ["map-marker", "envelope", "phone"]
18
- }
19
-
20
- ---
21
-
22
- <MainLayout>
23
- <h1>Icons</h1>
24
- <pre class="astro-code bg-slate-800 text-white">import &#123; Icon &#125; from 'astro-icon/components';</pre>
25
- <div class="">
26
- {Object.keys(ICONS).map((key) => (
27
- <h2>{key}</h2>
28
- <div class="inline-grid grid-cols-4 gap-0 w-full">
29
- {ICONS[key].map((value) => (
30
- <div>
31
- <div class="component-preview ">
32
- <Icon name={`${key}:${value}`} />
33
- </div>
34
- <pre class="astro-code bg-slate-800 text-white text-sm">&lt;Icon name={`${key}:${value}`} /&gt;</pre>
35
- </div>
36
- ))}
37
- </div>
38
- ))}
39
- </div>
40
-
41
-
42
-
43
- </MainLayout>
44
-
45
-
1
+ ---
2
+ import { changeLanguage } from "i18next";
3
+ import MainLayout from "../../layouts/MainLayout.astro";
4
+ import { Icon } from "astro-icon/components";
5
+
6
+
7
+ const iconifyUrl = "https://icon-sets.iconify.design/";
8
+ const ICONS = {
9
+ mdi: ["facebook", "instagram", "post-it-note-edit-outline", "car-hatchback", "car-door", "car-side", "car-windshield-outline", "car-light-alert", "car-tire-alert", "car-light-dimmed", "car-light-fog", "car-light-high", "car-parking-lights", "car-esp", "car-brake-abs", "car-horn", "engine-outline", "fan", "fan-off", "air-conditioner", "coolant-temperature", "car-brake-alert", "car-traction-control", "card-text-outline", "fuel", "oil", "hazard-lights", "credit-card-outline"],
10
+ el: ["star-empty", "star", "heart-empty", "heart", "map-marker", "fire", "quote-right", "qrcode", "car", "indent-left", "indent-right", "ok"], 'eos-icons': ["three-dots-loading", "bubble-loading", "loading", "installing"],
11
+ fluent: ["share-android-24-regular", "checkmark-24-filled", "tag-24-regular", "tag-multiple-24-regular" ],
12
+ "fluent-emoji": ["cookie", "construction", "warning", "wrench"],
13
+ la: ["arrow-right", "arrow-left", "car", "car-side"],
14
+ octicon: ["chevron-left-24", "x-24", "alert-24", "graph-24", "comment-24", "comment-discussion-24", "clock-24", "star-24", "star-fill-24", "file-media-24", "heart-24", "heart-fill-24", "project-roadmap-24", "location-24", "info-24", "mark-github-16"],
15
+ uil: ["map-marker", "envelope", "phone", "tag-alt"],
16
+ "simple-icons": ["ebay", "allegro", "volkswagen", "audi", "skoda", "seat", "whatsapp", "x", "facebook", "messenger", "instagram", "telegram"],
17
+ "icon-park-outline": ["shopping-bag", "comment", "comments", "tag-one"],
18
+ flowbite: ["arrow-left-outline", "arrow-right-outline", "angle-left-outline", "angle-right-outline", "chevron-left-outline", "chevron-right-outline","map-location-outline", "map-pin-alt-solid", "x-outline", "messages-outline", "arrow-down-to-bracket-outline", "check-outline"]
19
+
20
+ };
21
+ ---
22
+
23
+ <MainLayout>
24
+ <h1>Icons</h1>
25
+ <p>Astro Icon is a straightforward icon system for the Astro framework.</p>
26
+
27
+ <a href="https://www.astroicon.dev/">https://www.astroicon.dev/</a>
28
+
29
+ <pre class="mt-6 astro-code bg-slate-800 text-white">import &#123; Icon &#125; from 'astro-icon/components';</pre>
30
+ <div class="">
31
+ {Object.keys(ICONS).map((key) => (
32
+ <h2 class="mt-6 mx-2">
33
+ <a href={`${iconifyUrl}${key}/`} target="_blank">
34
+ {key}
35
+ </a>
36
+ </h2>
37
+ <div class="inline-grid grid-cols-2 md:grid-cols-4 gap-0 w-full">
38
+ {ICONS[key].map((value) => (
39
+ <div class="mx-1 mb-2">
40
+ <div class="component-preview ">
41
+ <Icon name={`${key}:${value}`} class="text-3xl mx-auto" />
42
+ </div>
43
+ <pre class="astro-code bg-slate-800 text-white text-sm text-center">&lt;Icon name={`"${key}:${value}"`} /&gt;</pre>
44
+ </div>
45
+ ))}
46
+ </div>
47
+ ))}
48
+ </div>
49
+
50
+
51
+
52
+ </MainLayout>
53
+
54
+
@@ -0,0 +1,502 @@
1
+ ---
2
+ title: "Jumbatron"
3
+ layout: "../../layouts/MainLayout.astro"
4
+ ---
5
+ import Image from '../../components/Image.astro'
6
+
7
+ ## Image
8
+
9
+ Image converted to AVIF format and resized.
10
+ AVIF compresses images significantly better than older-generation formats such as WebP and JPEG.
11
+
12
+ #
13
+ Displaying great product images is one of the most important keys to e-Commerce success.
14
+
15
+
16
+
17
+ - https://en.wikipedia.org/wiki/AVIF
18
+
19
+ #
20
+
21
+ You can choose the image format you need so that you do not unnecessarily load an image that is larger than the area in which you are displaying it. This ensures maximum page optimisation.
22
+
23
+ - https://docs.astro.build/en/guides/images/
24
+
25
+ #
26
+
27
+ Use `.img--overlay` class for images on white background to make a layer with light grey overlay.
28
+
29
+
30
+ ### Small Image
31
+ `.img--small`
32
+
33
+ <div class="component-preview">
34
+ <div class="img--overlay img--4/3 img--small">
35
+ <Image
36
+ imageObject={
37
+ {
38
+ src: 'https://img.freepik.com/darmowe-wektory/tlo-retro-modeli-geometrycznych_52683-17902.jpg?w=1380&t=st=1706311337',
39
+ alt: 'Image Alt',
40
+ height: '180',
41
+ width: '240',
42
+ class: 'object-cover'
43
+ }
44
+ }
45
+ />
46
+ </div>
47
+
48
+
49
+ <div class="img--4/3 img--small">
50
+ <Image
51
+ imageObject={
52
+ {
53
+ src: 'https://img.freepik.com/free-photo/beautiful-green-landscape-with-plantations-trees-cloudy-sky_181624-42918.jpg?w=970&t=st=1706315168',
54
+ alt: 'Image Alt',
55
+ height: '180',
56
+ width: '240',
57
+ class: 'object-cover'
58
+ }
59
+ }
60
+ />
61
+ </div>
62
+
63
+ <div class="img--4/3 img--small">
64
+ <Image
65
+ imageObject={
66
+ {
67
+ src: 'https://img.freepik.com/free-photo/lake-mountains_1204-508.jpg?w=970&t=st=1706315236',
68
+ alt: 'Image Alt',
69
+ height: '180',
70
+ width: '240',
71
+ class: 'object-cover'
72
+ }
73
+ }
74
+ />
75
+ </div>
76
+ </div>
77
+
78
+
79
+
80
+
81
+ ```js
82
+ <div class="img--overlay img--4/3 img--small">
83
+ <Image
84
+ imageObject={
85
+ {
86
+ src: 'https://img.freepik.com/darmowe-wektory/tlo-retro-modeli-geometrycznych_52683-17902.jpg?w=1380&t=st=1706311337',
87
+ alt: 'Image Alt',
88
+ height: '180',
89
+ width: '240',
90
+ class: 'object-cover'
91
+ }
92
+ }
93
+ />
94
+
95
+ <div class="img--4/3 img--small">
96
+ <Image
97
+ imageObject={
98
+ {
99
+ src: 'https://img.freepik.com/free-photo/beautiful-green-landscape-with-plantations-trees-cloudy-sky_181624-42918.jpg?w=970&t=st=1706315168',
100
+ alt: 'Image Alt',
101
+ height: '180',
102
+ width: '240',
103
+ class: 'object-cover'
104
+ }
105
+ }
106
+ />
107
+ </div>
108
+
109
+ <div class="img--4/3 img--small">
110
+ <Image
111
+ imageObject={
112
+ {
113
+ src: 'https://img.freepik.com/free-photo/lake-mountains_1204-508.jpg?w=970&t=st=1706315236',
114
+ alt: 'Image Alt',
115
+ height: '180',
116
+ width: '240',
117
+ class: 'object-cover'
118
+ }
119
+ }
120
+ />
121
+ </div>
122
+
123
+
124
+
125
+ </div>
126
+ ```
127
+
128
+
129
+ ### Medium Image
130
+ `.img--medium`
131
+
132
+ <div class="component-preview">
133
+ <a class="img--medium img--3/2 b-l b-white" href="#">
134
+ <Image
135
+ imageObject={
136
+ {
137
+ src: 'https://img.freepik.com/darmowe-wektory/tlo-retro-modeli-geometrycznych_52683-17902.jpg?w=1380&t=st=1706311337',
138
+ alt: 'Image Alt',
139
+ height: '180',
140
+ width: '240',
141
+ }
142
+ }
143
+ />
144
+ </a>
145
+
146
+ <a class="img--medium img--3/2 b-l b-white" href="#">
147
+ <Image
148
+ imageObject={
149
+ {
150
+ src: 'https://img.freepik.com/free-photo/beautiful-green-landscape-with-plantations-trees-cloudy-sky_181624-42918.jpg?w=970&t=st=1706315168',
151
+ alt: 'Image Alt',
152
+ height: '180',
153
+ width: '240',
154
+ class: 'bg-gray-100/70'
155
+ }
156
+ }
157
+ />
158
+ </a>
159
+
160
+ <a class="img--medium img--3/2 b-l b-white" href="#">
161
+ <Image
162
+ imageObject={
163
+ {
164
+ src: 'https://img.freepik.com/free-photo/lake-mountains_1204-508.jpg?w=970&t=st=1706315236',
165
+ alt: 'Image Alt',
166
+ height: '180',
167
+ width: '240',
168
+ class: 'bg-gray-100/70'
169
+ }
170
+ }
171
+ />
172
+ </a>
173
+ </div>
174
+
175
+ ```ts
176
+ <a class="img--medium img--3/2 b-l b-white" href="#">
177
+ <Image
178
+ imageObject={
179
+ {
180
+ src: 'https://img.freepik.com/darmowe-wektory/tlo-retro-modeli-geometrycznych_52683-17902.jpg?w=1380&t=st=1706311337',
181
+ alt: 'Image Alt',
182
+ height: '180',
183
+ width: '240',
184
+ }
185
+ }
186
+ />
187
+ </a>
188
+
189
+ <a class="img--medium img--3/2 b-l b-white" href="#">
190
+ <Image
191
+ imageObject={
192
+ {
193
+ src: 'https://img.freepik.com/free-photo/beautiful-green-landscape-with-plantations-trees-cloudy-sky_181624-42918.jpg?w=970&t=st=1706315168',
194
+ alt: 'Image Alt',
195
+ height: '180',
196
+ width: '240',
197
+ class: 'bg-gray-100/70'
198
+ }
199
+ }
200
+ />
201
+ </a>
202
+
203
+ <a class="img--medium img--3/2 b-l b-white" href="#">
204
+ <Image
205
+ imageObject={
206
+ {
207
+ src: 'https://img.freepik.com/free-photo/lake-mountains_1204-508.jpg?w=970&t=st=1706315236',
208
+ alt: 'Image Alt',
209
+ height: '180',
210
+ width: '240',
211
+ class: 'bg-gray-100/70'
212
+ }
213
+ }
214
+ />
215
+ </a>
216
+ ```
217
+
218
+ ### Responsive Image with srcset
219
+ - https://developer.mozilla.org/en-US/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images#resolution_switching_different_sizes
220
+
221
+ <div class="component-preview">
222
+ <div class="h-full img--3/2 overflow-hidden">
223
+ <Image
224
+ imageObject={
225
+ {
226
+ src: 'https://img.freepik.com/free-photo/beautiful-green-landscape-with-plantations-trees-cloudy-sky_181624-42918.jpg?w=1970&t=st=1706315168',
227
+ alt: 'Image Alt',
228
+ height: '1350',
229
+ width: '1800',
230
+ class: 'bg-gray-100/70',
231
+ srcset: [430, 690, 960, 1200, 1800]
232
+ }
233
+ }
234
+ />
235
+ </div>
236
+ </div>
237
+
238
+ ```js
239
+ <Image
240
+ imageObject={
241
+ {
242
+ src: 'https://img.freepik.com/free-photo/beautiful-green-landscape-with-plantations-trees-cloudy-sky_181624-42918.jpg?w=1970&t=st=1706315168',
243
+ alt: 'Image Alt',
244
+ height: '1350',
245
+ width: '1800',
246
+ class: 'bg-gray-100/70',
247
+ srcset: [430, 690, 960, 1200, 1800]
248
+ }
249
+ }
250
+ />
251
+ ```
252
+
253
+
254
+
255
+ ### Image Aspect Ratios
256
+
257
+ Image ratio, also known as aspect ratio, is how wide an image is in relation to how tall it is.
258
+ For viewing on a mobile device, the recommended image ratio is 1:1 (a square picture).
259
+
260
+ <div class="component-preview">
261
+ <div class="columns-2 lg:columns-4 w-full">
262
+ <div class="text-center mb-4">
263
+ <div class="img--medium img--1/1 b-l b-white w-full">
264
+ <Image
265
+ imageObject={
266
+ {
267
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
268
+ alt: 'Image Alt',
269
+ height: '700',
270
+ width: '700',
271
+ }
272
+ }
273
+ />
274
+ <div class="absolute bottom-0 bg-black/40 text-white px-5 py-0 left-0 right-0">1:1</div>
275
+ </div>
276
+ </div>
277
+
278
+ <div class="text-center mb-4">
279
+ <div class="img--medium img--3/1 b-l b-white w-full">
280
+ <Image
281
+ imageObject={
282
+ {
283
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
284
+ alt: 'Image Alt',
285
+ height: '700',
286
+ width: '700',
287
+ }
288
+ }
289
+ />
290
+ <div class="absolute bottom-0 bg-black/40 text-white px-5 py-0 left-0 right-0">3:1</div>
291
+ </div>
292
+ </div>
293
+
294
+ <div class="text-center mb-4">
295
+ <div class="img--medium img--4/3 b-l b-white w-full">
296
+ <Image
297
+ imageObject={
298
+ {
299
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
300
+ alt: 'Image Alt',
301
+ height: '700',
302
+ width: '700',
303
+ }
304
+ }
305
+ />
306
+ <div class="absolute bottom-0 bg-black/40 text-white px-5 py-0 left-0 right-0">4:3</div>
307
+ </div>
308
+ </div>
309
+ <div class="text-center mb-4">
310
+ <div class="img--medium img--3/2 b-l b-white w-full">
311
+ <Image
312
+ imageObject={
313
+ {
314
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
315
+ alt: 'Image Alt',
316
+ height: '700',
317
+ width: '700',
318
+ }
319
+ }
320
+ />
321
+ <div class="absolute bottom-0 bg-black/40 text-white px-5 py-0 left-0 right-0">3:2</div>
322
+ </div>
323
+ </div>
324
+
325
+ <div class="text-center mb-4">
326
+ <div class="img--medium img--16/9 b-l b-white w-full">
327
+ <Image
328
+ imageObject={
329
+ {
330
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
331
+ alt: 'Image Alt',
332
+ height: '700',
333
+ width: '700',
334
+ }
335
+ }
336
+ />
337
+ <div class="absolute bottom-0 bg-black/40 text-white px-5 py-0 left-0 right-0">16:9</div>
338
+ </div>
339
+ </div>
340
+ <div class="text-center mb-4">
341
+ <div class="img--medium img--3/4 b-l b-white w-full">
342
+ <Image
343
+ imageObject={
344
+ {
345
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
346
+ alt: 'Image Alt',
347
+ height: '700',
348
+ width: '700',
349
+ }
350
+ }
351
+ />
352
+ <div class="absolute bottom-0 bg-black/40 text-white px-5 py-0 left-0 right-0">3:4</div>
353
+ </div>
354
+ </div>
355
+ <div class="text-center mb-4">
356
+ <div class="img--medium img--2/3 b-l b-white w-full">
357
+ <Image
358
+ imageObject={
359
+ {
360
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
361
+ alt: 'Image Alt',
362
+ height: '700',
363
+ width: '700',
364
+ }
365
+ }
366
+ />
367
+ <div class="absolute bottom-0 bg-black/40 text-white px-5 py-0 left-0 right-0">2:3</div>
368
+ </div>
369
+ </div>
370
+ </div>
371
+ </div>
372
+
373
+
374
+ ```js
375
+ <div class="img--medium img--1/1 b-l b-white w-full">
376
+ <Image
377
+ imageObject={
378
+ {
379
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
380
+ alt: 'Image Alt',
381
+ height: '700',
382
+ width: '700',
383
+ }
384
+ }
385
+ />
386
+ </div>
387
+
388
+ <div class="img--medium img--3/1 b-l b-white w-full">
389
+ <Image
390
+ imageObject={
391
+ {
392
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
393
+ alt: 'Image Alt',
394
+ height: '700',
395
+ width: '700',
396
+ }
397
+ }
398
+ />
399
+ </div>
400
+
401
+ <div class="img--medium img--4/3 b-l b-white w-full">
402
+ <Image
403
+ imageObject={
404
+ {
405
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
406
+ alt: 'Image Alt',
407
+ height: '700',
408
+ width: '700',
409
+ }
410
+ }
411
+ />
412
+ </div>
413
+
414
+ <div class="img--medium img--3/2 b-l b-white w-full">
415
+ <Image
416
+ imageObject={
417
+ {
418
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
419
+ alt: 'Image Alt',
420
+ height: '700',
421
+ width: '700',
422
+ }
423
+ }
424
+ />
425
+ </div>
426
+
427
+ <div class="img--medium img--16/9 b-l b-white w-full">
428
+ <Image
429
+ imageObject={
430
+ {
431
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
432
+ alt: 'Image Alt',
433
+ height: '300',
434
+ width: '300',
435
+ }
436
+ }
437
+ />
438
+ </div>
439
+
440
+ <div class="img--medium img--3/4 b-l b-white w-full">
441
+ <Image
442
+ imageObject={
443
+ {
444
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
445
+ alt: 'Image Alt',
446
+ height: '700',
447
+ width: '700',
448
+ }
449
+ }
450
+ />
451
+ </div>
452
+
453
+ <div class="img--medium img--2/3 b-l b-white w-full">
454
+ <Image
455
+ imageObject={
456
+ {
457
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
458
+ alt: 'Image Alt',
459
+ height: '700',
460
+ width: '700',
461
+ }
462
+ }
463
+ />
464
+ </div>
465
+
466
+ ```
467
+
468
+
469
+ It is good to have all the images in the same ratio so that they look fairly uniform. Additionally, you can use a different ratio on desktop than on mobile view.
470
+
471
+ ### Image 1:1 on mobile, and 4:3 on desktop
472
+
473
+ <div class="component-preview">
474
+ <div class="columns-1 md:columns-3">
475
+ <div class="img--medium img--1/1 md:img--4/3 b-l b-white w-full">
476
+ <Image
477
+ imageObject={
478
+ {
479
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
480
+ alt: 'Image Alt',
481
+ height: '700',
482
+ width: '700',
483
+ }
484
+ }
485
+ />
486
+ </div>
487
+ </div>
488
+ </div>
489
+ ```js
490
+ <div class="img--medium img--1/1 md:img--4/3 b-l b-white w-full">
491
+ <Image
492
+ imageObject={
493
+ {
494
+ src: 'https://img.freepik.com/free-photo/nature-beauty-tropical-rainforest-adventure-tranquility-freshness-generated-by-artificial-intellingence_25030-62539.jpg?size=960&ext=jpg',
495
+ alt: 'Image Alt',
496
+ height: '700',
497
+ width: '700',
498
+ }
499
+ }
500
+ />
501
+ </div>
502
+ ```
@@ -1,15 +1,46 @@
1
- ---
2
- title: Input
3
- layout: ../../layouts/MainLayout.astro
4
- ---
5
- import MainInput from '../../components/MainInput.vue'
6
-
7
- ## Input text
8
-
9
- <div class="component-preview">
10
- <MainInput label="Name"></MainInput>
11
- </div>
12
-
13
- ```js
14
- <MainInput type="text" value="Hello world!"></MainInput>
1
+ ---
2
+ title: Input
3
+ layout: ../../layouts/MainLayout.astro
4
+ ---
5
+ import MainInput from '../../components/MainInput.vue'
6
+
7
+ ## Input text
8
+
9
+ <div class="component-preview">
10
+ <MainInput label="Name"></MainInput>
11
+ </div>
12
+
13
+ ```js
14
+ <MainInput type="text" value="Hello world!"></MainInput>
15
+ ```
16
+
17
+
18
+
19
+ <div class="component-preview">
20
+
21
+ <div class="bg-white grid items-end w-full gap-6 md:grid-cols-3 px-4 py-6">
22
+ <div class="relative">
23
+ <input type="text" id="floating_filled" class="block rounded-t-lg px-2.5 pb-2.5 pt-5 w-full text-sm text-gray-900 bg-gray-50 dark:bg-gray-700 border-0 border-b-2 border-gray-300 appearance-none dark:text-white dark:border-gray-600 dark:focus:border-blue-500 focus:outline-none focus:ring-0 focus:border-blue-600 peer" placeholder=" " />
24
+ <label for="floating_filled" class="absolute text-sm text-gray-500 dark:text-gray-400 duration-300 transform -translate-y-4 scale-75 top-4 z-10 origin-[0] start-2.5 peer-focus:text-blue-600 peer-focus:dark:text-blue-500 peer-placeholder-shown:scale-100 peer-placeholder-shown:translate-y-0 peer-focus:scale-75 peer-focus:-translate-y-4 rtl:peer-focus:translate-x-1/4 rtl:peer-focus:left-auto">Floating filled</label>
25
+ </div>
26
+
27
+ <div class="relative z-0">
28
+ <input type="text" id="floating_standard" class="block py-2.5 px-0 w-full text-sm text-gray-900 bg-transparent border-0 border-b-2 border-gray-300 appearance-none dark:text-white dark:border-gray-600 dark:focus:border-blue-500 focus:outline-none focus:ring-0 focus:border-blue-600 peer" placeholder=" " />
29
+ <label for="floating_standard" class="absolute text-sm text-gray-500 dark:text-gray-400 duration-300 transform -translate-y-6 scale-75 top-3 -z-10 origin-[0] peer-focus:start-0 peer-focus:text-blue-600 peer-focus:dark:text-blue-500 peer-placeholder-shown:scale-100 peer-placeholder-shown:translate-y-0 peer-focus:scale-75 peer-focus:-translate-y-6 rtl:peer-focus:translate-x-1/4 rtl:peer-focus:left-auto">Floating standard</label>
30
+ </div>
31
+ </div>
32
+
33
+ </div>
34
+
35
+
36
+ ```js
37
+ <div class="relative">
38
+ <input type="text" id="floating_filled" class="block rounded-t-lg px-2.5 pb-2.5 pt-5 w-full text-sm text-gray-900 bg-gray-50 dark:bg-gray-700 border-0 border-b-2 border-gray-300 appearance-none dark:text-white dark:border-gray-600 dark:focus:border-blue-500 focus:outline-none focus:ring-0 focus:border-blue-600 peer" placeholder=" " />
39
+ <label for="floating_filled" class="absolute text-sm text-gray-500 dark:text-gray-400 duration-300 transform -translate-y-4 scale-75 top-4 z-10 origin-[0] start-2.5 peer-focus:text-blue-600 peer-focus:dark:text-blue-500 peer-placeholder-shown:scale-100 peer-placeholder-shown:translate-y-0 peer-focus:scale-75 peer-focus:-translate-y-4 rtl:peer-focus:translate-x-1/4 rtl:peer-focus:left-auto">Floating filled</label>
40
+ </div>
41
+
42
+ <div class="relative z-0">
43
+ <input type="text" id="floating_standard" class="block py-2.5 px-0 w-full text-sm text-gray-900 bg-transparent border-0 border-b-2 border-gray-300 appearance-none dark:text-white dark:border-gray-600 dark:focus:border-blue-500 focus:outline-none focus:ring-0 focus:border-blue-600 peer" placeholder=" " />
44
+ <label for="floating_standard" class="absolute text-sm text-gray-500 dark:text-gray-400 duration-300 transform -translate-y-6 scale-75 top-3 -z-10 origin-[0] peer-focus:start-0 peer-focus:text-blue-600 peer-focus:dark:text-blue-500 peer-placeholder-shown:scale-100 peer-placeholder-shown:translate-y-0 peer-focus:scale-75 peer-focus:-translate-y-6 rtl:peer-focus:translate-x-1/4 rtl:peer-focus:left-auto">Floating standard</label>
45
+ </div>
15
46
  ```