fulldev-ui 0.4.29 → 0.5.0-beta.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 (314) hide show
  1. package/.astro/assets.mjs +1 -0
  2. package/.astro/astro/content.d.ts +547 -0
  3. package/.astro/collections/blocks.schema.json +851 -0
  4. package/.astro/collections/collections.json +63 -0
  5. package/.astro/collections/images.schema.json +22 -0
  6. package/.astro/collections/layouts.schema.json +826 -0
  7. package/.astro/collections/pages.schema.json +568 -0
  8. package/.astro/collections/presets.schema.json +489 -0
  9. package/.astro/collections/records.schema.json +822 -0
  10. package/.astro/collections/settings.schema.json +822 -0
  11. package/.astro/data-store.json +1 -0
  12. package/.astro/modules.mjs +1 -0
  13. package/.astro/settings.json +5 -0
  14. package/.astro/types.d.ts +2 -0
  15. package/CONTRIBUTING.md +2 -2
  16. package/astro.config.ts +20 -4
  17. package/package.json +26 -16
  18. package/public/favicon/android-chrome-192x192.png +0 -0
  19. package/public/favicon/android-chrome-512x512.png +0 -0
  20. package/public/favicon/apple-touch-icon.png +0 -0
  21. package/public/favicon/browserconfig.xml +7 -7
  22. package/public/favicon/favicon-16x16-dark.png +0 -0
  23. package/public/favicon/favicon-16x16.png +0 -0
  24. package/public/favicon/favicon-32x32-dark.png +0 -0
  25. package/public/favicon/favicon-32x32.png +0 -0
  26. package/public/favicon/favicon-48x48-dark.png +0 -0
  27. package/public/favicon/favicon-48x48.png +0 -0
  28. package/public/favicon/favicon-dark.ico +0 -0
  29. package/public/favicon/favicon.ico +0 -0
  30. package/public/favicon/favicon.svg +16 -0
  31. package/public/favicon/manifest.webmanifest +26 -0
  32. package/public/favicon/mstile-150x150.png +0 -0
  33. package/public/favicon/safari-pinned-tab.svg +14 -15
  34. package/public/favicon/yandex-browser-50x50.png +0 -0
  35. package/public/favicon/yandex-browser-manifest.json +9 -0
  36. package/src/blocks/Article.astro +21 -0
  37. package/src/blocks/Banner.astro +47 -0
  38. package/src/blocks/Colleagues.astro +2 -1
  39. package/src/blocks/Contact.astro +84 -99
  40. package/src/blocks/Cta.astro +2 -1
  41. package/src/blocks/Hero.astro +1 -2
  42. package/src/blocks/Intro.astro +1 -1
  43. package/src/blocks/Jobs.astro +1 -1
  44. package/src/blocks/Prices.astro +1 -1
  45. package/src/blocks/Product.astro +23 -10
  46. package/src/blocks/Reviews.astro +1 -1
  47. package/src/components/Avatar.astro +3 -20
  48. package/src/components/Badge.astro +17 -54
  49. package/src/components/Badges.astro +50 -0
  50. package/src/components/Button.astro +65 -45
  51. package/src/components/Buttons.astro +49 -0
  52. package/src/components/Card.astro +94 -177
  53. package/src/components/Cards.astro +135 -0
  54. package/src/components/Channel.astro +70 -0
  55. package/src/components/Channels.astro +37 -0
  56. package/src/components/Checkbox.astro +12 -16
  57. package/src/components/Dialog.astro +10 -12
  58. package/src/components/Drawer.astro +16 -22
  59. package/src/components/Element.astro +58 -0
  60. package/src/components/Footer.astro +139 -93
  61. package/src/components/Head.astro +7 -45
  62. package/src/components/Header.astro +78 -160
  63. package/src/components/Heading.astro +18 -26
  64. package/src/components/Icon.astro +9 -9
  65. package/src/components/Image.astro +43 -152
  66. package/src/components/Input.astro +10 -28
  67. package/src/components/Label.astro +14 -17
  68. package/src/components/Link.astro +22 -44
  69. package/src/components/List.astro +12 -10
  70. package/src/components/LocaleSwitcher.astro +25 -0
  71. package/src/components/Price.astro +38 -0
  72. package/src/components/Rating.astro +29 -25
  73. package/src/components/Search.astro +3 -3
  74. package/src/components/Section.astro +196 -236
  75. package/src/components/Select.astro +16 -34
  76. package/src/components/Sidebar.astro +112 -46
  77. package/src/components/Social.astro +28 -0
  78. package/src/components/Socials.astro +37 -0
  79. package/src/components/Switch.astro +14 -22
  80. package/src/components/Table.astro +23 -36
  81. package/src/components/Tagline.astro +11 -16
  82. package/src/components/Text.astro +17 -19
  83. package/src/components/Textarea.astro +8 -22
  84. package/src/components/ThemeSelect.astro +38 -0
  85. package/src/components/Toc.astro +98 -41
  86. package/src/components/Writeup.astro +90 -0
  87. package/src/components/docs/PropsTable.astro +229 -56
  88. package/src/components/experimental/Form.astro +10 -17
  89. package/src/components/experimental/Logo.astro +26 -9
  90. package/src/components/experimental/Prose.astro +9 -5
  91. package/src/components/experimental/Video.astro +1 -1
  92. package/src/components/experimental/Window.astro +3 -4
  93. package/src/components/sections.astro +28 -0
  94. package/src/content/config.ts +10 -7
  95. package/src/content/pages/base/_dialog.mdx +1 -2
  96. package/src/content/pages/base/_drawer.mdx +1 -2
  97. package/src/content/pages/base/_localeswitcher.mdx +17 -0
  98. package/src/content/pages/base/_switch.mdx +1 -2
  99. package/src/content/pages/base/badge.mdx +1 -12
  100. package/src/content/pages/base/button.mdx +1 -12
  101. package/src/content/pages/base/card.mdx +2 -29
  102. package/src/content/pages/base/checkbox.mdx +1 -2
  103. package/src/content/pages/base/icon.mdx +1 -2
  104. package/src/content/pages/base/image.mdx +42 -0
  105. package/src/content/pages/base/input.mdx +1 -12
  106. package/src/content/pages/base/rating.mdx +3 -14
  107. package/src/content/pages/base/section.mdx +2 -3
  108. package/src/content/pages/base/select.mdx +1 -12
  109. package/src/content/pages/base/table.mdx +1 -28
  110. package/src/content/pages/base/textarea.mdx +1 -11
  111. package/src/content/pages/base/theme-select.mdx +15 -0
  112. package/src/content/pages/blocks/_categories.mdx +3 -5
  113. package/src/content/pages/blocks/{footer.mdx → _footer.mdx} +2 -4
  114. package/src/content/pages/blocks/{header.mdx → _header.mdx} +2 -7
  115. package/src/content/pages/blocks/_jobs.mdx +1 -2
  116. package/src/content/pages/blocks/{prices.mdx → _prices.mdx} +5 -7
  117. package/src/content/pages/blocks/_product.mdx +1 -2
  118. package/src/content/pages/blocks/_products.mdx +1 -2
  119. package/src/content/pages/blocks/_stats.mdx +1 -1
  120. package/src/content/pages/blocks/{_banner.mdx → banner.mdx} +2 -2
  121. package/src/content/pages/blocks/colleagues.mdx +6 -8
  122. package/src/content/pages/blocks/contact.mdx +69 -0
  123. package/src/content/pages/blocks/content.mdx +1 -19
  124. package/src/content/pages/blocks/cta.mdx +2 -25
  125. package/src/content/pages/blocks/features.mdx +2 -3
  126. package/src/content/pages/blocks/hero.mdx +5 -3
  127. package/src/content/pages/blocks/intro.mdx +2 -5
  128. package/src/content/pages/blocks/posts.mdx +9 -2
  129. package/src/content/pages/blocks/reviews.mdx +23 -18
  130. package/src/content/pages/index.mdx +19 -20
  131. package/src/content/pages/layouts/docslayout.mdx +5 -0
  132. package/src/content/pages/layouts/layout.mdx +21 -0
  133. package/src/content/pages/layouts/pagelayout.mdx +21 -0
  134. package/src/content/pages/overview/components.mdx +70 -0
  135. package/src/content/pages/overview/content-layer.mdx +128 -0
  136. package/src/content/pages/overview/{theming.mdx → customization.mdx} +6 -6
  137. package/src/content/pages/overview/frameworks.mdx +4 -4
  138. package/src/content/pages/overview/installation.mdx +37 -3
  139. package/src/content/pages/overview/introduction.mdx +6 -2
  140. package/src/content/pages/schemas/page.mdx +11 -0
  141. package/src/content/pages/schemas/preset.mdx +9 -0
  142. package/src/content/pages/showcase/anti-slip-profiles.md +5 -0
  143. package/src/content/pages/showcase/fulldev-ui.md +5 -0
  144. package/src/content/pages/showcase/lavis-detailing.md +5 -0
  145. package/src/content/pages/showcase/leren-trainingsacteren.md +5 -0
  146. package/src/content/pages/showcase/miele-witgoedcenter-amsterdam.md +5 -0
  147. package/src/content/{records/record.yml → pages/showcase/record.md} +2 -0
  148. package/src/content/pages/showcase/sloepverhuur-bolsward.md +5 -0
  149. package/src/content/pages/showcase/stark-vulcanising-products.md +5 -0
  150. package/src/content/pages/showcase/the-gym-haren.md +5 -0
  151. package/src/content/pages/showcase/van-dillen-antieke-bouwmaterialen.md +5 -0
  152. package/src/content/pages/showcase.mdx +11 -41
  153. package/src/content/pages/typography/_tagline.mdx +1 -2
  154. package/src/content/pages/typography/heading.mdx +1 -2
  155. package/src/content/pages/typography/label.mdx +1 -2
  156. package/src/content/pages/typography/link.mdx +1 -13
  157. package/src/content/pages/typography/list.mdx +1 -2
  158. package/src/content/pages/typography/text.mdx +1 -2
  159. package/src/content/presets/base.yml +70 -0
  160. package/src/content/presets/blocks.yml +4 -0
  161. package/src/content/presets/docs.yml +65 -0
  162. package/src/css/color.css +0 -82
  163. package/src/css/custom.css +9 -56
  164. package/src/css/size.css +10 -0
  165. package/src/css/space.css +0 -8
  166. package/src/css/styles.css +0 -15
  167. package/src/images/avatar-1.yml +1 -0
  168. package/src/images/favicon.svg +16 -0
  169. package/src/integration/generate-colors.ts +2 -0
  170. package/src/integration/index.ts +49 -7
  171. package/src/layouts/BlockLayout.astro +10 -15
  172. package/src/layouts/ContactLayout.astro +21 -0
  173. package/src/layouts/ContentLayout.astro +16 -0
  174. package/src/layouts/DocsLayout.astro +85 -0
  175. package/src/layouts/Layout.astro +111 -133
  176. package/src/layouts/OverviewLayout.astro +22 -32
  177. package/src/layouts/PageLayout.astro +7 -24
  178. package/src/layouts/PostLayout.astro +8 -19
  179. package/src/layouts/ProductLayout.astro +9 -22
  180. package/src/loaders/imageLoader.ts +26 -0
  181. package/src/pages/[...page].astro +25 -21
  182. package/src/schemas/components/avatar.ts +3 -0
  183. package/src/schemas/components/avatars.ts +4 -0
  184. package/src/schemas/components/badge.ts +13 -0
  185. package/src/schemas/components/button.ts +16 -0
  186. package/src/schemas/components/buttons.ts +4 -0
  187. package/src/schemas/components/card.ts +25 -0
  188. package/src/schemas/components/cards.ts +4 -0
  189. package/src/schemas/components/channel.ts +13 -0
  190. package/src/schemas/components/channels.ts +4 -0
  191. package/src/schemas/components/footer.ts +24 -0
  192. package/src/schemas/components/header.ts +10 -0
  193. package/src/schemas/components/heading.ts +3 -0
  194. package/src/schemas/components/icon.ts +3 -0
  195. package/src/schemas/components/image.ts +18 -0
  196. package/src/schemas/components/images.ts +4 -0
  197. package/src/schemas/components/list.ts +3 -0
  198. package/src/schemas/components/logo.ts +3 -0
  199. package/src/schemas/components/price.ts +3 -0
  200. package/src/schemas/components/rating.ts +15 -0
  201. package/src/schemas/components/section.ts +15 -0
  202. package/src/schemas/components/sections.ts +3 -0
  203. package/src/schemas/components/social.ts +3 -0
  204. package/src/schemas/components/socials.ts +4 -0
  205. package/src/schemas/components/tagline.ts +3 -0
  206. package/src/schemas/components/text.ts +3 -0
  207. package/src/schemas/components/writeup.ts +20 -0
  208. package/src/schemas/imageSchema.ts +12 -0
  209. package/src/schemas/pageSchema.ts +63 -0
  210. package/src/schemas/presetSchema.ts +29 -0
  211. package/src/schemas/utils/categories.ts +3 -0
  212. package/src/schemas/utils/component.ts +17 -0
  213. package/src/schemas/utils/navigation.ts +53 -0
  214. package/src/schemas/{utils.ts → utils/pathSchema.ts} +2 -11
  215. package/src/types/global-props.d.ts +16 -0
  216. package/src/types/virtual-modules.d.ts +5 -0
  217. package/src/utils/_archive/Childmorphic.ts +1 -1
  218. package/src/utils/_archive/mergeEntries.ts +28 -0
  219. package/src/utils/getCategoryPages.ts +11 -0
  220. package/src/utils/getChildPages.ts +16 -0
  221. package/src/utils/getSiblingPages.ts +14 -0
  222. package/tsconfig.json +1 -2
  223. package/public/favicon/site.webmanifest +0 -19
  224. package/public/images/avatars/1.jpeg +0 -0
  225. package/public/images/avatars/2.jpeg +0 -0
  226. package/public/images/avatars/3.jpeg +0 -0
  227. package/public/images/avatars/300/1.jpeg +0 -0
  228. package/public/images/avatars/300/2.jpeg +0 -0
  229. package/public/images/avatars/300/3.jpeg +0 -0
  230. package/public/images/avatars/300/4.jpeg +0 -0
  231. package/public/images/avatars/4.jpeg +0 -0
  232. package/public/images/avatars/5.jpeg +0 -0
  233. package/public/images/avatars/6.jpeg +0 -0
  234. package/public/images/avatars/7.jpeg +0 -0
  235. package/public/images/avatars/8.jpeg +0 -0
  236. package/public/images/blocks/colleagues.png +0 -0
  237. package/public/images/blocks/content.png +0 -0
  238. package/public/images/blocks/cta.png +0 -0
  239. package/public/images/blocks/features.png +0 -0
  240. package/public/images/blocks/footer.png +0 -0
  241. package/public/images/blocks/header.png +0 -0
  242. package/public/images/blocks/hero.png +0 -0
  243. package/public/images/blocks/intro.png +0 -0
  244. package/public/images/blocks/posts.png +0 -0
  245. package/public/images/blocks/prices.png +0 -0
  246. package/public/images/blocks/reviews.png +0 -0
  247. package/public/images/logo-placeholder.svg +0 -1
  248. package/src/components/Bento.astro +0 -43
  249. package/src/components/Block.astro +0 -157
  250. package/src/components/Blocks.astro +0 -5
  251. package/src/components/Box.astro +0 -63
  252. package/src/components/Carousel.astro +0 -54
  253. package/src/components/Column.astro +0 -73
  254. package/src/components/Grid.astro +0 -32
  255. package/src/components/Masonry.astro +0 -42
  256. package/src/components/Root.astro +0 -94
  257. package/src/components/Row.astro +0 -49
  258. package/src/components/Split.astro +0 -59
  259. package/src/components/Spread.astro +0 -46
  260. package/src/components/Stack.astro +0 -36
  261. package/src/components/Toggle.astro +0 -46
  262. package/src/components/Wrap.astro +0 -42
  263. package/src/components/docs/NavigationButtons.astro +0 -59
  264. package/src/components/experimental/Channel.astro +0 -74
  265. package/src/components/experimental/Price.astro +0 -40
  266. package/src/content/pages/_changelog.mdx +0 -10
  267. package/src/content/pages/_segment/footer.mdx +0 -244
  268. package/src/content/pages/_segment/header.mdx +0 -210
  269. package/src/content/pages/base/_image.mdx +0 -14
  270. package/src/content/pages/base/toggle.mdx +0 -32
  271. package/src/content/pages/blocks.mdx +0 -10
  272. package/src/content/pages/overview/integration.mdx +0 -37
  273. package/src/content/pages/structure/_row.mdx +0 -23
  274. package/src/content/pages/structure/_wrap.mdx +0 -25
  275. package/src/content/pages/structure/carousel.mdx +0 -31
  276. package/src/content/pages/structure/column.mdx +0 -21
  277. package/src/content/pages/structure/grid.mdx +0 -26
  278. package/src/content/pages/structure/masonry.mdx +0 -32
  279. package/src/content/pages/structure/split.mdx +0 -21
  280. package/src/content/pages/structure/spread.mdx +0 -21
  281. package/src/content/pages/structure/stack.mdx +0 -22
  282. package/src/content/settings/base.yml +0 -55
  283. package/src/content/settings/components.yml +0 -29
  284. package/src/layouts/BlockOverviewLayout.astro +0 -39
  285. package/src/layouts/ComponentLayout.astro +0 -23
  286. package/src/layouts/JobsLayout.astro +0 -40
  287. package/src/schemas/base.ts +0 -90
  288. package/src/schemas/block.ts +0 -15
  289. package/src/schemas/card.ts +0 -3
  290. package/src/schemas/page.ts +0 -43
  291. package/src/utils/mergeEntries.ts +0 -28
  292. /package/{public/showcase → src/images}/anti-slip-profiles.webp +0 -0
  293. /package/{public/images/avatars/500/1.jpeg → src/images/avatar-1.jpeg} +0 -0
  294. /package/{public/images/avatars/500/2.jpeg → src/images/avatar-2.jpeg} +0 -0
  295. /package/{public/images/avatars/500/3.jpeg → src/images/avatar-3.jpeg} +0 -0
  296. /package/{public/images/avatars/500/4.jpeg → src/images/avatar-4.jpeg} +0 -0
  297. /package/{public → src}/images/avatar-placeholder.jpg +0 -0
  298. /package/{public → src}/images/block-code.png +0 -0
  299. /package/{public → src}/images/component-code.png +0 -0
  300. /package/{public/showcase → src/images}/fulldev-ui.webp +0 -0
  301. /package/{public/showcase → src/images}/lavis-detailing.webp +0 -0
  302. /package/{public/showcase → src/images}/leren-trainingsacteren.webp +0 -0
  303. /package/{public/showcase → src/images}/miele-witgoedcenter-amsterdam.webp +0 -0
  304. /package/{public → src}/images/og-image.png +0 -0
  305. /package/{public → src}/images/placeholder-center.webp +0 -0
  306. /package/{public → src}/images/placeholder-landscape-dark.png +0 -0
  307. /package/{public → src}/images/placeholder-landscape.webp +0 -0
  308. /package/{public → src}/images/placeholder-portrait.webp +0 -0
  309. /package/{public → src}/images/placeholder-right.webp +0 -0
  310. /package/{public → src}/images/placeholder.webp +0 -0
  311. /package/{public/showcase → src/images}/sloepverhuur-bolsward.webp +0 -0
  312. /package/{public/showcase → src/images}/stark-vulcanising-products.webp +0 -0
  313. /package/{public/showcase → src/images}/the-gym-haren.webp +0 -0
  314. /package/{public/showcase → src/images}/van-dillen-antieke-bouwmaterialen.webp +0 -0
@@ -1,19 +1,19 @@
1
1
  ---
2
2
  import type { HTMLTag, Polymorphic } from 'astro/types'
3
- import Root from 'fulldev-ui/components/Root.astro'
3
+ import Element from 'fulldev-ui/components/Element.astro'
4
4
 
5
5
  type Props<As extends HTMLTag = 'div'> = Polymorphic<{ as: As }>
6
6
 
7
7
  const { as = 'div', ...rest } = Astro.props
8
8
  ---
9
9
 
10
- <Root
10
+ <Element
11
11
  class:list="prose"
12
12
  {as}
13
13
  {...rest}
14
14
  >
15
15
  <slot />
16
- </Root>
16
+ </Element>
17
17
 
18
18
  <style is:global lang="scss">
19
19
  @layer fulldev {
@@ -21,10 +21,8 @@ const { as = 'div', ...rest } = Astro.props
21
21
  width: 100%;
22
22
  scroll-margin-top: var(--space-6);
23
23
  color: var(--color-11);
24
- font-weight: var(--font-weight);
25
24
  font-size: var(--text-3);
26
25
  line-height: 1.7;
27
- font-family: var(--font-family);
28
26
 
29
27
  > {
30
28
  .astro-code,
@@ -152,5 +150,11 @@ const { as = 'div', ...rest } = Astro.props
152
150
  text-decoration: underline;
153
151
  }
154
152
  }
153
+
154
+ p code {
155
+ background-color: var(--base-12);
156
+ padding: 0 var(--space-1);
157
+ color: var(--base-1);
158
+ }
155
159
  }
156
160
  </style>
@@ -2,7 +2,7 @@
2
2
  //
3
3
  type Props = any & {
4
4
  src: string
5
- thumbnail?: string
5
+ thumbnail?: string | undefined
6
6
  }
7
7
 
8
8
  const { src, thumbnail } = Astro.props
@@ -28,7 +28,6 @@ const isComponent =
28
28
  <div class="block window">
29
29
  <div class="button-header">
30
30
  <Button
31
- as="label"
32
31
  for={id}
33
32
  variant="secondary"
34
33
  >
@@ -64,7 +63,7 @@ const isComponent =
64
63
 
65
64
  .astro-code {
66
65
  margin: 0;
67
- background-color: var(--base-2) !important;
66
+ background-color: #191919 !important;
68
67
  padding: var(--space-5);
69
68
  }
70
69
  }
@@ -88,8 +87,8 @@ const isComponent =
88
87
  border-radius: 0px;
89
88
 
90
89
  .astro-code {
91
- border: none;
92
- border-radius: 0px;
90
+ border: none !important;
91
+ border-radius: 0px !important;
93
92
  }
94
93
  }
95
94
  }
@@ -0,0 +1,28 @@
1
+ ---
2
+ import type { ComponentProps, HTMLAttributes } from 'astro/types'
3
+ import Element from 'fulldev-ui/components/Element.astro'
4
+ import type { GlobalProps } from 'fulldev-ui/types/global-props'
5
+ import Section from './Section.astro'
6
+
7
+ interface Props extends GlobalProps, HTMLAttributes<'div'> {
8
+ sections?: ComponentProps<typeof Section>[] | undefined
9
+ }
10
+
11
+ const { sections, ...rest } = Astro.props
12
+ ---
13
+
14
+ <Element
15
+ class:list="sections"
16
+ {...rest}
17
+ >
18
+ {sections?.map((section) => <Section {...section} />)}
19
+ </Element>
20
+
21
+ <style is:global lang="scss">
22
+ @layer fulldev {
23
+ .sections {
24
+ display: flex;
25
+ flex-direction: column;
26
+ }
27
+ }
28
+ </style>
@@ -1,17 +1,20 @@
1
1
  import { defineCollection } from 'astro:content'
2
- import { page } from 'fulldev-ui/schemas/page'
2
+ import imageLoader from 'fulldev-ui/loaders/imageLoader.ts'
3
+ import imageSchema from 'fulldev-ui/schemas/imageSchema.ts'
4
+ import pageSchema from 'fulldev-ui/schemas/pageSchema.ts'
5
+ import presetSchema from 'fulldev-ui/schemas/presetSchema.ts'
3
6
 
4
7
  export const collections = {
5
8
  pages: defineCollection({
6
9
  type: 'content',
7
- schema: page,
10
+ schema: pageSchema,
8
11
  }),
9
- records: defineCollection({
12
+ presets: defineCollection({
10
13
  type: 'data',
11
- schema: page,
14
+ schema: presetSchema,
12
15
  }),
13
- settings: defineCollection({
14
- type: 'data',
15
- schema: page,
16
+ images: defineCollection({
17
+ loader: imageLoader,
18
+ schema: imageSchema,
16
19
  }),
17
20
  }
@@ -1,6 +1,5 @@
1
1
  ---
2
- _layout: ComponentLayout
3
- settings: components
2
+ presets: [docs]
4
3
 
5
4
  title: Dialog
6
5
  ---
@@ -1,6 +1,5 @@
1
1
  ---
2
- _layout: ComponentLayout
3
- settings: components
2
+ presets: [docs]
4
3
 
5
4
  title: Drawer
6
5
  ---
@@ -0,0 +1,17 @@
1
+ ---
2
+ presets: [docs]
3
+
4
+ title: LocaleSwitcher
5
+ ---
6
+
7
+ # Theme Switcher
8
+
9
+ ```astro live
10
+ ---
11
+ import LocaleSwitcher from 'fulldev-ui/components/LocaleSwitcher.astro'
12
+ ---
13
+
14
+ <LocaleSwitcher />
15
+ ```
16
+
17
+ ## Props
@@ -1,6 +1,5 @@
1
1
  ---
2
- _layout: ComponentLayout
3
- settings: components
2
+ presets: [docs]
4
3
 
5
4
  title: Switch
6
5
  ---
@@ -1,6 +1,5 @@
1
1
  ---
2
- _layout: ComponentLayout
3
- settings: components
2
+ presets: [docs]
4
3
 
5
4
  title: Badge
6
5
  ---
@@ -56,15 +55,5 @@ import Badge from 'fulldev-ui/components/Badge.astro'
56
55
  import Badge from 'fulldev-ui/components/Badge.astro'
57
56
  ---
58
57
 
59
- <Badge radius="none">Badge</Badge>
60
- <Badge radius="auto">Badge</Badge>
61
- <Badge radius="full">Badge</Badge>
62
- ```
63
-
64
- ```astro live
65
- ---
66
- import Badge from 'fulldev-ui/components/Badge.astro'
67
- ---
68
-
69
58
  <Badge icon="circle" text="Badge" />
70
59
  ```
@@ -1,6 +1,5 @@
1
1
  ---
2
- _layout: ComponentLayout
3
- settings: components
2
+ presets: [docs]
4
3
 
5
4
  title: Button
6
5
  ---
@@ -59,13 +58,3 @@ import Button from 'fulldev-ui/components/Button.astro'
59
58
  <Button color="base" text="Button" />
60
59
  <Button color="brand" text="Button" />
61
60
  ```
62
-
63
- ```astro live
64
- ---
65
- import Button from 'fulldev-ui/components/Button.astro'
66
- ---
67
-
68
- <Button radius="none" text="Button" />
69
- <Button radius="auto" text="Button" />
70
- <Button radius="full" text="Button" />
71
- ```
@@ -1,6 +1,5 @@
1
1
  ---
2
- _layout: ComponentLayout
3
- settings: components
2
+ presets: [docs]
4
3
 
5
4
  title: Card
6
5
  ---
@@ -32,14 +31,13 @@ import Card from 'fulldev-ui/components/Card.astro'
32
31
  ---
33
32
 
34
33
  <Card
35
- frame="panel"
36
34
  size="sm"
37
35
  heading="Lorem ipsum dolor"
38
36
  text="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
39
37
  />
40
38
 
41
39
  <Card
42
- frame="fill"
40
+ panel={false}
43
41
  size="sm"
44
42
  heading="Lorem ipsum dolor"
45
43
  text="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
@@ -52,21 +50,18 @@ import Card from 'fulldev-ui/components/Card.astro'
52
50
  ---
53
51
 
54
52
  <Card
55
- frame="panel"
56
53
  size="sm"
57
54
  heading="Lorem ipsum dolor"
58
55
  text="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
59
56
  />
60
57
 
61
58
  <Card
62
- frame="panel"
63
59
  size="md"
64
60
  heading="Lorem ipsum dolor"
65
61
  text="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
66
62
  />
67
63
 
68
64
  <Card
69
- frame="panel"
70
65
  size="lg"
71
66
  heading="Lorem ipsum dolor"
72
67
  text="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
@@ -79,36 +74,14 @@ import Card from 'fulldev-ui/components/Card.astro'
79
74
  ---
80
75
 
81
76
  <Card
82
- frame="panel"
83
77
  color="base"
84
78
  heading="Lorem ipsum dolor"
85
79
  text="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
86
80
  />
87
81
 
88
82
  <Card
89
- frame="panel"
90
83
  color="brand"
91
84
  heading="Lorem ipsum dolor"
92
85
  text="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
93
86
  />
94
87
  ```
95
-
96
- ```astro live
97
- ---
98
- import Card from 'fulldev-ui/components/Card.astro'
99
- ---
100
-
101
- <Card
102
- frame="panel"
103
- radius="none"
104
- heading="Lorem ipsum dolor"
105
- text="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
106
- />
107
-
108
- <Card
109
- frame="panel"
110
- radius="auto"
111
- heading="Lorem ipsum dolor"
112
- text="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
113
- />
114
- ```
@@ -1,6 +1,5 @@
1
1
  ---
2
- _layout: ComponentLayout
3
- settings: components
2
+ presets: [docs]
4
3
 
5
4
  title: Checkbox
6
5
  ---
@@ -1,6 +1,5 @@
1
1
  ---
2
- _layout: ComponentLayout
3
- settings: components
2
+ presets: [docs]
4
3
 
5
4
  title: Icon
6
5
  ---
@@ -0,0 +1,42 @@
1
+ ---
2
+ presets: [docs]
3
+
4
+ title: Image
5
+ ---
6
+
7
+ # Image
8
+
9
+ import Link from 'fulldev-ui/components/Link.astro'
10
+
11
+ To use content collections for alt texts, see <Link href="/overview/content-layer/#image-alt-collections">generateImageEntries</Link>.
12
+
13
+ import PropsTable from 'fulldev-ui/components/docs/PropsTable.astro'
14
+
15
+ ```astro live
16
+ ---
17
+ import Image from 'fulldev-ui/components/Image.astro'
18
+ ---
19
+
20
+ <Image src="placeholder-landscape.webp" />
21
+ ```
22
+
23
+ ## Props
24
+
25
+ <PropsTable />
26
+
27
+ ## Examples
28
+
29
+ ```astro live
30
+ ---
31
+ import Image from 'fulldev-ui/components/Image.astro'
32
+ ---
33
+
34
+ {/* image in public/images/ */}
35
+ <Image src="/images/placeholder-landscape.webp" />
36
+
37
+ {/* optimized image in public/images/ using astro:assets */}
38
+ <Image src="/images/placeholder-landscape.webp" width={600} height={400} />
39
+
40
+ {/* automatically optimized image in src/images/ using astro:assets */}
41
+ <Image src="placeholder-landscape.webp" />
42
+ ```
@@ -1,6 +1,5 @@
1
1
  ---
2
- _layout: ComponentLayout
3
- settings: components
2
+ presets: [docs]
4
3
 
5
4
  title: Input
6
5
  ---
@@ -55,13 +54,3 @@ import Input from 'fulldev-ui/components/Input.astro'
55
54
  <Input color="base" name="name" />
56
55
  <Input color="brand" name="name" />
57
56
  ```
58
-
59
- ```astro live
60
- ---
61
- import Input from 'fulldev-ui/components/Input.astro'
62
- ---
63
-
64
- <Input radius="none" name="name" />
65
- <Input radius="auto" name="name" />
66
- <Input radius="full" name="name" />
67
- ```
@@ -1,6 +1,5 @@
1
1
  ---
2
- _layout: ComponentLayout
3
- settings: components
2
+ presets: [docs]
4
3
 
5
4
  title: Rating
6
5
  ---
@@ -14,12 +13,7 @@ import PropsTable from 'fulldev-ui/components/docs/PropsTable.astro'
14
13
  import Rating from 'fulldev-ui/components/Rating.astro'
15
14
  ---
16
15
 
17
- <Rating
18
- avatar="/images/avatars/1.jpeg"
19
- label="John Doe"
20
- value={4}
21
- color="brand"
22
- />
16
+ <Rating avatar="avatar-1.jpeg" label="John Doe" value={4} color="brand" />
23
17
  ```
24
18
 
25
19
  ## Props
@@ -34,12 +28,7 @@ import Rating from 'fulldev-ui/components/Rating.astro'
34
28
  ---
35
29
 
36
30
  <Rating
37
- avatars={[
38
- '/images/avatars/1.jpeg',
39
- '/images/avatars/2.jpeg',
40
- '/images/avatars/3.jpeg',
41
- '/images/avatars/4.jpeg',
42
- ]}
31
+ avatars={['avatar-1.jpeg', 'avatar-2.jpeg', 'avatar-3.jpeg', 'avatar-4.jpeg']}
43
32
  label="5.0 out of 86 reviews"
44
33
  value={5}
45
34
  color="brand"
@@ -1,6 +1,5 @@
1
1
  ---
2
- _layout: ComponentLayout
3
- settings: components
2
+ presets: [docs]
4
3
 
5
4
  title: Section
6
5
  ---
@@ -28,7 +27,7 @@ import Section from 'fulldev-ui/components/Section.astro'
28
27
  },
29
28
  { variant: 'secondary', href: '/structure/split', text: 'Component' },
30
29
  ]}
31
- image={{ src: '/images/placeholder-landscape.webp' }}
30
+ image={'/images/placeholder-landscape.webp'}
32
31
  />
33
32
  ```
34
33
 
@@ -1,6 +1,5 @@
1
1
  ---
2
- _layout: ComponentLayout
3
- settings: components
2
+ presets: [docs]
4
3
 
5
4
  title: Select
6
5
 
@@ -65,13 +64,3 @@ import Select from 'fulldev-ui/components/Select.astro'
65
64
  <Select color="base" options={['Option 1', 'Option 2']} />
66
65
  <Select color="brand" options={['Option 1', 'Option 2']} />
67
66
  ```
68
-
69
- ```astro live
70
- ---
71
- import Select from 'fulldev-ui/components/Select.astro'
72
- ---
73
-
74
- <Select radius="none" options={['Option 1', 'Option 2']} />
75
- <Select radius="auto" options={['Option 1', 'Option 2']} />
76
- <Select radius="full" options={['Option 1', 'Option 2']} />
77
- ```
@@ -1,6 +1,5 @@
1
1
  ---
2
- _layout: ComponentLayout
3
- settings: components
2
+ presets: [docs]
4
3
 
5
4
  title: Table
6
5
  ---
@@ -105,29 +104,3 @@ import Table from 'fulldev-ui/components/Table.astro'
105
104
  footer={['Total', '5']}
106
105
  />
107
106
  ```
108
-
109
- ```astro live
110
- ---
111
- import Table from 'fulldev-ui/components/Table.astro'
112
- ---
113
-
114
- <Table
115
- radius="none"
116
- header={['Product', 'Quantity']}
117
- body={[
118
- ['Apple', '2'],
119
- ['Banana', '3'],
120
- ]}
121
- footer={['Total', '5']}
122
- />
123
-
124
- <Table
125
- radius="auto"
126
- header={['Product', 'Quantity']}
127
- body={[
128
- ['Apple', '2'],
129
- ['Banana', '3'],
130
- ]}
131
- footer={['Total', '5']}
132
- />
133
- ```
@@ -1,6 +1,5 @@
1
1
  ---
2
- _layout: ComponentLayout
3
- settings: components
2
+ presets: [docs]
4
3
 
5
4
  title: Textarea
6
5
 
@@ -62,12 +61,3 @@ import Textarea from 'fulldev-ui/components/Textarea.astro'
62
61
  <Textarea color="base" name="message" placeholder="name" />
63
62
  <Textarea color="brand" name="message" placeholder="name" />
64
63
  ```
65
-
66
- ```astro live
67
- ---
68
- import Textarea from 'fulldev-ui/components/Textarea.astro'
69
- ---
70
-
71
- <Textarea radius="none" name="message" placeholder="name" />
72
- <Textarea radius="auto" name="message" placeholder="name" />
73
- ```
@@ -0,0 +1,15 @@
1
+ ---
2
+ presets: [docs]
3
+
4
+ title: ThemeSelect
5
+ ---
6
+
7
+ # ThemeSelect
8
+
9
+ ```astro live
10
+ ---
11
+ import ThemeSelect from 'fulldev-ui/components/ThemeSelect.astro'
12
+ ---
13
+
14
+ <ThemeSelect />
15
+ ```
@@ -1,8 +1,7 @@
1
1
  ---
2
- _layout: BlockLayout
2
+ presets: [docs, blocks]
3
3
 
4
4
  title: Categories
5
- image: /images/blocks/categories.png
6
5
  ---
7
6
 
8
7
  ```astro live
@@ -14,7 +13,7 @@ import Categories from 'fulldev-ui/blocks/Categories.astro'
14
13
  heading="Lorem ipsum dolor sit"
15
14
  text="Lorem ipsum dolor sit amet consectetur adipisicing."
16
15
  position="inset"
17
- frame="panel"
16
+ panel
18
17
  size="sm"
19
18
  cards={[
20
19
  {
@@ -45,7 +44,6 @@ import Categories from 'fulldev-ui/blocks/Categories.astro'
45
44
  heading="Lorem ipsum dolor sit"
46
45
  text="Lorem ipsum dolor sit amet consectetur adipisicing."
47
46
  position="background"
48
- ratio="square"
49
47
  cards={[
50
48
  {
51
49
  heading: 'Lorem ipsum',
@@ -110,7 +108,7 @@ import Categories from 'fulldev-ui/blocks/Categories.astro'
110
108
  heading="Lorem ipsum dolor sit"
111
109
  buttons={[{ text: 'Lorem ipsum', href: '#' }]}
112
110
  position="inset"
113
- frame="panel"
111
+ panel
114
112
  size="sm"
115
113
  structure="carousel"
116
114
  cards={[
@@ -1,8 +1,7 @@
1
1
  ---
2
- _layout: BlockLayout
2
+ presets: [docs, blocks]
3
3
 
4
4
  title: Footer
5
- image: /images/blocks/footer.png
6
5
  ---
7
6
 
8
7
  ```astro live
@@ -34,7 +33,7 @@ import Footer from 'fulldev-ui/components/Footer.astro'
34
33
  <Footer
35
34
  heading="Fulldev UI"
36
35
  text="Rapidly build content-driven websites."
37
- frame="panel"
36
+ panel
38
37
  columns={[
39
38
  {
40
39
  heading: 'Pages',
@@ -56,7 +55,6 @@ import Footer from 'fulldev-ui/components/Footer.astro'
56
55
  <Footer
57
56
  heading="Fulldev UI"
58
57
  text="Rapidly build content-driven websites."
59
- frame="none"
60
58
  columns={[
61
59
  {
62
60
  heading: 'Pages',
@@ -1,8 +1,7 @@
1
1
  ---
2
- _layout: BlockLayout
2
+ presets: [docs, blocks]
3
3
 
4
4
  title: Header
5
- image: /images/blocks/header.png
6
5
  ---
7
6
 
8
7
  ```astro live
@@ -31,7 +30,6 @@ import Header from 'fulldev-ui/components/Header.astro'
31
30
  contrast: true,
32
31
  },
33
32
  ]}
34
- frame="fill"
35
33
  position="relative"
36
34
  drawer={[
37
35
  {
@@ -86,7 +84,6 @@ import Header from 'fulldev-ui/components/Header.astro'
86
84
  target: '_blank',
87
85
  },
88
86
  ]}
89
- frame="fill"
90
87
  position="relative"
91
88
  />
92
89
  ```
@@ -122,7 +119,7 @@ import Header from 'fulldev-ui/components/Header.astro'
122
119
  contrast: true,
123
120
  },
124
121
  ]}
125
- frame="panel"
122
+ panel
126
123
  position="relative"
127
124
  />
128
125
  ```
@@ -153,7 +150,6 @@ import Header from 'fulldev-ui/components/Header.astro'
153
150
  contrast: true,
154
151
  },
155
152
  ]}
156
- frame="fill"
157
153
  position="relative"
158
154
  color="brand"
159
155
  />
@@ -185,7 +181,6 @@ import Header from 'fulldev-ui/components/Header.astro'
185
181
  contrast: true,
186
182
  },
187
183
  ]}
188
- frame="fill"
189
184
  position="relative"
190
185
  color="brand"
191
186
  />
@@ -1,8 +1,7 @@
1
1
  ---
2
- _layout: BlockLayout
2
+ presets: [docs, blocks]
3
3
 
4
4
  title: Jobs
5
- image: /images/blocks/jobs.png
6
5
  ---
7
6
 
8
7
  ```astro live