fulldev-ui 0.6.0-beta.7 → 0.6.0-beta.9

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 (330) hide show
  1. package/.vscode/settings.json +2 -0
  2. package/astro.config.ts +1 -3
  3. package/cloudcannon.config.yml +22 -59
  4. package/package.json +1 -1
  5. package/src/blocks/Banner.astro +3 -3
  6. package/src/blocks/Colleagues1.astro +16 -16
  7. package/src/blocks/Contact1.astro +5 -10
  8. package/src/blocks/Content1.astro +22 -39
  9. package/src/blocks/Content2.astro +21 -45
  10. package/src/blocks/Content3.astro +36 -31
  11. package/src/blocks/Content4.astro +28 -35
  12. package/src/blocks/Content5.astro +72 -0
  13. package/src/blocks/Cta1.astro +6 -6
  14. package/src/blocks/Features1.astro +9 -5
  15. package/src/blocks/Footer.astro +13 -5
  16. package/src/blocks/Header.astro +19 -15
  17. package/src/blocks/Hero1.astro +8 -5
  18. package/src/blocks/Industries1.astro +86 -0
  19. package/src/blocks/Intro1.astro +7 -9
  20. package/src/blocks/Jobs1.astro +28 -24
  21. package/src/blocks/Logos1.astro +4 -4
  22. package/src/blocks/Products1.astro +4 -4
  23. package/src/blocks/Projects1.astro +103 -0
  24. package/src/blocks/Reviews1.astro +9 -7
  25. package/src/{components → blocks}/Subheader.astro +1 -2
  26. package/src/components/Badge.astro +8 -20
  27. package/src/components/Badges.astro +3 -3
  28. package/src/components/Block.astro +1 -1
  29. package/src/components/Button.astro +9 -18
  30. package/src/components/Cart.astro +6 -6
  31. package/src/components/CartSummary.astro +1 -0
  32. package/src/components/Channel.astro +9 -3
  33. package/src/components/Channels.astro +11 -42
  34. package/src/components/Checkbox.astro +8 -14
  35. package/src/components/Element.astro +2 -1
  36. package/src/components/Form.astro +1 -2
  37. package/src/components/Gallery.astro +6 -5
  38. package/src/components/Head.astro +14 -4
  39. package/src/components/Heading.astro +21 -17
  40. package/src/components/Icon.astro +2 -3
  41. package/src/components/Image.astro +6 -2
  42. package/src/components/Input.astro +11 -14
  43. package/src/components/Label.astro +6 -6
  44. package/src/components/Link.astro +13 -16
  45. package/src/components/Links.astro +1 -2
  46. package/src/components/List.astro +3 -5
  47. package/src/components/Logo.astro +9 -16
  48. package/src/components/Menu.astro +7 -3
  49. package/src/components/Paragraph.astro +6 -7
  50. package/src/components/Price.astro +1 -4
  51. package/src/components/Rating.astro +4 -2
  52. package/src/components/Search.astro +1 -6
  53. package/src/components/Select.astro +3 -4
  54. package/src/components/Sidebar.astro +6 -6
  55. package/src/components/Social.astro +3 -1
  56. package/src/components/Socials.astro +18 -34
  57. package/src/components/Switch.astro +4 -69
  58. package/src/components/Table.astro +2 -3
  59. package/src/components/Tagline.astro +6 -7
  60. package/src/components/Textarea.astro +5 -5
  61. package/src/components/Themer.astro +3 -3
  62. package/src/components/Toc.astro +7 -11
  63. package/src/components/Toggle.astro +45 -0
  64. package/src/components/{Breadcrumb.astro → _Breadcrumb.astro} +3 -3
  65. package/src/components/_Image.astro +2 -2
  66. package/src/components/docs/Props.astro +21 -0
  67. package/src/content/layouts/base.yml +131 -19
  68. package/src/content/pages/base/toggle.mdx +28 -0
  69. package/src/content/pages/{blocks → docs/blocks}/banner.mdx +1 -0
  70. package/src/content/pages/docs/blocks/colleagues.mdx +49 -0
  71. package/src/content/pages/docs/blocks/content.mdx +155 -0
  72. package/src/content/pages/docs/blocks/cta.mdx +16 -0
  73. package/src/content/pages/docs/blocks/feature.mdx +17 -0
  74. package/src/content/pages/docs/blocks/features.mdx +35 -0
  75. package/src/content/pages/docs/blocks/footer.mdx +46 -0
  76. package/src/content/pages/docs/blocks/header.mdx +60 -0
  77. package/src/content/pages/docs/blocks/hero.mdx +18 -0
  78. package/src/content/pages/docs/blocks/intro.mdx +16 -0
  79. package/src/content/pages/docs/blocks/logos.mdx +37 -0
  80. package/src/content/pages/docs/blocks/projects.mdx +36 -0
  81. package/src/content/pages/docs/blocks/reviews.mdx +65 -0
  82. package/src/content/pages/docs/blocks.mdx +45 -20
  83. package/src/content/pages/docs/collections/pages.mdx +2 -2
  84. package/src/content/pages/docs/components/{table.mdx → _table.mdx} +2 -4
  85. package/src/content/pages/docs/components/{themer.mdx → _themer.mdx} +2 -4
  86. package/src/content/pages/docs/components/_toggle.mdx +2 -2
  87. package/src/content/pages/docs/components/badge.mdx +2 -4
  88. package/src/content/pages/docs/components/badges.mdx +3 -4
  89. package/src/content/pages/docs/components/button.mdx +2 -4
  90. package/src/content/pages/docs/components/buttons.mdx +3 -4
  91. package/src/content/pages/docs/components/channel.mdx +2 -4
  92. package/src/content/pages/docs/components/channels.mdx +3 -2
  93. package/src/content/pages/docs/components/checkbox.mdx +2 -4
  94. package/src/content/pages/docs/components/heading.mdx +11 -21
  95. package/src/content/pages/docs/components/icon.mdx +2 -4
  96. package/src/content/pages/docs/components/image.mdx +3 -9
  97. package/src/content/pages/docs/components/input.mdx +2 -4
  98. package/src/content/pages/docs/components/label.mdx +2 -4
  99. package/src/content/pages/docs/components/link.mdx +2 -4
  100. package/src/content/pages/docs/components/links.mdx +3 -4
  101. package/src/content/pages/docs/components/list.mdx +2 -4
  102. package/src/content/pages/docs/components/logo.mdx +9 -21
  103. package/src/content/pages/docs/components/menu.mdx +20 -48
  104. package/src/content/pages/docs/components/paragraph.mdx +44 -0
  105. package/src/content/pages/docs/components/rating.mdx +9 -42
  106. package/src/content/pages/docs/components/select.mdx +2 -4
  107. package/src/content/pages/docs/components/social.mdx +2 -4
  108. package/src/content/pages/docs/components/socials.mdx +3 -2
  109. package/src/content/pages/docs/components/switch.mdx +2 -4
  110. package/src/content/pages/docs/components/tagline.mdx +2 -6
  111. package/src/content/pages/docs/components/textarea.mdx +2 -4
  112. package/src/content/pages/docs/components.mdx +3 -4
  113. package/src/content/pages/docs/customization.mdx +52 -20
  114. package/src/content/pages/docs/frameworks.mdx +12 -11
  115. package/src/content/pages/docs/index.mdx +3 -2
  116. package/src/content/pages/docs/installation.mdx +9 -6
  117. package/src/content/pages/docs/layouts/doc.mdx +15 -0
  118. package/src/content/pages/docs/layouts/page.mdx +15 -0
  119. package/src/content/pages/docs/layouts.mdx +66 -19
  120. package/src/content/pages/docs/{generating-pages.mdx → pages.mdx} +1 -0
  121. package/src/content/pages/docs/{components → structures}/_card.mdx +6 -6
  122. package/src/content/pages/docs/{components → structures}/_drawer.mdx +1 -1
  123. package/src/content/pages/docs/structures/card.mdx +15 -0
  124. package/src/content/pages/docs/{components → structures}/code.mdx +4 -7
  125. package/src/content/pages/docs/structures/container.mdx +15 -0
  126. package/src/content/pages/docs/structures/drawer.mdx +15 -0
  127. package/src/content/pages/docs/structures/group.mdx +15 -0
  128. package/src/content/pages/docs/structures/layout.mdx +15 -0
  129. package/src/content/pages/docs/structures/masonry.mdx +15 -0
  130. package/src/content/pages/docs/structures/matrix.mdx +15 -0
  131. package/src/content/pages/docs/structures/panel.mdx +15 -0
  132. package/src/content/pages/docs/{components → structures}/prose.mdx +3 -6
  133. package/src/content/pages/docs/structures/section.mdx +15 -0
  134. package/src/content/pages/docs/structures/stack.mdx +15 -0
  135. package/src/content/pages/docs/structures/writeup.mdx +15 -0
  136. package/src/content/pages/docs/structures.mdx +7 -0
  137. package/src/content/pages/index.mdx +7 -4
  138. package/src/content/pages/showcase.mdx +1 -4
  139. package/src/css/theme.css +9 -42
  140. package/src/integration/index.ts +1 -1
  141. package/src/layouts/Block.astro +81 -0
  142. package/src/layouts/Category.astro +6 -6
  143. package/src/layouts/Doc.astro +50 -24
  144. package/src/layouts/Job.astro +5 -5
  145. package/src/layouts/Jobs.astro +14 -14
  146. package/src/layouts/Page.astro +4 -4
  147. package/src/layouts/Post.astro +7 -6
  148. package/src/layouts/Product.astro +3 -2
  149. package/src/schemas/badge.ts +14 -0
  150. package/src/schemas/block.ts +58 -0
  151. package/src/schemas/{components/button.ts → button.ts} +3 -7
  152. package/src/schemas/channel.ts +14 -0
  153. package/src/schemas/checkbox.ts +13 -0
  154. package/src/schemas/footer.ts +17 -0
  155. package/src/schemas/{components/head.ts → head.ts} +5 -5
  156. package/src/schemas/header.ts +21 -0
  157. package/src/schemas/{components/image.ts → image.ts} +22 -9
  158. package/src/schemas/input.ts +13 -0
  159. package/src/schemas/link.ts +14 -0
  160. package/src/schemas/logo.ts +13 -0
  161. package/src/schemas/menu.ts +11 -0
  162. package/src/schemas/page.ts +11 -14
  163. package/src/schemas/{utils/pathSchema.ts → path.ts} +1 -1
  164. package/src/schemas/textarea.ts +11 -0
  165. package/src/{components → structures}/Card.astro +5 -1
  166. package/src/{components → structures}/Code.astro +7 -6
  167. package/src/{components → structures}/Container.astro +1 -1
  168. package/src/{components → structures}/Drawer.astro +4 -4
  169. package/src/{components → structures}/Layout.astro +2 -3
  170. package/src/structures/Matrix.astro +39 -0
  171. package/src/{components → structures}/Prose.astro +17 -6
  172. package/src/structures/Sidebar.astro +37 -0
  173. package/src/{components → structures}/Stack.astro +1 -1
  174. package/src/{components → structures}/Writeup.astro +9 -1
  175. package/src/structures/_Bento.astro +34 -0
  176. package/src/utils/cart.ts +1 -1
  177. package/tailwind.config.ts +5 -7
  178. package/tsconfig.json +3 -1
  179. package/public/favicon/favicon-16x16-dark.png +0 -0
  180. package/public/favicon/favicon-32x32-dark.png +0 -0
  181. package/public/favicon/favicon-48x48-dark.png +0 -0
  182. package/public/favicon/favicon-dark.ico +0 -0
  183. package/src/blocks/Feature1.astro +0 -61
  184. package/src/components/Avatar.astro +0 -45
  185. package/src/components/Avatars.astro +0 -36
  186. package/src/components/Cards.astro +0 -133
  187. package/src/components/Dialog.astro +0 -67
  188. package/src/components/DrawerOld.astro +0 -143
  189. package/src/components/Grid.astro +0 -39
  190. package/src/components/Header.astro +0 -32
  191. package/src/components/Navigation.astro +0 -39
  192. package/src/components/_Author.astro +0 -90
  193. package/src/components/_Header.astro +0 -129
  194. package/src/components/_Prose copy.astro +0 -172
  195. package/src/components/_Sidebar copy.astro +0 -87
  196. package/src/components/docs/DecorativeBox.astro +0 -15
  197. package/src/components/docs/PropsTable.astro +0 -49
  198. package/src/components/experimental/Video.astro +0 -32
  199. package/src/components/experimental/Window.astro +0 -122
  200. package/src/content/pages/blocks/_footer.mdx +0 -75
  201. package/src/content/pages/blocks/_header.mdx +0 -183
  202. package/src/content/pages/blocks/_prices.mdx +0 -122
  203. package/src/content/pages/blocks/_product.mdx +0 -97
  204. package/src/content/pages/blocks/_products.mdx +0 -52
  205. package/src/content/pages/blocks/colleagues.mdx +0 -37
  206. package/src/content/pages/blocks/content.mdx +0 -77
  207. package/src/content/pages/blocks/cta.mdx +0 -159
  208. package/src/content/pages/blocks/features.mdx +0 -128
  209. package/src/content/pages/blocks/hero.mdx +0 -94
  210. package/src/content/pages/blocks/intro.mdx +0 -124
  211. package/src/content/pages/blocks/reviews.mdx +0 -251
  212. package/src/content/pages/categories/category.md +0 -7
  213. package/src/content/pages/docs/_internationalization.mdx +0 -55
  214. package/src/content/pages/docs/_using-blocks.mdx +0 -33
  215. package/src/content/pages/docs/_using-presets.mdx +0 -49
  216. package/src/content/pages/docs/collections.mdx +0 -42
  217. package/src/content/pages/docs/components/_switch.mdx +0 -31
  218. package/src/content/pages/docs/components/avatar.mdx +0 -34
  219. package/src/content/pages/docs/components/section.mdx +0 -35
  220. package/src/content/pages/docs/components/text.mdx +0 -48
  221. package/src/content/pages/products/product.md +0 -20
  222. package/src/css/color.css +0 -76
  223. package/src/css/size.css +0 -131
  224. package/src/images/favicon/android-chrome-192x192.png +0 -0
  225. package/src/images/favicon/android-chrome-512x512.png +0 -0
  226. package/src/images/favicon/apple-touch-icon.png +0 -0
  227. package/src/images/favicon/browserconfig.xml +0 -9
  228. package/src/images/favicon/favicon-16x16.png +0 -0
  229. package/src/images/favicon/favicon-32x32.png +0 -0
  230. package/src/images/favicon/favicon-48x48.png +0 -0
  231. package/src/images/favicon/favicon.ico +0 -0
  232. package/src/images/favicon/favicon.svg +0 -16
  233. package/src/images/favicon/manifest.webmanifest +0 -30
  234. package/src/images/favicon/mstile-150x150.png +0 -0
  235. package/src/images/favicon/safari-pinned-tab.svg +0 -16
  236. package/src/images/favicon/yandex-browser-50x50.png +0 -0
  237. package/src/images/favicon/yandex-browser-manifest.json +0 -9
  238. package/src/pages/test.astro +0 -35
  239. package/src/schemas/components/avatar.ts +0 -6
  240. package/src/schemas/components/badge.ts +0 -18
  241. package/src/schemas/components/block.ts +0 -61
  242. package/src/schemas/components/channel.ts +0 -19
  243. package/src/schemas/components/footer.ts +0 -19
  244. package/src/schemas/components/header.ts +0 -23
  245. package/src/schemas/components/heading.ts +0 -9
  246. package/src/schemas/components/icon.ts +0 -9
  247. package/src/schemas/components/link.ts +0 -17
  248. package/src/schemas/components/logo.ts +0 -13
  249. package/src/schemas/components/menu.ts +0 -14
  250. package/src/schemas/components/navigation.ts +0 -10
  251. package/src/schemas/components/paragraph.ts +0 -9
  252. package/src/schemas/components/price.ts +0 -9
  253. package/src/schemas/components/rating.ts +0 -10
  254. package/src/schemas/components/sidebar.ts +0 -18
  255. package/src/schemas/components/social.ts +0 -18
  256. package/src/schemas/components/tagline.ts +0 -9
  257. package/src/schemas/imageSchema.ts +0 -41
  258. package/src/schemas/utils/component.ts +0 -17
  259. package/src/types/global-props.ts +0 -7
  260. package/src/utils/_archive/Childmorphic.ts +0 -8
  261. package/src/utils/_archive/getAllCollections.ts +0 -10
  262. package/src/utils/_archive/getCollectionCascade.ts +0 -33
  263. package/src/utils/_archive/getPathname.ts +0 -18
  264. package/src/utils/_archive/mergeEntries.ts +0 -28
  265. package/src/utils/_archive/staticPageSchema.ts +0 -124
  266. package/src/utils/_archive/transform/transform.ts +0 -25
  267. package/src/utils/_archive/transform/transformCasing.ts +0 -24
  268. package/src/utils/_archive/transform/transformReferences.ts +0 -54
  269. package/src/utils/_archive/transform/transformSelfs.ts +0 -20
  270. package/src/utils/_archive/transform/transformUnderscores.ts +0 -19
  271. package/src/utils/formatEntries.ts +0 -8
  272. package/src/utils/formatEntry.ts +0 -29
  273. package/src/utils/getDeepReferenceChildren.ts +0 -14
  274. package/src/utils/getFolderChildren.ts +0 -18
  275. package/src/utils/getReferenceChildren.ts +0 -14
  276. package/src/utils/getSiblingPages.ts +0 -14
  277. package/src/utils/setTheme.ts +0 -18
  278. /package/{src → public}/images/anti-slip-profiles.webp +0 -0
  279. /package/{src → public}/images/avatar-1.jpeg +0 -0
  280. /package/{src → public}/images/avatar-2.jpeg +0 -0
  281. /package/{src → public}/images/avatar-3.jpeg +0 -0
  282. /package/{src → public}/images/avatar-4.jpeg +0 -0
  283. /package/{src → public}/images/avatar-placeholder.jpg +0 -0
  284. /package/{src → public}/images/block-code.png +0 -0
  285. /package/{src → public}/images/component-code.png +0 -0
  286. /package/{src → public}/images/favicon.svg +0 -0
  287. /package/{src → public}/images/fulldev-ui.webp +0 -0
  288. /package/{src → public}/images/lavis-detailing.webp +0 -0
  289. /package/{src → public}/images/leren-trainingsacteren.webp +0 -0
  290. /package/{src → public}/images/logo-1.svg +0 -0
  291. /package/{src → public}/images/logo-2.svg +0 -0
  292. /package/{src → public}/images/logo-basic.svg +0 -0
  293. /package/{src → public}/images/logo-simple.svg +0 -0
  294. /package/{src → public}/images/logo-thin.svg +0 -0
  295. /package/{src → public}/images/logo.svg +0 -0
  296. /package/{src → public}/images/logofat.svg +0 -0
  297. /package/{src → public}/images/miele-witgoedcenter-amsterdam.webp +0 -0
  298. /package/{src → public}/images/og-image.png +0 -0
  299. /package/{src → public}/images/placeholder-center.webp +0 -0
  300. /package/{src → public}/images/placeholder-landscape-dark.png +0 -0
  301. /package/{src → public}/images/placeholder-landscape.webp +0 -0
  302. /package/{src → public}/images/placeholder-portrait.webp +0 -0
  303. /package/{src → public}/images/placeholder-right.webp +0 -0
  304. /package/{src → public}/images/placeholder.webp +0 -0
  305. /package/{src → public}/images/sloepverhuur-bolsward.webp +0 -0
  306. /package/{src → public}/images/stark-vulcanising-products.webp +0 -0
  307. /package/{src → public}/images/the-gym-haren.webp +0 -0
  308. /package/{src → public}/images/van-dillen-antieke-bouwmaterialen.webp +0 -0
  309. /package/src/components/{LocaleSwitcher.astro → _LocaleSwitcher.astro} +0 -0
  310. /package/src/content/pages/{showcase → _showcase}/anti-slip-profiles.md +0 -0
  311. /package/src/content/pages/{showcase → _showcase}/fulldev-ui.md +0 -0
  312. /package/src/content/pages/{showcase → _showcase}/lavis-detailing.md +0 -0
  313. /package/src/content/pages/{showcase → _showcase}/leren-trainingsacteren.md +0 -0
  314. /package/src/content/pages/{showcase → _showcase}/miele-witgoedcenter-amsterdam.md +0 -0
  315. /package/src/content/pages/{showcase → _showcase}/sloepverhuur-bolsward.md +0 -0
  316. /package/src/content/pages/{showcase → _showcase}/stark-vulcanising-products.md +0 -0
  317. /package/src/content/pages/{showcase → _showcase}/the-gym-haren.md +0 -0
  318. /package/src/content/pages/{showcase → _showcase}/van-dillen-antieke-bouwmaterialen.md +0 -0
  319. /package/src/content/pages/{blocks → docs/blocks}/_categories.mdx +0 -0
  320. /package/src/content/pages/{blocks/contact.mdx → docs/blocks/_contact.mdx} +0 -0
  321. /package/src/content/pages/{blocks → docs/blocks}/_jobs.mdx +0 -0
  322. /package/src/content/pages/{blocks/posts.mdx → docs/blocks/_posts.mdx} +0 -0
  323. /package/src/content/pages/{blocks → docs/blocks}/_stats.mdx +0 -0
  324. /package/src/content/pages/docs/{components → structures}/_dialog.mdx +0 -0
  325. /package/src/{components → structures}/Carousel.astro +0 -0
  326. /package/src/{components → structures}/Group.astro +0 -0
  327. /package/src/{components → structures}/Masonry.astro +0 -0
  328. /package/src/{components → structures}/Panel.astro +0 -0
  329. /package/src/{components → structures}/Section.astro +0 -0
  330. /package/{src/types/virtual.d.ts → virtual.d.ts} +0 -0
@@ -3,14 +3,14 @@ import type { MarkdownHeading } from 'astro'
3
3
  import type { HTMLAttributes } from 'astro/types'
4
4
  import Element from 'fulldev-ui/components/Element.astro'
5
5
  import Heading from 'fulldev-ui/components/Heading.astro'
6
- import type { GlobalProps } from 'fulldev-ui/types/global-props'
7
- import Link from './Link.astro'
6
+ import Link from 'fulldev-ui/components/Link.astro'
8
7
 
9
- interface Props extends GlobalProps, HTMLAttributes<'div'> {
8
+ interface Props extends HTMLAttributes<'div'> {
10
9
  headings?: MarkdownHeading[] | undefined
10
+ heading?: string | undefined
11
11
  }
12
12
 
13
- const { headings, ...rest } = Astro.props
13
+ const { headings, heading, ...rest } = Astro.props
14
14
 
15
15
  const filteredHeadings = headings?.filter(
16
16
  (heading: any) => heading.depth >= 2 && heading.depth <= 4
@@ -27,14 +27,10 @@ const links = filteredHeadings?.map((button: any) => ({
27
27
 
28
28
  <Element
29
29
  class:list="toc"
30
- if={filteredHeadings?.length}
30
+ show={filteredHeadings?.length}
31
31
  {...rest}
32
32
  >
33
- <Heading
34
- as="a"
35
- href="#"
36
- {...h1}
37
- />
33
+ <Heading text={h1?.text || heading} />
38
34
  {
39
35
  links?.map((link) => (
40
36
  <Link
@@ -49,7 +45,7 @@ const links = filteredHeadings?.map((button: any) => ({
49
45
  <style is:global>
50
46
  @layer fulldev {
51
47
  .toc {
52
- @apply lg:top-sticky-16 sticky bottom-0 z-10 hidden w-48 shrink-0 flex-col items-start justify-start gap-3 overflow-y-auto md:flex;
48
+ @apply sticky bottom-0 top-sticky-16 z-10 hidden w-48 shrink-0 flex-col items-start justify-start gap-3 overflow-y-auto md:flex;
53
49
  @apply scrollbar scrollbar-track-transparent scrollbar-thumb-accent scrollbar-thumb-rounded-full scrollbar-w-2 hover:scrollbar-thumb-accent-hover;
54
50
 
55
51
  .depth-3 {
@@ -0,0 +1,45 @@
1
+ ---
2
+ import type { Polymorphic } from 'astro/types'
3
+ import { uid } from 'radash'
4
+ import Button from './Button.astro'
5
+
6
+ type Props<As extends 'label'> = Polymorphic<{ as: As }> & {
7
+ color?: 'base' | 'brand' | undefined
8
+ id?: string | undefined
9
+ name?: string | undefined
10
+ icon?: string | undefined
11
+ html?: string | undefined
12
+ text?: string | undefined
13
+ toggled: boolean | undefined
14
+ }
15
+
16
+ const { id = uid(7), toggled, name, ...rest } = Astro.props
17
+ ---
18
+
19
+ <input
20
+ class="toggle-checkbox"
21
+ checked={toggled}
22
+ type="checkbox"
23
+ id={id}
24
+ name={name ?? id}
25
+ />
26
+
27
+ <Button
28
+ class:list="toggle"
29
+ variant="tertiary"
30
+ as="label"
31
+ for={id}
32
+ {...rest}
33
+ />
34
+
35
+ <style is:global>
36
+ @layer fulldev {
37
+ .toggle-checkbox {
38
+ @apply hidden;
39
+
40
+ &:checked + .toggle {
41
+ @apply bg-accent text-foreground;
42
+ }
43
+ }
44
+ }
45
+ </style>
@@ -1,5 +1,5 @@
1
- ---
2
- import type { HTMLAttributes, HTMLTag } from 'astro/types'
1
+ <!-- ---
2
+ import type { HTMLAttributes,HTMLTag } from 'astro/types'
3
3
  import type { CollectionEntry } from 'astro:content'
4
4
  import Element from 'fulldev-ui/components/Element.astro'
5
5
  import Icon from 'fulldev-ui/components/Icon.astro'
@@ -55,4 +55,4 @@ const { size = 'sm', slug, ...rest } = Astro.props
55
55
  }
56
56
  }
57
57
  }
58
- </style>
58
+ </style> -->
@@ -1,4 +1,4 @@
1
- ---
1
+ <!-- ---
2
2
  // @ts-nocheck
3
3
  import type { ImageMetadata } from 'astro'
4
4
  import type { HTMLAttributes } from 'astro/types'
@@ -76,4 +76,4 @@ const image = images[src as keyof typeof images]
76
76
  }
77
77
  }
78
78
  }
79
- </style>
79
+ </style> -->
@@ -0,0 +1,21 @@
1
+ ---
2
+ import Link from 'fulldev-ui/components/Link.astro'
3
+
4
+ const slug = Astro.params.page
5
+ const folder = slug?.split('/').slice(-2, -1)[0]
6
+ const component = slug
7
+ ?.split('/')
8
+ .pop()
9
+ ?.replace(/^\w/, (c) => c.toUpperCase())
10
+ const path = `src/${folder}/${component}.astro`
11
+ ---
12
+
13
+ <p>
14
+ Please reference
15
+ <Link
16
+ target="_blank"
17
+ href={`https://github.com/fulldotdev/ui/blob/main/${path}`}
18
+ >
19
+ {path}
20
+ </Link> for now.
21
+ </p>
@@ -1,6 +1,7 @@
1
1
  head:
2
2
  title: Fulldev UI - Astro component and block library, open-source
3
- image: /images/og-image.png
3
+ image:
4
+ src: /images/og-image.png
4
5
  theme: system
5
6
  code: |
6
7
  <script is:inline>
@@ -14,18 +15,22 @@ banner:
14
15
 
15
16
  header:
16
17
  search: true
18
+ themer: true
17
19
  logo:
18
- image: /src/images/favicon/android-chrome-512x512.png
20
+ image:
21
+ src: /favicon/android-chrome-512x512.png
19
22
  text: Fulldev UI
20
23
  links:
21
24
  - text: Docs
22
25
  href: /docs/
23
26
  - text: Components
24
27
  href: /docs/components/badge/
28
+ - text: Structures
29
+ href: /docs/structures/container/
25
30
  - text: Blocks
26
31
  href: /docs/blocks/banner/
27
- - text: Showcase
28
- href: /showcase/
32
+ - text: Layouts
33
+ href: /docs/layouts/page/
29
34
  socials:
30
35
  - https://github.com/fulldotdev/ui
31
36
  - https://discord.gg/vXZqMbadm8
@@ -40,24 +45,131 @@ sidebar:
40
45
  href: /docs/installation/
41
46
  - text: Customization
42
47
  href: /docs/customization/
43
- - text: Frameworks
48
+ - text: Integrating frameworks
44
49
  href: /docs/frameworks/
45
- - text: Components
50
+ - text: Using components
46
51
  href: /docs/components/
47
- - text: Collections
48
- href: /docs/collections/
52
+ - text: Using structures
53
+ href: /docs/structures/
54
+ - text: Using blocks
55
+ href: /docs/blocks/
56
+ - text: Using layouts
57
+ href: /docs/layouts/
49
58
 
50
- footer:
51
- logo:
52
- text: Fulldev UI
53
- menus:
54
- - heading: Docs
59
+ - heading: Components
55
60
  links:
56
- - text: Docs
57
- href: /docs/
58
- - text: Components
61
+ - text: Badge
59
62
  href: /docs/components/badge/
60
- - text: Blocks
63
+ - text: Badges
64
+ href: /docs/components/badges/
65
+ - text: Button
66
+ href: /docs/components/button/
67
+ - text: Buttons
68
+ href: /docs/components/buttons/
69
+ - text: Channel
70
+ href: /docs/components/channel/
71
+ - text: Channels
72
+ href: /docs/components/channels/
73
+ - text: Checkbox
74
+ href: /docs/components/checkbox/
75
+ - text: Heading
76
+ href: /docs/components/heading/
77
+ - text: Icon
78
+ href: /docs/components/icon/
79
+ - text: Image
80
+ href: /docs/components/image/
81
+ - text: Input
82
+ href: /docs/components/input/
83
+ - text: Label
84
+ href: /docs/components/label/
85
+ - text: Link
86
+ href: /docs/components/link/
87
+ - text: Links
88
+ href: /docs/components/links/
89
+ - text: List
90
+ href: /docs/components/list/
91
+ - text: Logo
92
+ href: /docs/components/logo/
93
+ - text: Menu
94
+ href: /docs/components/menu/
95
+ - text: Paragraph
96
+ href: /docs/components/paragraph/
97
+ - text: Rating
98
+ href: /docs/components/rating/
99
+ - text: Select
100
+ href: /docs/components/select/
101
+ - text: Social
102
+ href: /docs/components/social/
103
+ - text: Socials
104
+ href: /docs/components/socials/
105
+ - text: Switch
106
+ href: /docs/components/switch/
107
+ - text: Tagline
108
+ href: /docs/components/tagline/
109
+ - text: Textarea
110
+ href: /docs/components/textarea/
111
+
112
+ - heading: Structures
113
+ links:
114
+ - text: Container
115
+ href: /docs/structures/container/
116
+ - text: Section
117
+ href: /docs/structures/section/
118
+ - text: Card
119
+ href: /docs/structures/card/
120
+ - text: Matrix
121
+ href: /docs/structures/matrix/
122
+ - text: Stack
123
+ href: /docs/structures/stack/
124
+ - text: Group
125
+ href: /docs/structures/group/
126
+ - text: Masonry
127
+ href: /docs/structures/masonry/
128
+ - text: Prose
129
+ href: /docs/structures/prose/
130
+ - text: Writeup
131
+ href: /docs/structures/writeup/
132
+ - text: Layout
133
+ href: /docs/structures/layout/
134
+ - text: Code
135
+ href: /docs/structures/code/
136
+ - text: Drawer
137
+ href: /docs/structures/drawer/
138
+ - text: Panel
139
+ href: /docs/structures/panel/
140
+
141
+ - heading: Blocks
142
+ links:
143
+ - text: Banner
61
144
  href: /docs/blocks/banner/
62
- - text: Showcase
63
- href: /showcase/
145
+ - text: Colleagues
146
+ href: /docs/blocks/colleagues/
147
+ - text: Content
148
+ href: /docs/blocks/content/
149
+ - text: Cta
150
+ href: /docs/blocks/cta/
151
+ - text: Feature
152
+ href: /docs/blocks/feature/
153
+ - text: Features
154
+ href: /docs/blocks/features/
155
+ - text: Footer
156
+ href: /docs/blocks/footer/
157
+ - text: Header
158
+ href: /docs/blocks/header/
159
+ - text: Hero
160
+ href: /docs/blocks/hero/
161
+ - text: Intro
162
+ href: /docs/blocks/intro/
163
+ - text: Logos
164
+ href: /docs/blocks/logos/
165
+ - text: Reviews
166
+ href: /docs/blocks/reviews/
167
+ - text: Projects
168
+ href: /docs/blocks/projects/
169
+
170
+ - heading: Layouts
171
+ links:
172
+ - text: Doc
173
+ href: /docs/layouts/doc/
174
+ - text: Page
175
+ href: /docs/layouts/page/
@@ -0,0 +1,28 @@
1
+ ---
2
+ _layout: doc
3
+ title: Toggle
4
+ ---
5
+
6
+ import Props from 'fulldev-ui/components/docs/Props.astro'
7
+
8
+ ```astro live
9
+ ---
10
+ import Toggle from 'fulldev-ui/components/Toggle.astro'
11
+ ---
12
+
13
+ <Toggle text="Click me" icon="click" />
14
+ ```
15
+
16
+ ## Props
17
+
18
+ <Props />
19
+
20
+ ## Examples
21
+
22
+ ```astro live
23
+ ---
24
+ import Toggle from 'fulldev-ui/components/Toggle.astro'
25
+ ---
26
+
27
+ <Toggle icon={'code'} text="Auto save" toggled={true} />
28
+ ```
@@ -1,4 +1,5 @@
1
1
  ---
2
+ _layout: block
2
3
  title: Banner
3
4
  ---
4
5
 
@@ -0,0 +1,49 @@
1
+ ---
2
+ _layout: block
3
+ title: Colleagues
4
+ ---
5
+
6
+ ```astro live
7
+ ---
8
+ import Colleagues1 from 'fulldev-ui/blocks/Colleagues1.astro'
9
+ ---
10
+
11
+ <Colleagues1
12
+ heading="Meet the team"
13
+ paragraph="Our team is made up of experienced professionals."
14
+ cards={[
15
+ {
16
+ image: {
17
+ src: '/images/avatar-1.jpeg',
18
+ alt: 'John Doe',
19
+ },
20
+ heading: 'John Doe',
21
+ paragraph: 'Ceo & Founder',
22
+ },
23
+ {
24
+ image: {
25
+ src: '/images/avatar-2.jpeg',
26
+ alt: 'Jane Doe',
27
+ },
28
+ heading: 'Jane Doe',
29
+ paragraph: 'Manager',
30
+ },
31
+ {
32
+ image: {
33
+ src: '/images/avatar-3.jpeg',
34
+ alt: 'John Smith',
35
+ },
36
+ heading: 'John Smith',
37
+ paragraph: 'Developer',
38
+ },
39
+ {
40
+ image: {
41
+ src: '/images/avatar-4.jpeg',
42
+ alt: 'Jane Smith',
43
+ },
44
+ heading: 'Jane Smith',
45
+ paragraph: 'Developer',
46
+ },
47
+ ]}
48
+ />
49
+ ```
@@ -0,0 +1,155 @@
1
+ ---
2
+ _layout: block
3
+ title: Content
4
+ ---
5
+
6
+ ## Content1
7
+
8
+ ```astro live
9
+ ---
10
+ import Content1 from 'fulldev-ui/blocks/Content1.astro'
11
+ ---
12
+
13
+ <Content1
14
+ tagline="Lorem ipsum"
15
+ heading="Lorem ipsum dolor sit"
16
+ paragraph="Lorem ipsum dolor sit amet consectetur adipisicing elit. Voluptatibus quia, nulla! Maiores et perferendis eaque, exercitationem praesentium nihil."
17
+ buttons={[{ text: 'Lorem ipsum' }, { text: 'Lorem ipsum' }]}
18
+ image={{ src: '/images/placeholder-landscape.webp' }}
19
+ content=`
20
+ <h3>HTML Content Example</h3>
21
+ <p>This is an example of HTML content inserted into the Content block.</p>
22
+ <ul>
23
+ <li>First item</li>
24
+ <li>Second item</li>
25
+ <li>Third item</li>
26
+ </ul>
27
+ `
28
+ />
29
+ ```
30
+
31
+ ## Content2
32
+
33
+ ```astro live
34
+ ---
35
+ import Content2 from 'fulldev-ui/blocks/Content2.astro'
36
+ ---
37
+
38
+ <Content2
39
+ tagline="Lorem ipsum"
40
+ heading="Lorem ipsum dolor sit"
41
+ paragraph="Lorem ipsum dolor sit amet consectetur adipisicing elit. Voluptatibus quia, nulla! Maiores et perferendis eaque, exercitationem praesentium nihil."
42
+ buttons={[{ text: 'Lorem ipsum' }, { text: 'Lorem ipsum' }]}
43
+ image={{ src: '/images/placeholder-landscape.webp' }}
44
+ content=`
45
+ <h3>HTML Content Example</h3>
46
+ <p>This is an example of HTML content inserted into the Content2 block. It demonstrates how you can use HTML to structure your content within the block.</p>
47
+ <ul>
48
+ <li>First item</li>
49
+ <li>Second item</li>
50
+ <li>Third item</li>
51
+ <li>Fourth item</li>
52
+ <li>Fifth item</li>
53
+ </ul>
54
+ <p>Adding more content to make it longer. You can include various HTML elements such as headings, paragraphs, lists, images, and more to enrich your content.</p>
55
+ <p>Here is another paragraph to further extend the content. This allows you to provide more information and details within the Content2 block.</p>
56
+ `
57
+ />
58
+ ```
59
+
60
+ ## Content3
61
+
62
+ ```astro live
63
+ ---
64
+ import Content3 from 'fulldev-ui/blocks/Content3.astro'
65
+ ---
66
+
67
+ <Content3
68
+ tagline="Lorem ipsum"
69
+ heading="Lorem ipsum dolor sit"
70
+ paragraph="Lorem ipsum dolor sit amet consectetur adipisicing elit. Voluptatibus quia, nulla! Maiores et perferendis eaque, exercitationem praesentium nihil."
71
+ buttons={[{ text: 'Lorem ipsum' }, { text: 'Lorem ipsum' }]}
72
+ image={{ src: '/images/placeholder-landscape.webp' }}
73
+ content=`
74
+ <h3>HTML Content Example</h3>
75
+ <p>This is an example of HTML content inserted into the Content2 block. It demonstrates how you can use HTML to structure your content within the block.</p>
76
+ <ul>
77
+ <li>First item</li>
78
+ <li>Second item</li>
79
+ <li>Third item</li>
80
+ <li>Fourth item</li>
81
+ <li>Fifth item</li>
82
+ </ul>
83
+ <p>Adding more content to make it longer. You can include various HTML elements such as headings, paragraphs, lists, images, and more to enrich your content.</p>
84
+ <p>Here is another paragraph to further extend the content. This allows you to provide more information and details within the Content2 block.</p>
85
+ `
86
+ />
87
+ ```
88
+
89
+ ## Content4
90
+
91
+ ```astro live
92
+ ---
93
+ import Content4 from 'fulldev-ui/blocks/Content4.astro'
94
+ ---
95
+
96
+ <Content4
97
+ tagline="Lorem ipsum"
98
+ heading="Lorem ipsum dolor sit"
99
+ paragraph="Lorem ipsum dolor sit amet consectetur adipisicing elit. Voluptatibus quia, nulla! Maiores et perferendis eaque, exercitationem praesentium nihil."
100
+ buttons={[{ text: 'Lorem ipsum' }, { text: 'Lorem ipsum' }]}
101
+ image={{ src: '/images/placeholder-landscape.webp' }}
102
+ content=`
103
+ <p>
104
+ This is an example of HTML content inserted into the Content4 block. Lorem
105
+ ipsum dolor sit amet consectetur adipisicing elit. Voluptatibus quia, nulla!
106
+ Maiores et perferendis eaque, exercitationem praesentium nihil. Lorem ipsum
107
+ dolor sit amet consectetur adipisicing elit. Praesent sapien massa,
108
+ convallis a pellentesque nec, egestas non nisi. Donec rutrum congue leo eget
109
+ malesuada.
110
+ </p>
111
+ <p>
112
+ This is an example of HTML content inserted into the Content4 block. Lorem
113
+ ipsum dolor sit amet consectetur adipisicing elit. Voluptatibus quia, nulla!
114
+ Maiores et perferendis eaque, exercitationem praesentium nihil. Lorem ipsum
115
+ dolor sit amet consectetur adipisicing elit. Praesent sapien massa,
116
+ convallis a pellentesque nec, egestas non nisi. Donec rutrum congue leo eget
117
+ malesuada.
118
+ </p>
119
+ `
120
+ />
121
+ ```
122
+
123
+ ## Content5
124
+
125
+ ```astro live
126
+ ---
127
+ import Content5 from 'fulldev-ui/blocks/Content5.astro'
128
+ ---
129
+
130
+ <Content5
131
+ tagline="Lorem ipsum"
132
+ heading="Lorem ipsum dolor sit"
133
+ paragraph="Lorem ipsum dolor sit amet consectetur adipisicing elit. Voluptatibus quia, nulla! Maiores et perferendis eaque, exercitationem praesentium nihil."
134
+ buttons={[{ text: 'Lorem ipsum' }, { text: 'Lorem ipsum' }]}
135
+ image={{ src: '/images/placeholder-landscape.webp' }}
136
+ content=`
137
+ <p>
138
+ This is an example of HTML content inserted into the Content4 block. Lorem
139
+ ipsum dolor sit amet consectetur adipisicing elit. Voluptatibus quia, nulla!
140
+ Maiores et perferendis eaque, exercitationem praesentium nihil. Lorem ipsum
141
+ dolor sit amet consectetur adipisicing elit. Praesent sapien massa,
142
+ convallis a pellentesque nec, egestas non nisi. Donec rutrum congue leo eget
143
+ malesuada.
144
+ </p>
145
+ <p>
146
+ This is an example of HTML content inserted into the Content4 block. Lorem
147
+ ipsum dolor sit amet consectetur adipisicing elit. Voluptatibus quia, nulla!
148
+ Maiores et perferendis eaque, exercitationem praesentium nihil. Lorem ipsum
149
+ dolor sit amet consectetur adipisicing elit. Praesent sapien massa,
150
+ convallis a pellentesque nec, egestas non nisi. Donec rutrum congue leo eget
151
+ malesuada.
152
+ </p>
153
+ `
154
+ />
155
+ ```
@@ -0,0 +1,16 @@
1
+ ---
2
+ _layout: block
3
+ title: Cta
4
+ ---
5
+
6
+ ```astro live
7
+ ---
8
+ import Cta1 from 'fulldev-ui/blocks/Cta1.astro'
9
+ ---
10
+
11
+ <Cta1
12
+ heading="Lorem ipsum dolor sit"
13
+ paragraph="Lorem ipsum dolor sit amet consectetur ades"
14
+ buttons={[{ text: 'Lorem ipsum' }, { text: 'Lorem ipsum' }]}
15
+ />
16
+ ```
@@ -0,0 +1,17 @@
1
+ ---
2
+ _layout: block
3
+ title: Feature
4
+ ---
5
+
6
+ ```astro live
7
+ ---
8
+ import Feature1 from 'fulldev-ui/blocks/Feature1.astro'
9
+ ---
10
+
11
+ <Feature1
12
+ heading="Lorem ipsum dolor sit"
13
+ paragraph="Lorem ipsum dolor sit amet consectetur ades"
14
+ buttons={[{ text: 'Lorem ipsum' }, { text: 'Lorem ipsum' }]}
15
+ image={{ src: '/images/placeholder-landscape.webp' }}
16
+ />
17
+ ```
@@ -0,0 +1,35 @@
1
+ ---
2
+ _layout: block
3
+ title: Features
4
+ ---
5
+
6
+ ```astro live
7
+ ---
8
+ import Features1 from 'fulldev-ui/blocks/Features1.astro'
9
+ ---
10
+
11
+ <Features1
12
+ heading="Lorem ipsum dolor sit"
13
+ paragraph="Lorem ipsum dolor sit amet consectetur adipisicing elit."
14
+ cards={[
15
+ {
16
+ icon: 'rocket',
17
+ heading: 'Lorem ipsum',
18
+ paragraph: 'Lorem ipsum dolor sit amet consectetur adipisicing elit.',
19
+ button: { text: 'Lorem ipsum', href: '' },
20
+ },
21
+ {
22
+ icon: 'pencil',
23
+ heading: 'Lorem ipsum',
24
+ paragraph: 'Lorem ipsum dolor sit amet consectetur adipisicing elit.',
25
+ button: { text: 'Lorem ipsum', href: '' },
26
+ },
27
+ {
28
+ icon: 'typography',
29
+ heading: 'Lorem ipsum',
30
+ paragraph: 'Lorem ipsum dolor sit amet consectetur adipisicing elit.',
31
+ button: { text: 'Lorem ipsum', href: '' },
32
+ },
33
+ ]}
34
+ />
35
+ ```
@@ -0,0 +1,46 @@
1
+ ---
2
+ _layout: block
3
+ title: Footer
4
+ ---
5
+
6
+ ```astro live
7
+ ---
8
+ import Footer from 'fulldev-ui/blocks/Footer.astro'
9
+ ---
10
+
11
+ <Footer
12
+ logo={{
13
+ image: { src: '/favicon/android-chrome-512x512.png' },
14
+ text: 'Fulldev UI',
15
+ }}
16
+ paragraph="Rapidly build content-driven websites."
17
+ socials={[
18
+ 'https://github.com/fulldotdev/ui',
19
+ 'https://discord.gg/vXZqMbadm8',
20
+ ]}
21
+ channels={[
22
+ { heading: 'Email', icon: 'mail', text: 'contact@full.dev' },
23
+ { heading: 'Phone', icon: 'phone', text: '+316 83485163' },
24
+ ]}
25
+ menus={[
26
+ {
27
+ heading: 'Get Started',
28
+ links: [
29
+ { href: '/docs/', text: 'Introduction' },
30
+ { href: '/docs/installation/', text: 'Installation' },
31
+ { href: '/docs/customization/', text: 'Customization' },
32
+ { href: '/docs/frameworks/', text: 'Frameworks' },
33
+ ],
34
+ },
35
+ {
36
+ heading: 'Docs',
37
+ links: [
38
+ { href: '/docs/components/badge/', text: 'Components' },
39
+ { href: '/docs/structures/Container/', text: 'Wrappers' },
40
+ { href: '/docs/blocks/banner/', text: 'Blocks' },
41
+ { href: '/docs/layouts/page/', text: 'Layouts' },
42
+ ],
43
+ },
44
+ ]}
45
+ />
46
+ ```