fulldev-ui 0.6.0-beta.3 → 0.6.0-beta.6
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/astro.config.ts +1 -7
- package/cloudcannon.config.yml +269 -0
- package/package.json +1 -1
- package/src/blocks/Banner.astro +33 -0
- package/src/blocks/Colleagues1.astro +73 -0
- package/src/blocks/Contact1.astro +12 -4
- package/src/blocks/Content1.astro +79 -0
- package/src/blocks/Content2.astro +94 -0
- package/src/blocks/Content3.astro +70 -0
- package/src/blocks/Content4.astro +75 -0
- package/src/blocks/Cta1.astro +35 -34
- package/src/blocks/Feature1.astro +20 -26
- package/src/blocks/Features1.astro +66 -0
- package/src/blocks/Footer.astro +27 -52
- package/src/blocks/Header.astro +154 -0
- package/src/blocks/Hero1.astro +41 -41
- package/src/blocks/Intro1.astro +32 -18
- package/src/blocks/Jobs1.astro +73 -0
- package/src/blocks/Logos1.astro +55 -0
- package/src/blocks/Products1.astro +4 -4
- package/src/blocks/Reviews1.astro +79 -0
- package/src/components/Badges.astro +12 -35
- package/src/components/Block.astro +5 -24
- package/src/components/Button.astro +1 -2
- package/src/components/Buttons.astro +12 -43
- package/src/components/Cart.astro +6 -12
- package/src/components/Drawer.astro +1 -2
- package/src/components/Form.astro +3 -3
- package/src/components/Grid.astro +39 -0
- package/src/components/{Banner.astro → Group.astro} +5 -6
- package/src/components/Heading.astro +5 -1
- package/src/components/Icon.astro +0 -1
- package/src/components/Image.astro +15 -50
- package/src/components/Layout.astro +35 -0
- package/src/components/Links.astro +14 -35
- package/src/components/Logo.astro +5 -7
- package/src/components/Masonry.astro +42 -0
- package/src/components/Menu.astro +17 -38
- package/src/components/Menus.astro +20 -0
- package/src/components/Panel.astro +1 -1
- package/src/components/Paragraph.astro +8 -8
- package/src/components/Prose.astro +15 -7
- package/src/components/Search.astro +1 -1
- package/src/components/Section.astro +1 -1
- package/src/components/Sidebar.astro +11 -42
- package/src/components/Stack.astro +25 -0
- package/src/components/Tagline.astro +1 -1
- package/src/components/Toc.astro +22 -30
- package/src/components/Writeup.astro +59 -0
- package/src/components/_Image.astro +79 -0
- package/src/content/config.ts +2 -28
- package/src/content/layouts/base.yml +4 -3
- package/src/content/{docs → pages/docs}/_internationalization.mdx +1 -0
- package/src/content/{docs → pages/docs}/_using-blocks.mdx +1 -0
- package/src/content/{docs → pages/docs}/_using-presets.mdx +1 -0
- package/src/content/{docs → pages/docs}/blocks.mdx +1 -0
- package/src/content/{docs → pages/docs}/collections/images.mdx +1 -0
- package/src/content/{docs → pages/docs}/collections/pages.mdx +1 -0
- package/src/content/{docs → pages/docs}/collections/presets.mdx +1 -0
- package/src/content/{docs → pages/docs}/collections.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/_card.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/_dialog.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/_drawer.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/_localeswitcher.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/_switch.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/_tagline.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/_toggle.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/avatar.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/badge.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/badges.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/button.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/buttons.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/channel.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/channels.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/checkbox.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/code.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/heading.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/icon.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/image.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/input.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/label.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/link.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/links.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/list.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/logo.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/menu.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/prose.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/rating.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/section.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/select.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/social.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/socials.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/switch.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/table.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/tagline.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/text.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/textarea.mdx +1 -0
- package/src/content/{docs → pages/docs}/components/themer.mdx +1 -0
- package/src/content/{docs → pages/docs}/components.mdx +1 -0
- package/src/content/{docs → pages/docs}/customization.mdx +1 -0
- package/src/content/{docs → pages/docs}/frameworks.mdx +1 -0
- package/src/content/{docs → pages/docs}/generating-pages.mdx +1 -0
- package/src/content/{docs → pages/docs}/index.mdx +1 -0
- package/src/content/{docs → pages/docs}/installation.mdx +1 -0
- package/src/content/{docs → pages/docs}/layouts.mdx +1 -0
- package/src/content/pages/index.mdx +3 -3
- package/src/content/{products → pages/products}/product.md +2 -2
- package/src/integration/index.ts +38 -16
- package/src/layouts/{CategoryLayout.astro → Category.astro} +19 -20
- package/src/layouts/Doc.astro +70 -0
- package/src/layouts/Job.astro +62 -0
- package/src/layouts/Jobs.astro +72 -0
- package/src/layouts/Page.astro +29 -0
- package/src/layouts/Post.astro +52 -0
- package/src/layouts/{ProductLayout.astro → Product.astro} +20 -11
- package/src/pages/[...page].astro +36 -4
- package/src/pages/test.astro +25 -1
- package/src/schemas/components/block.ts +58 -15
- package/src/schemas/components/button.ts +1 -0
- package/src/schemas/components/image.ts +32 -18
- package/src/schemas/components/menu.ts +1 -0
- package/src/schemas/imageSchema.ts +3 -3
- package/src/schemas/page.ts +40 -0
- package/src/utils/getHref.ts +4 -21
- package/tailwind.config.ts +4 -0
- package/src/blocks/Banner1.astro +0 -35
- package/src/blocks/Header1.astro +0 -192
- package/src/content/layouts/docs.yml +0 -2
- package/src/layouts/DocLayout.astro +0 -59
- package/src/layouts/Layout.astro +0 -107
- package/src/layouts/PageLayout.astro +0 -27
- package/src/layouts/PostLayout.astro +0 -22
- package/src/pages/[...category].astro +0 -17
- package/src/pages/[...doc].astro +0 -17
- package/src/pages/[...post].astro +0 -17
- package/src/pages/[...product].astro +0 -17
- package/src/schemas/blocks/banner.ts +0 -10
- package/src/schemas/blocks/categories.ts +0 -14
- package/src/schemas/blocks/contact.ts +0 -18
- package/src/schemas/blocks/cta.ts +0 -18
- package/src/schemas/blocks/feature.ts +0 -18
- package/src/schemas/blocks/hero.ts +0 -20
- package/src/schemas/blocks/intro.ts +0 -16
- package/src/schemas/blocks/products.ts +0 -14
- package/src/schemas/categorySchema.ts +0 -16
- package/src/schemas/docSchema.ts +0 -14
- package/src/schemas/layoutSchema.ts +0 -22
- package/src/schemas/pageSchema.ts +0 -17
- package/src/schemas/postSchema.ts +0 -14
- package/src/schemas/productSchema.ts +0 -22
- /package/src/content/{categories → pages/categories}/category.md +0 -0
- /package/src/content/{posts → pages/posts}/post.md +0 -0
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
import type { CollectionEntry } from 'astro:content'
|
|
3
|
-
import { getEntry } from 'astro:content'
|
|
4
|
-
import Prose from 'fulldev-ui/components/Prose.astro'
|
|
5
|
-
import Layout from 'fulldev-ui/layouts/Layout.astro'
|
|
6
|
-
import { mergeDeep } from 'remeda'
|
|
7
|
-
|
|
8
|
-
type Props = CollectionEntry<'posts'>
|
|
9
|
-
|
|
10
|
-
const layout = await getEntry('layouts', 'posts')
|
|
11
|
-
const merged = mergeDeep(layout || {}, Astro.props)
|
|
12
|
-
|
|
13
|
-
const { render } = merged
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
<Layout {...merged}>
|
|
17
|
-
<Prose
|
|
18
|
-
{render}
|
|
19
|
-
toc={true}
|
|
20
|
-
/>
|
|
21
|
-
<slot />
|
|
22
|
-
</Layout>
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
import { getCollection } from 'astro:content'
|
|
3
|
-
import CategoryLayout from 'fulldev-ui/layouts/CategoryLayout.astro'
|
|
4
|
-
import { getHref } from 'fulldev-ui/utils/getHref.ts'
|
|
5
|
-
|
|
6
|
-
export async function getStaticPaths() {
|
|
7
|
-
const collection = await getCollection('categories')
|
|
8
|
-
return collection.map((entry) => ({
|
|
9
|
-
params: {
|
|
10
|
-
category: getHref(entry.collection, entry.slug),
|
|
11
|
-
},
|
|
12
|
-
props: entry,
|
|
13
|
-
}))
|
|
14
|
-
}
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
<CategoryLayout {...Astro.props} />
|
package/src/pages/[...doc].astro
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
import { getCollection } from 'astro:content'
|
|
3
|
-
import DocLayout from 'fulldev-ui/layouts/DocLayout.astro'
|
|
4
|
-
import { getHref } from 'fulldev-ui/utils/getHref.ts'
|
|
5
|
-
|
|
6
|
-
export async function getStaticPaths() {
|
|
7
|
-
const collection = await getCollection('docs')
|
|
8
|
-
return collection.map((entry) => ({
|
|
9
|
-
params: {
|
|
10
|
-
doc: getHref(entry.collection, entry.slug),
|
|
11
|
-
},
|
|
12
|
-
props: entry,
|
|
13
|
-
}))
|
|
14
|
-
}
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
<DocLayout {...Astro.props} />
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
import { getCollection } from 'astro:content'
|
|
3
|
-
import PostLayout from 'fulldev-ui/layouts/PostLayout.astro'
|
|
4
|
-
import { getHref } from 'fulldev-ui/utils/getHref.ts'
|
|
5
|
-
|
|
6
|
-
export async function getStaticPaths() {
|
|
7
|
-
const collection = await getCollection('posts')
|
|
8
|
-
return collection.map((entry) => ({
|
|
9
|
-
params: {
|
|
10
|
-
post: getHref(entry.collection, entry.slug),
|
|
11
|
-
},
|
|
12
|
-
props: entry,
|
|
13
|
-
}))
|
|
14
|
-
}
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
<PostLayout {...Astro.props} />
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
import { getCollection } from 'astro:content'
|
|
3
|
-
import ProductLayout from 'fulldev-ui/layouts/ProductLayout.astro'
|
|
4
|
-
import { getHref } from 'fulldev-ui/utils/getHref.ts'
|
|
5
|
-
|
|
6
|
-
export async function getStaticPaths() {
|
|
7
|
-
const collection = await getCollection('products')
|
|
8
|
-
return collection.map((entry) => ({
|
|
9
|
-
params: {
|
|
10
|
-
product: getHref(entry.collection, entry.slug),
|
|
11
|
-
},
|
|
12
|
-
props: entry,
|
|
13
|
-
}))
|
|
14
|
-
}
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
<ProductLayout {...Astro.props} />
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { z } from 'astro:content'
|
|
2
|
-
|
|
3
|
-
export const bannerSchema = z.preprocess(
|
|
4
|
-
(data: unknown) => (typeof data === 'string' ? { text: data } : data),
|
|
5
|
-
z.object({
|
|
6
|
-
text: z.string().optional(),
|
|
7
|
-
})
|
|
8
|
-
)
|
|
9
|
-
|
|
10
|
-
export type BannerSchema = z.infer<typeof bannerSchema>
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { z } from 'astro:content'
|
|
2
|
-
import { buttonSchema } from 'fulldev-ui/schemas/components/button.ts'
|
|
3
|
-
import { headingSchema } from '../components/heading'
|
|
4
|
-
import pathSchema from '../utils/pathSchema'
|
|
5
|
-
|
|
6
|
-
export const categoriesSchema = z
|
|
7
|
-
.object({
|
|
8
|
-
heading: headingSchema.shape.text,
|
|
9
|
-
button: buttonSchema.optional(),
|
|
10
|
-
categories: pathSchema('categories').array().optional(),
|
|
11
|
-
})
|
|
12
|
-
.strict()
|
|
13
|
-
|
|
14
|
-
export type CategoriesSchema = z.infer<typeof categoriesSchema>
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { z } from 'astro:content'
|
|
2
|
-
import { headingSchema } from 'fulldev-ui/schemas/components/heading'
|
|
3
|
-
import { taglineSchema } from 'fulldev-ui/schemas/components/tagline'
|
|
4
|
-
import { channelSchema } from '../components/channel'
|
|
5
|
-
import { paragraphSchema } from '../components/paragraph'
|
|
6
|
-
import { socialSchema } from '../components/social'
|
|
7
|
-
|
|
8
|
-
export const contactSchema = z
|
|
9
|
-
.object({
|
|
10
|
-
tagline: taglineSchema.shape.text,
|
|
11
|
-
heading: headingSchema.shape.text,
|
|
12
|
-
paragraph: paragraphSchema.shape.text,
|
|
13
|
-
channels: channelSchema.array().optional(),
|
|
14
|
-
socials: socialSchema.shape.href.array().optional(),
|
|
15
|
-
})
|
|
16
|
-
.strict()
|
|
17
|
-
|
|
18
|
-
export type ContactSchema = z.infer<typeof contactSchema>
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { z } from 'astro:content'
|
|
2
|
-
import { buttonSchema } from 'fulldev-ui/schemas/components/button.ts'
|
|
3
|
-
import { imageSchema } from 'fulldev-ui/schemas/components/image.ts'
|
|
4
|
-
import { headingSchema } from '../components/heading'
|
|
5
|
-
import { paragraphSchema } from '../components/paragraph'
|
|
6
|
-
import { taglineSchema } from '../components/tagline'
|
|
7
|
-
|
|
8
|
-
export const ctaSchema = z
|
|
9
|
-
.object({
|
|
10
|
-
tagline: taglineSchema.shape.text,
|
|
11
|
-
heading: headingSchema.shape.text,
|
|
12
|
-
paragraph: paragraphSchema.shape.text,
|
|
13
|
-
buttons: buttonSchema.array().optional(),
|
|
14
|
-
image: imageSchema.optional(),
|
|
15
|
-
})
|
|
16
|
-
.strict()
|
|
17
|
-
|
|
18
|
-
export type CtaSchema = z.infer<typeof ctaSchema>
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { z } from 'astro:content'
|
|
2
|
-
import { buttonSchema } from 'fulldev-ui/schemas/components/button.ts'
|
|
3
|
-
import { imageSchema } from 'fulldev-ui/schemas/components/image.ts'
|
|
4
|
-
import { headingSchema } from '../components/heading'
|
|
5
|
-
import { paragraphSchema } from '../components/paragraph'
|
|
6
|
-
import { taglineSchema } from '../components/tagline'
|
|
7
|
-
|
|
8
|
-
export const featureSchema = z
|
|
9
|
-
.object({
|
|
10
|
-
tagline: taglineSchema.shape.text,
|
|
11
|
-
heading: headingSchema.shape.text,
|
|
12
|
-
paragraph: paragraphSchema.shape.text,
|
|
13
|
-
buttons: buttonSchema.array().optional(),
|
|
14
|
-
image: imageSchema.optional(),
|
|
15
|
-
})
|
|
16
|
-
.strict()
|
|
17
|
-
|
|
18
|
-
export type FeatureSchema = z.infer<typeof featureSchema>
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { z } from 'astro:content'
|
|
2
|
-
import { badgeSchema } from 'fulldev-ui/schemas/components/badge.ts'
|
|
3
|
-
import { buttonSchema } from 'fulldev-ui/schemas/components/button.ts'
|
|
4
|
-
import { headingSchema } from 'fulldev-ui/schemas/components/heading'
|
|
5
|
-
import { imageSchema } from 'fulldev-ui/schemas/components/image.ts'
|
|
6
|
-
import { taglineSchema } from 'fulldev-ui/schemas/components/tagline'
|
|
7
|
-
import { paragraphSchema } from '../components/paragraph'
|
|
8
|
-
|
|
9
|
-
export const heroSchema = z
|
|
10
|
-
.object({
|
|
11
|
-
badge: badgeSchema.optional(),
|
|
12
|
-
tagline: taglineSchema.shape.text,
|
|
13
|
-
heading: headingSchema.shape.text,
|
|
14
|
-
paragraph: paragraphSchema.shape.text,
|
|
15
|
-
buttons: buttonSchema.array().optional(),
|
|
16
|
-
image: imageSchema.optional(),
|
|
17
|
-
})
|
|
18
|
-
.strict()
|
|
19
|
-
|
|
20
|
-
export type HeroSchema = z.infer<typeof heroSchema>
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { z } from 'astro:content'
|
|
2
|
-
import { buttonSchema } from 'fulldev-ui/schemas/components/button.ts'
|
|
3
|
-
import { headingSchema } from 'fulldev-ui/schemas/components/heading'
|
|
4
|
-
import { taglineSchema } from 'fulldev-ui/schemas/components/tagline'
|
|
5
|
-
import { paragraphSchema } from '../components/paragraph'
|
|
6
|
-
|
|
7
|
-
export const introSchema = z
|
|
8
|
-
.object({
|
|
9
|
-
tagline: taglineSchema.shape.text,
|
|
10
|
-
heading: headingSchema.shape.text,
|
|
11
|
-
paragraph: paragraphSchema.shape.text,
|
|
12
|
-
buttons: buttonSchema.array().optional(),
|
|
13
|
-
})
|
|
14
|
-
.strict()
|
|
15
|
-
|
|
16
|
-
export type IntroSchema = z.infer<typeof introSchema>
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { z } from 'astro:content'
|
|
2
|
-
import { buttonSchema } from 'fulldev-ui/schemas/components/button.ts'
|
|
3
|
-
import { headingSchema } from 'fulldev-ui/schemas/components/heading'
|
|
4
|
-
import pathSchema from '../utils/pathSchema'
|
|
5
|
-
|
|
6
|
-
export const productsSchema = z
|
|
7
|
-
.object({
|
|
8
|
-
heading: headingSchema.shape.text,
|
|
9
|
-
button: buttonSchema.optional(),
|
|
10
|
-
products: pathSchema('products').array().optional(),
|
|
11
|
-
})
|
|
12
|
-
.strict()
|
|
13
|
-
|
|
14
|
-
export type ProductsSchema = z.infer<typeof productsSchema>
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { z } from 'astro:content'
|
|
2
|
-
import { headSchema } from 'fulldev-ui/schemas/components/head.ts'
|
|
3
|
-
import { imageSchema } from 'fulldev-ui/schemas/components/image.ts'
|
|
4
|
-
import pathSchema from 'fulldev-ui/schemas/utils/pathSchema.ts'
|
|
5
|
-
|
|
6
|
-
export const categorySchema = z
|
|
7
|
-
.object({
|
|
8
|
-
title: z.string().optional(),
|
|
9
|
-
description: z.string().optional(),
|
|
10
|
-
image: imageSchema.optional(),
|
|
11
|
-
categories: pathSchema('categories').array().optional(),
|
|
12
|
-
head: headSchema.optional(),
|
|
13
|
-
})
|
|
14
|
-
.strict()
|
|
15
|
-
|
|
16
|
-
export type CategorySchema = z.infer<typeof categorySchema>
|
package/src/schemas/docSchema.ts
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { z } from 'astro:content'
|
|
2
|
-
import { headSchema } from 'fulldev-ui/schemas/components/head.ts'
|
|
3
|
-
import { imageSchema } from './imageSchema'
|
|
4
|
-
|
|
5
|
-
export const docSchema = z
|
|
6
|
-
.object({
|
|
7
|
-
title: z.string().optional(),
|
|
8
|
-
description: z.string().optional(),
|
|
9
|
-
image: imageSchema.optional(),
|
|
10
|
-
head: headSchema.optional(),
|
|
11
|
-
})
|
|
12
|
-
.strict()
|
|
13
|
-
|
|
14
|
-
export type DocSchema = z.infer<typeof docSchema>
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { z } from 'astro:content'
|
|
2
|
-
import { footerSchema } from 'fulldev-ui/schemas/components/footer'
|
|
3
|
-
import { headSchema } from 'fulldev-ui/schemas/components/head.ts'
|
|
4
|
-
import { headerSchema } from 'fulldev-ui/schemas/components/header'
|
|
5
|
-
import { linkSchema } from 'fulldev-ui/schemas/components/link.ts'
|
|
6
|
-
import { sidebarSchema } from 'fulldev-ui/schemas/components/sidebar'
|
|
7
|
-
import { bannerSchema } from './blocks/banner'
|
|
8
|
-
import { navigationSchema } from './components/navigation'
|
|
9
|
-
|
|
10
|
-
export const layoutSchema = z
|
|
11
|
-
.object({
|
|
12
|
-
head: headSchema.optional(),
|
|
13
|
-
banner: bannerSchema.optional(),
|
|
14
|
-
navigation: navigationSchema.optional(),
|
|
15
|
-
header: headerSchema.optional(),
|
|
16
|
-
subheader: linkSchema.array().optional(),
|
|
17
|
-
sidebar: sidebarSchema.optional(),
|
|
18
|
-
footer: footerSchema.optional(),
|
|
19
|
-
})
|
|
20
|
-
.strict()
|
|
21
|
-
|
|
22
|
-
export type LayoutSchema = z.infer<typeof layoutSchema>
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { z } from 'astro:content'
|
|
2
|
-
import { blockSchema } from 'fulldev-ui/schemas/components/block.ts'
|
|
3
|
-
import { headSchema } from 'fulldev-ui/schemas/components/head.ts'
|
|
4
|
-
import { imageSchema } from 'fulldev-ui/schemas/components/image.ts'
|
|
5
|
-
|
|
6
|
-
export const pageSchema = z
|
|
7
|
-
.object({
|
|
8
|
-
href: z.string().optional(),
|
|
9
|
-
title: z.string().optional(),
|
|
10
|
-
description: z.string().optional(),
|
|
11
|
-
image: imageSchema.optional(),
|
|
12
|
-
head: headSchema.optional(),
|
|
13
|
-
blocks: blockSchema.array().optional(),
|
|
14
|
-
})
|
|
15
|
-
.strict()
|
|
16
|
-
|
|
17
|
-
export type PageSchema = z.infer<typeof pageSchema>
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { z } from 'astro:content'
|
|
2
|
-
import { headSchema } from 'fulldev-ui/schemas/components/head.ts'
|
|
3
|
-
import { imageSchema } from 'fulldev-ui/schemas/components/image.ts'
|
|
4
|
-
|
|
5
|
-
export const postSchema = z
|
|
6
|
-
.object({
|
|
7
|
-
title: z.string().optional(),
|
|
8
|
-
description: z.string().optional(),
|
|
9
|
-
image: imageSchema.optional(),
|
|
10
|
-
head: headSchema.optional(),
|
|
11
|
-
})
|
|
12
|
-
.strict()
|
|
13
|
-
|
|
14
|
-
export type PostSchema = z.infer<typeof postSchema>
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { z } from 'astro:content'
|
|
2
|
-
import { headSchema } from 'fulldev-ui/schemas/components/head.ts'
|
|
3
|
-
import { imageSchema } from 'fulldev-ui/schemas/components/image.ts'
|
|
4
|
-
import pathSchema from 'fulldev-ui/schemas/utils/pathSchema.ts'
|
|
5
|
-
import { priceSchema } from './components/price'
|
|
6
|
-
|
|
7
|
-
export const productSchema = z
|
|
8
|
-
.object({
|
|
9
|
-
title: z.string().optional(),
|
|
10
|
-
description: z.string().optional(),
|
|
11
|
-
image: imageSchema.optional(),
|
|
12
|
-
order: z.number().optional(),
|
|
13
|
-
price: priceSchema.shape.amount,
|
|
14
|
-
categories: pathSchema('categories').array().optional(),
|
|
15
|
-
images: imageSchema.array().optional(),
|
|
16
|
-
head: headSchema.optional(),
|
|
17
|
-
variants: z.record(z.string(), z.string().array()).optional(),
|
|
18
|
-
soldout: z.boolean().optional(),
|
|
19
|
-
})
|
|
20
|
-
.strict()
|
|
21
|
-
|
|
22
|
-
export type ProductSchema = z.infer<typeof productSchema>
|
|
File without changes
|
|
File without changes
|