@upstart.gg/sdk 0.0.135 → 0.0.137
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/dist/shared/ai/schemas.d.ts +11 -2
- package/dist/shared/ai/schemas.d.ts.map +1 -1
- package/dist/shared/ai/schemas.js +38 -8
- package/dist/shared/ai/schemas.js.map +1 -1
- package/dist/shared/ai/types.d.ts +93 -81
- package/dist/shared/ai/types.d.ts.map +1 -1
- package/dist/shared/ajv.js +33 -32
- package/dist/shared/ajv.js.map +1 -1
- package/dist/shared/attributes.d.ts +86 -86
- package/dist/shared/attributes.d.ts.map +1 -1
- package/dist/shared/attributes.js +22 -25
- package/dist/shared/brick-manifest.d.ts +8 -5
- package/dist/shared/brick-manifest.d.ts.map +1 -1
- package/dist/shared/brick-manifest.js +3 -18
- package/dist/shared/bricks/manifests/_types.d.ts +9 -0
- package/dist/shared/bricks/manifests/_types.d.ts.map +1 -0
- package/dist/shared/bricks/manifests/_types.js +3 -0
- package/dist/shared/bricks/manifests/accordion.manifest.d.ts +4 -8
- package/dist/shared/bricks/manifests/accordion.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/accordion.manifest.js +13 -20
- package/dist/shared/bricks/manifests/all-manifests.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/all-manifests.js +44 -43
- package/dist/shared/bricks/manifests/all-props.d.ts +1501 -0
- package/dist/shared/bricks/manifests/all-props.d.ts.map +1 -0
- package/dist/shared/bricks/manifests/all-props.js +243 -0
- package/dist/shared/bricks/manifests/all-props.js.map +1 -0
- package/dist/shared/bricks/manifests/box.manifest.d.ts +4 -8
- package/dist/shared/bricks/manifests/box.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/box.manifest.js +16 -20
- package/dist/shared/bricks/manifests/button.manifest.d.ts +5 -12
- package/dist/shared/bricks/manifests/button.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/button.manifest.js +13 -20
- package/dist/shared/bricks/manifests/card.manifest.d.ts +10 -9
- package/dist/shared/bricks/manifests/card.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/card.manifest.js +18 -20
- package/dist/shared/bricks/manifests/carousel.manifest.d.ts +4 -8
- package/dist/shared/bricks/manifests/carousel.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/carousel.manifest.js +15 -20
- package/dist/shared/bricks/manifests/footer.manifest.d.ts +5 -9
- package/dist/shared/bricks/manifests/footer.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/footer.manifest.js +13 -20
- package/dist/shared/bricks/manifests/form.manifest.d.ts +5 -9
- package/dist/shared/bricks/manifests/form.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/form.manifest.js +13 -20
- package/dist/shared/bricks/manifests/hero.manifest.d.ts +4 -8
- package/dist/shared/bricks/manifests/hero.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/hero.manifest.js +13 -20
- package/dist/shared/bricks/manifests/html.manifest.d.ts +3 -7
- package/dist/shared/bricks/manifests/html.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/html.manifest.js +8 -20
- package/dist/shared/bricks/manifests/icon.manifest.d.ts +3 -7
- package/dist/shared/bricks/manifests/icon.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/icon.manifest.js +13 -20
- package/dist/shared/bricks/manifests/image.manifest.d.ts +3 -2
- package/dist/shared/bricks/manifests/image.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/image.manifest.js +16 -20
- package/dist/shared/bricks/manifests/images-gallery.manifest.d.ts +4 -8
- package/dist/shared/bricks/manifests/images-gallery.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/images-gallery.manifest.js +15 -20
- package/dist/shared/bricks/manifests/map.manifest.d.ts +3 -7
- package/dist/shared/bricks/manifests/map.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/map.manifest.js +11 -20
- package/dist/shared/bricks/manifests/navbar.manifest.d.ts +7 -11
- package/dist/shared/bricks/manifests/navbar.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/navbar.manifest.js +15 -20
- package/dist/shared/bricks/manifests/sidebar.manifest.d.ts +3 -7
- package/dist/shared/bricks/manifests/sidebar.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/sidebar.manifest.js +13 -20
- package/dist/shared/bricks/manifests/social-links.manifest.d.ts +4 -8
- package/dist/shared/bricks/manifests/social-links.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/social-links.manifest.js +14 -20
- package/dist/shared/bricks/manifests/spacer.manifest.d.ts +3 -7
- package/dist/shared/bricks/manifests/spacer.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/spacer.manifest.js +8 -20
- package/dist/shared/bricks/manifests/table.manifest.d.ts +6 -10
- package/dist/shared/bricks/manifests/table.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/table.manifest.js +15 -20
- package/dist/shared/bricks/manifests/tabs.manifest.d.ts +6 -10
- package/dist/shared/bricks/manifests/tabs.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/tabs.manifest.js +15 -20
- package/dist/shared/bricks/manifests/testimonials.manifest.d.ts +4 -8
- package/dist/shared/bricks/manifests/testimonials.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/testimonials.manifest.js +18 -20
- package/dist/shared/bricks/manifests/text.manifest.d.ts +4 -12
- package/dist/shared/bricks/manifests/text.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/text.manifest.js +13 -20
- package/dist/shared/bricks/manifests/timeline.manifest.d.ts +9 -13
- package/dist/shared/bricks/manifests/timeline.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/timeline.manifest.js +15 -20
- package/dist/shared/bricks/manifests/video.manifest.d.ts +3 -7
- package/dist/shared/bricks/manifests/video.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/video.manifest.js +11 -20
- package/dist/shared/bricks/props/align.d.ts +0 -3
- package/dist/shared/bricks/props/align.d.ts.map +1 -1
- package/dist/shared/bricks/props/align.js +4 -11
- package/dist/shared/bricks/props/background.d.ts +2 -8
- package/dist/shared/bricks/props/background.d.ts.map +1 -1
- package/dist/shared/bricks/props/background.js +4 -9
- package/dist/shared/bricks/props/border.d.ts +0 -7
- package/dist/shared/bricks/props/border.d.ts.map +1 -1
- package/dist/shared/bricks/props/border.js +5 -10
- package/dist/shared/bricks/props/color-preset.d.ts +316 -6
- package/dist/shared/bricks/props/color-preset.d.ts.map +1 -1
- package/dist/shared/bricks/props/color-preset.js +2 -5
- package/dist/shared/bricks/props/color.d.ts +3 -5
- package/dist/shared/bricks/props/color.d.ts.map +1 -1
- package/dist/shared/bricks/props/color.js +3 -8
- package/dist/shared/bricks/props/common.d.ts.map +1 -1
- package/dist/shared/bricks/props/common.js +4 -5
- package/dist/shared/bricks/props/css-length.d.ts +0 -1
- package/dist/shared/bricks/props/css-length.d.ts.map +1 -1
- package/dist/shared/bricks/props/css-length.js +1 -4
- package/dist/shared/bricks/props/datasource.d.ts +3 -3
- package/dist/shared/bricks/props/datasource.d.ts.map +1 -1
- package/dist/shared/bricks/props/datasource.js +74 -76
- package/dist/shared/bricks/props/datasource.js.map +1 -1
- package/dist/shared/bricks/props/date.js +21 -4
- package/dist/shared/bricks/props/date.js.map +1 -1
- package/dist/shared/bricks/props/direction.d.ts +1 -2
- package/dist/shared/bricks/props/direction.d.ts.map +1 -1
- package/dist/shared/bricks/props/direction.js +4 -7
- package/dist/shared/bricks/props/dynamic.d.ts +5 -67
- package/dist/shared/bricks/props/dynamic.d.ts.map +1 -1
- package/dist/shared/bricks/props/dynamic.js +6 -24
- package/dist/shared/bricks/props/effects.d.ts +1 -3
- package/dist/shared/bricks/props/effects.d.ts.map +1 -1
- package/dist/shared/bricks/props/effects.js +4 -9
- package/dist/shared/bricks/props/geolocation.d.ts.map +1 -1
- package/dist/shared/bricks/props/geolocation.js +3 -6
- package/dist/shared/bricks/props/geolocation.js.map +1 -1
- package/dist/shared/bricks/props/helpers.js +5 -6
- package/dist/shared/bricks/props/image.d.ts +2 -8
- package/dist/shared/bricks/props/image.d.ts.map +1 -1
- package/dist/shared/bricks/props/image.js +4 -7
- package/dist/shared/bricks/props/string.d.ts +2 -5
- package/dist/shared/bricks/props/string.d.ts.map +1 -1
- package/dist/shared/bricks/props/string.js +3 -10
- package/dist/shared/bricks/props/tags.d.ts +0 -1
- package/dist/shared/bricks/props/tags.d.ts.map +1 -1
- package/dist/shared/bricks/props/tags.js +3 -6
- package/dist/shared/bricks/props/text.d.ts +0 -3
- package/dist/shared/bricks/props/text.d.ts.map +1 -1
- package/dist/shared/bricks/props/text.js +4 -11
- package/dist/shared/bricks/props/types.d.ts +2 -2
- package/dist/shared/bricks/props/types.d.ts.map +1 -1
- package/dist/shared/bricks.d.ts +64 -152
- package/dist/shared/bricks.d.ts.map +1 -1
- package/dist/shared/bricks.js +49 -52
- package/dist/shared/chunk-2O5HVPID.js +41 -0
- package/dist/shared/chunk-2O5HVPID.js.map +1 -0
- package/dist/shared/{chunk-F22LDHEO.js → chunk-2U5U3CCJ.js} +3 -18
- package/dist/shared/chunk-2U5U3CCJ.js.map +1 -0
- package/dist/shared/{chunk-LXAO3JA6.js → chunk-4KY7OZWD.js} +35 -35
- package/dist/shared/chunk-4KY7OZWD.js.map +1 -0
- package/dist/shared/{chunk-TNMNMYOB.js → chunk-5RCC2STG.js} +2 -13
- package/dist/shared/chunk-5RCC2STG.js.map +1 -0
- package/dist/shared/{chunk-V3UA3LRK.js → chunk-6AE7UD73.js} +56 -37
- package/dist/shared/chunk-6AE7UD73.js.map +1 -0
- package/dist/shared/chunk-7U5WPHXB.js +346 -0
- package/dist/shared/chunk-7U5WPHXB.js.map +1 -0
- package/dist/shared/{chunk-Q4NPPLEU.js → chunk-BHARJBEK.js} +2 -9
- package/dist/shared/chunk-BHARJBEK.js.map +1 -0
- package/dist/shared/chunk-BZTWZC77.js +530 -0
- package/dist/shared/chunk-BZTWZC77.js.map +1 -0
- package/dist/shared/{chunk-QSND5IWT.js → chunk-DCM4732T.js} +24 -43
- package/dist/shared/chunk-DCM4732T.js.map +1 -0
- package/dist/shared/{chunk-W6MRYRGJ.js → chunk-DRQKKPTX.js} +6 -20
- package/dist/shared/chunk-DRQKKPTX.js.map +1 -0
- package/dist/shared/{chunk-CSF2WQX2.js → chunk-EID5HPF3.js} +15 -12
- package/dist/shared/chunk-EID5HPF3.js.map +1 -0
- package/dist/shared/chunk-EMF5TCPX.js +389 -0
- package/dist/shared/chunk-EMF5TCPX.js.map +1 -0
- package/dist/shared/chunk-FD7YYFRI.js +225 -0
- package/dist/shared/chunk-FD7YYFRI.js.map +1 -0
- package/dist/shared/{chunk-MLZT7MRQ.js → chunk-FHA4DFIM.js} +26 -27
- package/dist/shared/chunk-FHA4DFIM.js.map +1 -0
- package/dist/shared/{chunk-GRMY35BU.js → chunk-FUUSAMN3.js} +165 -40
- package/dist/shared/chunk-FUUSAMN3.js.map +1 -0
- package/dist/shared/chunk-GDYCCB3B.js +22 -0
- package/dist/shared/chunk-GDYCCB3B.js.map +1 -0
- package/dist/shared/chunk-GLV6QIIM.js +41 -0
- package/dist/shared/chunk-GLV6QIIM.js.map +1 -0
- package/dist/shared/chunk-H6TMBELF.js +374 -0
- package/dist/shared/chunk-H6TMBELF.js.map +1 -0
- package/dist/shared/{chunk-BMWRR4DI.js → chunk-HUWMIXNN.js} +26 -28
- package/dist/shared/chunk-HUWMIXNN.js.map +1 -0
- package/dist/shared/chunk-HY7JOP3J.js +150 -0
- package/dist/shared/chunk-HY7JOP3J.js.map +1 -0
- package/dist/shared/{chunk-TFGGYU6Y.js → chunk-IEMCCHM4.js} +7 -12
- package/dist/shared/chunk-IEMCCHM4.js.map +1 -0
- package/dist/shared/{chunk-TB3X4LRQ.js → chunk-J45LSQT6.js} +2 -2
- package/dist/shared/chunk-J45LSQT6.js.map +1 -0
- package/dist/shared/{chunk-WGDUJSSS.js → chunk-JF52BBFD.js} +27 -28
- package/dist/shared/chunk-JF52BBFD.js.map +1 -0
- package/dist/shared/{chunk-GPCI2N2A.js → chunk-JLDAS3VE.js} +136 -33
- package/dist/shared/chunk-JLDAS3VE.js.map +1 -0
- package/dist/shared/{chunk-SE6O65HC.js → chunk-JSDKK5QN.js} +10 -23
- package/dist/shared/chunk-JSDKK5QN.js.map +1 -0
- package/dist/shared/chunk-JW7MQAU4.js +354 -0
- package/dist/shared/chunk-JW7MQAU4.js.map +1 -0
- package/dist/shared/{chunk-RV7AYVFV.js → chunk-KKWT3OXF.js} +4 -19
- package/dist/shared/chunk-KKWT3OXF.js.map +1 -0
- package/dist/shared/{chunk-TEO6TJOM.js → chunk-KQH6V22E.js} +36 -35
- package/dist/shared/{chunk-TEO6TJOM.js.map → chunk-KQH6V22E.js.map} +1 -1
- package/dist/shared/{chunk-3KLRW4I2.js → chunk-LGDDJJHK.js} +212 -156
- package/dist/shared/chunk-LGDDJJHK.js.map +1 -0
- package/dist/shared/{chunk-QL3T5HJQ.js → chunk-LGGPCCCY.js} +3 -3
- package/dist/shared/chunk-LGGPCCCY.js.map +1 -0
- package/dist/shared/{chunk-2HO4FHLM.js → chunk-LPAQ47C6.js} +137 -171
- package/dist/shared/chunk-LPAQ47C6.js.map +1 -0
- package/dist/shared/chunk-MO6CRLQA.js +73 -0
- package/dist/shared/chunk-MO6CRLQA.js.map +1 -0
- package/dist/shared/{chunk-SHUGHJ7V.js → chunk-MYOLWTB2.js} +29 -32
- package/dist/shared/chunk-MYOLWTB2.js.map +1 -0
- package/dist/shared/{chunk-Z2NTDFB4.js → chunk-O24RDXZS.js} +34 -34
- package/dist/shared/chunk-O24RDXZS.js.map +1 -0
- package/dist/shared/{chunk-BPBKHEQ5.js → chunk-OJ6KL7FU.js} +1 -8
- package/dist/shared/chunk-OJ6KL7FU.js.map +1 -0
- package/dist/shared/{chunk-GCQURRVB.js → chunk-PF75LW33.js} +24 -27
- package/dist/shared/chunk-PF75LW33.js.map +1 -0
- package/dist/shared/{chunk-EWSPTRDL.js → chunk-QEJGPYTB.js} +132 -48
- package/dist/shared/chunk-QEJGPYTB.js.map +1 -0
- package/dist/shared/{chunk-P3RH5URN.js → chunk-SK2O7GFC.js} +17 -18
- package/dist/shared/chunk-SK2O7GFC.js.map +1 -0
- package/dist/shared/{chunk-UQF52PWK.js → chunk-SQXZNGQF.js} +8 -23
- package/dist/shared/chunk-SQXZNGQF.js.map +1 -0
- package/dist/shared/{chunk-NTLAKMMQ.js → chunk-SRYBJ6NQ.js} +6 -17
- package/dist/shared/chunk-SRYBJ6NQ.js.map +1 -0
- package/dist/shared/{chunk-O5PLB3YB.js → chunk-T6C3NG2L.js} +68 -59
- package/dist/shared/chunk-T6C3NG2L.js.map +1 -0
- package/dist/shared/{chunk-U7TVEPKA.js → chunk-TBT2PTGB.js} +41 -33
- package/dist/shared/chunk-TBT2PTGB.js.map +1 -0
- package/dist/shared/{chunk-CKFRSHR2.js → chunk-U4KZUX37.js} +18 -19
- package/dist/shared/chunk-U4KZUX37.js.map +1 -0
- package/dist/shared/{chunk-4WI23M7W.js → chunk-VSLRTXLF.js} +11 -4
- package/dist/shared/chunk-VSLRTXLF.js.map +1 -0
- package/dist/shared/{chunk-BHC2A43S.js → chunk-VTCHJT4O.js} +3 -3
- package/dist/shared/{chunk-BHC2A43S.js.map → chunk-VTCHJT4O.js.map} +1 -1
- package/dist/shared/{chunk-DRTGM2UJ.js → chunk-W2RFDII5.js} +3 -3
- package/dist/shared/chunk-W2RFDII5.js.map +1 -0
- package/dist/shared/{chunk-Y74LZNND.js → chunk-WPZV3LYL.js} +4 -10
- package/dist/shared/chunk-WPZV3LYL.js.map +1 -0
- package/dist/shared/chunk-XFZQGRRL.js +101 -0
- package/dist/shared/chunk-XFZQGRRL.js.map +1 -0
- package/dist/shared/{chunk-QQQ3FYPG.js → chunk-XK2CERPB.js} +147 -31
- package/dist/shared/chunk-XK2CERPB.js.map +1 -0
- package/dist/shared/chunk-XNRSL6FL.js +78 -0
- package/dist/shared/chunk-XNRSL6FL.js.map +1 -0
- package/dist/shared/{chunk-2RK3CPYJ.js → chunk-XXPSM6UA.js} +9 -12
- package/dist/shared/chunk-XXPSM6UA.js.map +1 -0
- package/dist/shared/{chunk-ZLYIRH2B.js → chunk-ZRBTAC3G.js} +3 -18
- package/dist/shared/chunk-ZRBTAC3G.js.map +1 -0
- package/dist/shared/{chunk-Z35I5JM5.js → chunk-ZVJNRKT4.js} +18 -20
- package/dist/shared/chunk-ZVJNRKT4.js.map +1 -0
- package/dist/shared/context.d.ts +402 -22
- package/dist/shared/context.d.ts.map +1 -1
- package/dist/shared/context.js +93 -0
- package/dist/shared/context.js.map +1 -1
- package/dist/shared/datarecords/external/airtable/types.d.ts +1 -1
- package/dist/shared/datarecords/external/airtable/types.d.ts.map +1 -1
- package/dist/shared/datarecords/external/airtable/types.js +2 -1
- package/dist/shared/datarecords/types.d.ts +10 -63
- package/dist/shared/datarecords/types.d.ts.map +1 -1
- package/dist/shared/datarecords/types.js +5 -6
- package/dist/shared/datasources/external/instagram/feed/schema.d.ts +1 -1
- package/dist/shared/datasources/external/instagram/feed/schema.d.ts.map +1 -1
- package/dist/shared/datasources/external/instagram/feed/schema.js +4 -1
- package/dist/shared/datasources/external/instagram/feed/schema.js.map +1 -1
- package/dist/shared/datasources/external/mastodon/status/schema.d.ts +6 -6
- package/dist/shared/datasources/external/mastodon/status/schema.d.ts.map +1 -1
- package/dist/shared/datasources/external/mastodon/status/schema.js +6 -19
- package/dist/shared/datasources/external/mastodon/status/schema.js.map +1 -1
- package/dist/shared/datasources/external/meta/oauth/config.d.ts +2 -2
- package/dist/shared/datasources/external/meta/oauth/config.d.ts.map +1 -1
- package/dist/shared/datasources/external/meta/oauth/config.js +4 -1
- package/dist/shared/datasources/external/meta/oauth/config.js.map +1 -1
- package/dist/shared/datasources/external/threads/media/fetcher.js +3 -3
- package/dist/shared/datasources/external/threads/media/schema.d.ts +1 -1
- package/dist/shared/datasources/external/threads/media/schema.d.ts.map +1 -1
- package/dist/shared/datasources/external/threads/media/schema.js +4 -8
- package/dist/shared/datasources/external/threads/media/schema.js.map +1 -1
- package/dist/shared/datasources/internal/blog/schema.d.ts +1 -1
- package/dist/shared/datasources/internal/blog/schema.d.ts.map +1 -1
- package/dist/shared/datasources/internal/blog/schema.js +4 -1
- package/dist/shared/datasources/internal/blog/schema.js.map +1 -1
- package/dist/shared/datasources/types.d.ts +25 -25
- package/dist/shared/datasources/types.d.ts.map +1 -1
- package/dist/shared/datasources/types.js +3 -16
- package/dist/shared/datasources.d.ts +1 -1
- package/dist/shared/datasources.d.ts.map +1 -1
- package/dist/shared/datasources.js +1 -3
- package/dist/shared/datasources.js.map +1 -1
- package/dist/shared/images.d.ts +1 -1
- package/dist/shared/images.d.ts.map +1 -1
- package/dist/shared/images.js +4 -38
- package/dist/shared/images.js.map +1 -1
- package/dist/shared/page.d.ts +139 -22
- package/dist/shared/page.d.ts.map +1 -1
- package/dist/shared/page.js +51 -49
- package/dist/shared/responsive.js +1 -1
- package/dist/shared/site.d.ts +80 -197
- package/dist/shared/site.d.ts.map +1 -1
- package/dist/shared/site.js +55 -114
- package/dist/shared/site.js.map +1 -1
- package/dist/shared/sitemap.d.ts +6 -327
- package/dist/shared/sitemap.d.ts.map +1 -1
- package/dist/shared/sitemap.js +50 -58
- package/dist/shared/theme.d.ts +0 -37
- package/dist/shared/theme.d.ts.map +1 -1
- package/dist/shared/theme.js +4 -21
- package/dist/shared/utils/llm.d.ts +1 -10
- package/dist/shared/utils/llm.d.ts.map +1 -1
- package/dist/shared/utils/llm.js +1 -18
- package/dist/shared/utils/schema.d.ts +3 -2
- package/dist/shared/utils/schema.d.ts.map +1 -1
- package/dist/shared/utils/schema.js +2 -17
- package/dist/shared/utils/string-enum.d.ts +9 -3
- package/dist/shared/utils/string-enum.d.ts.map +1 -1
- package/dist/shared/utils/string-enum.js +1 -1
- package/package.json +21 -5
- package/src/shared/ai/schemas.ts +41 -10
- package/src/shared/ai/types.ts +78 -76
- package/src/shared/attributes.ts +56 -46
- package/src/shared/brick-manifest.ts +5 -6
- package/src/shared/bricks/manifests/_types.ts +9 -0
- package/src/shared/bricks/manifests/accordion.manifest.ts +138 -171
- package/src/shared/bricks/manifests/all-manifests.ts +1 -0
- package/src/shared/bricks/manifests/all-props.ts +165 -0
- package/src/shared/bricks/manifests/box.manifest.ts +214 -150
- package/src/shared/bricks/manifests/button.manifest.ts +204 -79
- package/src/shared/bricks/manifests/card.manifest.ts +229 -43
- package/src/shared/bricks/manifests/carousel.manifest.ts +165 -35
- package/src/shared/bricks/manifests/footer.manifest.ts +18 -20
- package/src/shared/bricks/manifests/form.manifest.ts +136 -22
- package/src/shared/bricks/manifests/hero.manifest.ts +121 -38
- package/src/shared/bricks/manifests/html.manifest.ts +2 -5
- package/src/shared/bricks/manifests/icon.manifest.ts +225 -46
- package/src/shared/bricks/manifests/image.manifest.ts +125 -21
- package/src/shared/bricks/manifests/images-gallery.manifest.ts +15 -20
- package/src/shared/bricks/manifests/map.manifest.ts +12 -15
- package/src/shared/bricks/manifests/navbar.manifest.ts +22 -26
- package/src/shared/bricks/manifests/sidebar.manifest.ts +11 -14
- package/src/shared/bricks/manifests/social-links.manifest.ts +19 -24
- package/src/shared/bricks/manifests/spacer.manifest.ts +2 -5
- package/src/shared/bricks/manifests/table.manifest.ts +17 -20
- package/src/shared/bricks/manifests/tabs.manifest.ts +16 -21
- package/src/shared/bricks/manifests/testimonials.manifest.ts +23 -25
- package/src/shared/bricks/manifests/text.manifest.ts +47 -29
- package/src/shared/bricks/manifests/timeline.manifest.ts +31 -29
- package/src/shared/bricks/manifests/video.manifest.ts +11 -15
- package/src/shared/bricks/props/align.ts +0 -13
- package/src/shared/bricks/props/background.ts +1 -14
- package/src/shared/bricks/props/border.ts +2 -13
- package/src/shared/bricks/props/color-preset.ts +9 -10
- package/src/shared/bricks/props/color.ts +7 -18
- package/src/shared/bricks/props/common.ts +6 -7
- package/src/shared/bricks/props/css-length.ts +0 -5
- package/src/shared/bricks/props/datasource.ts +72 -74
- package/src/shared/bricks/props/direction.ts +1 -5
- package/src/shared/bricks/props/dynamic.ts +0 -11
- package/src/shared/bricks/props/effects.ts +0 -9
- package/src/shared/bricks/props/geolocation.ts +3 -3
- package/src/shared/bricks/props/helpers.ts +1 -1
- package/src/shared/bricks/props/image.ts +4 -16
- package/src/shared/bricks/props/string.ts +6 -19
- package/src/shared/bricks/props/tags.ts +0 -5
- package/src/shared/bricks/props/tests/background.test.ts +1 -15
- package/src/shared/bricks/props/tests/image.test.ts +3 -9
- package/src/shared/bricks/props/tests/string.test.ts +2 -26
- package/src/shared/bricks/props/text.ts +0 -12
- package/src/shared/bricks/props/types.ts +4 -3
- package/src/shared/bricks.ts +164 -1025
- package/src/shared/context.ts +24 -23
- package/src/shared/datarecords/external/airtable/types.ts +12 -11
- package/src/shared/datarecords/types.ts +22 -44
- package/src/shared/datasources/external/instagram/feed/schema.ts +2 -1
- package/src/shared/datasources/external/mastodon/status/schema.ts +4 -19
- package/src/shared/datasources/external/meta/oauth/config.ts +2 -1
- package/src/shared/datasources/external/threads/media/schema.ts +2 -8
- package/src/shared/datasources/internal/blog/schema.ts +2 -1
- package/src/shared/datasources/types.ts +64 -79
- package/src/shared/datasources.ts +2 -4
- package/src/shared/images.ts +12 -18
- package/src/shared/page.ts +9 -2
- package/src/shared/site.ts +3 -3
- package/src/shared/sitemap.ts +3 -68
- package/src/shared/tests/attributes.test.ts +2 -0
- package/src/shared/theme.ts +81 -96
- package/src/shared/utils/llm.ts +5 -191
- package/src/shared/utils/schema.ts +71 -244
- package/src/shared/utils/string-enum.ts +25 -4
- package/src/shared/utils/tests/schema.test.ts +112 -314
- package/dist/shared/chunk-2HO4FHLM.js.map +0 -1
- package/dist/shared/chunk-2RK3CPYJ.js.map +0 -1
- package/dist/shared/chunk-3KLRW4I2.js.map +0 -1
- package/dist/shared/chunk-4WI23M7W.js.map +0 -1
- package/dist/shared/chunk-6E42XWFH.js +0 -103
- package/dist/shared/chunk-6E42XWFH.js.map +0 -1
- package/dist/shared/chunk-A2QPY54H.js +0 -13
- package/dist/shared/chunk-A2QPY54H.js.map +0 -1
- package/dist/shared/chunk-BMWRR4DI.js.map +0 -1
- package/dist/shared/chunk-BPBKHEQ5.js.map +0 -1
- package/dist/shared/chunk-BW6EFRSF.js +0 -794
- package/dist/shared/chunk-BW6EFRSF.js.map +0 -1
- package/dist/shared/chunk-CKFRSHR2.js.map +0 -1
- package/dist/shared/chunk-CSF2WQX2.js.map +0 -1
- package/dist/shared/chunk-D4YQ6ABM.js +0 -338
- package/dist/shared/chunk-D4YQ6ABM.js.map +0 -1
- package/dist/shared/chunk-DRTGM2UJ.js.map +0 -1
- package/dist/shared/chunk-EQMU6NIU.js +0 -1222
- package/dist/shared/chunk-EQMU6NIU.js.map +0 -1
- package/dist/shared/chunk-EWSPTRDL.js.map +0 -1
- package/dist/shared/chunk-F22LDHEO.js.map +0 -1
- package/dist/shared/chunk-FVU5PXRC.js +0 -244
- package/dist/shared/chunk-FVU5PXRC.js.map +0 -1
- package/dist/shared/chunk-GCQURRVB.js.map +0 -1
- package/dist/shared/chunk-GPCI2N2A.js.map +0 -1
- package/dist/shared/chunk-GRMY35BU.js.map +0 -1
- package/dist/shared/chunk-JK2FWFJU.js +0 -15
- package/dist/shared/chunk-JK2FWFJU.js.map +0 -1
- package/dist/shared/chunk-LXAO3JA6.js.map +0 -1
- package/dist/shared/chunk-MLZT7MRQ.js.map +0 -1
- package/dist/shared/chunk-NT3IW52F.js +0 -260
- package/dist/shared/chunk-NT3IW52F.js.map +0 -1
- package/dist/shared/chunk-NTLAKMMQ.js.map +0 -1
- package/dist/shared/chunk-O5PLB3YB.js.map +0 -1
- package/dist/shared/chunk-P3RH5URN.js.map +0 -1
- package/dist/shared/chunk-Q4NPPLEU.js.map +0 -1
- package/dist/shared/chunk-QL3T5HJQ.js.map +0 -1
- package/dist/shared/chunk-QQQ3FYPG.js.map +0 -1
- package/dist/shared/chunk-QSND5IWT.js.map +0 -1
- package/dist/shared/chunk-RV7AYVFV.js.map +0 -1
- package/dist/shared/chunk-SE6O65HC.js.map +0 -1
- package/dist/shared/chunk-SHUGHJ7V.js.map +0 -1
- package/dist/shared/chunk-TB3X4LRQ.js.map +0 -1
- package/dist/shared/chunk-TFGGYU6Y.js.map +0 -1
- package/dist/shared/chunk-TNMNMYOB.js.map +0 -1
- package/dist/shared/chunk-U7TVEPKA.js.map +0 -1
- package/dist/shared/chunk-UQF52PWK.js.map +0 -1
- package/dist/shared/chunk-V3UA3LRK.js.map +0 -1
- package/dist/shared/chunk-W6MRYRGJ.js.map +0 -1
- package/dist/shared/chunk-WGDUJSSS.js.map +0 -1
- package/dist/shared/chunk-WKN566LN.js +0 -29
- package/dist/shared/chunk-WKN566LN.js.map +0 -1
- package/dist/shared/chunk-X6N463D4.js +0 -222
- package/dist/shared/chunk-X6N463D4.js.map +0 -1
- package/dist/shared/chunk-X75YV73Q.js +0 -178
- package/dist/shared/chunk-X75YV73Q.js.map +0 -1
- package/dist/shared/chunk-Y74LZNND.js.map +0 -1
- package/dist/shared/chunk-Z2NTDFB4.js.map +0 -1
- package/dist/shared/chunk-Z35I5JM5.js.map +0 -1
- package/dist/shared/chunk-ZLYIRH2B.js.map +0 -1
- package/dist/shared/schema-registry.d.ts +0 -5
- package/dist/shared/schema-registry.d.ts.map +0 -1
- package/dist/shared/schema-registry.js +0 -119
- package/dist/shared/schema-registry.js.map +0 -1
- package/dist/shared/tests/schema-registry.test.d.ts +0 -2
- package/dist/shared/tests/schema-registry.test.d.ts.map +0 -1
- package/dist/shared/utils/schema-registry.d.ts +0 -5
- package/dist/shared/utils/schema-registry.d.ts.map +0 -1
- package/dist/shared/utils/schema-registry.js +0 -29
- package/dist/shared/utils/tests/schema-registry.test.d.ts +0 -2
- package/dist/shared/utils/tests/schema-registry.test.d.ts.map +0 -1
- package/dist/shared/utils/typed-ref.d.ts +0 -43
- package/dist/shared/utils/typed-ref.d.ts.map +0 -1
- package/dist/shared/utils/typed-ref.js +0 -10
- package/dist/shared/utils/typed-ref.js.map +0 -1
- package/src/shared/schema-registry.ts +0 -82
- package/src/shared/tests/schema-registry.test.ts +0 -14
- package/src/shared/utils/schema-registry.ts +0 -82
- package/src/shared/utils/tests/schema-registry.test.ts +0 -13
- package/src/shared/utils/typed-ref.ts +0 -53
- /package/dist/shared/{utils/schema-registry.js.map → bricks/manifests/_types.js.map} +0 -0
|
@@ -1,22 +1,38 @@
|
|
|
1
1
|
import { defineBrickManifest } from "~/shared/brick-manifest";
|
|
2
2
|
import { defineProps } from "../props/helpers";
|
|
3
|
-
import {
|
|
3
|
+
import { textContent } from "../props/text";
|
|
4
4
|
import { BsCardText } from "react-icons/bs";
|
|
5
|
-
import {
|
|
5
|
+
import { image } from "../props/image";
|
|
6
6
|
import { type Static, Type } from "@sinclair/typebox";
|
|
7
7
|
import type { BrickProps } from "../props/types";
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
8
|
+
import { shadow } from "../props/effects";
|
|
9
|
+
import { border, rounding } from "../props/border";
|
|
10
|
+
import { colorPreset } from "../props/color-preset";
|
|
11
|
+
import { loop } from "../props/dynamic";
|
|
12
12
|
import { StringEnum } from "~/shared/utils/string-enum";
|
|
13
|
+
import { urlOrPageId } from "../props/string";
|
|
14
|
+
import type { BrickExample } from "./_types";
|
|
13
15
|
|
|
14
16
|
export const manifest = defineBrickManifest({
|
|
15
17
|
type: "card",
|
|
16
18
|
name: "Card",
|
|
17
19
|
description: "A card that can have a title, image, and content.",
|
|
18
|
-
aiInstructions:
|
|
19
|
-
|
|
20
|
+
aiInstructions: `Use this brick to create visually distinct content blocks (product, feature, testimonial, event, article, CTA, etc.).
|
|
21
|
+
|
|
22
|
+
Guidelines:
|
|
23
|
+
- Button is REQUIRED.
|
|
24
|
+
- Always provide a short action label (1-3 words) and pick a color matching semantic weight (primary/accent for primary actions, neutral/secondary for low emphasis).
|
|
25
|
+
- Image is OPTIONAL. If present you may set imagePosition to top | middle | bottom. Default is top.
|
|
26
|
+
- Pick middle for vertically centered feature highlights, bottom for caption-first layouts.
|
|
27
|
+
- Set noTitle: true when the card is intentionally title-less (e.g. a quote card or pure media focus).
|
|
28
|
+
- Do NOT include an empty title string alongside noTitle.
|
|
29
|
+
- Use dynamic tokens (e.g. {{products.price}}) instead of duplicating literal values.
|
|
30
|
+
- Prefer gradient presets for more visual emphasis (e.g. primary-gradient-400 with gradientDirection).
|
|
31
|
+
- border + rounding + shadow should be cohesive: stronger borders pair well with larger rounding + moderate shadow; minimal / flat cards may use border-0 + no shadow.
|
|
32
|
+
- For internal navigation you can supply a page ID (e.g. 'about') OR a relative/absolute URL (e.g. '/pricing', 'https://example.com').
|
|
33
|
+
- Keep HTML inside text minimal (<strong>, <em>, <br>) — for richer structure consider multiple bricks instead.
|
|
34
|
+
- Avoid mixing noTitle with large heading text embedded inside the text field — in that case keep a proper title.
|
|
35
|
+
- Return ONLY valid properties defined in the schema; do not invent new ones.`,
|
|
20
36
|
icon: BsCardText,
|
|
21
37
|
defaultWidth: { desktop: "400px", mobile: "100%" },
|
|
22
38
|
minWidth: { desktop: 300 },
|
|
@@ -24,14 +40,14 @@ export const manifest = defineBrickManifest({
|
|
|
24
40
|
maxWidth: { desktop: 650 },
|
|
25
41
|
props: defineProps({
|
|
26
42
|
colorPreset: Type.Optional(
|
|
27
|
-
|
|
43
|
+
colorPreset({
|
|
28
44
|
title: "Color preset",
|
|
29
45
|
default: { color: "base-100" },
|
|
30
46
|
}),
|
|
31
47
|
),
|
|
32
48
|
|
|
33
49
|
cardImage: Type.Optional(
|
|
34
|
-
|
|
50
|
+
image({
|
|
35
51
|
"ui:responsive": "desktop",
|
|
36
52
|
metadata: {
|
|
37
53
|
category: "content",
|
|
@@ -39,8 +55,8 @@ export const manifest = defineBrickManifest({
|
|
|
39
55
|
}),
|
|
40
56
|
),
|
|
41
57
|
imagePosition: Type.Optional(
|
|
42
|
-
StringEnum(["top", "middle", "bottom"
|
|
43
|
-
enumNames: ["Top", "Middle", "Bottom"
|
|
58
|
+
StringEnum(["top", "middle", "bottom"], {
|
|
59
|
+
enumNames: ["Top", "Middle", "Bottom"],
|
|
44
60
|
title: "Image Position",
|
|
45
61
|
description: "Where the image should be placed in the card",
|
|
46
62
|
default: "top",
|
|
@@ -61,52 +77,165 @@ export const manifest = defineBrickManifest({
|
|
|
61
77
|
"ui:responsive": "desktop",
|
|
62
78
|
}),
|
|
63
79
|
),
|
|
64
|
-
title: Type.Optional(
|
|
65
|
-
text: Type.Optional(
|
|
80
|
+
title: Type.Optional(textContent({ title: "Title" })),
|
|
81
|
+
text: Type.Optional(textContent({ title: "Text" })),
|
|
66
82
|
rounding: Type.Optional(
|
|
67
|
-
|
|
83
|
+
rounding({
|
|
68
84
|
default: "rounded-md",
|
|
69
85
|
}),
|
|
70
86
|
),
|
|
71
87
|
border: Type.Optional(
|
|
72
|
-
|
|
88
|
+
border({
|
|
73
89
|
// default: { width: "border", color: "border-base-300" },
|
|
74
90
|
}),
|
|
75
91
|
),
|
|
76
92
|
shadow: Type.Optional(
|
|
77
|
-
|
|
93
|
+
shadow({
|
|
78
94
|
default: "shadow-sm",
|
|
79
95
|
}),
|
|
80
96
|
),
|
|
81
|
-
loop: Type.Optional(
|
|
97
|
+
loop: Type.Optional(loop()),
|
|
98
|
+
button: Type.Object(
|
|
99
|
+
{
|
|
100
|
+
label: Type.String({
|
|
101
|
+
title: "Button label",
|
|
102
|
+
default: "Click me",
|
|
103
|
+
examples: ["Learn more", "Buy now", "Sign up"],
|
|
104
|
+
metadata: {
|
|
105
|
+
category: "content",
|
|
106
|
+
},
|
|
107
|
+
}),
|
|
108
|
+
url: urlOrPageId({
|
|
109
|
+
title: "Button URL",
|
|
110
|
+
description: "The URL the button should link to.",
|
|
111
|
+
metadata: {
|
|
112
|
+
category: "content",
|
|
113
|
+
},
|
|
114
|
+
}),
|
|
115
|
+
color: Type.Optional(
|
|
116
|
+
StringEnum(["btn-neutral", "btn-primary", "btn-secondary", "btn-accent"], {
|
|
117
|
+
enumNames: ["Neutral", "Primary", "Secondary", "Accent"],
|
|
118
|
+
title: "Color",
|
|
119
|
+
default: "btn-primary",
|
|
120
|
+
}),
|
|
121
|
+
),
|
|
122
|
+
},
|
|
123
|
+
{ title: "Button", description: "Button displayed at the bottom of the card" },
|
|
124
|
+
),
|
|
82
125
|
}),
|
|
83
126
|
});
|
|
84
127
|
|
|
85
128
|
export type Manifest = typeof manifest;
|
|
86
129
|
|
|
87
|
-
export const examples:
|
|
88
|
-
description: string;
|
|
89
|
-
type: string;
|
|
90
|
-
props: BrickProps<Manifest>["brick"]["props"];
|
|
91
|
-
}[] = [
|
|
130
|
+
export const examples: BrickExample<Manifest>[] = [
|
|
92
131
|
{
|
|
93
132
|
description: "A simple card with a title and content",
|
|
94
133
|
type: "card",
|
|
95
134
|
props: {
|
|
96
135
|
title: "Card Title",
|
|
97
136
|
text: "This is the body of the card.",
|
|
137
|
+
button: {
|
|
138
|
+
label: "Learn more",
|
|
139
|
+
url: "/learn-more",
|
|
140
|
+
color: "btn-primary",
|
|
141
|
+
},
|
|
98
142
|
},
|
|
99
143
|
},
|
|
144
|
+
// IMAGE POSITION MIDDLE VARIANT
|
|
100
145
|
{
|
|
101
|
-
description: "
|
|
146
|
+
description: "Feature highlight card with centered image (imagePosition=middle)",
|
|
102
147
|
type: "card",
|
|
103
148
|
props: {
|
|
104
|
-
cardImage: {
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
149
|
+
cardImage: { src: "https://via.placeholder.com/420x240", alt: "Feature visual" },
|
|
150
|
+
imagePosition: "middle",
|
|
151
|
+
title: "Blazing Performance",
|
|
152
|
+
text: "Our new engine reduces processing time by 45% while maintaining reliability.",
|
|
153
|
+
colorPreset: { color: "primary-100" },
|
|
154
|
+
border: { width: "border", color: "border-primary-200" },
|
|
155
|
+
rounding: "rounded-lg",
|
|
156
|
+
shadow: "shadow-sm",
|
|
157
|
+
button: { label: "Learn More", url: "/features/performance", color: "btn-primary" },
|
|
158
|
+
},
|
|
159
|
+
},
|
|
160
|
+
// IMAGE POSITION BOTTOM VARIANT
|
|
161
|
+
{
|
|
162
|
+
description: "Case study card with image at the bottom (imagePosition=bottom)",
|
|
163
|
+
type: "card",
|
|
164
|
+
props: {
|
|
165
|
+
title: "Case Study: ScaleOps",
|
|
166
|
+
text: "How ScaleOps handled 10x growth with zero downtime using our platform.",
|
|
167
|
+
cardImage: { src: "https://via.placeholder.com/600x260", alt: "Scale graph" },
|
|
168
|
+
imagePosition: "bottom",
|
|
169
|
+
colorPreset: { color: "secondary-50" },
|
|
170
|
+
rounding: "rounded-md",
|
|
171
|
+
shadow: "shadow-sm",
|
|
172
|
+
button: { label: "Read Study", url: "/cases/scaleops", color: "btn-secondary" },
|
|
173
|
+
},
|
|
174
|
+
},
|
|
175
|
+
// NO TITLE VARIANT
|
|
176
|
+
{
|
|
177
|
+
description: "Quote / testimonial style card without a title (uses noTitle=true)",
|
|
178
|
+
type: "card",
|
|
179
|
+
props: {
|
|
180
|
+
noTitle: true,
|
|
181
|
+
text: '"This toolkit accelerated our launch by weeks — the component quality is outstanding."<br><em>— CTO, FinEdge</em>',
|
|
182
|
+
colorPreset: { color: "neutral-100" },
|
|
183
|
+
border: { width: "border", color: "border-neutral-300" },
|
|
184
|
+
rounding: "rounded-xl",
|
|
185
|
+
shadow: "shadow-sm",
|
|
186
|
+
button: { label: "See More", url: "/testimonials", color: "btn-neutral" },
|
|
187
|
+
},
|
|
188
|
+
},
|
|
189
|
+
// INTERNAL PAGE ID LINK VARIANT
|
|
190
|
+
{
|
|
191
|
+
description: "Internal navigation card using a page ID instead of a URL",
|
|
192
|
+
type: "card",
|
|
193
|
+
props: {
|
|
194
|
+
title: "About Our Mission",
|
|
195
|
+
text: "Learn how we're building an open, extensible site generation platform for modern teams.",
|
|
196
|
+
colorPreset: { color: "base-100" },
|
|
197
|
+
rounding: "rounded-md",
|
|
198
|
+
button: { label: "About Us", url: "about", color: "btn-primary" },
|
|
199
|
+
},
|
|
200
|
+
},
|
|
201
|
+
// GRADIENT & STRONG BORDER VARIANT
|
|
202
|
+
{
|
|
203
|
+
description: "High-emphasis promotional card using gradient background and thick border",
|
|
204
|
+
type: "card",
|
|
205
|
+
props: {
|
|
206
|
+
title: "Limited Time Offer",
|
|
207
|
+
text: "Upgrade now and receive a complimentary strategy session plus extended analytics access.",
|
|
208
|
+
colorPreset: { color: "primary-gradient-400", gradientDirection: "bg-gradient-to-tr" },
|
|
209
|
+
border: { width: "border-4", color: "border-primary-400" },
|
|
210
|
+
rounding: "rounded-xl",
|
|
211
|
+
shadow: "shadow-lg",
|
|
212
|
+
button: { label: "Upgrade", url: "/pricing", color: "btn-accent" },
|
|
213
|
+
},
|
|
214
|
+
},
|
|
215
|
+
// MINIMAL / FLAT VARIANT (no border, no shadow, subtle preset)
|
|
216
|
+
{
|
|
217
|
+
description: "Minimal flat information card (border-0, no shadow)",
|
|
218
|
+
type: "card",
|
|
219
|
+
props: {
|
|
220
|
+
title: "Maintenance Window",
|
|
221
|
+
text: "Scheduled maintenance on Saturday 02:00–03:00 UTC. API responses may be delayed.",
|
|
222
|
+
colorPreset: { color: "neutral-50" },
|
|
223
|
+
border: { width: "border-0", color: "border-neutral-200" },
|
|
224
|
+
button: { label: "Status Page", url: "/status", color: "btn-neutral" },
|
|
225
|
+
},
|
|
226
|
+
},
|
|
227
|
+
// DARK / INVERTED VARIANT
|
|
228
|
+
{
|
|
229
|
+
description: "Dark themed spotlight card (primary-800 background)",
|
|
230
|
+
type: "card",
|
|
231
|
+
props: {
|
|
232
|
+
title: "Night Mode Preview",
|
|
233
|
+
text: "Experience the new adaptive dark theme optimized for low ambient light environments.",
|
|
234
|
+
colorPreset: { color: "primary-800" },
|
|
235
|
+
border: { width: "border", color: "border-primary-600" },
|
|
236
|
+
rounding: "rounded-lg",
|
|
237
|
+
shadow: "shadow-md",
|
|
238
|
+
button: { label: "Preview", url: "/themes/dark", color: "btn-primary" },
|
|
110
239
|
},
|
|
111
240
|
},
|
|
112
241
|
{
|
|
@@ -115,29 +244,31 @@ export const examples: {
|
|
|
115
244
|
props: {
|
|
116
245
|
title: "Key Feature",
|
|
117
246
|
text: "This feature provides exceptional value and enhances user experience significantly.",
|
|
247
|
+
colorPreset: { color: "primary-50" },
|
|
248
|
+
border: { width: "border", color: "border-primary-200" },
|
|
249
|
+
rounding: "rounded-lg",
|
|
250
|
+
shadow: "shadow-sm",
|
|
251
|
+
button: {
|
|
252
|
+
label: "Discover More",
|
|
253
|
+
url: "/features",
|
|
254
|
+
color: "btn-primary",
|
|
255
|
+
},
|
|
118
256
|
},
|
|
119
257
|
},
|
|
120
258
|
{
|
|
121
259
|
description: "Blog post card with image at the bottom",
|
|
122
260
|
type: "card",
|
|
123
261
|
props: {
|
|
124
|
-
title: "
|
|
262
|
+
title: "Future of Tech",
|
|
125
263
|
text: "Exploring emerging trends and innovations that will shape our digital landscape in the coming decade.",
|
|
126
264
|
cardImage: {
|
|
127
265
|
src: "https://via.placeholder.com/400x200",
|
|
128
266
|
alt: "Technology concept",
|
|
129
267
|
},
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
type: "card",
|
|
135
|
-
props: {
|
|
136
|
-
title: "Customer Review",
|
|
137
|
-
text: '"This product exceeded my expectations. The quality is outstanding and the customer service is top-notch!"',
|
|
138
|
-
cardImage: {
|
|
139
|
-
src: "https://via.placeholder.com/150x150",
|
|
140
|
-
alt: "Customer photo",
|
|
268
|
+
button: {
|
|
269
|
+
label: "Read More",
|
|
270
|
+
url: "/blog/{{ blogPosts.$slug }}",
|
|
271
|
+
color: "btn-primary",
|
|
141
272
|
},
|
|
142
273
|
},
|
|
143
274
|
},
|
|
@@ -147,6 +278,11 @@ export const examples: {
|
|
|
147
278
|
props: {
|
|
148
279
|
title: "Simple Announcement",
|
|
149
280
|
text: "Important updates will be posted here regularly.",
|
|
281
|
+
button: {
|
|
282
|
+
label: "View Updates",
|
|
283
|
+
url: "/updates",
|
|
284
|
+
color: "btn-neutral",
|
|
285
|
+
},
|
|
150
286
|
},
|
|
151
287
|
},
|
|
152
288
|
{
|
|
@@ -159,6 +295,11 @@ export const examples: {
|
|
|
159
295
|
},
|
|
160
296
|
title: "Annual Conference 2025",
|
|
161
297
|
text: "Join us for three days of inspiring talks, networking opportunities, and hands-on workshops.",
|
|
298
|
+
button: {
|
|
299
|
+
label: "Register Now",
|
|
300
|
+
url: "/events/conference-2025",
|
|
301
|
+
color: "btn-primary",
|
|
302
|
+
},
|
|
162
303
|
},
|
|
163
304
|
},
|
|
164
305
|
{
|
|
@@ -171,6 +312,11 @@ export const examples: {
|
|
|
171
312
|
},
|
|
172
313
|
title: "Breaking News Update",
|
|
173
314
|
text: "Latest developments in the ongoing story with expert analysis and community reactions.",
|
|
315
|
+
button: {
|
|
316
|
+
label: "Read Full Article",
|
|
317
|
+
url: "/news/breaking-update",
|
|
318
|
+
color: "btn-secondary",
|
|
319
|
+
},
|
|
174
320
|
},
|
|
175
321
|
},
|
|
176
322
|
{
|
|
@@ -179,6 +325,11 @@ export const examples: {
|
|
|
179
325
|
props: {
|
|
180
326
|
title: "Get Started Today",
|
|
181
327
|
text: "Transform your workflow with our powerful tools. Sign up now and get 30 days free!",
|
|
328
|
+
button: {
|
|
329
|
+
label: "Sign Up Now",
|
|
330
|
+
url: "/signup",
|
|
331
|
+
color: "btn-primary",
|
|
332
|
+
},
|
|
182
333
|
},
|
|
183
334
|
},
|
|
184
335
|
{
|
|
@@ -195,6 +346,11 @@ export const examples: {
|
|
|
195
346
|
border: { width: "border", color: "border-primary-200" },
|
|
196
347
|
rounding: "rounded-lg",
|
|
197
348
|
shadow: "shadow-md",
|
|
349
|
+
button: {
|
|
350
|
+
label: "Buy Now",
|
|
351
|
+
url: "{{products.purchaseUrl}}",
|
|
352
|
+
color: "btn-primary",
|
|
353
|
+
},
|
|
198
354
|
loop: {
|
|
199
355
|
over: "products",
|
|
200
356
|
},
|
|
@@ -214,6 +370,11 @@ export const examples: {
|
|
|
214
370
|
colorPreset: { color: "neutral-100" },
|
|
215
371
|
rounding: "rounded-xl",
|
|
216
372
|
shadow: "shadow-lg",
|
|
373
|
+
button: {
|
|
374
|
+
label: "Contact",
|
|
375
|
+
url: "mailto:{{teamMembers.email}}",
|
|
376
|
+
color: "btn-neutral",
|
|
377
|
+
},
|
|
217
378
|
loop: {
|
|
218
379
|
over: "teamMembers",
|
|
219
380
|
},
|
|
@@ -234,6 +395,11 @@ export const examples: {
|
|
|
234
395
|
border: { width: "border", color: "border-secondary-300" },
|
|
235
396
|
rounding: "rounded-md",
|
|
236
397
|
shadow: "shadow-sm",
|
|
398
|
+
button: {
|
|
399
|
+
label: "Read More",
|
|
400
|
+
url: "{{blogPosts.url}}",
|
|
401
|
+
color: "btn-secondary",
|
|
402
|
+
},
|
|
237
403
|
loop: {
|
|
238
404
|
over: "blogPosts",
|
|
239
405
|
},
|
|
@@ -254,6 +420,11 @@ export const examples: {
|
|
|
254
420
|
border: { width: "border-2", color: "border-accent-400" },
|
|
255
421
|
rounding: "rounded-lg",
|
|
256
422
|
shadow: "shadow-md",
|
|
423
|
+
button: {
|
|
424
|
+
label: "Book Tickets",
|
|
425
|
+
url: "{{upcomingEvents.ticketUrl}}",
|
|
426
|
+
color: "btn-accent",
|
|
427
|
+
},
|
|
257
428
|
loop: {
|
|
258
429
|
over: "upcomingEvents",
|
|
259
430
|
},
|
|
@@ -267,12 +438,17 @@ export const examples: {
|
|
|
267
438
|
src: "{{customerReviews.customerPhoto}}",
|
|
268
439
|
alt: "{{customerReviews.customerName}}",
|
|
269
440
|
},
|
|
270
|
-
imagePosition: "
|
|
441
|
+
imagePosition: "top",
|
|
271
442
|
title: "{{customerReviews.customerName}}",
|
|
272
443
|
text: '"{{customerReviews.review}}"<br><br><strong>Rating: {{customerReviews.rating}}/5 stars</strong><br>{{customerReviews.company}} • {{customerReviews.position}}',
|
|
273
444
|
colorPreset: { color: "neutral-50" },
|
|
274
445
|
rounding: "rounded-xl",
|
|
275
446
|
shadow: "shadow-lg",
|
|
447
|
+
button: {
|
|
448
|
+
label: "See All Reviews",
|
|
449
|
+
url: "/reviews",
|
|
450
|
+
color: "btn-neutral",
|
|
451
|
+
},
|
|
276
452
|
loop: {
|
|
277
453
|
over: "customerReviews",
|
|
278
454
|
},
|
|
@@ -293,6 +469,11 @@ export const examples: {
|
|
|
293
469
|
border: { width: "border", color: "border-primary-300" },
|
|
294
470
|
rounding: "rounded-lg",
|
|
295
471
|
shadow: "shadow-md",
|
|
472
|
+
button: {
|
|
473
|
+
label: "Learn More",
|
|
474
|
+
url: "{{companyServices.detailsUrl}}",
|
|
475
|
+
color: "btn-primary",
|
|
476
|
+
},
|
|
296
477
|
loop: {
|
|
297
478
|
over: "companyServices",
|
|
298
479
|
},
|
|
@@ -312,6 +493,11 @@ export const examples: {
|
|
|
312
493
|
colorPreset: { color: "secondary-100" },
|
|
313
494
|
rounding: "rounded-md",
|
|
314
495
|
shadow: "shadow-sm",
|
|
496
|
+
button: {
|
|
497
|
+
label: "View Project",
|
|
498
|
+
url: "{{portfolioWork.projectUrl}}",
|
|
499
|
+
color: "btn-secondary",
|
|
500
|
+
},
|
|
315
501
|
loop: {
|
|
316
502
|
over: "portfolioWork",
|
|
317
503
|
},
|