dune-react 0.0.32 → 0.0.33

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 (50) hide show
  1. package/dist/components/puck-block/footer-sections/centered-minimal-footer/index.d.ts +11 -0
  2. package/dist/components/puck-block/footer-sections/centered-minimal-footer/index.js +1 -0
  3. package/dist/components/puck-block/footer-sections/compact-newsletter-footer/index.d.ts +11 -0
  4. package/dist/components/puck-block/footer-sections/contact-links-footer/index.d.ts +11 -0
  5. package/dist/components/puck-block/footer-sections/contact-links-footer/index.js +1 -1
  6. package/dist/components/puck-block/footer-sections/cta-links-footer/index.d.ts +11 -0
  7. package/dist/components/puck-block/footer-sections/cta-links-footer/index.js +1 -1
  8. package/dist/components/puck-block/footer-sections/links-newsletter-footer/index.d.ts +11 -0
  9. package/dist/components/puck-block/footer-sections/newsletter-links-footer/index.d.ts +11 -0
  10. package/dist/components/puck-block/footer-sections/newsletter-top-links-footer/index.d.ts +11 -0
  11. package/dist/components/puck-block/header-sections/centered-navbar/index.d.ts +11 -0
  12. package/dist/components/puck-block/header-sections/centered-navbar/index.js +1 -0
  13. package/dist/components/puck-block/header-sections/drawer-navbar/index.d.ts +11 -0
  14. package/dist/components/puck-block/header-sections/drawer-navbar/index.js +1 -1
  15. package/dist/components/puck-block/header-sections/floating-bordered-navbar/index.d.ts +11 -0
  16. package/dist/components/puck-block/header-sections/floating-bordered-navbar/index.js +1 -1
  17. package/dist/components/puck-block/header-sections/fullscreen-overlay-navbar/index.d.ts +11 -0
  18. package/dist/components/puck-block/header-sections/fullscreen-overlay-navbar/index.js +1 -1
  19. package/dist/components/puck-block/header-sections/mega-menu-navbar/index.d.ts +11 -0
  20. package/dist/components/puck-block/header-sections/mega-menu-navbar/index.js +1 -1
  21. package/dist/components/puck-block/header-sections/standard-navbar/index.d.ts +11 -0
  22. package/dist/components/puck-block/header-sections/standard-navbar/index.js +1 -0
  23. package/dist/components/puck-block/hero-sections/tab-hero/component.js +1 -0
  24. package/dist/components/puck-block/hero-sections/tab-hero/index.d.ts +3 -6
  25. package/dist/components/puck-block/hero-sections/tab-hero/index.js +2 -7
  26. package/dist/components/puck-block/pricing-sections/pricing-comparison-table/component.js +13 -0
  27. package/dist/components/puck-block/pricing-sections/split-pricing/component.js +2 -1
  28. package/dist/components/puck-block/registry.generated.d.ts +102 -6
  29. package/dist/components/puck-core/core/puck-fields-to-zod.d.ts +40 -0
  30. package/dist/components/puck-core/core/puck-fields-to-zod.js +113 -0
  31. package/dist/components/puck-core/index.d.ts +1 -0
  32. package/dist/index.js +3 -0
  33. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/errors.js +44 -0
  34. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/iso.js +43 -0
  35. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/parse.js +29 -0
  36. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/schemas.js +665 -0
  37. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/api.js +569 -0
  38. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/checks.js +410 -0
  39. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/core.js +74 -0
  40. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/doc.js +37 -0
  41. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/errors.js +72 -0
  42. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/json-schema-processors.js +314 -0
  43. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/parse.js +95 -0
  44. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/regexes.js +81 -0
  45. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/registries.js +51 -0
  46. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/schemas.js +1345 -0
  47. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/to-json-schema.js +362 -0
  48. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/util.js +430 -0
  49. package/dist/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/versions.js +8 -0
  50. package/package.json +3 -2
@@ -4,6 +4,17 @@ export { CenteredMinimalFooter, CenteredMinimalFooterDefaults };
4
4
  export type { CenteredMinimalFooterProps };
5
5
  declare const conf: {
6
6
  fields: {
7
+ __metadata: {
8
+ type: string;
9
+ ai: {
10
+ instructions: string;
11
+ };
12
+ objectFields: {
13
+ type: {
14
+ type: string;
15
+ };
16
+ };
17
+ };
7
18
  logo: {
8
19
  type: "object";
9
20
  objectFields: {
@@ -3,6 +3,7 @@ import { mediaField } from "../../../puck-core/core/props/media.js";
3
3
  import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
4
4
  const conf = {
5
5
  fields: {
6
+ __metadata: { type: "object", ai: { instructions: "Layout metadata identifying this component as a footer section. The type field must always be 'footer'." }, objectFields: { type: { type: "text" } } },
6
7
  logo: mediaField,
7
8
  columnLinks: {
8
9
  type: "array",
@@ -4,6 +4,17 @@ export { CompactNewsletterFooter, CompactNewsletterFooterDefaults };
4
4
  export type { CompactNewsletterFooterProps };
5
5
  declare const conf: {
6
6
  fields: {
7
+ __metadata: {
8
+ type: string;
9
+ ai: {
10
+ instructions: string;
11
+ };
12
+ objectFields: {
13
+ type: {
14
+ type: string;
15
+ };
16
+ };
17
+ };
7
18
  logo: {
8
19
  type: "object";
9
20
  objectFields: {
@@ -4,6 +4,17 @@ export { ContactLinksFooter, ContactLinksFooterDefaults };
4
4
  export type { ContactLinksFooterProps };
5
5
  declare const conf: {
6
6
  fields: {
7
+ __metadata: {
8
+ type: string;
9
+ ai: {
10
+ instructions: string;
11
+ };
12
+ objectFields: {
13
+ type: {
14
+ type: string;
15
+ };
16
+ };
17
+ };
7
18
  logo: {
8
19
  type: "object";
9
20
  objectFields: {
@@ -3,7 +3,7 @@ import { socialLinksField } from "../../../puck-core/core/props/interactive.js";
3
3
  import { mediaField } from "../../../puck-core/core/props/media.js";
4
4
  import { footerStyleFields } from "../props.js";
5
5
  import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
6
- const conf = { fields: { logo: mediaField, address: { type: "object", label: "Address", objectFields: { label: { type: "text", label: "Label" }, value: { type: "text", label: "Value" } } }, columnLinks: { type: "array", label: "Link Columns", getItemSummary: (_item, index = 0) => `Column ${index + 1}`, arrayFields: { links: { type: "array", label: "Links", getItemSummary: (item, index = 0) => item.title || `Link ${index + 1}`, arrayFields: { title: { type: "text", label: "Title" }, url: { type: "text", label: "URL" } } } } }, contact: { type: "object", label: "Contact", objectFields: { label: { type: "text", label: "Label" }, phone: { type: "text", label: "Phone" }, email: { type: "text", label: "Email" } } }, footerLinks: { type: "array", label: "Footer Links", getItemSummary: (item, index = 0) => item.title || `Link ${index + 1}`, arrayFields: { title: { type: "text", label: "Title" }, url: { type: "text", label: "URL" } } }, socialLinks: socialLinksField, footerText: { type: "text" }, styles: { type: "object", label: "Styles", objectFields: { bordered: footerStyleFields.bordered, hasCompanyImage: footerStyleFields.hasCompanyImage, showSocialLinks: footerStyleFields.showSocialLinks, ...sectionWrapperFields } } }, defaultProps: ContactLinksFooterDefaults, render: ContactLinksFooter };
6
+ const conf = { fields: { __metadata: { type: "object", ai: { instructions: "Layout metadata identifying this component as a footer section. The type field must always be 'footer'." }, objectFields: { type: { type: "text" } } }, logo: mediaField, address: { type: "object", label: "Address", objectFields: { label: { type: "text", label: "Label" }, value: { type: "text", label: "Value" } } }, columnLinks: { type: "array", label: "Link Columns", getItemSummary: (_item, index = 0) => `Column ${index + 1}`, arrayFields: { links: { type: "array", label: "Links", getItemSummary: (item, index = 0) => item.title || `Link ${index + 1}`, arrayFields: { title: { type: "text", label: "Title" }, url: { type: "text", label: "URL" } } } } }, contact: { type: "object", label: "Contact", objectFields: { label: { type: "text", label: "Label" }, phone: { type: "text", label: "Phone" }, email: { type: "text", label: "Email" } } }, footerLinks: { type: "array", label: "Footer Links", getItemSummary: (item, index = 0) => item.title || `Link ${index + 1}`, arrayFields: { title: { type: "text", label: "Title" }, url: { type: "text", label: "URL" } } }, socialLinks: socialLinksField, footerText: { type: "text" }, styles: { type: "object", label: "Styles", objectFields: { bordered: footerStyleFields.bordered, hasCompanyImage: footerStyleFields.hasCompanyImage, showSocialLinks: footerStyleFields.showSocialLinks, ...sectionWrapperFields } } }, defaultProps: ContactLinksFooterDefaults, render: ContactLinksFooter };
7
7
  export {
8
8
  ContactLinksFooter,
9
9
  ContactLinksFooterDefaults,
@@ -4,6 +4,17 @@ export { CtaLinksFooter, CtaLinksFooterDefaults };
4
4
  export type { CtaLinksFooterProps };
5
5
  declare const conf: {
6
6
  fields: {
7
+ __metadata: {
8
+ type: string;
9
+ ai: {
10
+ instructions: string;
11
+ };
12
+ objectFields: {
13
+ type: {
14
+ type: string;
15
+ };
16
+ };
17
+ };
7
18
  logo: {
8
19
  type: "object";
9
20
  objectFields: {
@@ -4,7 +4,7 @@ import { socialLinksField, buttonsField } from "../../../puck-core/core/props/in
4
4
  import { mediaField } from "../../../puck-core/core/props/media.js";
5
5
  import { footerStyleFields } from "../props.js";
6
6
  import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
7
- const conf = { fields: { logo: mediaField, heading: headingField, description: descriptionField, buttons: buttonsField, columnLinks: { type: "array", label: "Link Columns", getItemSummary: (_item, index = 0) => `Column ${index + 1}`, arrayFields: { links: { type: "array", label: "Links", getItemSummary: (item, index = 0) => item.title || `Link ${index + 1}`, arrayFields: { title: { type: "text", label: "Title" }, url: { type: "text", label: "URL" } } } } }, socialLinks: socialLinksField, footerText: { type: "text" }, styles: { type: "object", label: "Styles", objectFields: { bordered: footerStyleFields.bordered, showSocialLinks: footerStyleFields.showSocialLinks, ...sectionWrapperFields } } }, defaultProps: CtaLinksFooterDefaults, render: CtaLinksFooter };
7
+ const conf = { fields: { __metadata: { type: "object", ai: { instructions: "Layout metadata identifying this component as a footer section. The type field must always be 'footer'." }, objectFields: { type: { type: "text" } } }, logo: mediaField, heading: headingField, description: descriptionField, buttons: buttonsField, columnLinks: { type: "array", label: "Link Columns", getItemSummary: (_item, index = 0) => `Column ${index + 1}`, arrayFields: { links: { type: "array", label: "Links", getItemSummary: (item, index = 0) => item.title || `Link ${index + 1}`, arrayFields: { title: { type: "text", label: "Title" }, url: { type: "text", label: "URL" } } } } }, socialLinks: socialLinksField, footerText: { type: "text" }, styles: { type: "object", label: "Styles", objectFields: { bordered: footerStyleFields.bordered, showSocialLinks: footerStyleFields.showSocialLinks, ...sectionWrapperFields } } }, defaultProps: CtaLinksFooterDefaults, render: CtaLinksFooter };
8
8
  export {
9
9
  CtaLinksFooter,
10
10
  CtaLinksFooterDefaults,
@@ -4,6 +4,17 @@ export { LinksNewsletterFooter, LinksNewsletterFooterDefaults };
4
4
  export type { LinksNewsletterFooterProps };
5
5
  declare const conf: {
6
6
  fields: {
7
+ __metadata: {
8
+ type: string;
9
+ ai: {
10
+ instructions: string;
11
+ };
12
+ objectFields: {
13
+ type: {
14
+ type: string;
15
+ };
16
+ };
17
+ };
7
18
  logo: {
8
19
  type: "object";
9
20
  objectFields: {
@@ -4,6 +4,17 @@ export { NewsletterLinksFooter, NewsletterLinksFooterDefaults };
4
4
  export type { NewsletterLinksFooterProps };
5
5
  declare const conf: {
6
6
  fields: {
7
+ __metadata: {
8
+ type: string;
9
+ ai: {
10
+ instructions: string;
11
+ };
12
+ objectFields: {
13
+ type: {
14
+ type: string;
15
+ };
16
+ };
17
+ };
7
18
  logo: {
8
19
  type: "object";
9
20
  objectFields: {
@@ -4,6 +4,17 @@ export { NewsletterTopLinksFooter, NewsletterTopLinksFooterDefaults };
4
4
  export type { NewsletterTopLinksFooterProps };
5
5
  declare const conf: {
6
6
  fields: {
7
+ __metadata: {
8
+ type: string;
9
+ ai: {
10
+ instructions: string;
11
+ };
12
+ objectFields: {
13
+ type: {
14
+ type: string;
15
+ };
16
+ };
17
+ };
7
18
  logo: {
8
19
  type: "object";
9
20
  objectFields: {
@@ -4,6 +4,17 @@ export { CenteredNavbar, CenteredNavbarDefaults };
4
4
  export type { CenteredNavbarProps };
5
5
  declare const conf: {
6
6
  fields: {
7
+ __metadata: {
8
+ type: string;
9
+ ai: {
10
+ instructions: string;
11
+ };
12
+ objectFields: {
13
+ type: {
14
+ type: string;
15
+ };
16
+ };
17
+ };
7
18
  logo: {
8
19
  type: "object";
9
20
  objectFields: {
@@ -5,6 +5,7 @@ import { headerStyleFields } from "../props.js";
5
5
  import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
6
6
  const conf = {
7
7
  fields: {
8
+ __metadata: { type: "object", ai: { instructions: "Layout metadata identifying this component as a header section. The type field must always be 'header'." }, objectFields: { type: { type: "text" } } },
8
9
  logo: mediaField,
9
10
  navLinks: { type: "array", max: 6, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } },
10
11
  buttons: buttonsField,
@@ -4,6 +4,17 @@ export { DrawerNavbar, DrawerNavbarDefaults };
4
4
  export type { DrawerNavbarProps };
5
5
  declare const conf: {
6
6
  fields: {
7
+ __metadata: {
8
+ type: string;
9
+ ai: {
10
+ instructions: string;
11
+ };
12
+ objectFields: {
13
+ type: {
14
+ type: string;
15
+ };
16
+ };
17
+ };
7
18
  logo: {
8
19
  type: "object";
9
20
  objectFields: {
@@ -4,7 +4,7 @@ import { socialLinksField, buttonsField } from "../../../puck-core/core/props/in
4
4
  import { headerStyleFields } from "../props.js";
5
5
  import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
6
6
  const conf = {
7
- fields: { logo: mediaField, navLinks: { type: "array", max: 6, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } }, buttons: buttonsField, socialLinks: socialLinksField, styles: { type: "object", label: "Styles", objectFields: { showSocialLinks: headerStyleFields.showSocialLinks, ...sectionWrapperFields } } },
7
+ fields: { __metadata: { type: "object", ai: { instructions: "Layout metadata identifying this component as a header section. The type field must always be 'header'." }, objectFields: { type: { type: "text" } } }, logo: mediaField, navLinks: { type: "array", max: 6, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } }, buttons: buttonsField, socialLinks: socialLinksField, styles: { type: "object", label: "Styles", objectFields: { showSocialLinks: headerStyleFields.showSocialLinks, ...sectionWrapperFields } } },
8
8
  defaultProps: DrawerNavbarDefaults,
9
9
  render: DrawerNavbar
10
10
  };
@@ -4,6 +4,17 @@ export { FloatingBorderedNavbar, FloatingBorderedNavbarDefaults };
4
4
  export type { FloatingBorderedNavbarProps };
5
5
  declare const conf: {
6
6
  fields: {
7
+ __metadata: {
8
+ type: string;
9
+ ai: {
10
+ instructions: string;
11
+ };
12
+ objectFields: {
13
+ type: {
14
+ type: string;
15
+ };
16
+ };
17
+ };
7
18
  logo: {
8
19
  type: "object";
9
20
  objectFields: {
@@ -4,7 +4,7 @@ import { socialLinksField, buttonsField } from "../../../puck-core/core/props/in
4
4
  import { headerStyleFields } from "../props.js";
5
5
  import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
6
6
  const conf = {
7
- fields: { logo: mediaField, navLinks: { type: "array", max: 6, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } }, buttons: buttonsField, socialLinks: socialLinksField, styles: { type: "object", label: "Styles", objectFields: { position: headerStyleFields.position, showSocialLinks: headerStyleFields.showSocialLinks, ...sectionWrapperFields } } },
7
+ fields: { __metadata: { type: "object", ai: { instructions: "Layout metadata identifying this component as a header section. The type field must always be 'header'." }, objectFields: { type: { type: "text" } } }, logo: mediaField, navLinks: { type: "array", max: 6, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } }, buttons: buttonsField, socialLinks: socialLinksField, styles: { type: "object", label: "Styles", objectFields: { position: headerStyleFields.position, showSocialLinks: headerStyleFields.showSocialLinks, ...sectionWrapperFields } } },
8
8
  defaultProps: FloatingBorderedNavbarDefaults,
9
9
  render: FloatingBorderedNavbar
10
10
  };
@@ -4,6 +4,17 @@ export { FullscreenOverlayNavbar, FullscreenOverlayNavbarDefaults };
4
4
  export type { FullscreenOverlayNavbarProps };
5
5
  declare const conf: {
6
6
  fields: {
7
+ __metadata: {
8
+ type: string;
9
+ ai: {
10
+ instructions: string;
11
+ };
12
+ objectFields: {
13
+ type: {
14
+ type: string;
15
+ };
16
+ };
17
+ };
7
18
  logo: {
8
19
  type: "object";
9
20
  objectFields: {
@@ -4,7 +4,7 @@ import { socialLinksField, buttonsField } from "../../../puck-core/core/props/in
4
4
  import { headerStyleFields } from "../props.js";
5
5
  import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
6
6
  const conf = {
7
- fields: { logo: mediaField, navLinks: { type: "array", max: 8, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } }, buttons: buttonsField, socialLinks: socialLinksField, styles: { type: "object", label: "Styles", objectFields: { overlayContent: headerStyleFields.overlayContent, showSocialLinks: headerStyleFields.showSocialLinks, ...sectionWrapperFields } } },
7
+ fields: { __metadata: { type: "object", ai: { instructions: "Layout metadata identifying this component as a header section. The type field must always be 'header'." }, objectFields: { type: { type: "text" } } }, logo: mediaField, navLinks: { type: "array", max: 8, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } }, buttons: buttonsField, socialLinks: socialLinksField, styles: { type: "object", label: "Styles", objectFields: { overlayContent: headerStyleFields.overlayContent, showSocialLinks: headerStyleFields.showSocialLinks, ...sectionWrapperFields } } },
8
8
  defaultProps: FullscreenOverlayNavbarDefaults,
9
9
  render: FullscreenOverlayNavbar
10
10
  };
@@ -4,6 +4,17 @@ export { MegaMenuNavbar, MegaMenuNavbarDefaults };
4
4
  export type { MegaMenuNavbarProps };
5
5
  declare const conf: {
6
6
  fields: {
7
+ __metadata: {
8
+ type: string;
9
+ ai: {
10
+ instructions: string;
11
+ };
12
+ objectFields: {
13
+ type: {
14
+ type: string;
15
+ };
16
+ };
17
+ };
7
18
  logo: {
8
19
  type: "object";
9
20
  objectFields: {
@@ -4,7 +4,7 @@ import { socialLinksField, buttonsField } from "../../../puck-core/core/props/in
4
4
  import { headerStyleFields } from "../props.js";
5
5
  import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
6
6
  const conf = {
7
- fields: { logo: mediaField, navLinks: { type: "array", max: 6, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } }, buttons: buttonsField, socialLinks: socialLinksField, styles: { type: "object", label: "Styles", objectFields: { megaMenuLayout: headerStyleFields.megaMenuLayout, showSocialLinks: headerStyleFields.showSocialLinks, ...sectionWrapperFields } } },
7
+ fields: { __metadata: { type: "object", ai: { instructions: "Layout metadata identifying this component as a header section. The type field must always be 'header'." }, objectFields: { type: { type: "text" } } }, logo: mediaField, navLinks: { type: "array", max: 6, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } }, buttons: buttonsField, socialLinks: socialLinksField, styles: { type: "object", label: "Styles", objectFields: { megaMenuLayout: headerStyleFields.megaMenuLayout, showSocialLinks: headerStyleFields.showSocialLinks, ...sectionWrapperFields } } },
8
8
  defaultProps: MegaMenuNavbarDefaults,
9
9
  render: MegaMenuNavbar
10
10
  };
@@ -4,6 +4,17 @@ export { StandardNavbar, StandardNavbarDefaults };
4
4
  export type { StandardNavbarProps };
5
5
  declare const conf: {
6
6
  fields: {
7
+ __metadata: {
8
+ type: string;
9
+ ai: {
10
+ instructions: string;
11
+ };
12
+ objectFields: {
13
+ type: {
14
+ type: string;
15
+ };
16
+ };
17
+ };
7
18
  logo: {
8
19
  type: "object";
9
20
  objectFields: {
@@ -5,6 +5,7 @@ import { headerStyleFields } from "../props.js";
5
5
  import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
6
6
  const conf = {
7
7
  fields: {
8
+ __metadata: { type: "object", ai: { instructions: "Layout metadata identifying this component as a header section. The type field must always be 'header'." }, objectFields: { type: { type: "text" } } },
8
9
  logo: mediaField,
9
10
  navLinks: { type: "array", max: 6, getItemSummary: (item, i = 0) => item.title || `Link ${i + 1}`, arrayFields: { title: { type: "text" }, url: { type: "text" } } },
10
11
  buttons: buttonsField,
@@ -81,6 +81,7 @@ const TabContentBlock = ({ ...content }) => {
81
81
  };
82
82
  const TabHeroDefaults = {
83
83
  defaultTabValue: "tab-one",
84
+ styles: {},
84
85
  tabs: {
85
86
  trigger: [
86
87
  {
@@ -37,14 +37,11 @@ declare const conf: {
37
37
  type: string;
38
38
  };
39
39
  media: {
40
- type: string;
40
+ type: "object";
41
41
  objectFields: {
42
- src: {
43
- type: string;
44
- label: string;
45
- };
42
+ src: import("@puckeditor/core").Field<string>;
46
43
  alt: {
47
- type: string;
44
+ type: "text";
48
45
  };
49
46
  };
50
47
  };
@@ -1,5 +1,6 @@
1
1
  import { TabHero, TabHeroDefaults } from "./component.js";
2
2
  import { sectionWrapperFields } from "../../../puck-core/section-wrapper.js";
3
+ import { mediaField } from "../../../puck-core/core/props/media.js";
3
4
  const conf = {
4
5
  fields: {
5
6
  defaultTabValue: { type: "text" },
@@ -22,13 +23,7 @@ const conf = {
22
23
  value: { type: "text" },
23
24
  heading: { type: "text" },
24
25
  description: { type: "textarea" },
25
- media: {
26
- type: "object",
27
- objectFields: {
28
- src: { type: "image", label: "Media" },
29
- alt: { type: "text" }
30
- }
31
- }
26
+ media: mediaField
32
27
  }
33
28
  }
34
29
  }
@@ -220,6 +220,19 @@ const PricingComparisonTableDefaults = {
220
220
  defaultFeatureCategory,
221
221
  defaultFeatureCategory
222
222
  ],
223
+ defaultTabValue: "monthly",
224
+ tabs: [
225
+ {
226
+ value: "monthly",
227
+ tabName: "Monthly",
228
+ pricingPlans: defaultPlans
229
+ },
230
+ {
231
+ value: "yearly",
232
+ tabName: "Yearly",
233
+ pricingPlans: defaultPlans
234
+ }
235
+ ],
223
236
  styles: {
224
237
  tabSwitching: false,
225
238
  tableStyle: "border-separated",
@@ -74,7 +74,8 @@ const SplitPricingDefaults = {
74
74
  monthlyPrice: "$19",
75
75
  features: Array(10).fill("Feature text goes here"),
76
76
  button: { label: "Get started" }
77
- }
77
+ },
78
+ styles: {}
78
79
  };
79
80
  export {
80
81
  SplitPricing,
@@ -3671,6 +3671,17 @@ declare const confMap: {
3671
3671
  };
3672
3672
  CenteredMinimalFooter: {
3673
3673
  fields: {
3674
+ __metadata: {
3675
+ type: string;
3676
+ ai: {
3677
+ instructions: string;
3678
+ };
3679
+ objectFields: {
3680
+ type: {
3681
+ type: string;
3682
+ };
3683
+ };
3684
+ };
3674
3685
  logo: {
3675
3686
  type: "object";
3676
3687
  objectFields: {
@@ -3768,6 +3779,17 @@ declare const confMap: {
3768
3779
  };
3769
3780
  ContactLinksFooter: {
3770
3781
  fields: {
3782
+ __metadata: {
3783
+ type: string;
3784
+ ai: {
3785
+ instructions: string;
3786
+ };
3787
+ objectFields: {
3788
+ type: {
3789
+ type: string;
3790
+ };
3791
+ };
3792
+ };
3771
3793
  logo: {
3772
3794
  type: "object";
3773
3795
  objectFields: {
@@ -3962,6 +3984,17 @@ declare const confMap: {
3962
3984
  };
3963
3985
  CtaLinksFooter: {
3964
3986
  fields: {
3987
+ __metadata: {
3988
+ type: string;
3989
+ ai: {
3990
+ instructions: string;
3991
+ };
3992
+ objectFields: {
3993
+ type: {
3994
+ type: string;
3995
+ };
3996
+ };
3997
+ };
3965
3998
  logo: {
3966
3999
  type: "object";
3967
4000
  objectFields: {
@@ -5386,6 +5419,17 @@ declare const confMap: {
5386
5419
  };
5387
5420
  CenteredNavbar: {
5388
5421
  fields: {
5422
+ __metadata: {
5423
+ type: string;
5424
+ ai: {
5425
+ instructions: string;
5426
+ };
5427
+ objectFields: {
5428
+ type: {
5429
+ type: string;
5430
+ };
5431
+ };
5432
+ };
5389
5433
  logo: {
5390
5434
  type: "object";
5391
5435
  objectFields: {
@@ -5576,6 +5620,17 @@ declare const confMap: {
5576
5620
  };
5577
5621
  DrawerNavbar: {
5578
5622
  fields: {
5623
+ __metadata: {
5624
+ type: string;
5625
+ ai: {
5626
+ instructions: string;
5627
+ };
5628
+ objectFields: {
5629
+ type: {
5630
+ type: string;
5631
+ };
5632
+ };
5633
+ };
5579
5634
  logo: {
5580
5635
  type: "object";
5581
5636
  objectFields: {
@@ -5766,6 +5821,17 @@ declare const confMap: {
5766
5821
  };
5767
5822
  FloatingBorderedNavbar: {
5768
5823
  fields: {
5824
+ __metadata: {
5825
+ type: string;
5826
+ ai: {
5827
+ instructions: string;
5828
+ };
5829
+ objectFields: {
5830
+ type: {
5831
+ type: string;
5832
+ };
5833
+ };
5834
+ };
5769
5835
  logo: {
5770
5836
  type: "object";
5771
5837
  objectFields: {
@@ -5967,6 +6033,17 @@ declare const confMap: {
5967
6033
  };
5968
6034
  FullscreenOverlayNavbar: {
5969
6035
  fields: {
6036
+ __metadata: {
6037
+ type: string;
6038
+ ai: {
6039
+ instructions: string;
6040
+ };
6041
+ objectFields: {
6042
+ type: {
6043
+ type: string;
6044
+ };
6045
+ };
6046
+ };
5970
6047
  logo: {
5971
6048
  type: "object";
5972
6049
  objectFields: {
@@ -6177,6 +6254,17 @@ declare const confMap: {
6177
6254
  };
6178
6255
  MegaMenuNavbar: {
6179
6256
  fields: {
6257
+ __metadata: {
6258
+ type: string;
6259
+ ai: {
6260
+ instructions: string;
6261
+ };
6262
+ objectFields: {
6263
+ type: {
6264
+ type: string;
6265
+ };
6266
+ };
6267
+ };
6180
6268
  logo: {
6181
6269
  type: "object";
6182
6270
  objectFields: {
@@ -6390,6 +6478,17 @@ declare const confMap: {
6390
6478
  };
6391
6479
  StandardNavbar: {
6392
6480
  fields: {
6481
+ __metadata: {
6482
+ type: string;
6483
+ ai: {
6484
+ instructions: string;
6485
+ };
6486
+ objectFields: {
6487
+ type: {
6488
+ type: string;
6489
+ };
6490
+ };
6491
+ };
6393
6492
  logo: {
6394
6493
  type: "object";
6395
6494
  objectFields: {
@@ -8759,14 +8858,11 @@ declare const confMap: {
8759
8858
  type: string;
8760
8859
  };
8761
8860
  media: {
8762
- type: string;
8861
+ type: "object";
8763
8862
  objectFields: {
8764
- src: {
8765
- type: string;
8766
- label: string;
8767
- };
8863
+ src: import("@puckeditor/core").Field<string>;
8768
8864
  alt: {
8769
- type: string;
8865
+ type: "text";
8770
8866
  };
8771
8867
  };
8772
8868
  };
@@ -0,0 +1,40 @@
1
+ import { z } from "zod";
2
+ type PuckFieldOption = {
3
+ label: string;
4
+ value: string;
5
+ };
6
+ type PuckField = {
7
+ type: string;
8
+ options?: PuckFieldOption[];
9
+ objectFields?: Record<string, PuckField>;
10
+ arrayFields?: Record<string, PuckField>;
11
+ max?: number;
12
+ ai?: {
13
+ instructions?: string;
14
+ exclude?: boolean;
15
+ stream?: boolean;
16
+ };
17
+ [key: string]: unknown;
18
+ };
19
+ /**
20
+ * Registry for custom field schemas.
21
+ * Key: custom field render component name or identifier.
22
+ * Value: Zod schema for that field.
23
+ *
24
+ * Pre-registered:
25
+ * - IconPickerField → string (icon name)
26
+ * - ActionField → Action object
27
+ * - MediaUploadField → string (URL)
28
+ * - LocationField → MapLocation object
29
+ */
30
+ export declare const customSchemaRegistry: Map<string, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>;
31
+ /**
32
+ * Convert a Puck component's `fields` config into a Zod schema at runtime.
33
+ *
34
+ * @example
35
+ * const schema = puckFieldsToZod(conf.fields);
36
+ * // Use with AI structured output:
37
+ * const result = schema.parse(aiOutput);
38
+ */
39
+ export declare function puckFieldsToZod(fields: Record<string, PuckField>): z.ZodObject<Record<string, z.ZodType>>;
40
+ export {};