fulldev-ui 0.4.28 → 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 (313) 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/CHANGELOG.md +2 -98
  16. package/CONTRIBUTING.md +2 -2
  17. package/astro.config.ts +20 -4
  18. package/package.json +26 -16
  19. package/public/favicon/android-chrome-192x192.png +0 -0
  20. package/public/favicon/android-chrome-512x512.png +0 -0
  21. package/public/favicon/apple-touch-icon.png +0 -0
  22. package/public/favicon/browserconfig.xml +7 -7
  23. package/public/favicon/favicon-16x16-dark.png +0 -0
  24. package/public/favicon/favicon-16x16.png +0 -0
  25. package/public/favicon/favicon-32x32-dark.png +0 -0
  26. package/public/favicon/favicon-32x32.png +0 -0
  27. package/public/favicon/favicon-48x48-dark.png +0 -0
  28. package/public/favicon/favicon-48x48.png +0 -0
  29. package/public/favicon/favicon-dark.ico +0 -0
  30. package/public/favicon/favicon.ico +0 -0
  31. package/public/favicon/favicon.svg +16 -0
  32. package/public/favicon/manifest.webmanifest +26 -0
  33. package/public/favicon/mstile-150x150.png +0 -0
  34. package/public/favicon/safari-pinned-tab.svg +14 -15
  35. package/public/favicon/yandex-browser-50x50.png +0 -0
  36. package/public/favicon/yandex-browser-manifest.json +9 -0
  37. package/src/blocks/Article.astro +21 -0
  38. package/src/blocks/Banner.astro +47 -0
  39. package/src/blocks/Colleagues.astro +2 -1
  40. package/src/blocks/Contact.astro +84 -99
  41. package/src/blocks/Cta.astro +2 -1
  42. package/src/blocks/Hero.astro +1 -2
  43. package/src/blocks/Intro.astro +1 -1
  44. package/src/blocks/Jobs.astro +1 -1
  45. package/src/blocks/Prices.astro +1 -1
  46. package/src/blocks/Product.astro +23 -10
  47. package/src/blocks/Reviews.astro +1 -1
  48. package/src/components/Avatar.astro +3 -20
  49. package/src/components/Badge.astro +17 -54
  50. package/src/components/Badges.astro +50 -0
  51. package/src/components/Button.astro +63 -45
  52. package/src/components/Buttons.astro +49 -0
  53. package/src/components/Card.astro +94 -177
  54. package/src/components/Cards.astro +135 -0
  55. package/src/components/Channel.astro +70 -0
  56. package/src/components/Channels.astro +37 -0
  57. package/src/components/Checkbox.astro +16 -19
  58. package/src/components/Dialog.astro +10 -11
  59. package/src/components/Drawer.astro +16 -22
  60. package/src/components/Element.astro +58 -0
  61. package/src/components/Footer.astro +141 -97
  62. package/src/components/Head.astro +7 -45
  63. package/src/components/Header.astro +78 -160
  64. package/src/components/Heading.astro +18 -26
  65. package/src/components/Icon.astro +9 -9
  66. package/src/components/Image.astro +43 -152
  67. package/src/components/Input.astro +10 -28
  68. package/src/components/Label.astro +14 -17
  69. package/src/components/Link.astro +22 -44
  70. package/src/components/List.astro +12 -10
  71. package/src/components/LocaleSwitcher.astro +25 -0
  72. package/src/components/Price.astro +38 -0
  73. package/src/components/Rating.astro +29 -25
  74. package/src/components/Search.astro +3 -3
  75. package/src/components/Section.astro +196 -236
  76. package/src/components/Select.astro +16 -34
  77. package/src/components/Sidebar.astro +112 -46
  78. package/src/components/Social.astro +28 -0
  79. package/src/components/Socials.astro +37 -0
  80. package/src/components/Switch.astro +14 -22
  81. package/src/components/Table.astro +23 -36
  82. package/src/components/Tagline.astro +11 -16
  83. package/src/components/Text.astro +17 -19
  84. package/src/components/Textarea.astro +8 -22
  85. package/src/components/ThemeSelect.astro +38 -0
  86. package/src/components/Toc.astro +100 -23
  87. package/src/components/Writeup.astro +90 -0
  88. package/src/components/docs/PropsTable.astro +229 -56
  89. package/src/components/experimental/Form.astro +10 -17
  90. package/src/components/experimental/Logo.astro +26 -9
  91. package/src/components/experimental/Prose.astro +9 -5
  92. package/src/components/experimental/Video.astro +1 -1
  93. package/src/components/experimental/Window.astro +3 -4
  94. package/src/components/sections.astro +28 -0
  95. package/src/content/config.ts +10 -7
  96. package/src/content/pages/base/_dialog.mdx +1 -2
  97. package/src/content/pages/base/_drawer.mdx +1 -2
  98. package/src/content/pages/base/_localeswitcher.mdx +17 -0
  99. package/src/content/pages/base/_switch.mdx +1 -2
  100. package/src/content/pages/base/badge.mdx +1 -12
  101. package/src/content/pages/base/button.mdx +1 -12
  102. package/src/content/pages/base/card.mdx +2 -29
  103. package/src/content/pages/base/checkbox.mdx +7 -8
  104. package/src/content/pages/base/icon.mdx +3 -2
  105. package/src/content/pages/base/image.mdx +42 -0
  106. package/src/content/pages/base/input.mdx +1 -12
  107. package/src/content/pages/base/rating.mdx +3 -14
  108. package/src/content/pages/base/section.mdx +17 -60
  109. package/src/content/pages/base/select.mdx +1 -12
  110. package/src/content/pages/base/table.mdx +1 -28
  111. package/src/content/pages/base/textarea.mdx +1 -11
  112. package/src/content/pages/base/theme-select.mdx +15 -0
  113. package/src/content/pages/blocks/_categories.mdx +3 -5
  114. package/src/content/pages/blocks/{footer.mdx → _footer.mdx} +10 -4
  115. package/src/content/pages/blocks/{header.mdx → _header.mdx} +2 -7
  116. package/src/content/pages/blocks/_jobs.mdx +1 -2
  117. package/src/content/pages/blocks/{prices.mdx → _prices.mdx} +5 -7
  118. package/src/content/pages/blocks/_product.mdx +1 -2
  119. package/src/content/pages/blocks/_products.mdx +1 -2
  120. package/src/content/pages/blocks/_stats.mdx +1 -1
  121. package/src/content/pages/blocks/{_banner.mdx → banner.mdx} +2 -2
  122. package/src/content/pages/blocks/colleagues.mdx +6 -8
  123. package/src/content/pages/blocks/contact.mdx +69 -0
  124. package/src/content/pages/blocks/content.mdx +1 -19
  125. package/src/content/pages/blocks/cta.mdx +2 -25
  126. package/src/content/pages/blocks/features.mdx +2 -3
  127. package/src/content/pages/blocks/hero.mdx +5 -3
  128. package/src/content/pages/blocks/intro.mdx +2 -5
  129. package/src/content/pages/blocks/posts.mdx +9 -2
  130. package/src/content/pages/blocks/reviews.mdx +23 -18
  131. package/src/content/pages/index.mdx +19 -20
  132. package/src/content/pages/layouts/docslayout.mdx +5 -0
  133. package/src/content/pages/layouts/layout.mdx +21 -0
  134. package/src/content/pages/layouts/pagelayout.mdx +21 -0
  135. package/src/content/pages/overview/components.mdx +70 -0
  136. package/src/content/pages/overview/content-layer.mdx +128 -0
  137. package/src/content/pages/overview/{theming.mdx → customization.mdx} +6 -6
  138. package/src/content/pages/overview/frameworks.mdx +4 -4
  139. package/src/content/pages/overview/installation.mdx +37 -3
  140. package/src/content/pages/overview/introduction.mdx +6 -2
  141. package/src/content/pages/schemas/page.mdx +11 -0
  142. package/src/content/pages/schemas/preset.mdx +9 -0
  143. package/src/content/pages/showcase/anti-slip-profiles.md +5 -0
  144. package/src/content/pages/showcase/fulldev-ui.md +5 -0
  145. package/src/content/pages/showcase/lavis-detailing.md +5 -0
  146. package/src/content/pages/showcase/leren-trainingsacteren.md +5 -0
  147. package/src/content/pages/showcase/miele-witgoedcenter-amsterdam.md +5 -0
  148. package/src/content/{records/record.yml → pages/showcase/record.md} +2 -0
  149. package/src/content/pages/showcase/sloepverhuur-bolsward.md +5 -0
  150. package/src/content/pages/showcase/stark-vulcanising-products.md +5 -0
  151. package/src/content/pages/showcase/the-gym-haren.md +5 -0
  152. package/src/content/pages/showcase/van-dillen-antieke-bouwmaterialen.md +5 -0
  153. package/src/content/pages/showcase.mdx +11 -41
  154. package/src/content/pages/typography/_tagline.mdx +1 -2
  155. package/src/content/pages/typography/heading.mdx +1 -2
  156. package/src/content/pages/typography/label.mdx +1 -2
  157. package/src/content/pages/typography/link.mdx +1 -13
  158. package/src/content/pages/typography/list.mdx +1 -2
  159. package/src/content/pages/typography/text.mdx +1 -2
  160. package/src/content/presets/base.yml +70 -0
  161. package/src/content/presets/blocks.yml +4 -0
  162. package/src/content/presets/docs.yml +65 -0
  163. package/src/css/color.css +0 -82
  164. package/src/css/custom.css +9 -56
  165. package/src/css/size.css +10 -0
  166. package/src/css/space.css +0 -8
  167. package/src/css/styles.css +0 -15
  168. package/src/images/avatar-1.yml +1 -0
  169. package/src/images/favicon.svg +16 -0
  170. package/src/integration/generate-colors.ts +2 -0
  171. package/src/integration/index.ts +49 -7
  172. package/src/layouts/BlockLayout.astro +10 -15
  173. package/src/layouts/ContactLayout.astro +21 -0
  174. package/src/layouts/ContentLayout.astro +16 -0
  175. package/src/layouts/DocsLayout.astro +85 -0
  176. package/src/layouts/Layout.astro +111 -133
  177. package/src/layouts/OverviewLayout.astro +22 -32
  178. package/src/layouts/PageLayout.astro +7 -24
  179. package/src/layouts/PostLayout.astro +8 -19
  180. package/src/layouts/ProductLayout.astro +9 -22
  181. package/src/loaders/imageLoader.ts +26 -0
  182. package/src/pages/[...page].astro +26 -23
  183. package/src/schemas/components/avatar.ts +3 -0
  184. package/src/schemas/components/avatars.ts +4 -0
  185. package/src/schemas/components/badge.ts +13 -0
  186. package/src/schemas/components/button.ts +16 -0
  187. package/src/schemas/components/buttons.ts +4 -0
  188. package/src/schemas/components/card.ts +25 -0
  189. package/src/schemas/components/cards.ts +4 -0
  190. package/src/schemas/components/channel.ts +13 -0
  191. package/src/schemas/components/channels.ts +4 -0
  192. package/src/schemas/components/footer.ts +24 -0
  193. package/src/schemas/components/header.ts +10 -0
  194. package/src/schemas/components/heading.ts +3 -0
  195. package/src/schemas/components/icon.ts +3 -0
  196. package/src/schemas/components/image.ts +18 -0
  197. package/src/schemas/components/images.ts +4 -0
  198. package/src/schemas/components/list.ts +3 -0
  199. package/src/schemas/components/logo.ts +3 -0
  200. package/src/schemas/components/price.ts +3 -0
  201. package/src/schemas/components/rating.ts +15 -0
  202. package/src/schemas/components/section.ts +15 -0
  203. package/src/schemas/components/sections.ts +3 -0
  204. package/src/schemas/components/social.ts +3 -0
  205. package/src/schemas/components/socials.ts +4 -0
  206. package/src/schemas/components/tagline.ts +3 -0
  207. package/src/schemas/components/text.ts +3 -0
  208. package/src/schemas/components/writeup.ts +20 -0
  209. package/src/schemas/imageSchema.ts +12 -0
  210. package/src/schemas/pageSchema.ts +63 -0
  211. package/src/schemas/presetSchema.ts +29 -0
  212. package/src/schemas/utils/categories.ts +3 -0
  213. package/src/schemas/utils/component.ts +17 -0
  214. package/src/schemas/utils/navigation.ts +53 -0
  215. package/src/schemas/{utils.ts → utils/pathSchema.ts} +2 -11
  216. package/src/types/global-props.d.ts +16 -0
  217. package/src/types/virtual-modules.d.ts +5 -0
  218. package/src/utils/_archive/Childmorphic.ts +1 -1
  219. package/src/utils/_archive/mergeEntries.ts +28 -0
  220. package/src/utils/getCategoryPages.ts +11 -0
  221. package/src/utils/getChildPages.ts +16 -0
  222. package/src/utils/getSiblingPages.ts +14 -0
  223. package/tsconfig.json +1 -2
  224. package/public/favicon/site.webmanifest +0 -19
  225. package/public/images/avatars/1.jpeg +0 -0
  226. package/public/images/avatars/2.jpeg +0 -0
  227. package/public/images/avatars/3.jpeg +0 -0
  228. package/public/images/avatars/300/1.jpeg +0 -0
  229. package/public/images/avatars/300/2.jpeg +0 -0
  230. package/public/images/avatars/300/3.jpeg +0 -0
  231. package/public/images/avatars/300/4.jpeg +0 -0
  232. package/public/images/avatars/4.jpeg +0 -0
  233. package/public/images/avatars/5.jpeg +0 -0
  234. package/public/images/avatars/6.jpeg +0 -0
  235. package/public/images/avatars/7.jpeg +0 -0
  236. package/public/images/avatars/8.jpeg +0 -0
  237. package/public/images/blocks/colleagues.png +0 -0
  238. package/public/images/blocks/content.png +0 -0
  239. package/public/images/blocks/cta.png +0 -0
  240. package/public/images/blocks/features.png +0 -0
  241. package/public/images/blocks/footer.png +0 -0
  242. package/public/images/blocks/header.png +0 -0
  243. package/public/images/blocks/hero.png +0 -0
  244. package/public/images/blocks/intro.png +0 -0
  245. package/public/images/blocks/posts.png +0 -0
  246. package/public/images/blocks/prices.png +0 -0
  247. package/public/images/blocks/reviews.png +0 -0
  248. package/public/images/logo-placeholder.svg +0 -1
  249. package/src/components/Bento.astro +0 -43
  250. package/src/components/Block.astro +0 -157
  251. package/src/components/Blocks.astro +0 -5
  252. package/src/components/Box.astro +0 -63
  253. package/src/components/Carousel.astro +0 -54
  254. package/src/components/Column.astro +0 -73
  255. package/src/components/Grid.astro +0 -32
  256. package/src/components/Masonry.astro +0 -42
  257. package/src/components/Root.astro +0 -94
  258. package/src/components/Row.astro +0 -49
  259. package/src/components/Split.astro +0 -59
  260. package/src/components/Spread.astro +0 -46
  261. package/src/components/Stack.astro +0 -36
  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/blocks.mdx +0 -10
  271. package/src/content/pages/overview/integration.mdx +0 -37
  272. package/src/content/pages/structure/_row.mdx +0 -23
  273. package/src/content/pages/structure/_wrap.mdx +0 -25
  274. package/src/content/pages/structure/carousel.mdx +0 -31
  275. package/src/content/pages/structure/column.mdx +0 -21
  276. package/src/content/pages/structure/grid.mdx +0 -26
  277. package/src/content/pages/structure/masonry.mdx +0 -32
  278. package/src/content/pages/structure/split.mdx +0 -21
  279. package/src/content/pages/structure/spread.mdx +0 -21
  280. package/src/content/pages/structure/stack.mdx +0 -22
  281. package/src/content/settings/base.yml +0 -55
  282. package/src/content/settings/components.yml +0 -29
  283. package/src/layouts/BlockOverviewLayout.astro +0 -39
  284. package/src/layouts/ComponentLayout.astro +0 -23
  285. package/src/layouts/JobsLayout.astro +0 -40
  286. package/src/schemas/base.ts +0 -90
  287. package/src/schemas/block.ts +0 -15
  288. package/src/schemas/card.ts +0 -3
  289. package/src/schemas/page.ts +0 -43
  290. package/src/utils/mergeEntries.ts +0 -28
  291. /package/{public/showcase → src/images}/anti-slip-profiles.webp +0 -0
  292. /package/{public/images/avatars/500/1.jpeg → src/images/avatar-1.jpeg} +0 -0
  293. /package/{public/images/avatars/500/2.jpeg → src/images/avatar-2.jpeg} +0 -0
  294. /package/{public/images/avatars/500/3.jpeg → src/images/avatar-3.jpeg} +0 -0
  295. /package/{public/images/avatars/500/4.jpeg → src/images/avatar-4.jpeg} +0 -0
  296. /package/{public → src}/images/avatar-placeholder.jpg +0 -0
  297. /package/{public → src}/images/block-code.png +0 -0
  298. /package/{public → src}/images/component-code.png +0 -0
  299. /package/{public/showcase → src/images}/fulldev-ui.webp +0 -0
  300. /package/{public/showcase → src/images}/lavis-detailing.webp +0 -0
  301. /package/{public/showcase → src/images}/leren-trainingsacteren.webp +0 -0
  302. /package/{public/showcase → src/images}/miele-witgoedcenter-amsterdam.webp +0 -0
  303. /package/{public → src}/images/og-image.png +0 -0
  304. /package/{public → src}/images/placeholder-center.webp +0 -0
  305. /package/{public → src}/images/placeholder-landscape-dark.png +0 -0
  306. /package/{public → src}/images/placeholder-landscape.webp +0 -0
  307. /package/{public → src}/images/placeholder-portrait.webp +0 -0
  308. /package/{public → src}/images/placeholder-right.webp +0 -0
  309. /package/{public → src}/images/placeholder.webp +0 -0
  310. /package/{public/showcase → src/images}/sloepverhuur-bolsward.webp +0 -0
  311. /package/{public/showcase → src/images}/stark-vulcanising-products.webp +0 -0
  312. /package/{public/showcase → src/images}/the-gym-haren.webp +0 -0
  313. /package/{public/showcase → src/images}/van-dillen-antieke-bouwmaterialen.webp +0 -0
@@ -1,14 +0,0 @@
1
- ---
2
- _layout: ComponentLayout
3
- settings: components
4
-
5
- title: Image
6
- ---
7
-
8
- ```astro live
9
- ---
10
- import Image from 'fulldev-ui/components/Image.astro'
11
- ---
12
-
13
- <Image src="/images/placeholder-landscape.webp" />
14
- ```
@@ -1,10 +0,0 @@
1
- ---
2
- _layout: BlockOverviewLayout
3
-
4
- seo:
5
- title: Fulldev UI - Astro block library, open-source
6
- description: Make websites rapidly with pre-built blocks.
7
-
8
- title: Blocks
9
- heading: Blocks that you can customize with props
10
- ---
@@ -1,37 +0,0 @@
1
- ---
2
- _layout: PostLayout
3
- settings: components
4
- ---
5
-
6
- import Link from 'fulldev-ui/components/Link.astro'
7
-
8
- # Integration
9
-
10
- After <Link href="/overview/installation">installation</Link> you can generate your color palettes via an Astro integration. You can optionally add a custom css file and define custom colors and other theming options, see the <Link href="/overview/theming">theming page</Link> for more information.
11
-
12
- ```ts
13
- import { defineConfig } from 'astro/config'
14
- import fulldev from 'fulldev-ui/integration'
15
-
16
- // https://astro.build/config
17
- export default defineConfig({
18
- integrations: [
19
- fulldev({
20
- css: '/src/css/custom.css',
21
- colors: {
22
- theme: 'dark',
23
- dark: {
24
- background: '#111110',
25
- base: '#6F6D66',
26
- brand: '#F50',
27
- },
28
- light: {
29
- background: '#EEEEEC',
30
- base: '#6F6D66',
31
- brand: '#F50',
32
- },
33
- },
34
- }),
35
- ],
36
- })
37
- ```
@@ -1,23 +0,0 @@
1
- ---
2
- _layout: BlockLayout
3
- title: Row
4
- description: Structures children in a horizontal row. This component sizes dynamically, the margin between a heading and a paragraph is smaller than the margin between a paragraph an image.
5
- ---
6
-
7
- ```astro live
8
- ---
9
- import DecorativeBox from 'fulldev-ui/components/docs/DecorativeBox.astro'
10
- import Row from 'fulldev-ui/components/Row.astro'
11
- ---
12
-
13
- <Row>
14
- <DecorativeBox />
15
- <DecorativeBox />
16
- <DecorativeBox />
17
- <DecorativeBox />
18
- <DecorativeBox />
19
- <DecorativeBox />
20
- <DecorativeBox />
21
- <DecorativeBox />
22
- </Row>
23
- ```
@@ -1,25 +0,0 @@
1
- ---
2
- _layout: ComponentLayout
3
- settings: components
4
-
5
- title: Wrap
6
- description: Structures children onto one line or can wrap onto multiple lines.
7
- ---
8
-
9
- ```astro live
10
- ---
11
- import DecorativeBox from 'fulldev-ui/components/docs/DecorativeBox.astro'
12
- import Wrap from 'fulldev-ui/components/Wrap.astro'
13
- ---
14
-
15
- <Wrap>
16
- <DecorativeBox />
17
- <DecorativeBox />
18
- <DecorativeBox />
19
- <DecorativeBox />
20
- <DecorativeBox />
21
- <DecorativeBox />
22
- <DecorativeBox />
23
- <DecorativeBox />
24
- </Wrap>
25
- ```
@@ -1,31 +0,0 @@
1
- ---
2
- _layout: BlockLayout
3
- settings: components
4
-
5
- title: Carousel
6
- ---
7
-
8
- ```astro live
9
- ---
10
- import Carousel from 'fulldev-ui/components/Carousel.astro'
11
- import DecorativeBox from 'fulldev-ui/components/docs/DecorativeBox.astro'
12
- import Section from 'fulldev-ui/components/Section.astro'
13
- ---
14
-
15
- <Section>
16
- <Carousel position="inset">
17
- <DecorativeBox />
18
- <DecorativeBox />
19
- <DecorativeBox />
20
- <DecorativeBox />
21
- <DecorativeBox />
22
- <DecorativeBox />
23
- <DecorativeBox />
24
- <DecorativeBox />
25
- <DecorativeBox />
26
- <DecorativeBox />
27
- <DecorativeBox />
28
- <DecorativeBox />
29
- </Carousel>
30
- </Section>
31
- ```
@@ -1,21 +0,0 @@
1
- ---
2
- _layout: BlockLayout
3
- settings: components
4
-
5
- title: Column
6
- ---
7
-
8
- ```astro live
9
- ---
10
- import Column from 'fulldev-ui/components/Column.astro'
11
- import DecorativeBox from 'fulldev-ui/components/docs/DecorativeBox.astro'
12
- import Section from 'fulldev-ui/components/Section.astro'
13
- ---
14
-
15
- <Section>
16
- <Column>
17
- <DecorativeBox />
18
- <DecorativeBox />
19
- </Column>
20
- </Section>
21
- ```
@@ -1,26 +0,0 @@
1
- ---
2
- _layout: BlockLayout
3
- settings: components
4
-
5
- title: Grid
6
- ---
7
-
8
- ```astro live
9
- ---
10
- import DecorativeBox from 'fulldev-ui/components/docs/DecorativeBox.astro'
11
- import Grid from 'fulldev-ui/components/Grid.astro'
12
- import Section from 'fulldev-ui/components/Section.astro'
13
- ---
14
-
15
- <Section>
16
- <Grid>
17
- <DecorativeBox />
18
- <DecorativeBox />
19
- <DecorativeBox />
20
- <DecorativeBox />
21
- <DecorativeBox />
22
- <DecorativeBox />
23
- <DecorativeBox />
24
- </Grid>
25
- </Section>
26
- ```
@@ -1,32 +0,0 @@
1
- ---
2
- _layout: BlockLayout
3
- settings: components
4
-
5
- title: Masonry
6
- ---
7
-
8
- ```astro live
9
- ---
10
- import DecorativeBox from 'fulldev-ui/components/docs/DecorativeBox.astro'
11
- import Masonry from 'fulldev-ui/components/Masonry.astro'
12
- import Section from 'fulldev-ui/components/Section.astro'
13
- ---
14
-
15
- <Section>
16
- <Masonry>
17
- <DecorativeBox style={{ height: '150px' }} />
18
- <DecorativeBox style={{ height: '150px' }} />
19
- <DecorativeBox />
20
- <DecorativeBox style={{ height: '150px' }} />
21
- <DecorativeBox />
22
- <DecorativeBox style={{ height: '150px' }} />
23
- <DecorativeBox style={{ height: '150px' }} />
24
- <DecorativeBox />
25
- <DecorativeBox />
26
- <DecorativeBox style={{ height: '150px' }} />
27
- <DecorativeBox />
28
- <DecorativeBox style={{ height: '150px' }} />
29
- <DecorativeBox />
30
- </Masonry>
31
- </Section>
32
- ```
@@ -1,21 +0,0 @@
1
- ---
2
- _layout: BlockLayout
3
- settings: components
4
-
5
- title: Split
6
- ---
7
-
8
- ```astro live
9
- ---
10
- import DecorativeBox from 'fulldev-ui/components/docs/DecorativeBox.astro'
11
- import Section from 'fulldev-ui/components/Section.astro'
12
- import Split from 'fulldev-ui/components/Split.astro'
13
- ---
14
-
15
- <Section>
16
- <Split>
17
- <DecorativeBox />
18
- <DecorativeBox />
19
- </Split>
20
- </Section>
21
- ```
@@ -1,21 +0,0 @@
1
- ---
2
- _layout: BlockLayout
3
- settings: components
4
-
5
- title: Spread
6
- ---
7
-
8
- ```astro live
9
- ---
10
- import DecorativeBox from 'fulldev-ui/components/docs/DecorativeBox.astro'
11
- import Section from 'fulldev-ui/components/Section.astro'
12
- import Spread from 'fulldev-ui/components/Spread.astro'
13
- ---
14
-
15
- <Section>
16
- <Spread>
17
- <DecorativeBox />
18
- <DecorativeBox />
19
- </Spread>
20
- </Section>
21
- ```
@@ -1,22 +0,0 @@
1
- ---
2
- _layout: BlockLayout
3
- settings: components
4
-
5
- title: Stack
6
- ---
7
-
8
- ```astro live
9
- ---
10
- import DecorativeBox from 'fulldev-ui/components/docs/DecorativeBox.astro'
11
- import Section from 'fulldev-ui/components/Section.astro'
12
- import Stack from 'fulldev-ui/components/Stack.astro'
13
- ---
14
-
15
- <Section>
16
- <Stack>
17
- <DecorativeBox />
18
- <DecorativeBox />
19
- <DecorativeBox />
20
- </Stack>
21
- </Section>
22
- ```
@@ -1,55 +0,0 @@
1
- seo:
2
- image: /images/og-image.png
3
-
4
- header:
5
- heading: Fulldev UI
6
- variant: base
7
- links:
8
- - text: Docs
9
- href: /overview/introduction
10
- - text: Components
11
- href: /typography/heading
12
- - text: Blocks
13
- href: /blocks
14
- - text: Showcase
15
- href: /showcase
16
- search:
17
- icon: search
18
- variant: soft
19
- buttons:
20
- - href: https://github.com/fulldotdev/ui
21
- target: _blank
22
- aria-label: GitHub
23
- icon: brand-github
24
- - href: https://discord.gg/vXZqMbadm8
25
- target: _blank
26
- aria-label: Discord
27
- icon: brand-discord
28
- drawer:
29
- - links:
30
- - text: Docs
31
- href: /overview/introduction
32
- - text: Components
33
- href: /typography/heading
34
- - text: Blocks
35
- href: /blocks
36
- - heading: Overview
37
- links:
38
- - text: Introduction
39
- href: /overview/introduction
40
- - text: Installation
41
- href: /overview/installation
42
- - text: Integration
43
- href: /overview/integration
44
- - text: Theming
45
- href: /overview/theming
46
- - text: Frameworks
47
- href: /overview/frameworks
48
- - text: Showcase
49
- href: /showcase
50
- - heading: Typography
51
- folder: typography
52
- - heading: Base
53
- folder: base
54
- - heading: Structure
55
- folder: structure
@@ -1,29 +0,0 @@
1
- sidebar:
2
- - heading: Overview
3
- links:
4
- - text: Introduction
5
- href: /overview/introduction
6
- - text: Installation
7
- href: /overview/installation
8
- - text: Integration
9
- href: /overview/integration
10
- - text: Theming
11
- href: /overview/theming
12
- - text: Frameworks
13
- href: /overview/frameworks
14
- - text: Showcase
15
- href: /showcase
16
- - heading: Typography
17
- folder: typography
18
- - heading: Base
19
- folder: base
20
- - heading: Structure
21
- folder: structure
22
-
23
- toc:
24
- - heading: On this page
25
- links:
26
- - text: Props
27
- href: /overview/introduction
28
- - text: Examples
29
- href: /overview/installation
@@ -1,39 +0,0 @@
1
- ---
2
- import type { CollectionEntry } from 'astro:content'
3
- import Hero from 'fulldev-ui/blocks/Hero.astro'
4
- import Block from 'fulldev-ui/components/Block.astro'
5
- import Layout from 'fulldev-ui/layouts/Layout.astro'
6
-
7
- type Props = CollectionEntry<'pages'>
8
-
9
- const { data } = Astro.props
10
- ---
11
-
12
- <Layout {...Astro.props}>
13
- <Hero
14
- size="md"
15
- {...data}
16
- />
17
- <Block
18
- _bookshop_name="Categories"
19
- class:list={'block-overview-cards'}
20
- source="children"
21
- structure="grid"
22
- frame="panel"
23
- variant="surface"
24
- size="lg"
25
- align="start"
26
- />
27
- </Layout>
28
-
29
- <style is:global lang="scss">
30
- .block-overview-cards {
31
- padding-top: var(--space-5) !important;
32
-
33
- .card {
34
- .image {
35
- height: auto !important;
36
- }
37
- }
38
- }
39
- </style>
@@ -1,23 +0,0 @@
1
- ---
2
- import type { CollectionEntry } from 'astro:content'
3
- import Prose from 'fulldev-ui/components/experimental/Prose.astro'
4
- import Section from 'fulldev-ui/components/Section.astro'
5
- import Layout from 'fulldev-ui/layouts/Layout.astro'
6
-
7
- type Props = CollectionEntry<'pages'>
8
-
9
- const { render } = Astro.props
10
- const { Content } = await render()
11
- ---
12
-
13
- <Layout
14
- {...Astro.props}
15
- class:list="component-layout"
16
- >
17
- <Section>
18
- <Prose>
19
- <Content />
20
- </Prose>
21
- </Section>
22
- <slot />
23
- </Layout>
@@ -1,40 +0,0 @@
1
- ---
2
- import type { CollectionEntry } from 'astro:content'
3
- import { getCollection } from 'astro:content'
4
- import JobDeck from 'fulldev-ui/blocks/Jobs.astro'
5
- import Block from 'fulldev-ui/components/Block.astro'
6
- import Blocks from 'fulldev-ui/components/Blocks.astro'
7
- import Prose from 'fulldev-ui/components/experimental/Prose.astro'
8
- import Section from 'fulldev-ui/components/Section.astro'
9
- import Layout from 'fulldev-ui/layouts/Layout.astro'
10
-
11
- type Props = CollectionEntry<'pages'>
12
-
13
- const { data, slug, ...rest } = Astro.props
14
-
15
- const childPages = (
16
- await getCollection('pages', (page: any) => page.slug.startsWith(slug))
17
- ).map((page: any) => ({ href: `/${page.slug}/`, ...page.data }))
18
- ---
19
-
20
- <Layout
21
- class:list={'page'}
22
- data={data}
23
- {...rest}
24
- >
25
- <Block
26
- _bookshop_name="Hero"
27
- heading={data.title}
28
- set:html={data.description}
29
- {...data}
30
- {...data.hero}
31
- />
32
- <JobDeck cards={childPages} />
33
- <Section style={{ '--screen': '768px' }}>
34
- <Prose id="prose">
35
- <slot />
36
- </Prose>
37
- </Section>
38
- <Blocks blocks={data.blocks} />
39
- <slot />
40
- </Layout>
@@ -1,90 +0,0 @@
1
- import { z } from 'astro:content'
2
-
3
- export const button = z
4
- .object({
5
- text: z.string(),
6
- href: z.string(),
7
- icon: z.string(),
8
- })
9
- .partial()
10
- .passthrough()
11
-
12
- export const link = z
13
- .object({
14
- text: z.string(),
15
- href: z.string(),
16
- })
17
- .partial()
18
- .passthrough()
19
-
20
- export const base = z
21
- .object({
22
- tagline: z.string(),
23
- icon: z.string(),
24
- badge: z.string().or(
25
- z.object({
26
- text: z.string(),
27
- href: z.string(),
28
- })
29
- ),
30
- heading: z.string(),
31
- text: z.string(),
32
- html: z.string(),
33
- image: z.string(),
34
- images: z.string().array(),
35
- rating: z.number().or(
36
- z
37
- .object({
38
- value: z.number(),
39
- label: z.string(),
40
- avatars: z.string().array(),
41
- avatar: z.string(),
42
- })
43
- .partial()
44
- ),
45
- button: button,
46
- buttons: button.array(),
47
- link: link,
48
- links: link.array(),
49
- list: z.string().array(),
50
- avatar: z.string(),
51
- price: z.number(),
52
- input: z
53
- .object({
54
- placeholder: z.string(),
55
- submit: z.string(),
56
- })
57
- .partial()
58
- .passthrough(),
59
- logos: z.string().array(),
60
- logo: z.string(),
61
- channels: z
62
- .object({
63
- phone: z.string(),
64
- email: z.string(),
65
- address: z.string(),
66
- })
67
- .partial()
68
- .passthrough(),
69
- socials: z
70
- .object({
71
- facebook: z.string(),
72
- instagram: z.string(),
73
- })
74
- .partial()
75
- .passthrough(),
76
- hours: z
77
- .object({
78
- monday: z.string(),
79
- tuesday: z.string(),
80
- wednesday: z.string(),
81
- thursday: z.string(),
82
- friday: z.string(),
83
- saturday: z.string(),
84
- sunday: z.string(),
85
- })
86
- .partial()
87
- .passthrough(),
88
- })
89
- .partial()
90
- .passthrough()
@@ -1,15 +0,0 @@
1
- import { z } from 'astro:content'
2
- import { base } from './base'
3
- import { card } from './card'
4
- import { pathSchema } from './utils'
5
-
6
- export const block = base
7
- .extend({
8
- columns: card.array(),
9
- cards: z.array(card),
10
- source: z.enum(['children', 'references']),
11
- pages: pathSchema('pages').array(),
12
- records: pathSchema('records').array(),
13
- })
14
- .partial()
15
- .passthrough()
@@ -1,3 +0,0 @@
1
- import { base } from './base'
2
-
3
- export const card = base
@@ -1,43 +0,0 @@
1
- import { z } from 'astro:content'
2
- import { base } from './base'
3
- import { block } from './block'
4
- import { pathSchema } from './utils'
5
-
6
- export const page = base
7
- .extend({
8
- i18n: pathSchema('pages'),
9
- settings: pathSchema('settings'),
10
- seo: z
11
- .object({
12
- title: z.string(),
13
- description: z.string(),
14
- image: z.string(),
15
- })
16
- .partial()
17
- .passthrough(),
18
- code: z
19
- .object({
20
- head: z.string(),
21
- body: z.string(),
22
- })
23
- .partial()
24
- .passthrough(),
25
- pages: pathSchema('pages').array(),
26
- records: pathSchema('records').array(),
27
- title: z.string(),
28
- description: z.string(),
29
- header: block.or(z.literal(false)),
30
- headers: block.array().or(z.literal(false)),
31
- hero: block.or(z.literal(false)),
32
- block: block.or(z.literal(false)),
33
- section: block.or(z.literal(false)),
34
- blocks: block.array().or(z.object({}).catchall(block)),
35
- sections: block.array().or(z.object({}).catchall(block)),
36
- cta: block.or(z.literal(false)),
37
- footer: block.or(z.literal(false)),
38
- footers: block.array().or(z.literal(false)),
39
- })
40
- .partial()
41
- .passthrough()
42
-
43
- export type Page = z.infer<typeof page>
@@ -1,28 +0,0 @@
1
- import { getEntry } from 'astro:content'
2
- import { assign } from 'radash'
3
-
4
- export const mergeEntries = async (entry: any) => {
5
- if (!entry) return entry
6
- const { data, slug } = entry
7
- const baseSettings = await getEntry('settings', 'base')
8
- const enSettings = await getEntry('settings', 'en')
9
- const deSettings = await getEntry('settings', 'de')
10
- const frSettings = await getEntry('settings', 'fr')
11
- const pageSettings = data.settings && (await getEntry(data.settings))
12
- const i18nSettings = data.i18n && (await getEntry(data.i18n))
13
-
14
- let merged = {}
15
- merged = assign(merged, baseSettings?.data ?? {})
16
- slug?.startsWith('en') && (merged = assign(merged, enSettings?.data ?? {}))
17
- slug?.startsWith('de') && (merged = assign(merged, deSettings?.data ?? {}))
18
- slug?.startsWith('fr') && (merged = assign(merged, frSettings?.data ?? {}))
19
- merged = assign(merged, i18nSettings?.data ?? {})
20
- merged = assign(merged, pageSettings?.data ?? {})
21
- merged = assign(merged, data)
22
-
23
- const newEntry = {
24
- ...entry,
25
- data: merged,
26
- }
27
- return newEntry
28
- }
File without changes