fulldev-ui 0.5.0-beta.9 → 0.6.0-beta-4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +3 -0
- package/.prettierrc.yaml +1 -0
- package/astro.config.ts +10 -34
- package/cloudcannon.config.yml +217 -0
- package/package.json +25 -29
- package/pnpm-lock.yaml +943 -2157
- package/public/favicon/android-chrome-192x192.png +0 -0
- package/public/favicon/android-chrome-512x512.png +0 -0
- package/public/favicon/apple-touch-icon.png +0 -0
- package/public/favicon/manifest.webmanifest +7 -3
- package/public/favicon/mstile-150x150.png +0 -0
- package/src/blocks/Banner.astro +14 -29
- package/src/blocks/Contact1.astro +92 -0
- package/src/blocks/Cta1.astro +72 -0
- package/src/blocks/Feature1.astro +67 -0
- package/src/blocks/Features1.astro +75 -0
- package/src/blocks/Footer.astro +100 -3
- package/src/blocks/Header.astro +192 -3
- package/src/blocks/Hero1.astro +74 -0
- package/src/blocks/Job1.astro +97 -0
- package/src/blocks/Products1.astro +90 -0
- package/src/blocks/Reviews1.astro +75 -0
- package/src/blocks/_Hero.astro +245 -0
- package/src/components/Avatar.astro +28 -9
- package/src/components/Avatars.astro +36 -0
- package/src/components/Badge.astro +63 -24
- package/src/components/Badges.astro +16 -23
- package/src/components/Banner.astro +26 -0
- package/src/components/Block.astro +49 -0
- package/src/components/Blocks.astro +26 -0
- package/src/components/Breadcrumb.astro +58 -0
- package/src/components/Button.astro +49 -119
- package/src/components/Buttons.astro +23 -13
- package/src/components/Card.astro +9 -137
- package/src/components/Cards.astro +33 -35
- package/src/components/Carousel.astro +106 -0
- package/src/components/Cart.astro +18 -14
- package/src/components/CartAdd.svelte +76 -0
- package/src/components/CartCheckout.svelte +58 -0
- package/src/components/CartForm.svelte +130 -0
- package/src/components/CartList.svelte +88 -0
- package/src/components/CartQuantity.svelte +81 -0
- package/src/components/CartSummary.astro +16 -105
- package/src/components/CartTotal.svelte +15 -0
- package/src/components/Channel.astro +44 -35
- package/src/components/Channels.astro +20 -6
- package/src/components/Checkbox.astro +52 -27
- package/src/components/Code.astro +52 -0
- package/src/components/Container.astro +25 -0
- package/src/components/Dialog.astro +3 -2
- package/src/components/Drawer.astro +55 -146
- package/src/components/DrawerOld.astro +143 -0
- package/src/components/Element.astro +18 -8
- package/src/components/Form.astro +16 -13
- package/src/components/Gallery.astro +174 -0
- package/src/components/Head.astro +62 -25
- package/src/components/Header.astro +10 -115
- package/src/components/Heading.astro +51 -44
- package/src/components/Icon.astro +29 -33
- package/src/components/Image.astro +18 -68
- package/src/components/Input.astro +65 -51
- package/src/components/Label.astro +20 -15
- package/src/components/Layout.astro +35 -0
- package/src/components/Link.astro +51 -32
- package/src/components/Links.astro +42 -0
- package/src/components/List.astro +41 -16
- package/src/components/LocaleSwitcher.astro +2 -2
- package/src/components/Logo.astro +56 -0
- package/src/components/Menu.astro +21 -17
- package/src/components/Navigation.astro +39 -0
- package/src/components/Panel.astro +25 -0
- package/src/components/Paragraph.astro +55 -0
- package/src/components/Price.astro +4 -4
- package/src/components/Prose.astro +78 -0
- package/src/components/Rating.astro +23 -62
- package/src/components/Search.astro +107 -43
- package/src/components/Section.astro +13 -242
- package/src/components/Select.astro +45 -55
- package/src/components/Sidebar.astro +53 -76
- package/src/components/Social.astro +11 -9
- package/src/components/Socials.astro +9 -5
- package/src/components/Subheader.astro +59 -0
- package/src/components/Switch.astro +72 -29
- package/src/components/Table.astro +1 -1
- package/src/components/Tagline.astro +32 -14
- package/src/components/Textarea.astro +40 -50
- package/src/components/Themer.astro +76 -0
- package/src/components/Toc.astro +32 -31
- package/src/components/_Author.astro +90 -0
- package/src/components/_Header.astro +129 -0
- package/src/components/_Image.astro +79 -0
- package/src/components/_Prose copy.astro +172 -0
- package/src/components/_Sidebar copy.astro +87 -0
- package/src/components/docs/PropsTable.astro +38 -264
- package/src/components/experimental/Window.astro +5 -57
- package/src/content/config.ts +4 -10
- package/src/content/{presets → layouts}/base.yml +52 -73
- package/src/content/pages/blocks/_categories.mdx +0 -2
- package/src/content/pages/blocks/_footer.mdx +0 -2
- package/src/content/pages/blocks/_header.mdx +0 -4
- package/src/content/pages/blocks/_jobs.mdx +0 -2
- package/src/content/pages/blocks/_prices.mdx +0 -2
- package/src/content/pages/blocks/_product.mdx +0 -2
- package/src/content/pages/blocks/_products.mdx +0 -2
- package/src/content/pages/blocks/_stats.mdx +0 -2
- package/src/content/pages/blocks/banner.mdx +0 -2
- package/src/content/pages/blocks/colleagues.mdx +0 -3
- package/src/content/pages/blocks/contact.mdx +0 -2
- package/src/content/pages/blocks/content.mdx +0 -6
- package/src/content/pages/blocks/cta.mdx +0 -10
- package/src/content/pages/blocks/features.mdx +0 -5
- package/src/content/pages/blocks/hero.mdx +0 -5
- package/src/content/pages/blocks/intro.mdx +0 -5
- package/src/content/pages/blocks/posts.mdx +0 -2
- package/src/content/pages/blocks/reviews.mdx +0 -3
- package/src/content/pages/categories/category.md +7 -0
- package/src/content/pages/docs/_internationalization.mdx +55 -0
- package/src/content/pages/docs/_using-blocks.mdx +33 -0
- package/src/content/pages/docs/_using-presets.mdx +49 -0
- package/src/content/pages/docs/blocks.mdx +33 -0
- package/src/content/pages/docs/collections/images.mdx +102 -0
- package/src/content/pages/docs/collections/pages.mdx +119 -0
- package/src/content/pages/docs/collections/presets.mdx +60 -0
- package/src/content/pages/docs/collections.mdx +42 -0
- package/src/content/pages/{base/card.mdx → docs/components/_card.mdx} +2 -5
- package/src/content/pages/{base → docs/components}/_dialog.mdx +1 -2
- package/src/content/pages/{base → docs/components}/_drawer.mdx +1 -2
- package/src/content/pages/{base → docs/components}/_localeswitcher.mdx +1 -2
- package/src/content/pages/{base → docs/components}/_switch.mdx +3 -4
- package/src/content/pages/{typography → docs/components}/_tagline.mdx +3 -4
- package/src/content/pages/docs/components/_toggle.mdx +30 -0
- package/src/content/pages/docs/components/avatar.mdx +34 -0
- package/src/content/pages/{base → docs/components}/badge.mdx +28 -10
- package/src/content/pages/docs/components/badges.mdx +46 -0
- package/src/content/pages/docs/components/button.mdx +78 -0
- package/src/content/pages/docs/components/buttons.mdx +51 -0
- package/src/content/pages/docs/components/channel.mdx +91 -0
- package/src/content/pages/docs/components/channels.mdx +89 -0
- package/src/content/pages/docs/components/checkbox.mdx +34 -0
- package/src/content/pages/docs/components/code.mdx +45 -0
- package/src/content/pages/docs/components/heading.mdx +59 -0
- package/src/content/pages/docs/components/icon.mdx +48 -0
- package/src/content/pages/docs/components/image.mdx +25 -0
- package/src/content/pages/docs/components/input.mdx +40 -0
- package/src/content/pages/{typography → docs/components}/label.mdx +9 -6
- package/src/content/pages/{typography → docs/components}/link.mdx +24 -10
- package/src/content/pages/docs/components/links.mdx +99 -0
- package/src/content/pages/docs/components/list.mdx +44 -0
- package/src/content/pages/docs/components/logo.mdx +36 -0
- package/src/content/pages/docs/components/menu.mdx +89 -0
- package/src/content/pages/docs/components/prose.mdx +36 -0
- package/src/content/pages/docs/components/rating.mdx +76 -0
- package/src/content/pages/{base → docs/components}/section.mdx +2 -3
- package/src/content/pages/{base → docs/components}/select.mdx +1 -11
- package/src/content/pages/docs/components/social.mdx +94 -0
- package/src/content/pages/docs/components/socials.mdx +102 -0
- package/src/content/pages/docs/components/switch.mdx +34 -0
- package/src/content/pages/{base → docs/components}/table.mdx +1 -4
- package/src/content/pages/docs/components/tagline.mdx +46 -0
- package/src/content/pages/docs/components/text.mdx +48 -0
- package/src/content/pages/docs/components/textarea.mdx +34 -0
- package/src/content/pages/docs/components/themer.mdx +49 -0
- package/src/content/pages/docs/components.mdx +37 -0
- package/src/content/pages/docs/customization.mdx +151 -0
- package/src/content/pages/docs/frameworks.mdx +29 -0
- package/src/content/pages/docs/generating-pages.mdx +129 -0
- package/src/content/pages/docs/index.mdx +20 -0
- package/src/content/pages/docs/installation.mdx +50 -0
- package/src/content/pages/docs/layouts.mdx +33 -0
- package/src/content/pages/index.mdx +25 -33
- package/src/content/pages/posts/post.md +7 -0
- package/src/content/pages/products/product.md +20 -0
- package/src/content/pages/showcase/anti-slip-profiles.md +2 -2
- package/src/content/pages/showcase/fulldev-ui.md +1 -1
- package/src/content/pages/showcase/lavis-detailing.md +1 -1
- package/src/content/pages/showcase/leren-trainingsacteren.md +1 -1
- package/src/content/pages/showcase/miele-witgoedcenter-amsterdam.md +1 -1
- package/src/content/pages/showcase/sloepverhuur-bolsward.md +1 -1
- package/src/content/pages/showcase/stark-vulcanising-products.md +1 -1
- package/src/content/pages/showcase/the-gym-haren.md +1 -1
- package/src/content/pages/showcase/van-dillen-antieke-bouwmaterialen.md +1 -1
- package/src/content/pages/showcase.mdx +4 -3
- package/src/css/color.css +0 -10
- package/src/css/custom.css +10 -12
- package/src/css/size.css +2 -11
- package/src/css/theme.css +95 -0
- package/src/env.d.ts +1 -0
- package/src/images/favicon/android-chrome-192x192.png +0 -0
- package/src/images/favicon/android-chrome-512x512.png +0 -0
- package/src/images/favicon/apple-touch-icon.png +0 -0
- package/src/images/favicon/browserconfig.xml +9 -0
- package/src/images/favicon/favicon-16x16.png +0 -0
- package/src/images/favicon/favicon-32x32.png +0 -0
- package/src/images/favicon/favicon-48x48.png +0 -0
- package/src/images/favicon/favicon.ico +0 -0
- package/src/images/favicon/favicon.svg +16 -0
- package/src/images/favicon/manifest.webmanifest +30 -0
- package/src/images/favicon/mstile-150x150.png +0 -0
- package/src/images/favicon/safari-pinned-tab.svg +16 -0
- package/src/images/favicon/yandex-browser-50x50.png +0 -0
- package/src/images/favicon/yandex-browser-manifest.json +9 -0
- package/src/images/logo-1.svg +11 -0
- package/src/images/logo-2.svg +13 -0
- package/src/images/logo-basic.svg +10 -0
- package/src/images/logo-simple.svg +13 -0
- package/src/images/logo-thin.svg +15 -0
- package/src/images/logo.svg +14 -0
- package/src/images/logofat.svg +11 -0
- package/src/integration/index.ts +110 -140
- package/src/layouts/Category.astro +131 -0
- package/src/layouts/Doc.astro +72 -0
- package/src/layouts/Job.astro +64 -0
- package/src/layouts/Page.astro +30 -0
- package/src/layouts/Post.astro +20 -0
- package/src/layouts/Product.astro +110 -0
- package/src/pages/[...page].astro +29 -24
- package/src/pages/test.astro +37 -0
- package/src/schemas/blocks/banner.ts +10 -0
- package/src/schemas/blocks/categories.ts +14 -0
- package/src/schemas/blocks/contact.ts +18 -0
- package/src/schemas/blocks/cta.ts +19 -0
- package/src/schemas/blocks/feature.ts +18 -0
- package/src/schemas/blocks/features.ts +24 -0
- package/src/schemas/blocks/hero.ts +20 -0
- package/src/schemas/blocks/intro.ts +16 -0
- package/src/schemas/blocks/products.ts +14 -0
- package/src/schemas/blocks/reviews.ts +24 -0
- package/src/schemas/components/avatar.ts +4 -1
- package/src/schemas/components/badge.ts +16 -11
- package/src/schemas/components/block.ts +22 -0
- package/src/schemas/components/button.ts +17 -14
- package/src/schemas/components/channel.ts +15 -9
- package/src/schemas/components/footer.ts +15 -21
- package/src/schemas/components/head.ts +17 -0
- package/src/schemas/components/header.ts +19 -7
- package/src/schemas/components/heading.ts +7 -1
- package/src/schemas/components/icon.ts +7 -1
- package/src/schemas/components/image.ts +38 -16
- package/src/schemas/components/link.ts +17 -0
- package/src/schemas/components/logo.ts +12 -2
- package/src/schemas/components/menu.ts +11 -11
- package/src/schemas/components/navigation.ts +10 -0
- package/src/schemas/components/paragraph.ts +9 -0
- package/src/schemas/components/price.ts +7 -1
- package/src/schemas/components/rating.ts +8 -13
- package/src/schemas/components/sidebar.ts +14 -11
- package/src/schemas/components/social.ts +16 -1
- package/src/schemas/components/tagline.ts +7 -1
- package/src/schemas/imageSchema.ts +30 -1
- package/src/schemas/layoutSchema.ts +22 -0
- package/src/schemas/pageSchema.ts +26 -96
- package/src/stores/cart.svelte.ts +79 -0
- package/src/stores/cart.ts +59 -6
- package/src/types/global-props.ts +0 -9
- package/src/types/{virtual-modules.d.ts → virtual.d.ts} +1 -1
- package/src/utils/cart.ts +1 -10
- package/src/utils/formatEntries.ts +8 -0
- package/src/utils/formatEntry.ts +29 -0
- package/src/utils/getDeepReferenceChildren.ts +14 -0
- package/src/utils/getHref.ts +6 -0
- package/src/utils/getReferenceChildren.ts +1 -1
- package/src/utils/setTheme.ts +18 -0
- package/src/utils/slugify.ts +6 -0
- package/svelte.config.js +5 -0
- package/tailwind.config.ts +67 -0
- package/tsconfig.json +1 -3
- package/src/blocks/Article.astro +0 -40
- package/src/blocks/Categories.astro +0 -12
- package/src/blocks/Colleagues.astro +0 -13
- package/src/blocks/Contact.astro +0 -116
- package/src/blocks/Content.astro +0 -12
- package/src/blocks/Cta.astro +0 -15
- package/src/blocks/Excerpt.astro +0 -14
- package/src/blocks/Features.astro +0 -11
- package/src/blocks/Hero.astro +0 -15
- package/src/blocks/Intro.astro +0 -23
- package/src/blocks/Jobs.astro +0 -12
- package/src/blocks/Posts.astro +0 -11
- package/src/blocks/Prices.astro +0 -24
- package/src/blocks/Product.astro +0 -110
- package/src/blocks/Products.astro +0 -11
- package/src/blocks/Reviews.astro +0 -13
- package/src/components/CartForm.astro +0 -121
- package/src/components/CartList.astro +0 -134
- package/src/components/Footer.astro +0 -193
- package/src/components/Text.astro +0 -43
- package/src/components/ThemeSelect.astro +0 -41
- package/src/components/Writeup.astro +0 -90
- package/src/components/experimental/Form.astro +0 -53
- package/src/components/experimental/Gallery.astro +0 -104
- package/src/components/experimental/Logo.astro +0 -38
- package/src/components/experimental/Prose.astro +0 -192
- package/src/components/sections.astro +0 -28
- package/src/content/pages/base/button.mdx +0 -60
- package/src/content/pages/base/checkbox.mdx +0 -42
- package/src/content/pages/base/icon.mdx +0 -55
- package/src/content/pages/base/image.mdx +0 -42
- package/src/content/pages/base/input.mdx +0 -56
- package/src/content/pages/base/rating.mdx +0 -55
- package/src/content/pages/base/textarea.mdx +0 -58
- package/src/content/pages/base/theme-select.mdx +0 -15
- package/src/content/pages/layouts/_layout.mdx +0 -14
- package/src/content/pages/layouts/docslayout.mdx +0 -14
- package/src/content/pages/overview/components.mdx +0 -75
- package/src/content/pages/overview/content-collections.mdx +0 -139
- package/src/content/pages/overview/frameworks.mdx +0 -198
- package/src/content/pages/overview/installation.mdx +0 -53
- package/src/content/pages/overview/introduction.mdx +0 -30
- package/src/content/pages/overview/theming.mdx +0 -69
- package/src/content/pages/schemas/page.mdx +0 -17
- package/src/content/pages/schemas/preset.mdx +0 -9
- package/src/content/pages/showcase/record.md +0 -3
- package/src/content/pages/typography/heading.mdx +0 -73
- package/src/content/pages/typography/list.mdx +0 -51
- package/src/content/pages/typography/text.mdx +0 -61
- package/src/content/presets/blocks.yml +0 -1
- package/src/content/presets/docs.yml +0 -6
- package/src/css/space.css +0 -77
- package/src/css/styles.css +0 -0
- package/src/images/avatar-1.yml +0 -1
- package/src/integration/generate-colors.ts +0 -639
- package/src/integration/tailwind-plugin.ts +0 -80
- package/src/integration/unocss-preset.ts +0 -84
- package/src/layouts/BlockLayout.astro +0 -19
- package/src/layouts/ContactLayout.astro +0 -21
- package/src/layouts/DocsLayout.astro +0 -73
- package/src/layouts/Layout.astro +0 -163
- package/src/layouts/OverviewLayout.astro +0 -42
- package/src/layouts/PostLayout.astro +0 -21
- package/src/layouts/ProductLayout.astro +0 -21
- package/src/loaders/imageLoader.ts +0 -26
- package/src/schemas/components/avatars.ts +0 -4
- package/src/schemas/components/buttons.ts +0 -4
- package/src/schemas/components/card.ts +0 -25
- package/src/schemas/components/cards.ts +0 -4
- package/src/schemas/components/channels.ts +0 -4
- package/src/schemas/components/images.ts +0 -4
- package/src/schemas/components/list.ts +0 -3
- package/src/schemas/components/section.ts +0 -15
- package/src/schemas/components/sections.ts +0 -3
- package/src/schemas/components/socials.ts +0 -4
- package/src/schemas/components/text.ts +0 -3
- package/src/schemas/components/toc.ts +0 -3
- package/src/schemas/components/writeup.ts +0 -20
- package/src/schemas/presetSchema.ts +0 -3
- package/src/schemas/utils/navigation.ts +0 -8
- package/src/schemas/utils/parents.ts +0 -3
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
---
|
|
2
|
+
_layout: doc
|
|
3
|
+
title: Social
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Social
|
|
7
|
+
|
|
8
|
+
import PropsTable from 'fulldev-ui/components/docs/PropsTable.astro'
|
|
9
|
+
|
|
10
|
+
```astro live
|
|
11
|
+
---
|
|
12
|
+
import Social from 'fulldev-ui/components/Social.astro'
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
<Social href="https://x.com/silveltm" />
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Props
|
|
19
|
+
|
|
20
|
+
<PropsTable />
|
|
21
|
+
|
|
22
|
+
## Examples
|
|
23
|
+
|
|
24
|
+
### `href`
|
|
25
|
+
|
|
26
|
+
If possible, the platform `icon` will be automatically set based on the `href`. The following platforms are supported:
|
|
27
|
+
|
|
28
|
+
- X
|
|
29
|
+
- Facebook
|
|
30
|
+
- Instagram
|
|
31
|
+
- LinkedIn
|
|
32
|
+
- YouTube
|
|
33
|
+
- TikTok
|
|
34
|
+
- Twitch
|
|
35
|
+
- GitHub
|
|
36
|
+
- Discord
|
|
37
|
+
|
|
38
|
+
```astro live
|
|
39
|
+
---
|
|
40
|
+
import Social from 'fulldev-ui/components/Social.astro'
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
<Social href="https://x.com/silveltm" />
|
|
44
|
+
<Social href="https://www.linkedin.com/in/silveltman/" />
|
|
45
|
+
<Social href="https://discord.gg/vXZqMbadm8" />
|
|
46
|
+
<Social href="https://github.com/fulldotdev/ui" />
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### `icon`
|
|
50
|
+
|
|
51
|
+
You can also manually set the `icon`, in which case this component behaves like a regular `<Button/>`.
|
|
52
|
+
|
|
53
|
+
```astro live
|
|
54
|
+
---
|
|
55
|
+
import Social from 'fulldev-ui/components/Social.astro'
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
<Social icon="confetti" href="https://x.com/silveltm" />
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### `variant`
|
|
62
|
+
|
|
63
|
+
```astro live
|
|
64
|
+
---
|
|
65
|
+
import Social from 'fulldev-ui/components/Social.astro'
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
<Social href="https://x.com/silveltm" variant="primary" />
|
|
69
|
+
<Social href="https://x.com/silveltm" variant="secondary" />
|
|
70
|
+
<Social href="https://x.com/silveltm" variant="outline" />
|
|
71
|
+
<Social href="https://x.com/silveltm" variant="ghost" />
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### `size`
|
|
75
|
+
|
|
76
|
+
```astro live
|
|
77
|
+
---
|
|
78
|
+
import Social from 'fulldev-ui/components/Social.astro'
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
<Social href="https://x.com/silveltm" size="sm">Small</Social>
|
|
82
|
+
<Social href="https://x.com/silveltm" size="md">Medium</Social>
|
|
83
|
+
<Social href="https://x.com/silveltm" size="lg">Large</Social>
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### `text`
|
|
87
|
+
|
|
88
|
+
```astro live
|
|
89
|
+
---
|
|
90
|
+
import Social from 'fulldev-ui/components/Social.astro'
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
<Social href="https://x.com/silveltm" text="Follow" />
|
|
94
|
+
```
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
---
|
|
2
|
+
_layout: doc
|
|
3
|
+
title: Socials
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Socials
|
|
7
|
+
|
|
8
|
+
import PropsTable from 'fulldev-ui/components/docs/PropsTable.astro'
|
|
9
|
+
|
|
10
|
+
```astro live
|
|
11
|
+
---
|
|
12
|
+
import Socials from 'fulldev-ui/components/Socials.astro'
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
<Socials
|
|
16
|
+
socials={[
|
|
17
|
+
'https://x.com/silveltm',
|
|
18
|
+
'https://www.linkedin.com/in/silveltman/',
|
|
19
|
+
'https://discord.gg/vXZqMbadm8',
|
|
20
|
+
'https://github.com/fulldotdev/ui',
|
|
21
|
+
]}
|
|
22
|
+
/>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Props
|
|
26
|
+
|
|
27
|
+
<PropsTable />
|
|
28
|
+
|
|
29
|
+
## Examples
|
|
30
|
+
|
|
31
|
+
### `variant`
|
|
32
|
+
|
|
33
|
+
```astro live
|
|
34
|
+
---
|
|
35
|
+
import Socials from 'fulldev-ui/components/Socials.astro'
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
<Socials
|
|
39
|
+
variant="primary"
|
|
40
|
+
socials={[
|
|
41
|
+
'https://x.com/silveltm',
|
|
42
|
+
'https://www.linkedin.com/in/silveltman/',
|
|
43
|
+
'https://discord.gg/vXZqMbadm8',
|
|
44
|
+
'https://github.com/fulldotdev/ui',
|
|
45
|
+
]}
|
|
46
|
+
/>
|
|
47
|
+
|
|
48
|
+
<Socials
|
|
49
|
+
variant="secondary"
|
|
50
|
+
socials={[
|
|
51
|
+
'https://x.com/silveltm',
|
|
52
|
+
'https://www.linkedin.com/in/silveltman/',
|
|
53
|
+
'https://discord.gg/vXZqMbadm8',
|
|
54
|
+
'https://github.com/fulldotdev/ui',
|
|
55
|
+
]}
|
|
56
|
+
/>
|
|
57
|
+
|
|
58
|
+
<Socials
|
|
59
|
+
variant="outline"
|
|
60
|
+
socials={[
|
|
61
|
+
'https://x.com/silveltm',
|
|
62
|
+
'https://www.linkedin.com/in/silveltman/',
|
|
63
|
+
'https://discord.gg/vXZqMbadm8',
|
|
64
|
+
'https://github.com/fulldotdev/ui',
|
|
65
|
+
]}
|
|
66
|
+
/>
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### `size`
|
|
70
|
+
|
|
71
|
+
```astro live
|
|
72
|
+
---
|
|
73
|
+
import Socials from 'fulldev-ui/components/Socials.astro'
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
<Socials
|
|
77
|
+
variant="secondary"
|
|
78
|
+
size="sm"
|
|
79
|
+
socials={[
|
|
80
|
+
'https://x.com/silveltm',
|
|
81
|
+
'https://www.linkedin.com/in/silveltman/',
|
|
82
|
+
]}
|
|
83
|
+
/>
|
|
84
|
+
|
|
85
|
+
<Socials
|
|
86
|
+
variant="secondary"
|
|
87
|
+
size="md"
|
|
88
|
+
socials={[
|
|
89
|
+
'https://x.com/silveltm',
|
|
90
|
+
'https://www.linkedin.com/in/silveltman/',
|
|
91
|
+
]}
|
|
92
|
+
/>
|
|
93
|
+
|
|
94
|
+
<Socials
|
|
95
|
+
variant="secondary"
|
|
96
|
+
size="lg"
|
|
97
|
+
socials={[
|
|
98
|
+
'https://x.com/silveltm',
|
|
99
|
+
'https://www.linkedin.com/in/silveltman/',
|
|
100
|
+
]}
|
|
101
|
+
/>
|
|
102
|
+
```
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
_layout: doc
|
|
3
|
+
title: Switch
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Switch
|
|
7
|
+
|
|
8
|
+
import PropsTable from 'fulldev-ui/components/docs/PropsTable.astro'
|
|
9
|
+
|
|
10
|
+
```astro live
|
|
11
|
+
---
|
|
12
|
+
import Switch from 'fulldev-ui/components/Switch.astro'
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
<Switch label="Switch" />
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Props
|
|
19
|
+
|
|
20
|
+
<PropsTable />
|
|
21
|
+
|
|
22
|
+
## Examples
|
|
23
|
+
|
|
24
|
+
### `size`
|
|
25
|
+
|
|
26
|
+
```astro live
|
|
27
|
+
---
|
|
28
|
+
import Switch from 'fulldev-ui/components/Switch.astro'
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
<Switch size="sm" label="Small" />
|
|
32
|
+
<Switch size="md" label="Medium" />
|
|
33
|
+
<Switch size="lg" label="Large" />
|
|
34
|
+
```
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
_layout: doc
|
|
4
3
|
title: Table
|
|
5
4
|
---
|
|
6
5
|
|
|
@@ -50,7 +49,6 @@ import Table from 'fulldev-ui/components/Table.astro'
|
|
|
50
49
|
---
|
|
51
50
|
|
|
52
51
|
<Table
|
|
53
|
-
color="base"
|
|
54
52
|
header={['Product', 'Quantity']}
|
|
55
53
|
body={[
|
|
56
54
|
['Apple', '2'],
|
|
@@ -60,7 +58,6 @@ import Table from 'fulldev-ui/components/Table.astro'
|
|
|
60
58
|
/>
|
|
61
59
|
|
|
62
60
|
<Table
|
|
63
|
-
color="brand"
|
|
64
61
|
header={['Product', 'Quantity']}
|
|
65
62
|
body={[
|
|
66
63
|
['Apple', '2'],
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
---
|
|
2
|
+
_layout: doc
|
|
3
|
+
title: Tagline
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Tagline
|
|
7
|
+
|
|
8
|
+
Text in primary color above a heading.
|
|
9
|
+
|
|
10
|
+
import PropsTable from 'fulldev-ui/components/docs/PropsTable.astro'
|
|
11
|
+
|
|
12
|
+
```astro live
|
|
13
|
+
---
|
|
14
|
+
import Tagline from 'fulldev-ui/components/Tagline.astro'
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
<Tagline>Tagline</Tagline>
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Props
|
|
21
|
+
|
|
22
|
+
<PropsTable />
|
|
23
|
+
|
|
24
|
+
## Examples
|
|
25
|
+
|
|
26
|
+
### `size`
|
|
27
|
+
|
|
28
|
+
```astro live
|
|
29
|
+
---
|
|
30
|
+
import Tagline from 'fulldev-ui/components/Tagline.astro'
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
<Tagline size="sm">Small</Tagline>
|
|
34
|
+
<Tagline size="md">Medium</Tagline>
|
|
35
|
+
<Tagline size="lg">Large</Tagline>
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### `text`
|
|
39
|
+
|
|
40
|
+
```astro live
|
|
41
|
+
---
|
|
42
|
+
import Tagline from 'fulldev-ui/components/Tagline.astro'
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
<Tagline text="Tagline" />
|
|
46
|
+
```
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
---
|
|
2
|
+
_layout: doc
|
|
3
|
+
title: Text
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Text
|
|
7
|
+
|
|
8
|
+
import PropsTable from 'fulldev-ui/components/docs/PropsTable.astro'
|
|
9
|
+
|
|
10
|
+
```astro live
|
|
11
|
+
---
|
|
12
|
+
import Text from 'fulldev-ui/components/Text.astro'
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
<Text>The quick brown fox jumps over the lazy dog</Text>
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Props
|
|
19
|
+
|
|
20
|
+
<PropsTable />
|
|
21
|
+
|
|
22
|
+
## Examples
|
|
23
|
+
|
|
24
|
+
### `size`
|
|
25
|
+
|
|
26
|
+
```astro live
|
|
27
|
+
---
|
|
28
|
+
import Text from 'fulldev-ui/components/Text.astro'
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
<Text size="sm"
|
|
32
|
+
>The quick brown fox jumps over the lazy dog because he is quick
|
|
33
|
+
</Text>
|
|
34
|
+
<Text> The quick brown fox jumps over the lazy dog because he is quick </Text>
|
|
35
|
+
<Text size="lg">
|
|
36
|
+
The quick brown fox jumps over the lazy dog because he is quick
|
|
37
|
+
</Text>
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### `text`
|
|
41
|
+
|
|
42
|
+
```astro live
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
<Text text="The quick brown fox jumps over the lazy dog" />
|
|
48
|
+
```
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
_layout: doc
|
|
3
|
+
title: Textarea
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Textarea
|
|
7
|
+
|
|
8
|
+
import PropsTable from 'fulldev-ui/components/docs/PropsTable.astro'
|
|
9
|
+
|
|
10
|
+
```astro live
|
|
11
|
+
---
|
|
12
|
+
import Textarea from 'fulldev-ui/components/Textarea.astro'
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
<Textarea label="Message" name="message" placeholder="Enter your message.." />
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Props
|
|
19
|
+
|
|
20
|
+
<PropsTable />
|
|
21
|
+
|
|
22
|
+
## Examples
|
|
23
|
+
|
|
24
|
+
### `size`
|
|
25
|
+
|
|
26
|
+
```astro live
|
|
27
|
+
---
|
|
28
|
+
import Textarea from 'fulldev-ui/components/Textarea.astro'
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
<Textarea size="sm" label="Small" />
|
|
32
|
+
<Textarea size="md" label="Medium" />
|
|
33
|
+
<Textarea size="lg" label="Large" />
|
|
34
|
+
```
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
---
|
|
2
|
+
_layout: doc
|
|
3
|
+
title: Themer
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Themer
|
|
7
|
+
|
|
8
|
+
<aside>This component is experimental and likely to change</aside>
|
|
9
|
+
|
|
10
|
+
import PropsTable from 'fulldev-ui/components/docs/PropsTable.astro'
|
|
11
|
+
|
|
12
|
+
```astro live
|
|
13
|
+
---
|
|
14
|
+
import Themer from 'fulldev-ui/components/Themer.astro'
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
<Themer />
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Props
|
|
21
|
+
|
|
22
|
+
<PropsTable />
|
|
23
|
+
|
|
24
|
+
## Examples
|
|
25
|
+
|
|
26
|
+
### `variant`
|
|
27
|
+
|
|
28
|
+
```astro live
|
|
29
|
+
---
|
|
30
|
+
import Themer from 'fulldev-ui/components/Themer.astro'
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
<Themer variant="primary" />
|
|
34
|
+
<Themer variant="secondary" />
|
|
35
|
+
<Themer variant="outline" />
|
|
36
|
+
<Themer variant="ghost" />
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### `size`
|
|
40
|
+
|
|
41
|
+
```astro live
|
|
42
|
+
---
|
|
43
|
+
import Themer from 'fulldev-ui/components/Themer.astro'
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
<Themer size="sm" />
|
|
47
|
+
<Themer size="md" />
|
|
48
|
+
<Themer size="lg" />
|
|
49
|
+
```
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
_layout: doc
|
|
3
|
+
title: Components
|
|
4
|
+
description: Features shared across components.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Slots versus props
|
|
8
|
+
|
|
9
|
+
You can use either slots or props. Props are recommended as they are type safe and work better in combination with content collections.
|
|
10
|
+
|
|
11
|
+
Though, the following examples do the same thing.
|
|
12
|
+
|
|
13
|
+
```astro live
|
|
14
|
+
---
|
|
15
|
+
import Button from 'fulldev-ui/components/Button.astro'
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
<Button href="#">Click me</Button>
|
|
19
|
+
<Button href="#" text="Click me" />
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Conditional rendering
|
|
23
|
+
|
|
24
|
+
By default, if no content is passed to a component, it will **NOT** render anything. This helps optimize your code, especially when working with content collections.
|
|
25
|
+
|
|
26
|
+
You can override this default behavior using the `if` prop, which lets you control component rendering based on a truthy or falsy value.
|
|
27
|
+
|
|
28
|
+
```astro live
|
|
29
|
+
---
|
|
30
|
+
import Button from 'fulldev-ui/components/Button.astro'
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
<Button text="With content" />
|
|
34
|
+
<Button if={true} />
|
|
35
|
+
<Button if={false} />
|
|
36
|
+
<Button />
|
|
37
|
+
```
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
---
|
|
2
|
+
_layout: doc
|
|
3
|
+
title: Customization
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Customization
|
|
7
|
+
|
|
8
|
+
Customize styles and components.
|
|
9
|
+
|
|
10
|
+
## CSS Variables
|
|
11
|
+
|
|
12
|
+
While outputting 100% vanilla CSS, the underlying theming variables are based on - and therefore fully compatible with - the popular [Shadcn/ui](https://ui.shadcn.com/).
|
|
13
|
+
|
|
14
|
+
###### Default colors for backgrounds and text
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
--background: 0 0% 100%;
|
|
18
|
+
--foreground: 222.2 47.4% 11.2%;
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
###### Used for muted backgrounds and text
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
--muted: 210 40% 96.1%;
|
|
25
|
+
--muted-foreground: 215.4 16.3% 46.9%;
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
###### Used for `<Card/>` and other panels
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
--card: 0 0% 100%;
|
|
32
|
+
--card-foreground: 222.2 47.4% 11.2%;
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
###### Default border color
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
--border: 214.3 31.8% 91.4%;
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
###### Border color for inputs such as `<Input />`, `<Select />`, `<Textarea />`
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
--input: 214.3 31.8% 91.4%;
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
###### Primary colors for `<Button/>`
|
|
48
|
+
|
|
49
|
+
```
|
|
50
|
+
--primary: 222.2 47.4% 11.2%;
|
|
51
|
+
--primary-foreground: 210 40% 98%;
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
###### Secondary colors for `<Button/>`
|
|
55
|
+
|
|
56
|
+
```
|
|
57
|
+
--secondary: 210 40% 96.1%;
|
|
58
|
+
--secondary-foreground: 222.2 47.4% 11.2%;
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
###### Accent colors ghost and outline `<Button/>`
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
--accent: 210 40% 96.1%;
|
|
65
|
+
--accent-foreground: 222.2 47.4% 11.2%;
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
###### Used for focus ring
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
--ring: 215 20.2% 65.1%;
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
###### Border radius for cards, panels, input and buttons
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
--radius: 0.5rem;
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### Dark mode
|
|
81
|
+
|
|
82
|
+
Dark mode colors can be customized by adding them within the `.dark` class:
|
|
83
|
+
|
|
84
|
+
```css
|
|
85
|
+
:root {
|
|
86
|
+
/* Regular color go here */
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.dark {
|
|
90
|
+
/* Dark mode colors go here */
|
|
91
|
+
}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Overwriting styles
|
|
95
|
+
|
|
96
|
+
Components use simple CSS classes that match their names. For example:
|
|
97
|
+
|
|
98
|
+
- `<Button/>` uses the class `.button`
|
|
99
|
+
- `<Button variant="secondary"/>` adds `.variant-secondary`
|
|
100
|
+
- `<Card panel={true}/>` or `<Card panel />` adds `.panel`
|
|
101
|
+
|
|
102
|
+
### Using vanilla CSS
|
|
103
|
+
|
|
104
|
+
Write your own CSS wihtin an Astro component, or anywhere else in your project.
|
|
105
|
+
|
|
106
|
+
The plugin [postcss-nesting](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-nesting) is pre-installed so you can use the `&` operator to nest your styles.
|
|
107
|
+
|
|
108
|
+
```astro live
|
|
109
|
+
---
|
|
110
|
+
import Button from 'fulldev-ui/components/Button.astro'
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
<Button>Button</Button>
|
|
114
|
+
<Button variant="secondary">Secondary</Button>
|
|
115
|
+
|
|
116
|
+
<style>
|
|
117
|
+
.button {
|
|
118
|
+
border-radius: 999px;
|
|
119
|
+
|
|
120
|
+
&.variant-secondary {
|
|
121
|
+
border: 1px solid rgba(0, 0, 0, 0.3);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
</style>
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Using Tailwind
|
|
128
|
+
|
|
129
|
+
Using Tailwind is **completely optional**, but since all styles match Tailwind's utility values, they work seamlessly together.
|
|
130
|
+
|
|
131
|
+
Tailwind is pre-installed, so your can use either classes or the `@apply` directive out of the box.
|
|
132
|
+
|
|
133
|
+
```astro live
|
|
134
|
+
---
|
|
135
|
+
import Button from 'fulldev-ui/components/Button.astro'
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
<Button class="rounded-full">Button</Button>
|
|
139
|
+
|
|
140
|
+
<style>
|
|
141
|
+
.button {
|
|
142
|
+
@apply rounded-full;
|
|
143
|
+
}
|
|
144
|
+
</style>
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
## Customizing components
|
|
148
|
+
|
|
149
|
+
Components can be copied from the repository and customized, without breaking imports.
|
|
150
|
+
|
|
151
|
+
The repositiory is setup like a regular Astro project, so it easy to find your way around, as long as you have basic knowledge of Astro.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
_layout: doc
|
|
3
|
+
title: Frameworks
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Frameworks
|
|
7
|
+
|
|
8
|
+
Compatible with Shadcn/ui and other frameworks.
|
|
9
|
+
|
|
10
|
+
## Shadcn/ui
|
|
11
|
+
|
|
12
|
+
As detailed in the [customization documentation](/overview/customization/), Fulldev UI shares the same styling variables as Shadcn/ui, ensuring complete compatibility between the two libraries.
|
|
13
|
+
|
|
14
|
+
This means you can seamlessly integrate Shadcn/ui components alongside Fulldev UI components while maintaining consistent styling and behavior.
|
|
15
|
+
|
|
16
|
+
## Svelte, Vue React, etc.
|
|
17
|
+
|
|
18
|
+
While fulldev-ui is built with Tailwind CSS internally, all styles are converted to regular CSS classes using the `@apply` directive. This means all component styles are available globally through standard CSS classes.
|
|
19
|
+
|
|
20
|
+
You can use these component classes (like `button`, `variant-primary`, etc.) directly in any framework (Svelte, Vue, React, and all other frameworks), similar to how you would use other CSS frameworks like DaisyUI.
|
|
21
|
+
|
|
22
|
+
```astro live
|
|
23
|
+
---
|
|
24
|
+
import Button from 'fulldev-ui/components/Button.astro'
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
<button class="button size-md variant-primary">Button</button>
|
|
28
|
+
<Button>Button</Button>
|
|
29
|
+
```
|