@upstart.gg/sdk 0.0.129 → 0.0.131
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 +13 -0
- package/dist/shared/ai/schemas.d.ts.map +1 -0
- package/dist/shared/ai/schemas.js +3 -0
- package/dist/shared/ai/types.d.ts +164 -0
- package/dist/shared/ai/types.d.ts.map +1 -0
- package/dist/shared/{chunk-EJGNYD4V.js → ai/types.js} +0 -1
- package/dist/shared/ajv.d.ts +2 -1
- package/dist/shared/ajv.d.ts.map +1 -1
- package/dist/shared/ajv.js +1 -1
- package/dist/shared/attributes.d.ts +300 -12
- package/dist/shared/attributes.d.ts.map +1 -1
- package/dist/shared/attributes.js +1 -1
- package/dist/shared/brick-manifest.d.ts +3 -1
- package/dist/shared/brick-manifest.d.ts.map +1 -1
- package/dist/shared/brick-manifest.js +1 -1
- package/dist/shared/bricks/manifests/accordion.manifest.d.ts +4 -3
- package/dist/shared/bricks/manifests/accordion.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/accordion.manifest.js +1 -1
- package/dist/shared/bricks/manifests/all-manifests.d.ts +4 -1
- package/dist/shared/bricks/manifests/all-manifests.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/all-manifests.js +1 -1
- package/dist/shared/bricks/manifests/box.manifest.d.ts +6 -4
- package/dist/shared/bricks/manifests/box.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/box.manifest.js +1 -1
- package/dist/shared/bricks/manifests/button.manifest.d.ts +4 -3
- package/dist/shared/bricks/manifests/button.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/button.manifest.js +1 -1
- package/dist/shared/bricks/manifests/card.manifest.d.ts +6 -5
- package/dist/shared/bricks/manifests/card.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/card.manifest.js +1 -1
- package/dist/shared/bricks/manifests/carousel.manifest.d.ts +6 -5
- package/dist/shared/bricks/manifests/carousel.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/carousel.manifest.js +1 -1
- package/dist/shared/bricks/manifests/footer.manifest.d.ts +40 -5
- package/dist/shared/bricks/manifests/footer.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/footer.manifest.js +1 -1
- package/dist/shared/bricks/manifests/form.manifest.d.ts +6 -5
- package/dist/shared/bricks/manifests/form.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/form.manifest.js +1 -1
- package/dist/shared/bricks/manifests/hero.manifest.d.ts +4 -3
- package/dist/shared/bricks/manifests/hero.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/hero.manifest.js +1 -1
- package/dist/shared/bricks/manifests/html.manifest.d.ts +3 -2
- package/dist/shared/bricks/manifests/html.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/html.manifest.js +1 -1
- package/dist/shared/bricks/manifests/icon.manifest.d.ts +3 -2
- package/dist/shared/bricks/manifests/icon.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/icon.manifest.js +1 -1
- package/dist/shared/bricks/manifests/image.manifest.d.ts +10 -6
- package/dist/shared/bricks/manifests/image.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/image.manifest.js +1 -1
- package/dist/shared/bricks/manifests/images-gallery.manifest.d.ts +7 -6
- package/dist/shared/bricks/manifests/images-gallery.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/images-gallery.manifest.js +1 -1
- package/dist/shared/bricks/manifests/map.manifest.d.ts +5 -4
- package/dist/shared/bricks/manifests/map.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/map.manifest.js +1 -1
- package/dist/shared/bricks/manifests/navbar.manifest.d.ts +42 -8
- package/dist/shared/bricks/manifests/navbar.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/navbar.manifest.js +1 -1
- package/dist/shared/bricks/manifests/sidebar.manifest.d.ts +4 -3
- package/dist/shared/bricks/manifests/sidebar.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/sidebar.manifest.js +1 -1
- package/dist/shared/bricks/manifests/social-links.manifest.d.ts +5 -4
- package/dist/shared/bricks/manifests/social-links.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/social-links.manifest.js +1 -1
- package/dist/shared/bricks/manifests/spacer.manifest.d.ts +3 -2
- package/dist/shared/bricks/manifests/spacer.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/spacer.manifest.js +1 -1
- package/dist/shared/bricks/manifests/testimonials.manifest.d.ts +6 -5
- package/dist/shared/bricks/manifests/testimonials.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/testimonials.manifest.js +1 -1
- package/dist/shared/bricks/manifests/text.manifest.d.ts +4 -3
- package/dist/shared/bricks/manifests/text.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/text.manifest.js +1 -1
- package/dist/shared/bricks/manifests/video.manifest.d.ts +4 -3
- package/dist/shared/bricks/manifests/video.manifest.d.ts.map +1 -1
- package/dist/shared/bricks/manifests/video.manifest.js +1 -1
- package/dist/shared/bricks/props/align.d.ts.map +1 -1
- package/dist/shared/bricks/props/align.js +1 -1
- package/dist/shared/bricks/props/background.d.ts +6 -9
- package/dist/shared/bricks/props/background.d.ts.map +1 -1
- package/dist/shared/bricks/props/background.js +1 -1
- package/dist/shared/bricks/props/border.d.ts.map +1 -1
- package/dist/shared/bricks/props/border.js +1 -1
- package/dist/shared/bricks/props/color-preset.d.ts +3 -4
- package/dist/shared/bricks/props/color-preset.d.ts.map +1 -1
- package/dist/shared/bricks/props/color-preset.js +1 -1
- package/dist/shared/bricks/props/color.js +1 -1
- package/dist/shared/bricks/props/common.d.ts +6 -6
- package/dist/shared/bricks/props/common.d.ts.map +1 -1
- package/dist/shared/bricks/props/common.js +1 -1
- package/dist/shared/bricks/props/css-length.d.ts.map +1 -1
- package/dist/shared/bricks/props/css-length.js +1 -1
- package/dist/shared/bricks/props/datasource.d.ts +1 -1
- package/dist/shared/bricks/props/datasource.js +1 -1
- package/dist/shared/bricks/props/date.d.ts.map +1 -1
- package/dist/shared/bricks/props/date.js +1 -1
- package/dist/shared/bricks/props/direction.d.ts.map +1 -1
- package/dist/shared/bricks/props/direction.js +1 -1
- package/dist/shared/bricks/props/dynamic.d.ts.map +1 -1
- package/dist/shared/bricks/props/dynamic.js +1 -1
- package/dist/shared/bricks/props/effects.d.ts +0 -1
- package/dist/shared/bricks/props/effects.d.ts.map +1 -1
- package/dist/shared/bricks/props/effects.js +1 -1
- package/dist/shared/bricks/props/file.d.ts.map +1 -1
- package/dist/shared/bricks/props/file.js +1 -1
- package/dist/shared/bricks/props/geolocation.js +1 -1
- package/dist/shared/bricks/props/helpers.d.ts +2 -2
- package/dist/shared/bricks/props/helpers.js +1 -1
- package/dist/shared/bricks/props/image.d.ts +4 -4
- package/dist/shared/bricks/props/image.d.ts.map +1 -1
- package/dist/shared/bricks/props/image.js +1 -1
- package/dist/shared/bricks/props/position.d.ts +0 -2
- package/dist/shared/bricks/props/position.d.ts.map +1 -1
- package/dist/shared/bricks/props/position.js +1 -1
- package/dist/shared/bricks/props/string.js +1 -1
- package/dist/shared/bricks/props/tags.d.ts.map +1 -1
- package/dist/shared/bricks/props/tags.js +1 -1
- package/dist/shared/bricks/props/text.js +1 -1
- package/dist/shared/bricks/props/types.d.ts +1 -2
- package/dist/shared/bricks/props/types.d.ts.map +1 -1
- package/dist/shared/bricks.d.ts +189 -18
- package/dist/shared/bricks.d.ts.map +1 -1
- package/dist/shared/bricks.js +1 -1
- package/dist/shared/chunk-2CYAFF56.js +3 -0
- package/dist/shared/chunk-2NLDX5FG.js +3 -0
- package/dist/shared/chunk-3FPFR5RA.js +3 -0
- package/dist/shared/chunk-3P36LG6T.js +3 -0
- package/dist/shared/chunk-3QOAHMV4.js +5 -0
- package/dist/shared/chunk-4GIZ6WSG.js +3 -0
- package/dist/shared/chunk-5WY7LYXK.js +3 -0
- package/dist/shared/chunk-5X5SX5N7.js +4 -0
- package/dist/shared/chunk-6L3Z5SZQ.js +3 -0
- package/dist/shared/{chunk-UU2MSQXY.js → chunk-6PGAWO4H.js} +1 -1
- package/dist/shared/chunk-6R76KIHZ.js +3 -0
- package/dist/shared/chunk-7UBMXMNJ.js +3 -0
- package/dist/shared/chunk-AB3IMRXZ.js +3 -0
- package/dist/shared/chunk-AMQAGDFH.js +3 -0
- package/dist/shared/chunk-ARMM6B47.js +3 -0
- package/dist/shared/chunk-ARYG4XMX.js +3 -0
- package/dist/shared/chunk-AZHH3XJJ.js +3 -0
- package/dist/shared/chunk-COT2ROEH.js +34 -0
- package/dist/shared/chunk-DHSWVVMI.js +3 -0
- package/dist/shared/chunk-DKNOZLA6.js +3 -0
- package/dist/shared/chunk-EVDZ2KND.js +6 -0
- package/dist/shared/chunk-F4JNKU7J.js +3 -0
- package/dist/shared/chunk-GC5OWY2Z.js +3 -0
- package/dist/shared/chunk-GXNHF6J5.js +3 -0
- package/dist/shared/chunk-HP7CZB2F.js +3 -0
- package/dist/shared/chunk-HSRXUIVM.js +3 -0
- package/dist/shared/chunk-ILIWVWHC.js +8 -0
- package/dist/shared/chunk-JRCVYDCD.js +3 -0
- package/dist/shared/chunk-L2HOZVBC.js +3 -0
- package/dist/shared/chunk-LEWKHCRI.js +3 -0
- package/dist/shared/chunk-LT4CW2F7.js +3 -0
- package/dist/shared/chunk-MVCVVKBY.js +3 -0
- package/dist/shared/chunk-NKIEDT7V.js +3 -0
- package/dist/shared/chunk-NQKXDMQ5.js +3 -0
- package/dist/shared/chunk-NXIF3UMD.js +3 -0
- package/dist/shared/chunk-PW5HRVMD.js +3 -0
- package/dist/shared/chunk-PZYX3ACO.js +3 -0
- package/dist/shared/chunk-QDJQAZIA.js +8 -0
- package/dist/shared/chunk-QGFQA7OZ.js +4 -0
- package/dist/shared/chunk-RJZZWCBD.js +3 -0
- package/dist/shared/chunk-SAJY7H6N.js +3 -0
- package/dist/shared/chunk-SFDRAHYP.js +3 -0
- package/dist/shared/chunk-STDCM2KD.js +3 -0
- package/dist/shared/chunk-TCTVRT4O.js +3 -0
- package/dist/shared/chunk-TH5SONR6.js +3 -0
- package/dist/shared/chunk-UCR2UZOY.js +3 -0
- package/dist/shared/chunk-UDQWYGSO.js +3 -0
- package/dist/shared/{chunk-LSPN22SI.js → chunk-URRCKLAS.js} +3 -3
- package/dist/shared/{chunk-OIOYMECS.js → chunk-US53TNMK.js} +1 -1
- package/dist/shared/chunk-VDX2J22H.js +3 -0
- package/dist/shared/chunk-VE3S4LGT.js +3 -0
- package/dist/shared/chunk-VK26ZZFR.js +3 -0
- package/dist/shared/chunk-VLXZMESE.js +3 -0
- package/dist/shared/chunk-WAML3IGZ.js +3 -0
- package/dist/shared/chunk-WXKRIUTA.js +3 -0
- package/dist/shared/chunk-X62OEAE6.js +3 -0
- package/dist/shared/chunk-XED6ARVN.js +3 -0
- package/dist/shared/chunk-Y3X4F4YJ.js +3 -0
- package/dist/shared/chunk-Z4YKRLOX.js +3 -0
- package/dist/shared/context.d.ts +6 -15
- package/dist/shared/context.d.ts.map +1 -1
- package/dist/shared/datarecords/external/airtable/handler.d.ts +24 -7
- package/dist/shared/datarecords/external/airtable/handler.d.ts.map +1 -1
- package/dist/shared/datarecords/external/airtable/handler.js +3 -0
- package/dist/shared/datarecords/external/airtable/oauth/config.js +3 -0
- package/dist/shared/datarecords/external/airtable/types.d.ts +40 -0
- package/dist/shared/datarecords/external/airtable/types.d.ts.map +1 -0
- package/dist/shared/datarecords/external/airtable/types.js +3 -0
- package/dist/shared/datarecords/external/generic-webhook/handler.js +3 -0
- package/dist/shared/datarecords/external/generic-webhook/options.js +3 -0
- package/dist/shared/datarecords/external/google/sheets/client.d.ts +14 -0
- package/dist/shared/datarecords/external/google/sheets/client.d.ts.map +1 -0
- package/dist/shared/datarecords/external/google/sheets/client.js +3 -0
- package/dist/shared/datarecords/external/google/sheets/handler.d.ts +27 -5
- package/dist/shared/datarecords/external/google/sheets/handler.d.ts.map +1 -1
- package/dist/shared/datarecords/external/google/sheets/handler.js +7 -0
- package/dist/shared/datarecords/external/google/sheets/{options.d.ts → types.d.ts} +1 -1
- package/dist/shared/datarecords/external/google/sheets/types.d.ts.map +1 -0
- package/dist/shared/datarecords/external/google/sheets/types.js +3 -0
- package/dist/shared/datarecords/external/notion/handler.d.ts +31 -0
- package/dist/shared/datarecords/external/notion/handler.d.ts.map +1 -0
- package/dist/shared/datarecords/external/notion/handler.js +3 -0
- package/dist/shared/datarecords/external/notion/oauth/config.js +3 -0
- package/dist/shared/datarecords/external/notion/{options.d.ts → types.d.ts} +11 -1
- package/dist/shared/datarecords/external/notion/types.d.ts.map +1 -0
- package/dist/shared/datarecords/external/notion/types.js +3 -0
- package/dist/shared/datarecords/types.d.ts +17 -18
- package/dist/shared/datarecords/types.d.ts.map +1 -1
- package/dist/shared/datarecords/types.js +1 -1
- package/dist/shared/datarecords.d.ts +2 -2
- package/dist/shared/datarecords.d.ts.map +1 -1
- package/dist/shared/datarecords.js +1 -1
- package/dist/shared/datasources/external/facebook/posts/fetcher.js +3 -0
- package/dist/shared/datasources/external/facebook/posts/schema.js +3 -0
- package/dist/shared/datasources/external/http-json/fetcher.js +3 -0
- package/dist/shared/datasources/external/http-json/options.js +3 -0
- package/dist/shared/datasources/external/http-json/schema.js +3 -0
- package/dist/shared/datasources/external/instagram/feed/fetcher.js +3 -0
- package/dist/shared/datasources/external/instagram/feed/schema.js +3 -0
- package/dist/shared/datasources/external/mastodon/account/fetcher.js +3 -0
- package/dist/shared/datasources/external/mastodon/account/schema.js +3 -0
- package/dist/shared/datasources/external/mastodon/options.js +3 -0
- package/dist/shared/datasources/external/mastodon/status/fetcher.js +3 -0
- package/dist/shared/datasources/external/mastodon/status/sample.array.js +3 -0
- package/dist/shared/datasources/external/mastodon/status/sample.single.js +3 -0
- package/dist/shared/datasources/external/mastodon/status/schema.d.ts.map +1 -1
- package/dist/shared/datasources/external/mastodon/status/schema.js +3 -0
- package/dist/shared/datasources/external/meta/options.js +3 -0
- package/dist/shared/datasources/external/rss/fetcher.js +3 -0
- package/dist/shared/datasources/external/rss/options.js +3 -0
- package/dist/shared/datasources/external/rss/schema.js +3 -0
- package/dist/shared/datasources/external/threads/media/fetcher.js +3 -0
- package/dist/shared/datasources/external/threads/media/schema.js +3 -0
- package/dist/shared/datasources/external/tiktok/video/fetcher.js +3 -0
- package/dist/shared/datasources/external/tiktok/video/options.js +3 -0
- package/dist/shared/datasources/external/tiktok/video/schema.js +3 -0
- package/dist/shared/datasources/external/youtube/list/fetcher.js +3 -0
- package/dist/shared/datasources/external/youtube/list/options.js +3 -0
- package/dist/shared/datasources/external/youtube/list/schema.js +3 -0
- package/dist/shared/datasources/fetcher.js +2 -0
- package/dist/shared/datasources/internal/blog/schema.js +3 -0
- package/dist/shared/datasources/internal/changelog/schema.js +3 -0
- package/dist/shared/datasources/internal/contact-info/schema.js +3 -0
- package/dist/shared/datasources/internal/cv/schema.js +3 -0
- package/dist/shared/datasources/internal/faq/schema.js +3 -0
- package/dist/shared/datasources/internal/job-board/schema.js +3 -0
- package/dist/shared/datasources/internal/links/schema.js +3 -0
- package/dist/shared/datasources/internal/recipes/schema.js +3 -0
- package/dist/shared/datasources/internal/restaurant/schema.js +3 -0
- package/dist/shared/datasources/samples.js +3 -0
- package/dist/shared/datasources/schemas.d.ts +0 -49
- package/dist/shared/datasources/schemas.d.ts.map +1 -1
- package/dist/shared/datasources/schemas.js +1 -1
- package/dist/shared/datasources/types.d.ts +53 -130
- package/dist/shared/datasources/types.d.ts.map +1 -1
- package/dist/shared/datasources/types.js +1 -1
- package/dist/shared/datasources/utils.js +3 -0
- package/dist/shared/datasources.d.ts +7 -4
- package/dist/shared/datasources.d.ts.map +1 -1
- package/dist/shared/datasources.js +1 -1
- package/dist/shared/errors.js +1 -1
- package/dist/shared/images.d.ts +1 -12
- package/dist/shared/images.d.ts.map +1 -1
- package/dist/shared/images.js +1 -1
- package/dist/shared/index.js +3 -0
- package/dist/shared/manifest.js +3 -0
- package/dist/shared/page.d.ts +155 -50
- package/dist/shared/page.d.ts.map +1 -1
- package/dist/shared/page.js +1 -1
- package/dist/shared/site.d.ts +322 -113
- package/dist/shared/site.d.ts.map +1 -1
- package/dist/shared/site.js +1 -1
- package/dist/shared/sitemap.d.ts +313 -13
- package/dist/shared/sitemap.d.ts.map +1 -1
- package/dist/shared/sitemap.js +1 -1
- package/dist/shared/social-icons.js +3 -0
- package/dist/shared/theme.d.ts +41 -4
- package/dist/shared/theme.d.ts.map +1 -1
- package/dist/shared/theme.js +1 -1
- package/dist/shared/utils/invariant.js +1 -1
- package/dist/shared/utils/llm.d.ts +19 -0
- package/dist/shared/utils/llm.d.ts.map +1 -0
- package/dist/shared/utils/llm.js +3 -0
- package/dist/shared/utils/schema.d.ts +6 -1
- package/dist/shared/utils/schema.d.ts.map +1 -1
- package/dist/shared/utils/schema.js +1 -1
- package/dist/shared/utils/tests/schema.test.d.ts +2 -0
- package/dist/shared/utils/tests/schema.test.d.ts.map +1 -0
- package/dist/shared/utils/typed-ref.d.ts +1 -6
- package/dist/shared/utils/typed-ref.d.ts.map +1 -1
- package/dist/shared/utils/typed-ref.js +1 -1
- package/package.json +19 -19
- package/src/shared/ai/schemas.ts +33 -0
- package/src/shared/ai/types.ts +151 -0
- package/src/shared/ajv.ts +123 -0
- package/src/shared/analytics/init.ts +14 -0
- package/src/shared/analytics/track.ts +21 -0
- package/src/shared/analytics/types.ts +13 -0
- package/src/shared/attributes.ts +396 -0
- package/src/shared/brick-manifest.ts +119 -0
- package/src/shared/bricks/manifests/accordion.manifest.ts +482 -0
- package/src/shared/bricks/manifests/all-manifests.ts +121 -0
- package/src/shared/bricks/manifests/box.manifest.ts +551 -0
- package/src/shared/bricks/manifests/button.manifest.ts +208 -0
- package/src/shared/bricks/manifests/card.manifest.ts +320 -0
- package/src/shared/bricks/manifests/carousel.manifest.ts +708 -0
- package/src/shared/bricks/manifests/footer.manifest.ts +509 -0
- package/src/shared/bricks/manifests/form.manifest.ts +226 -0
- package/src/shared/bricks/manifests/hero.manifest.ts +365 -0
- package/src/shared/bricks/manifests/html.manifest.ts +127 -0
- package/src/shared/bricks/manifests/icon.manifest.ts +164 -0
- package/src/shared/bricks/manifests/image.manifest.ts +378 -0
- package/src/shared/bricks/manifests/images-gallery.manifest.ts +822 -0
- package/src/shared/bricks/manifests/map.manifest.ts +215 -0
- package/src/shared/bricks/manifests/navbar.manifest.ts +361 -0
- package/src/shared/bricks/manifests/sidebar.manifest.ts +88 -0
- package/src/shared/bricks/manifests/social-links.manifest.ts +497 -0
- package/src/shared/bricks/manifests/spacer.manifest.ts +54 -0
- package/src/shared/bricks/manifests/testimonials.manifest.ts +480 -0
- package/src/shared/bricks/manifests/tests/header.manifest.test.ts +10 -0
- package/src/shared/bricks/manifests/text.manifest.ts +245 -0
- package/src/shared/bricks/manifests/video.manifest.ts +115 -0
- package/src/shared/bricks/props/align.ts +63 -0
- package/src/shared/bricks/props/background.ts +79 -0
- package/src/shared/bricks/props/boolean.ts +7 -0
- package/src/shared/bricks/props/border.ts +86 -0
- package/src/shared/bricks/props/color-preset.ts +390 -0
- package/src/shared/bricks/props/color.ts +40 -0
- package/src/shared/bricks/props/common.ts +64 -0
- package/src/shared/bricks/props/css-length.ts +32 -0
- package/src/shared/bricks/props/datarecord.ts +11 -0
- package/src/shared/bricks/props/datasource.ts +82 -0
- package/src/shared/bricks/props/date.ts +21 -0
- package/src/shared/bricks/props/direction.ts +21 -0
- package/src/shared/bricks/props/dynamic.ts +112 -0
- package/src/shared/bricks/props/effects.ts +71 -0
- package/src/shared/bricks/props/enum.ts +38 -0
- package/src/shared/bricks/props/file.ts +10 -0
- package/src/shared/bricks/props/geolocation.ts +36 -0
- package/src/shared/bricks/props/helpers.ts +73 -0
- package/src/shared/bricks/props/image.ts +96 -0
- package/src/shared/bricks/props/number.ts +8 -0
- package/src/shared/bricks/props/position.ts +11 -0
- package/src/shared/bricks/props/string.ts +72 -0
- package/src/shared/bricks/props/tags.ts +26 -0
- package/src/shared/bricks/props/tests/background.test.ts +90 -0
- package/src/shared/bricks/props/tests/border.test.ts +12 -0
- package/src/shared/bricks/props/tests/effects.test.ts +37 -0
- package/src/shared/bricks/props/tests/helpers.test.ts +98 -0
- package/src/shared/bricks/props/tests/image.test.ts +71 -0
- package/src/shared/bricks/props/tests/string.test.ts +80 -0
- package/src/shared/bricks/props/text.ts +107 -0
- package/src/shared/bricks/props/types.ts +72 -0
- package/src/shared/bricks.ts +1237 -0
- package/src/shared/context.ts +32 -0
- package/src/shared/datarecords/external/airtable/handler.ts +501 -0
- package/src/shared/datarecords/external/airtable/oauth/config.ts +11 -0
- package/src/shared/datarecords/external/airtable/types.ts +63 -0
- package/src/shared/datarecords/external/generic-webhook/handler.ts +10 -0
- package/src/shared/datarecords/external/generic-webhook/options.ts +13 -0
- package/src/shared/datarecords/external/google/oauth/config.ts +30 -0
- package/src/shared/datarecords/external/google/sheets/client.ts +112 -0
- package/src/shared/datarecords/external/google/sheets/handler.ts +253 -0
- package/src/shared/datarecords/external/google/sheets/types.ts +10 -0
- package/src/shared/datarecords/external/notion/handler.ts +469 -0
- package/src/shared/datarecords/external/notion/oauth/config.ts +7 -0
- package/src/shared/datarecords/external/notion/types.ts +28 -0
- package/src/shared/datarecords/types.ts +165 -0
- package/src/shared/datarecords.ts +5 -0
- package/src/shared/datasources/README.md +3 -0
- package/src/shared/datasources/external/facebook/posts/fetcher.ts +52 -0
- package/src/shared/datasources/external/facebook/posts/sample.ts +35 -0
- package/src/shared/datasources/external/facebook/posts/schema.ts +33 -0
- package/src/shared/datasources/external/facebook/posts/tests/fetcher.test.ts +73 -0
- package/src/shared/datasources/external/http-json/fetcher.ts +31 -0
- package/src/shared/datasources/external/http-json/options.ts +8 -0
- package/src/shared/datasources/external/http-json/schema.ts +6 -0
- package/src/shared/datasources/external/http-json/tests/fetcher.test.ts +70 -0
- package/src/shared/datasources/external/instagram/feed/fetcher.ts +33 -0
- package/src/shared/datasources/external/instagram/feed/sample.ts +22 -0
- package/src/shared/datasources/external/instagram/feed/schema.ts +23 -0
- package/src/shared/datasources/external/instagram/feed/tests/fetcher.test.ts +64 -0
- package/src/shared/datasources/external/mastodon/account/fetcher.ts +24 -0
- package/src/shared/datasources/external/mastodon/account/sample.ts +33 -0
- package/src/shared/datasources/external/mastodon/account/schema.ts +45 -0
- package/src/shared/datasources/external/mastodon/account/tests/fetcher.test.ts +47 -0
- package/src/shared/datasources/external/mastodon/options.ts +6 -0
- package/src/shared/datasources/external/mastodon/status/fetcher.ts +35 -0
- package/src/shared/datasources/external/mastodon/status/sample.array.ts +59 -0
- package/src/shared/datasources/external/mastodon/status/sample.single.ts +55 -0
- package/src/shared/datasources/external/mastodon/status/schema.ts +125 -0
- package/src/shared/datasources/external/mastodon/status/tests/fetcher.test.ts +74 -0
- package/src/shared/datasources/external/meta/oauth/config.ts +16 -0
- package/src/shared/datasources/external/meta/options.ts +7 -0
- package/src/shared/datasources/external/rss/fetcher.ts +31 -0
- package/src/shared/datasources/external/rss/options.ts +7 -0
- package/src/shared/datasources/external/rss/sample.ts +22 -0
- package/src/shared/datasources/external/rss/schema.ts +42 -0
- package/src/shared/datasources/external/threads/media/fetcher.ts +53 -0
- package/src/shared/datasources/external/threads/media/sample.ts +44 -0
- package/src/shared/datasources/external/threads/media/schema.ts +37 -0
- package/src/shared/datasources/external/tiktok/oauth/config.ts +17 -0
- package/src/shared/datasources/external/tiktok/video/fetcher.ts +39 -0
- package/src/shared/datasources/external/tiktok/video/options.ts +8 -0
- package/src/shared/datasources/external/tiktok/video/sample.ts +26 -0
- package/src/shared/datasources/external/tiktok/video/schema.ts +27 -0
- package/src/shared/datasources/external/youtube/list/fetcher.ts +37 -0
- package/src/shared/datasources/external/youtube/list/options.ts +11 -0
- package/src/shared/datasources/external/youtube/list/sample.ts +33 -0
- package/src/shared/datasources/external/youtube/list/schema.ts +38 -0
- package/src/shared/datasources/external/youtube/oauth/config.ts +15 -0
- package/src/shared/datasources/fetcher.ts +16 -0
- package/src/shared/datasources/internal/blog/schema.ts +69 -0
- package/src/shared/datasources/internal/changelog/schema.ts +48 -0
- package/src/shared/datasources/internal/contact-info/schema.ts +20 -0
- package/src/shared/datasources/internal/cv/schema.ts +217 -0
- package/src/shared/datasources/internal/faq/schema.ts +27 -0
- package/src/shared/datasources/internal/job-board/schema.ts +228 -0
- package/src/shared/datasources/internal/links/schema.ts +15 -0
- package/src/shared/datasources/internal/recipes/schema.ts +42 -0
- package/src/shared/datasources/internal/restaurant/schema.ts +225 -0
- package/src/shared/datasources/samples.ts +26 -0
- package/src/shared/datasources/schemas.ts +48 -0
- package/src/shared/datasources/types.ts +490 -0
- package/src/shared/datasources/utils.ts +17 -0
- package/src/shared/datasources.ts +57 -0
- package/src/shared/env.ts +23 -0
- package/src/shared/errors.ts +1 -0
- package/src/shared/images.ts +44 -0
- package/src/shared/index.ts +3 -0
- package/src/shared/layout-constants.ts +19 -0
- package/src/shared/manifest.ts +50 -0
- package/src/shared/oauth.ts +16 -0
- package/src/shared/page.ts +36 -0
- package/src/shared/prompt.ts +9 -0
- package/src/shared/responsive.ts +5 -0
- package/src/shared/site.ts +59 -0
- package/src/shared/sitemap.ts +98 -0
- package/src/shared/social-icons.ts +307 -0
- package/src/shared/tests/attributes.test.ts +31 -0
- package/src/shared/theme.ts +244 -0
- package/src/shared/themes/README.md +34 -0
- package/src/shared/themes/color-system.ts +146 -0
- package/src/shared/themes/tests/color-system.test.ts +170 -0
- package/src/shared/utils/canvas-data-uri.ts +2 -0
- package/src/shared/utils/invariant.ts +25 -0
- package/src/shared/utils/json-date.ts +8 -0
- package/src/shared/utils/llm.ts +282 -0
- package/src/shared/utils/merge.ts +12 -0
- package/src/shared/utils/object-hash.ts +7 -0
- package/src/shared/utils/schema.ts +359 -0
- package/src/shared/utils/string-enum.ts +12 -0
- package/src/shared/utils/tests/schema.test.ts +724 -0
- package/src/shared/utils/try-catch.ts +12 -0
- package/src/shared/utils/typed-ref.ts +53 -0
- package/dist/shared/bricks/props/container.d.ts +0 -11
- package/dist/shared/bricks/props/container.d.ts.map +0 -1
- package/dist/shared/bricks/props/container.js +0 -3
- package/dist/shared/bricks/props/gap.d.ts +0 -9
- package/dist/shared/bricks/props/gap.d.ts.map +0 -1
- package/dist/shared/bricks/props/gap.js +0 -3
- package/dist/shared/bricks/props/padding.d.ts +0 -5
- package/dist/shared/bricks/props/padding.d.ts.map +0 -1
- package/dist/shared/bricks/props/padding.js +0 -3
- package/dist/shared/bricks/props/tests/padding.d.ts +0 -2
- package/dist/shared/bricks/props/tests/padding.d.ts.map +0 -1
- package/dist/shared/chunk-2IYSJYNE.js +0 -3
- package/dist/shared/chunk-3EM3B4DX.js +0 -3
- package/dist/shared/chunk-4TH3C76A.js +0 -3
- package/dist/shared/chunk-5N6MBJJ4.js +0 -3
- package/dist/shared/chunk-6FITVVZX.js +0 -3
- package/dist/shared/chunk-6K3KZDFC.js +0 -3
- package/dist/shared/chunk-6WCGUAQN.js +0 -3
- package/dist/shared/chunk-7DMUDZ4H.js +0 -3
- package/dist/shared/chunk-ACVLF55Q.js +0 -3
- package/dist/shared/chunk-AQPN5SE2.js +0 -3
- package/dist/shared/chunk-BZGNY7LB.js +0 -3
- package/dist/shared/chunk-C2S243PB.js +0 -8
- package/dist/shared/chunk-C3VGP4CA.js +0 -3
- package/dist/shared/chunk-CT3EI7YN.js +0 -3
- package/dist/shared/chunk-DQXDGV67.js +0 -3
- package/dist/shared/chunk-E22E4XWE.js +0 -3
- package/dist/shared/chunk-ETYYRWLK.js +0 -3
- package/dist/shared/chunk-EYPREFMH.js +0 -3
- package/dist/shared/chunk-FKNNTHWX.js +0 -5
- package/dist/shared/chunk-HHO3ONTQ.js +0 -3
- package/dist/shared/chunk-I46VBMLF.js +0 -3
- package/dist/shared/chunk-IIFTGWFZ.js +0 -3
- package/dist/shared/chunk-JS4K5JRM.js +0 -5
- package/dist/shared/chunk-KHFNN4P3.js +0 -3
- package/dist/shared/chunk-LFQZRGHS.js +0 -3
- package/dist/shared/chunk-LGP6GWIY.js +0 -3
- package/dist/shared/chunk-NLEWXPVM.js +0 -3
- package/dist/shared/chunk-NNI225RG.js +0 -3
- package/dist/shared/chunk-QISTDGPP.js +0 -3
- package/dist/shared/chunk-QSZWDE3D.js +0 -3
- package/dist/shared/chunk-RGLVKILY.js +0 -3
- package/dist/shared/chunk-SLRU4CT6.js +0 -4
- package/dist/shared/chunk-T3LIA4YB.js +0 -3
- package/dist/shared/chunk-T4LMBG2G.js +0 -3
- package/dist/shared/chunk-TATG6SFZ.js +0 -3
- package/dist/shared/chunk-TF3JVVRU.js +0 -3
- package/dist/shared/chunk-TTTXV7TJ.js +0 -6
- package/dist/shared/chunk-TWBY2GOR.js +0 -3
- package/dist/shared/chunk-UHF6IEKV.js +0 -3
- package/dist/shared/chunk-UMHXXXVP.js +0 -3
- package/dist/shared/chunk-VGRYSAXA.js +0 -3
- package/dist/shared/chunk-VPFCY4DH.js +0 -3
- package/dist/shared/chunk-VTBI7WX3.js +0 -3
- package/dist/shared/chunk-VZPXXFVX.js +0 -3
- package/dist/shared/chunk-WU6Q4WYD.js +0 -3
- package/dist/shared/chunk-X43MB5WD.js +0 -3
- package/dist/shared/chunk-YBGPPF7T.js +0 -3
- package/dist/shared/chunk-ZQGNYK5I.js +0 -8
- package/dist/shared/chunk-ZTDUXSWH.js +0 -3
- package/dist/shared/datarecords/external/airtable/elements.d.ts +0 -21
- package/dist/shared/datarecords/external/airtable/elements.d.ts.map +0 -1
- package/dist/shared/datarecords/external/airtable/options.d.ts +0 -10
- package/dist/shared/datarecords/external/airtable/options.d.ts.map +0 -1
- package/dist/shared/datarecords/external/google/sheets/options.d.ts.map +0 -1
- package/dist/shared/datarecords/external/notion/options.d.ts.map +0 -1
- package/dist/shared/utils/schema-resolver.d.ts +0 -3
- package/dist/shared/utils/schema-resolver.d.ts.map +0 -1
- package/dist/shared/utils/schema-resolver.js +0 -3
package/dist/shared/bricks.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type Static, type TObject } from "@sinclair/typebox";
|
|
2
2
|
import type { CommonBrickProps } from "./bricks/props/common";
|
|
3
|
+
import type { PageAttributes, SiteAttributes } from "./attributes";
|
|
3
4
|
/**
|
|
4
5
|
* Generates a unique identifier for bricks.
|
|
5
6
|
*/
|
|
@@ -21,7 +22,15 @@ export declare const brickSchema: TObject<{
|
|
|
21
22
|
type: import("@sinclair/typebox").TUnsafe<string>;
|
|
22
23
|
props: import("@sinclair/typebox").TAny;
|
|
23
24
|
mobileProps: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TAny>;
|
|
24
|
-
|
|
25
|
+
}>;
|
|
26
|
+
export declare function makeFullBrickSchemaForLLM(type: string, props: TObject): TObject<{
|
|
27
|
+
id: import("@sinclair/typebox").TString;
|
|
28
|
+
type: import("@sinclair/typebox").TLiteral<string>;
|
|
29
|
+
props: TObject<import("@sinclair/typebox").TProperties>;
|
|
30
|
+
mobileProps: import("@sinclair/typebox").TOptional<TObject<{
|
|
31
|
+
[x: string]: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TSchema>;
|
|
32
|
+
[x: number]: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TSchema>;
|
|
33
|
+
}>>;
|
|
25
34
|
}>;
|
|
26
35
|
export type Brick = Omit<Static<typeof brickSchema>, "props" | "mobileProps"> & {
|
|
27
36
|
props: CommonBrickProps & Record<string, unknown>;
|
|
@@ -32,14 +41,20 @@ export declare const sectionProps: TObject<{
|
|
|
32
41
|
color: import("@sinclair/typebox").TUnsafe<string>;
|
|
33
42
|
gradientDirection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"bg-gradient-to-t" | "bg-gradient-to-r" | "bg-gradient-to-b" | "bg-gradient-to-l" | "bg-gradient-to-tl" | "bg-gradient-to-tr" | "bg-gradient-to-br" | "bg-gradient-to-bl">>;
|
|
34
43
|
}>>;
|
|
35
|
-
|
|
44
|
+
backgroundImage: import("@sinclair/typebox").TOptional<TObject<{
|
|
45
|
+
image: import("@sinclair/typebox").TString;
|
|
46
|
+
size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"contain" | "auto" | "cover">>;
|
|
47
|
+
repeat: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"no-repeat" | "repeat" | "repeat-x" | "repeat-y" | "round" | "space">>;
|
|
48
|
+
}>>;
|
|
49
|
+
direction: import("@sinclair/typebox").TUnsafe<"flex-row" | "flex-col">;
|
|
36
50
|
minHeight: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
37
|
-
variant: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"
|
|
51
|
+
variant: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"navbar" | "footer" | "sidebar">>;
|
|
38
52
|
maxWidth: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<string>[]>>;
|
|
39
53
|
justifyContent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"justify-start" | "justify-center" | "justify-end" | "justify-between" | "justify-around" | "justify-evenly">>;
|
|
40
54
|
alignItems: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"items-start" | "items-center" | "items-end" | "items-stretch">>;
|
|
41
|
-
padding: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").
|
|
55
|
+
padding: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
42
56
|
gap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
57
|
+
wrap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
43
58
|
lastTouched: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
44
59
|
}>;
|
|
45
60
|
export declare const sectionSchema: TObject<{
|
|
@@ -51,14 +66,73 @@ export declare const sectionSchema: TObject<{
|
|
|
51
66
|
color: import("@sinclair/typebox").TUnsafe<string>;
|
|
52
67
|
gradientDirection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"bg-gradient-to-t" | "bg-gradient-to-r" | "bg-gradient-to-b" | "bg-gradient-to-l" | "bg-gradient-to-tl" | "bg-gradient-to-tr" | "bg-gradient-to-br" | "bg-gradient-to-bl">>;
|
|
53
68
|
}>>;
|
|
69
|
+
backgroundImage: import("@sinclair/typebox").TOptional<TObject<{
|
|
70
|
+
image: import("@sinclair/typebox").TString;
|
|
71
|
+
size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"contain" | "auto" | "cover">>;
|
|
72
|
+
repeat: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"no-repeat" | "repeat" | "repeat-x" | "repeat-y" | "round" | "space">>;
|
|
73
|
+
}>>;
|
|
74
|
+
direction: import("@sinclair/typebox").TUnsafe<"flex-row" | "flex-col">;
|
|
75
|
+
minHeight: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
76
|
+
variant: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"navbar" | "footer" | "sidebar">>;
|
|
77
|
+
maxWidth: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<string>[]>>;
|
|
78
|
+
justifyContent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"justify-start" | "justify-center" | "justify-end" | "justify-between" | "justify-around" | "justify-evenly">>;
|
|
79
|
+
alignItems: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"items-start" | "items-center" | "items-end" | "items-stretch">>;
|
|
80
|
+
padding: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
81
|
+
gap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
82
|
+
wrap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
83
|
+
lastTouched: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
84
|
+
}>;
|
|
85
|
+
mobileProps: import("@sinclair/typebox").TOptional<TObject<{
|
|
86
|
+
colorPreset: import("@sinclair/typebox").TOptional<TObject<{
|
|
87
|
+
color: import("@sinclair/typebox").TUnsafe<string>;
|
|
88
|
+
gradientDirection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"bg-gradient-to-t" | "bg-gradient-to-r" | "bg-gradient-to-b" | "bg-gradient-to-l" | "bg-gradient-to-tl" | "bg-gradient-to-tr" | "bg-gradient-to-br" | "bg-gradient-to-bl">>;
|
|
89
|
+
}>>;
|
|
90
|
+
backgroundImage: import("@sinclair/typebox").TOptional<TObject<{
|
|
91
|
+
image: import("@sinclair/typebox").TString;
|
|
92
|
+
size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"contain" | "auto" | "cover">>;
|
|
93
|
+
repeat: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"no-repeat" | "repeat" | "repeat-x" | "repeat-y" | "round" | "space">>;
|
|
94
|
+
}>>;
|
|
54
95
|
direction: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"flex-row" | "flex-col">>;
|
|
55
96
|
minHeight: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
56
|
-
variant: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"
|
|
97
|
+
variant: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"navbar" | "footer" | "sidebar">>;
|
|
98
|
+
maxWidth: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<string>[]>>;
|
|
99
|
+
justifyContent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"justify-start" | "justify-center" | "justify-end" | "justify-between" | "justify-around" | "justify-evenly">>;
|
|
100
|
+
alignItems: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"items-start" | "items-center" | "items-end" | "items-stretch">>;
|
|
101
|
+
padding: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
102
|
+
gap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
103
|
+
wrap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
104
|
+
lastTouched: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
105
|
+
}>>;
|
|
106
|
+
bricks: import("@sinclair/typebox").TArray<TObject<{
|
|
107
|
+
id: import("@sinclair/typebox").TString;
|
|
108
|
+
type: import("@sinclair/typebox").TUnsafe<string>;
|
|
109
|
+
props: import("@sinclair/typebox").TAny;
|
|
110
|
+
mobileProps: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TAny>;
|
|
111
|
+
}>>;
|
|
112
|
+
}>;
|
|
113
|
+
export declare const sectionSchemaNoBricks: TObject<{
|
|
114
|
+
id: import("@sinclair/typebox").TString;
|
|
115
|
+
order: import("@sinclair/typebox").TNumber;
|
|
116
|
+
label: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
117
|
+
props: TObject<{
|
|
118
|
+
colorPreset: import("@sinclair/typebox").TOptional<TObject<{
|
|
119
|
+
color: import("@sinclair/typebox").TUnsafe<string>;
|
|
120
|
+
gradientDirection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"bg-gradient-to-t" | "bg-gradient-to-r" | "bg-gradient-to-b" | "bg-gradient-to-l" | "bg-gradient-to-tl" | "bg-gradient-to-tr" | "bg-gradient-to-br" | "bg-gradient-to-bl">>;
|
|
121
|
+
}>>;
|
|
122
|
+
backgroundImage: import("@sinclair/typebox").TOptional<TObject<{
|
|
123
|
+
image: import("@sinclair/typebox").TString;
|
|
124
|
+
size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"contain" | "auto" | "cover">>;
|
|
125
|
+
repeat: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"no-repeat" | "repeat" | "repeat-x" | "repeat-y" | "round" | "space">>;
|
|
126
|
+
}>>;
|
|
127
|
+
direction: import("@sinclair/typebox").TUnsafe<"flex-row" | "flex-col">;
|
|
128
|
+
minHeight: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
129
|
+
variant: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"navbar" | "footer" | "sidebar">>;
|
|
57
130
|
maxWidth: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<string>[]>>;
|
|
58
131
|
justifyContent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"justify-start" | "justify-center" | "justify-end" | "justify-between" | "justify-around" | "justify-evenly">>;
|
|
59
132
|
alignItems: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"items-start" | "items-center" | "items-end" | "items-stretch">>;
|
|
60
|
-
padding: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").
|
|
133
|
+
padding: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
61
134
|
gap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
135
|
+
wrap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
62
136
|
lastTouched: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
63
137
|
}>;
|
|
64
138
|
mobileProps: import("@sinclair/typebox").TOptional<TObject<{
|
|
@@ -66,14 +140,114 @@ export declare const sectionSchema: TObject<{
|
|
|
66
140
|
color: import("@sinclair/typebox").TUnsafe<string>;
|
|
67
141
|
gradientDirection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"bg-gradient-to-t" | "bg-gradient-to-r" | "bg-gradient-to-b" | "bg-gradient-to-l" | "bg-gradient-to-tl" | "bg-gradient-to-tr" | "bg-gradient-to-br" | "bg-gradient-to-bl">>;
|
|
68
142
|
}>>;
|
|
143
|
+
backgroundImage: import("@sinclair/typebox").TOptional<TObject<{
|
|
144
|
+
image: import("@sinclair/typebox").TString;
|
|
145
|
+
size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"contain" | "auto" | "cover">>;
|
|
146
|
+
repeat: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"no-repeat" | "repeat" | "repeat-x" | "repeat-y" | "round" | "space">>;
|
|
147
|
+
}>>;
|
|
69
148
|
direction: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"flex-row" | "flex-col">>;
|
|
70
149
|
minHeight: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
71
|
-
variant: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"
|
|
150
|
+
variant: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"navbar" | "footer" | "sidebar">>;
|
|
72
151
|
maxWidth: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<string>[]>>;
|
|
73
152
|
justifyContent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"justify-start" | "justify-center" | "justify-end" | "justify-between" | "justify-around" | "justify-evenly">>;
|
|
74
153
|
alignItems: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"items-start" | "items-center" | "items-end" | "items-stretch">>;
|
|
75
|
-
padding: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").
|
|
154
|
+
padding: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
76
155
|
gap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
156
|
+
wrap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
157
|
+
lastTouched: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
158
|
+
}>>;
|
|
159
|
+
}>;
|
|
160
|
+
export declare function getSectionSchemaNoBrickForLLM(): TObject<{
|
|
161
|
+
id: import("@sinclair/typebox").TString;
|
|
162
|
+
order: import("@sinclair/typebox").TNumber;
|
|
163
|
+
label: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
164
|
+
props: TObject<{
|
|
165
|
+
colorPreset: import("@sinclair/typebox").TOptional<TObject<{
|
|
166
|
+
color: import("@sinclair/typebox").TUnsafe<string>;
|
|
167
|
+
gradientDirection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"bg-gradient-to-t" | "bg-gradient-to-r" | "bg-gradient-to-b" | "bg-gradient-to-l" | "bg-gradient-to-tl" | "bg-gradient-to-tr" | "bg-gradient-to-br" | "bg-gradient-to-bl">>;
|
|
168
|
+
}>>;
|
|
169
|
+
backgroundImage: import("@sinclair/typebox").TOptional<TObject<{
|
|
170
|
+
image: import("@sinclair/typebox").TString;
|
|
171
|
+
size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"contain" | "auto" | "cover">>;
|
|
172
|
+
repeat: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"no-repeat" | "repeat" | "repeat-x" | "repeat-y" | "round" | "space">>;
|
|
173
|
+
}>>;
|
|
174
|
+
direction: import("@sinclair/typebox").TUnsafe<"flex-row" | "flex-col">;
|
|
175
|
+
minHeight: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
176
|
+
variant: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"navbar" | "footer" | "sidebar">>;
|
|
177
|
+
maxWidth: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<string>[]>>;
|
|
178
|
+
justifyContent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"justify-start" | "justify-center" | "justify-end" | "justify-between" | "justify-around" | "justify-evenly">>;
|
|
179
|
+
alignItems: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"items-start" | "items-center" | "items-end" | "items-stretch">>;
|
|
180
|
+
padding: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
181
|
+
gap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
182
|
+
wrap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
183
|
+
lastTouched: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
184
|
+
}>;
|
|
185
|
+
mobileProps: import("@sinclair/typebox").TOptional<TObject<{
|
|
186
|
+
colorPreset: import("@sinclair/typebox").TOptional<TObject<{
|
|
187
|
+
color: import("@sinclair/typebox").TUnsafe<string>;
|
|
188
|
+
gradientDirection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"bg-gradient-to-t" | "bg-gradient-to-r" | "bg-gradient-to-b" | "bg-gradient-to-l" | "bg-gradient-to-tl" | "bg-gradient-to-tr" | "bg-gradient-to-br" | "bg-gradient-to-bl">>;
|
|
189
|
+
}>>;
|
|
190
|
+
backgroundImage: import("@sinclair/typebox").TOptional<TObject<{
|
|
191
|
+
image: import("@sinclair/typebox").TString;
|
|
192
|
+
size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"contain" | "auto" | "cover">>;
|
|
193
|
+
repeat: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"no-repeat" | "repeat" | "repeat-x" | "repeat-y" | "round" | "space">>;
|
|
194
|
+
}>>;
|
|
195
|
+
direction: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"flex-row" | "flex-col">>;
|
|
196
|
+
minHeight: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
197
|
+
variant: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"navbar" | "footer" | "sidebar">>;
|
|
198
|
+
maxWidth: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<string>[]>>;
|
|
199
|
+
justifyContent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"justify-start" | "justify-center" | "justify-end" | "justify-between" | "justify-around" | "justify-evenly">>;
|
|
200
|
+
alignItems: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"items-start" | "items-center" | "items-end" | "items-stretch">>;
|
|
201
|
+
padding: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
202
|
+
gap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
203
|
+
wrap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
204
|
+
lastTouched: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
205
|
+
}>>;
|
|
206
|
+
}>;
|
|
207
|
+
export declare function getSectionSchemaForLLM(): TObject<{
|
|
208
|
+
id: import("@sinclair/typebox").TString;
|
|
209
|
+
label: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
210
|
+
order: import("@sinclair/typebox").TNumber;
|
|
211
|
+
props: TObject<{
|
|
212
|
+
colorPreset: import("@sinclair/typebox").TOptional<TObject<{
|
|
213
|
+
color: import("@sinclair/typebox").TUnsafe<string>;
|
|
214
|
+
gradientDirection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"bg-gradient-to-t" | "bg-gradient-to-r" | "bg-gradient-to-b" | "bg-gradient-to-l" | "bg-gradient-to-tl" | "bg-gradient-to-tr" | "bg-gradient-to-br" | "bg-gradient-to-bl">>;
|
|
215
|
+
}>>;
|
|
216
|
+
backgroundImage: import("@sinclair/typebox").TOptional<TObject<{
|
|
217
|
+
image: import("@sinclair/typebox").TString;
|
|
218
|
+
size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"contain" | "auto" | "cover">>;
|
|
219
|
+
repeat: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"no-repeat" | "repeat" | "repeat-x" | "repeat-y" | "round" | "space">>;
|
|
220
|
+
}>>;
|
|
221
|
+
direction: import("@sinclair/typebox").TUnsafe<"flex-row" | "flex-col">;
|
|
222
|
+
minHeight: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
223
|
+
variant: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"navbar" | "footer" | "sidebar">>;
|
|
224
|
+
maxWidth: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<string>[]>>;
|
|
225
|
+
justifyContent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"justify-start" | "justify-center" | "justify-end" | "justify-between" | "justify-around" | "justify-evenly">>;
|
|
226
|
+
alignItems: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"items-start" | "items-center" | "items-end" | "items-stretch">>;
|
|
227
|
+
padding: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
228
|
+
gap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
229
|
+
wrap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
230
|
+
lastTouched: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
231
|
+
}>;
|
|
232
|
+
mobileProps: import("@sinclair/typebox").TOptional<TObject<{
|
|
233
|
+
colorPreset: import("@sinclair/typebox").TOptional<TObject<{
|
|
234
|
+
color: import("@sinclair/typebox").TUnsafe<string>;
|
|
235
|
+
gradientDirection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"bg-gradient-to-t" | "bg-gradient-to-r" | "bg-gradient-to-b" | "bg-gradient-to-l" | "bg-gradient-to-tl" | "bg-gradient-to-tr" | "bg-gradient-to-br" | "bg-gradient-to-bl">>;
|
|
236
|
+
}>>;
|
|
237
|
+
backgroundImage: import("@sinclair/typebox").TOptional<TObject<{
|
|
238
|
+
image: import("@sinclair/typebox").TString;
|
|
239
|
+
size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"contain" | "auto" | "cover">>;
|
|
240
|
+
repeat: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"no-repeat" | "repeat" | "repeat-x" | "repeat-y" | "round" | "space">>;
|
|
241
|
+
}>>;
|
|
242
|
+
direction: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"flex-row" | "flex-col">>;
|
|
243
|
+
minHeight: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
244
|
+
variant: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"navbar" | "footer" | "sidebar">>;
|
|
245
|
+
maxWidth: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<string>[]>>;
|
|
246
|
+
justifyContent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"justify-start" | "justify-center" | "justify-end" | "justify-between" | "justify-around" | "justify-evenly">>;
|
|
247
|
+
alignItems: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnsafe<"items-start" | "items-center" | "items-end" | "items-stretch">>;
|
|
248
|
+
padding: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
249
|
+
gap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
250
|
+
wrap: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
77
251
|
lastTouched: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
78
252
|
}>>;
|
|
79
253
|
bricks: import("@sinclair/typebox").TArray<TObject<{
|
|
@@ -81,22 +255,19 @@ export declare const sectionSchema: TObject<{
|
|
|
81
255
|
type: import("@sinclair/typebox").TUnsafe<string>;
|
|
82
256
|
props: import("@sinclair/typebox").TAny;
|
|
83
257
|
mobileProps: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TAny>;
|
|
84
|
-
propsMapping: import("@sinclair/typebox").TOptional<TObject<{}>>;
|
|
85
258
|
}>>;
|
|
86
259
|
}>;
|
|
87
260
|
export type Section = Static<typeof sectionSchema>;
|
|
88
|
-
export declare function processSections(sections: Section[]):
|
|
89
|
-
readonly props: Record<string, unknown>;
|
|
90
|
-
readonly mobileProps: Record<string, unknown>;
|
|
91
|
-
readonly bricks: Brick[];
|
|
92
|
-
readonly label?: string | undefined;
|
|
93
|
-
readonly id: string;
|
|
94
|
-
readonly order: number;
|
|
95
|
-
}[];
|
|
261
|
+
export declare function processSections(sections: Section[], siteAttributes: SiteAttributes, pageAttributes: PageAttributes): Section[];
|
|
96
262
|
/**
|
|
97
263
|
* process a brick and add default props
|
|
98
264
|
*/
|
|
99
|
-
export declare function processBrick<T extends Brick>(brick: T): T
|
|
265
|
+
export declare function processBrick<T extends Brick>(brick: T): T;
|
|
100
266
|
export declare function createEmptyBrick(type: string, ghost?: boolean): Brick;
|
|
267
|
+
export declare const sectionsExamples: {
|
|
268
|
+
label: string;
|
|
269
|
+
description: string;
|
|
270
|
+
example: Section;
|
|
271
|
+
}[];
|
|
101
272
|
export {};
|
|
102
273
|
//# sourceMappingURL=bricks.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bricks.d.ts","sourceRoot":"","sources":["../../src/shared/bricks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"bricks.d.ts","sourceRoot":"","sources":["../../src/shared/bricks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAUpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAInE;;GAEG;AACH,eAAO,MAAM,UAAU,2BAA4E,CAAC;AAEpG,QAAA,MAAM,2BAA2B;;;;;;;;;EAiD/B,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAE/E,eAAO,MAAM,eAAe,6CAE1B,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;EAmBvB,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;;;;;;;;GAerE;AAED,MAAM,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,WAAW,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC,GAAG;IAC9E,KAAK,EAAE,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClD,WAAW,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1D,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;EAmHxB,CAAC;AAEF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBzB,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAuC,CAAC;AAE1E,wBAAgB,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAE5C;AAED,wBAAgB,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAErC;AAQD,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,aAAa,CAAC,CAAC;AAEnD,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,OAAO,EAAE,EACnB,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc,GAC7B,OAAO,EAAE,CAwDX;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAgBzD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,KAAK,CAQnE;AAED,eAAO,MAAM,gBAAgB,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,EA+1BtF,CAAC"}
|
package/dist/shared/bricks.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
2
|
|
|
3
|
-
import{a,b,c,d,e,f,g,h}from"./chunk-
|
|
3
|
+
import{a,b,c,d,e,f,g,h,i,j,k,l,m}from"./chunk-COT2ROEH.js";import"./chunk-L42YBY5I.js";import"./chunk-NXIF3UMD.js";import"./chunk-VDX2J22H.js";import"./chunk-IFEIRRZ2.js";import"./chunk-URRCKLAS.js";import"./chunk-HP7CZB2F.js";import"./chunk-2NLDX5FG.js";import"./chunk-XED6ARVN.js";import"./chunk-3QOAHMV4.js";import"./chunk-EVDZ2KND.js";import"./chunk-3P36LG6T.js";import"./chunk-ARYG4XMX.js";import"./chunk-QGFQA7OZ.js";import"./chunk-MKIXZXWS.js";import"./chunk-5X5SX5N7.js";import"./chunk-6R76KIHZ.js";import"./chunk-VE3S4LGT.js";import"./chunk-Y3X4F4YJ.js";import"./chunk-LT4CW2F7.js";import"./chunk-ILIWVWHC.js";import"./chunk-SAJY7H6N.js";import"./chunk-STDCM2KD.js";import"./chunk-TH5SONR6.js";import"./chunk-MPBYGS6W.js";import"./chunk-UDQWYGSO.js";import"./chunk-AZHH3XJJ.js";import"./chunk-YIFNKP4J.js";import"./chunk-6PGAWO4H.js";import"./chunk-4GIZ6WSG.js";import"./chunk-LEWKHCRI.js";import"./chunk-F4JNKU7J.js";import"./chunk-3FPFR5RA.js";import"./chunk-7UBMXMNJ.js";import"./chunk-US53TNMK.js";import"./chunk-VK26ZZFR.js";import"./chunk-MVCVVKBY.js";import"./chunk-AB3IMRXZ.js";import"./chunk-GC5OWY2Z.js";import"./chunk-DHSWVVMI.js";import"./chunk-Z4YKRLOX.js";import"./chunk-SFDRAHYP.js";import"./chunk-JRCVYDCD.js";import"./chunk-DKNOZLA6.js";import"./chunk-HSRXUIVM.js";import"./chunk-5WY7LYXK.js";import"./chunk-SFKZAUPW.js";export{c as brickSchema,b as brickTypeSchema,l as createEmptyBrick,a as generateId,i as getSectionSchemaForLLM,h as getSectionSchemaNoBrickForLLM,d as makeFullBrickSchemaForLLM,k as processBrick,j as processSections,e as sectionProps,f as sectionSchema,g as sectionSchemaNoBricks,m as sectionsExamples};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
|
+
|
|
3
|
+
var n=class{accessToken;constructor(e){this.accessToken=e}async callDriveApi(e,i="GET",a){let o=a instanceof ArrayBuffer||a instanceof Uint8Array,r={Authorization:`Bearer ${this.accessToken}`};o?r["Content-Type"]="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":r["Content-Type"]="application/json";let s=await fetch(e,{method:i,headers:r,body:o?a:a?JSON.stringify(a):void 0});if(e.includes("export")&&e.includes("mimeType=text/csv")){let t=await s.text();return{success:s.ok,data:t,status:s.status,headers:s.headers}}if(e.includes("export")&&e.includes("mimeType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")){let t=await s.arrayBuffer();return{success:s.ok,data:t,status:s.status,headers:s.headers}}if(e.includes("upload/")&&s.ok)try{let t=await s.json();return{success:s.ok,data:t,status:s.status,headers:s.headers}}catch{return{success:!0,data:{message:"Upload successful"},status:s.status,headers:s.headers}}if(!s.ok&&s.headers.get("content-type")?.includes("text/html"))return{success:!1,data:{error:"HTML error response",details:(await s.text()).substring(0,200)},status:s.status,headers:s.headers};let u=await s.json();return{success:s.ok,data:u,status:s.status,headers:s.headers}}};function d(c){return new n(c)}export{d as a};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
|
+
|
|
3
|
+
import{c as p}from"./chunk-6PGAWO4H.js";import{a as r}from"./chunk-4GIZ6WSG.js";import{a as e,f as a}from"./chunk-7UBMXMNJ.js";import{b as n}from"./chunk-VK26ZZFR.js";import{b as c}from"./chunk-MVCVVKBY.js";import{b as o,d as t}from"./chunk-DHSWVVMI.js";import{c as s}from"./chunk-Z4YKRLOX.js";import{c as l}from"./chunk-HSRXUIVM.js";import{Type as i}from"@sinclair/typebox";import{TiSocialFlickr as m}from"react-icons/ti";var v=r({type:"social-links",name:"Social links",description:"A list of social media links",icon:m,defaultWidth:{mobile:"100%"},props:p({colorPreset:i.Optional(s({title:"Color"})),links:i.Array(i.Object({icon:i.Optional(a({"ui:default-icon-collection":"cib"})),label:i.Optional(e("Label")),href:e("Link")}),{title:"Social Links",description:"List of social media links",default:[{href:"https://facebook.com/company",label:"Facebook",icon:"mdi:facebook"},{href:"https://twitter.com/company",label:"Twitter",icon:"mdi:twitter"},{href:"https://instagram.com/company",label:"Instagram",icon:"mdi:instagram"}],"ui:widget":"array","ui:displayField":"label","ui:options":{orderable:!0,removable:!0,addable:!0},metadata:{category:"content"}}),direction:i.Optional(c({default:"flex-row"})),fontSize:i.Optional(n()),padding:i.Optional(l({default:"2rem",description:"Padding.","ai:instructions":"Use only a single value like '1rem' or '10px'",title:"Padding","ui:responsive":!0,"ui:placeholder":"Not specified","ui:styleId":"styles:padding"})),rounding:i.Optional(t({default:"rounded-md"})),border:i.Optional(o()),iconOnly:i.Optional(i.Boolean({title:"Only icons",description:"If set, the brick will only display the icons without labels."}))})}),T=[{description:"Social icons displayed horizontally, without labels",type:"social-links",props:{iconOnly:!0,links:[{href:"https://facebook.com/company",label:"Facebook",icon:"mdi:facebook"},{href:"https://twitter.com/company",label:"Twitter",icon:"mdi:twitter"},{href:"https://instagram.com/company",label:"Instagram",icon:"mdi:instagram"}]}},{description:"Social icons displayed vertically, without labels",type:"social-links",props:{iconOnly:!0,direction:"flex-col",links:[{href:"https://facebook.com/company",label:"Facebook",icon:"mdi:facebook"},{href:"https://twitter.com/company",label:"Twitter",icon:"mdi:twitter"},{href:"https://instagram.com/company",label:"Instagram",icon:"mdi:instagram"}]}},{description:"Social icons displayed horizontally, with labels",type:"social-links",props:{iconOnly:!1,links:[{href:"https://facebook.com/company",label:"Facebook",icon:"mdi:facebook"},{href:"https://twitter.com/company",label:"Twitter",icon:"mdi:twitter"},{href:"https://instagram.com/company",label:"Instagram",icon:"mdi:instagram"},{href:"https://linkedin.com/company/company",label:"LinkedIn",icon:"mdi:linkedin"}]}},{description:"Social icons displayed vertically, with labels",type:"social-links",props:{iconOnly:!1,direction:"flex-col",links:[{href:"https://facebook.com/company",label:"Facebook",icon:"mdi:facebook"},{href:"https://twitter.com/company",label:"Twitter",icon:"mdi:twitter"},{href:"https://instagram.com/company",label:"Instagram",icon:"mdi:instagram"},{href:"https://linkedin.com/company/company",label:"LinkedIn",icon:"mdi:linkedin"}]}},{description:"Professional social links with labels",type:"social-links",props:{iconOnly:!1,links:[{href:"https://linkedin.com/in/johndoe",label:"Connect on LinkedIn",icon:"mdi:linkedin"},{href:"https://github.com/johndoe",label:"View GitHub Profile",icon:"mdi:github"},{href:"https://twitter.com/johndoe",label:"Follow on Twitter",icon:"mdi:twitter"},{href:"mailto:john@example.com",label:"Send Email",icon:"mdi:email"}]}},{description:"Creative portfolio social links (icon-only inline)",type:"social-links",props:{iconOnly:!0,links:[{href:"https://dribbble.com/designer",label:"Dribbble",icon:"mdi:dribbble"},{href:"https://behance.net/designer",label:"Behance",icon:"mdi:behance"},{href:"https://instagram.com/designer",label:"Instagram",icon:"mdi:instagram"},{href:"https://pinterest.com/designer",label:"Pinterest",icon:"mdi:pinterest"},{href:"https://youtube.com/designer",label:"YouTube",icon:"mdi:youtube"}]}},{description:"Developer/tech social links with labels",type:"social-links",props:{iconOnly:!1,direction:"flex-col",links:[{href:"https://github.com/developer",label:"GitHub",icon:"mdi:github"},{href:"https://stackoverflow.com/users/developer",label:"Stack Overflow",icon:"mdi:stack-overflow"},{href:"https://dev.to/developer",label:"Dev.to",icon:"mdi:dev-to"},{href:"https://codepen.io/developer",label:"CodePen",icon:"mdi:codepen"}]}},{description:"Music artist social platforms (block layout)",type:"social-links",props:{iconOnly:!0,direction:"flex-col",links:[{href:"https://spotify.com/artist/musician",label:"Listen on Spotify",icon:"mdi:spotify"},{href:"https://music.apple.com/artist/musician",label:"Apple Music",icon:"mdi:apple"},{href:"https://soundcloud.com/musician",label:"SoundCloud",icon:"mdi:soundcloud"},{href:"https://youtube.com/musician",label:"YouTube Channel",icon:"mdi:youtube"},{href:"https://bandcamp.com/musician",label:"Bandcamp",icon:"mdi:bandcamp"}]}},{description:"Business contact icons only",type:"social-links",props:{iconOnly:!0,links:[{href:"tel:+1234567890",label:"Phone",icon:"mdi:phone"},{href:"mailto:contact@business.com",label:"Email",icon:"mdi:email"},{href:"https://maps.google.com/business",label:"Location",icon:"mdi:map-marker"},{href:"https://business.com",label:"Website",icon:"mdi:web"}]}},{description:"Gaming content creator links (inline with labels)",type:"social-links",props:{iconOnly:!1,links:[{href:"https://twitch.tv/gamer",label:"Twitch",icon:"mdi:twitch"},{href:"https://youtube.com/gamer",label:"YouTube",icon:"mdi:youtube"},{href:"https://discord.gg/gamer",label:"Discord",icon:"mdi:discord"},{href:"https://tiktok.com/@gamer",label:"TikTok",icon:"mdi:tiktok"}]}},{description:"Restaurant social presence (block layout)",type:"social-links",props:{iconOnly:!1,direction:"flex-col",links:[{href:"https://facebook.com/restaurant",label:"Follow us on Facebook",icon:"mdi:facebook"},{href:"https://instagram.com/restaurant",label:"See photos on Instagram",icon:"mdi:instagram"},{href:"https://yelp.com/restaurant",label:"Review us on Yelp",icon:"mdi:yelp"},{href:"https://tripadvisor.com/restaurant",label:"TripAdvisor Reviews",icon:"mdi:tripadvisor"},{href:"tel:+1234567890",label:"Call for Reservations",icon:"mdi:phone"}]}},{description:"Minimal footer social icons",type:"social-links",props:{iconOnly:!0,direction:"flex-row",links:[{href:"https://twitter.com/company",label:"Twitter",icon:"mdi:twitter"},{href:"https://linkedin.com/company/company",label:"LinkedIn",icon:"mdi:linkedin"},{href:"mailto:hello@company.com",label:"Email",icon:"mdi:email"}]}},{description:"E-commerce store social channels (inline with labels)",type:"social-links",props:{iconOnly:!1,direction:"flex-row",links:[{href:"https://facebook.com/store",label:"Facebook",icon:"mdi:facebook"},{href:"https://instagram.com/store",label:"Instagram",icon:"mdi:instagram"},{href:"https://pinterest.com/store",label:"Pinterest",icon:"mdi:pinterest"},{href:"https://youtube.com/store",label:"YouTube",icon:"mdi:youtube"},{href:"https://tiktok.com/@store",label:"TikTok",icon:"mdi:tiktok"}]}}];export{v as a,T as b};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
|
+
|
|
3
|
+
import{a as n}from"./chunk-5WY7LYXK.js";import{a as o}from"./chunk-SFKZAUPW.js";import{Type as t}from"@sinclair/typebox";function g(e="Image",i={}){let{defaultImageUrl:a,showImgSearch:c=!1,noObjectOptions:r=!1}=i;return t.Object({src:t.String({default:a,title:e,description:"Image URL. Can be a link to an image or a data URI"}),alt:t.Optional(t.String({title:"Alternate Text",description:"Alternative text for the image. Recommended for screen readers and SEO","ui:placeholder":"Your image description"})),fit:t.Optional(o(["object-none","object-contain","object-cover","object-fill","object-scale-down"],{enumNames:["None","Contain","Cover","Fill","Scale down"],title:"Fit",description:"How the image should be resized to fit its container",default:"object-cover","ui:field":"enum","ui:styleId":"styles:objectFit"})),position:t.Optional(o(["object-top","object-center","object-bottom","object-left","object-right","object-top-left","object-top-right","object-bottom-left","object-bottom-right"],{enumNames:["Top","Center","Bottom","Left","Right","Top left","Top right","Bottom left","Bottom right"],"ui:styleId":"styles:objectPosition",title:"Position",description:"The position of the image inside its container","ui:field":"enum"}))},{title:e,"ui:field":"image","ui:accept":"image/*","ui:show-img-search":c,"ui:no-object-options":r,default:{alt:"Image",fit:"object-cover",position:"object-center"},metadata:{category:"content"},...i})}function b(e={}){return n("assets:image",e)}export{g as a,b};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
|
+
|
|
3
|
+
import{c as s}from"./chunk-6PGAWO4H.js";import{a as p}from"./chunk-4GIZ6WSG.js";import{a as t}from"./chunk-7UBMXMNJ.js";import{b as r}from"./chunk-AB3IMRXZ.js";import{b as o,d as i}from"./chunk-DHSWVVMI.js";import{c as d}from"./chunk-HSRXUIVM.js";import{RxVideo as n}from"react-icons/rx";import{Type as e}from"@sinclair/typebox";var w=p({type:"video",name:"Video",category:"media",description:"An embedded video player for YouTube / Vimeo / Wistia links",icon:n,defaultWidth:{mobile:"auto",desktop:`${360*16/9}px`},defaultHeight:{mobile:"168px",desktop:"360px"},minWidth:{mobile:300,desktop:360*16/9},minHeight:{mobile:168,desktop:360},props:s({url:t("Video URL",{description:"URL of the video to embed. It can be a YouTube link or an embed link. It also supports Vimeo and Wistia links.",default:"https://www.youtube.com/watch?v=dQw4w9WgXcQ",metadata:{category:"content","ui:responsive":"desktop"}}),padding:e.Optional(d({description:"Padding inside the video player.","ai:instructions":"Use only a single value like '1rem' or '10px'",title:"Padding","ui:responsive":!0,"ui:placeholder":"Not specified","ui:styleId":"styles:padding"})),rounding:e.Optional(i({default:"rounded-md"})),border:e.Optional(o()),shadow:e.Optional(r())})}),b=[{description:"A YouTube video",type:"video",props:{url:"https://www.youtube.com/watch?v=dQw4w9WgXcQ"}},{description:"An embedded YouTube video",type:"video",props:{url:"https://www.youtube.com/embed/dQw4w9WgXcQ"}},{description:"A Vimeo video",type:"video",props:{url:"https://vimeo.com/123456789"}},{description:"Dynamic course video using course query",type:"video",props:{url:"{{course.videoUrl}}",padding:"1rem",rounding:"rounded-lg",shadow:"shadow-md"}},{description:"Dynamic product demo video using product query",type:"video",props:{url:"{{product.demoVideoUrl}}",padding:"0.5rem",rounding:"rounded-xl",shadow:"shadow-lg",border:{width:"border-2",color:"border-primary-300"}}}];export{w as a,b};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
|
+
|
|
3
|
+
import{c as m}from"./chunk-6PGAWO4H.js";import{a as p}from"./chunk-4GIZ6WSG.js";import{m as c}from"./chunk-F4JNKU7J.js";import{b as l}from"./chunk-3FPFR5RA.js";import{a as t,f as r}from"./chunk-7UBMXMNJ.js";import{b as s}from"./chunk-VK26ZZFR.js";import{b as i}from"./chunk-AB3IMRXZ.js";import{b as o}from"./chunk-DHSWVVMI.js";import{c as n}from"./chunk-Z4YKRLOX.js";import{c as a}from"./chunk-HSRXUIVM.js";import{Type as e}from"@sinclair/typebox";import{HiOutlineChatBubbleBottomCenter as d}from"react-icons/hi2";var R=p({type:"testimonials",name:"Testimonials",description:"Display testimonials from users",defaultWidth:{desktop:"100%"},icon:d,consumesMultipleQueryRows:!0,aiInstructions:`This brick displays user testimonials with optional avatars and social icons.
|
|
4
|
+
It is typically used to showcase customer feedback or endorsements.
|
|
5
|
+
Optionally either use an avatar or a social icon but not both at the same time.`,props:m({colorPreset:e.Optional(n({title:"Color",default:"base-100"})),border:e.Optional(o({title:"Border",description:"Customize the border of the testimonial cards.",default:{width:"border",color:"border-accent-500"}})),fontSize:e.Optional(s({"ui:no-extra-large-sizes":!0})),padding:e.Optional(a({default:"1rem",description:"Padding inside the main container.","ai:instructions":"Use only a single value like '1rem' or '10px'",title:"Padding","ui:responsive":!0,"ui:placeholder":"Not specified","ui:styleId":"styles:padding"})),gap:e.Optional(a({title:"Gap",default:"26px",description:"Space between bricks.","ai:instructions":"Can be a tailwind gap class like 'gap-1' or 'gap-2', or a custom value like '10px'","ui:placeholder":"Not specified","ui:styleId":"styles:gap"})),shadow:e.Optional(i()),loop:e.Optional(c({description:"If enabled, each row from the query result will be used to create a testimonial. Otherwise, the testimonials will be static.","ui:placeholder":"Not specified (static)"})),testimonials:e.Optional(e.Array(e.Object({text:t("Text",{default:"Amazing product!","ui:multiline":!0,"ui:textarea-class":"h-20"}),author:t("Author",{default:"John Doe"}),company:e.Optional(t("Company")),avatar:e.Optional(l({title:"Avatar","ui:placeholder":"https://via.placeholder.com/80x80.png?text=JD",noObjectOptions:!0})),socialIcon:e.Optional(r())}),{title:"Testimonials",default:[],"ui:displayField":"author","ui:options":{orderable:!0,removable:!0,addable:!0},metadata:{category:"content",consumeQuery:!0},examples:[{text:"This is a great product! It has changed my life.",author:"John Doe",company:"Acme Inc.",avatar:{src:"https://via.placeholder.com/80x80.png?text=JD",alt:"John Doe profile photo"},socialIcon:"mdi:linkedin"}]}))},{default:{orientation:"horizontal"}})}),C=[{description:"SaaS platform testimonials with avatars",type:"testimonials",props:{testimonials:[{author:"Sarah Johnson",company:"TechCorp Solutions",text:"This platform has completely transformed how we manage our projects. The intuitive interface and powerful automation features have saved us countless hours.",avatar:{src:"https://via.placeholder.com/80x80.png?text=SJ",alt:"Sarah Johnson profile photo"},socialIcon:"mdi:linkedin"},{author:"Mike Chen",company:"StartupFlow",text:"Outstanding customer support and regular feature updates. We've been using this for over a year and it keeps getting better. Highly recommend!",avatar:{src:"https://via.placeholder.com/80x80.png?text=MC",alt:"Mike Chen profile photo"},socialIcon:"mdi:twitter"},{author:"Emily Rodriguez",company:"Digital Agency Pro",text:"The automation capabilities are game-changing. What used to take us days now happens automatically. It's like having an extra team member.",avatar:{src:"https://via.placeholder.com/80x80.png?text=ER",alt:"Emily Rodriguez profile photo"},socialIcon:"mdi:linkedin"}]}},{description:"E-commerce customer reviews",type:"testimonials",props:{testimonials:[{author:"Jessica Williams",company:"Happy Customer",text:"Amazing product quality and fast shipping! The item exceeded my expectations and the customer service was excellent when I had questions.",avatar:{src:"https://via.placeholder.com/60x60.png?text=JW",alt:"Jessica Williams customer photo"},socialIcon:"mdi:star"},{author:"David Park",text:"Five stars! Been using this product for 6 months and it's still going strong. Definitely worth the investment and I've already recommended it to friends.",avatar:{src:"https://via.placeholder.com/60x60.png?text=DP",alt:"David Park customer photo"},socialIcon:"mdi:thumbs-up"}]}},{description:"Agency client testimonials with company info",type:"testimonials",props:{testimonials:[{author:"Rachel Thompson",company:"Global Enterprises",text:"The team delivered exceptional results on time and within budget. Their creative approach and attention to detail made all the difference for our brand.",avatar:{src:"https://via.placeholder.com/70x70.png?text=RT",alt:"Rachel Thompson headshot"},socialIcon:"mdi:briefcase"},{author:"Alex Kumar",company:"Innovation Labs",text:"Working with this agency was a game-changer for our digital presence. They understood our vision and brought it to life beautifully.",avatar:{src:"https://via.placeholder.com/70x70.png?text=AK",alt:"Alex Kumar profile"},socialIcon:"mdi:lightbulb"},{author:"Maria Santos",company:"Retail Plus",text:"Professional, creative, and results-driven. Our website traffic increased by 200% after their redesign. Couldn't be happier!",avatar:{src:"https://via.placeholder.com/70x70.png?text=MS",alt:"Maria Santos photo"},socialIcon:"mdi:chart-line"}]}},{description:"App user feedback",type:"testimonials",props:{testimonials:[{author:"Tom Wilson",text:"This app has made my daily routine so much easier. Love the clean interface and how everything just works seamlessly across all my devices.",avatar:{src:"https://via.placeholder.com/65x65.png?text=TW",alt:"Tom Wilson user photo"},socialIcon:"mdi:cellphone"},{author:"Lisa Chang",text:"Been using this app for months and it's become essential to my workflow. The latest update with AI features is incredibly impressive.",avatar:{src:"https://via.placeholder.com/65x65.png?text=LC",alt:"Lisa Chang profile picture"},socialIcon:"mdi:robot"},{author:"James Miller",text:"Simple, powerful, and reliable. Exactly what I was looking for. The customer support team is also very responsive and helpful.",avatar:{src:"https://via.placeholder.com/65x65.png?text=JM",alt:"James Miller avatar"},socialIcon:"mdi:heart"}]}},{description:"Course/education testimonials with social icons",type:"testimonials",props:{testimonials:[{author:"Amanda Foster",company:"UX Designer",text:"This course completely changed my career trajectory. The practical projects and expert feedback helped me land my dream job in just 3 months.",avatar:{src:"https://via.placeholder.com/75x75.png?text=AF",alt:"Amanda Foster student photo"},socialIcon:"mdi:school"},{author:"Carlos Rodriguez",company:"Software Engineer",text:"The instructors are industry experts and the content is always up-to-date. I've taken three courses here and each one exceeded my expectations.",avatar:{src:"https://via.placeholder.com/75x75.png?text=CR",alt:"Carlos Rodriguez profile"},socialIcon:"mdi:code-tags"}]}},{description:"Simple testimonials without avatars",type:"testimonials",props:{testimonials:[{author:"Anonymous User",text:"Great service and excellent value for money. Would definitely recommend to others looking for a reliable solution.",socialIcon:"mdi:account-circle"},{author:"Verified Customer",text:"Quick delivery and exactly as described. Very satisfied with my purchase and the overall experience.",socialIcon:"mdi:check-circle"},{author:"Beta Tester",text:"Been using the beta version and it's already impressive. Looking forward to the full release with even more features.",socialIcon:"mdi:beta"}]}},{description:"Consultant testimonials with professional focus",type:"testimonials",props:{testimonials:[{author:"Dr. Patricia Lee",company:"Medical Practice Solutions",text:"The consulting services provided were invaluable to our practice. Revenue increased by 40% and patient satisfaction scores improved significantly.",avatar:{src:"https://via.placeholder.com/80x80.png?text=PL",alt:"Dr. Patricia Lee headshot"},socialIcon:"mdi:medical-bag"},{author:"Robert Kim",company:"Manufacturing Inc.",text:"Their strategic insights helped us streamline operations and reduce costs by 25%. The ROI was evident within the first quarter.",avatar:{src:"https://via.placeholder.com/80x80.png?text=RK",alt:"Robert Kim executive photo"},socialIcon:"mdi:factory"}]}},{description:"Event testimonials with social media icons",type:"testimonials",props:{testimonials:[{author:"Jennifer Adams",company:"Marketing Director",text:"Best conference I've attended in years! The networking opportunities were incredible and the speakers were top-notch industry leaders.",avatar:{src:"https://via.placeholder.com/70x70.png?text=JA",alt:"Jennifer Adams conference attendee"},socialIcon:"mdi:twitter"},{author:"Michael Brown",company:"Tech Startup Founder",text:"The workshops were incredibly practical and I left with actionable strategies I could implement immediately. Already planning to attend next year!",avatar:{src:"https://via.placeholder.com/70x70.png?text=MB",alt:"Michael Brown participant photo"},socialIcon:"mdi:linkedin"},{author:"Sophie Chen",company:"Product Manager",text:"Amazing organization and valuable content. Met so many like-minded professionals and learned cutting-edge techniques I'm excited to try.",avatar:{src:"https://via.placeholder.com/70x70.png?text=SC",alt:"Sophie Chen attendee photo"},socialIcon:"mdi:instagram"}]}},{description:"Dynamic customer testimonials using customerReviews query",type:"testimonials",props:{testimonials:[{author:"{{customerReviews.customerName}}",company:"{{customerReviews.company}}",text:"{{customerReviews.reviewText}}",avatar:{src:"{{customerReviews.customerPhoto}}",alt:"{{customerReviews.customerName}} photo"},socialIcon:"{{customerReviews.socialPlatform}}"}],loop:{over:"customerReviews"}}},{description:"Dynamic client testimonials using clientFeedback query",type:"testimonials",props:{testimonials:[{author:"{{clientFeedback.clientName}}",company:"{{clientFeedback.companyName}} - {{clientFeedback.position}}",text:"{{clientFeedback.testimonial}}",avatar:{src:"{{clientFeedback.headshot}}",alt:"{{clientFeedback.clientName}} headshot"},socialIcon:"{{clientFeedback.preferredIcon}}"}],loop:{over:"clientFeedback"}}},{description:"Dynamic product reviews using productReviews query",type:"testimonials",props:{testimonials:[{author:"{{productReviews.reviewerName}}",text:"{{productReviews.review}} - {{productReviews.rating}}/5 stars",avatar:{src:"{{productReviews.userAvatar}}",alt:"{{productReviews.reviewerName}} profile"},socialIcon:"mdi:star"}],loop:{over:"productReviews"}}},{description:"Dynamic employee testimonials using teamTestimonials query",type:"testimonials",props:{testimonials:[{author:"{{teamTestimonials.employeeName}}",company:"{{teamTestimonials.department}} - {{teamTestimonials.jobTitle}}",text:"{{teamTestimonials.testimonial}}",avatar:{src:"{{teamTestimonials.profilePhoto}}",alt:"{{teamTestimonials.employeeName}} profile photo"},socialIcon:"{{teamTestimonials.socialIcon}}"}],loop:{over:"teamTestimonials"}}}];export{R as a,C as b};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
|
+
|
|
3
|
+
import{b as o}from"./chunk-LEWKHCRI.js";function y({props:e,defaultHeight:t,defaultWidth:i,category:r="widgets",isContainer:s=!1,hideInLibrary:n=!1,isGlobalBrick:a=!1,deletable:p=!0,movable:l=!0,resizable:c=!0,duplicatable:b=!0,defaultInspectorTab:m="preset",icon:d,...u}){return{...u,icon:d,props:e,category:r,defaultInspectorTab:m,hideInLibrary:n,deletable:p,movable:l,resizable:c,duplicatable:b,isContainer:s,isGlobalBrick:a,defaultWidth:{mobile:i?.mobile??"auto",desktop:i?.desktop??"auto"},defaultHeight:{mobile:t?.mobile??"auto",desktop:t?.desktop??"auto"}}}function k(e){return{manifest:e,props:o(e.props),mobileProps:{}}}export{y as a,k as b};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
|
+
|
|
3
|
+
import{c as l}from"./chunk-6PGAWO4H.js";import{a as c}from"./chunk-4GIZ6WSG.js";import{f as t}from"./chunk-VK26ZZFR.js";import{b as s,d}from"./chunk-AB3IMRXZ.js";import{b as i,d as n}from"./chunk-DHSWVVMI.js";import{c as p}from"./chunk-Z4YKRLOX.js";import{b as r,d as o}from"./chunk-DKNOZLA6.js";import{c as a}from"./chunk-HSRXUIVM.js";import{BsAlphabetUppercase as g}from"react-icons/bs";import{Type as e}from"@sinclair/typebox";var C=c({type:"hero",category:"basic",name:"Hero",description:"A big textual element for home pages.",aiInstructions:`Displays a large text element that can be used to display a title and an optional tagline.
|
|
4
|
+
Typically used on home pages to grab the user's attention. It's better NOT to provide the colorPreset prop so that the Hero inherits the background of its parent box or section.`,icon:g,defaultWidth:{desktop:"60dvw",mobile:"auto"},staticClasses:"flex-col",props:l({content:t({title:"Hero title",default:"<h1 style='text-align:center'>Lorem Ipsum<br />dolor sit amet</h1>"}),tagline:e.Optional(t({title:"Hero tagline",default:"<p style='text-align:center'>Use our platform to build your business with confidence.</p>"})),colorPreset:e.Optional(p({title:"Color"})),textShadow:e.Optional(d({default:"text-shadow-sm"})),padding:e.Optional(a({default:"6rem",description:"Padding inside the hero.","ai:instructions":"Use only a single value like '1rem' or '10px'",title:"Padding","ui:responsive":!0,"ui:placeholder":"Not specified","ui:styleId":"styles:padding"})),rounding:e.Optional(n({default:"rounded-md"})),border:e.Optional(i()),shadow:e.Optional(s()),justifyContent:e.Optional(r({default:"justify-center"})),alignItems:e.Optional(o({default:"items-center"}))})}),D=[{description:"Simple welcome hero with primary background",type:"hero",props:{content:"Welcome to Our Platform",tagline:"The future of productivity starts here",padding:"3rem",colorPreset:{color:"primary-400"}}},{description:"Startup hero with primary gradient background to bottom-right",type:"hero",props:{content:"Build Something Amazing",tagline:"Turn your ideas into reality with our cutting-edge tools",padding:"3rem",colorPreset:{color:"primary-500",gradientDirection:"bg-gradient-to-br"}}},{description:"Construction company hero with bold presence",type:"hero",props:{content:"Building Tomorrow Today",tagline:"Quality construction services for residential and commercial projects",padding:"3rem"}},{description:"Fashion brand hero with modern appeal",type:"hero",props:{content:"Express Your Style",tagline:"Contemporary fashion that speaks to your individuality",padding:"6rem"}},{description:"Law firm hero with authoritative tone",type:"hero",props:{content:"Justice You Can Trust",tagline:"Experienced legal representation for individuals and businesses",padding:"6rem",colorPreset:{color:"neutral-800"}}},{description:"Photography studio hero with artistic flair",type:"hero",props:{content:"Capturing Life's Moments",tagline:"Professional photography services for weddings, portraits, and events"}},{description:"Restaurant hero with warm colors and rounded design",type:"hero",props:{content:"Authentic Italian Cuisine",tagline:"Fresh ingredients, traditional recipes, unforgettable flavors",padding:"4rem",colorPreset:{color:"orange-600"},rounding:"rounded-xl",shadow:"shadow-lg"}},{description:"Tech company hero with success gradient and modern styling",type:"hero",props:{content:"Innovation Redefined",tagline:"Pushing the boundaries of what's possible with AI technology",padding:"5rem",colorPreset:{color:"success-500",gradientDirection:"bg-gradient-to-r"},textShadow:"text-shadow-lg",border:{width:"border-2",color:"border-success-300"}}},{description:"Medical practice hero with trust-inspiring design",type:"hero",props:{content:"Your Health, Our Priority",tagline:"Comprehensive healthcare services with compassionate care",padding:"4rem",colorPreset:{color:"blue-500"},rounding:"rounded-lg",justifyContent:"justify-start",alignItems:"items-start"}},{description:"Creative agency hero with warning accent and diagonal gradient",type:"hero",props:{content:"Creative Solutions",tagline:"Bold designs that make your brand unforgettable",padding:"3rem",colorPreset:{color:"warning-400",gradientDirection:"bg-gradient-to-tl"},shadow:"shadow-xl",border:{width:"border",color:"border-warning-200"}}},{description:"Fitness studio hero with danger color and strong presence",type:"hero",props:{content:"Transform Your Body",tagline:"High-intensity training programs that deliver real results",padding:"5rem",colorPreset:{color:"danger-600"},textShadow:"text-shadow-md",rounding:"rounded-2xl",justifyContent:"justify-center",alignItems:"items-center"}},{description:"Minimalist hero with neutral tones and subtle effects",type:"hero",props:{content:"Simplicity Perfected",tagline:"Clean design solutions for modern businesses",padding:"8rem",colorPreset:{color:"neutral-100"},shadow:"shadow-sm",border:{width:"border",color:"border-neutral-300"},rounding:"rounded-md"}},{description:"Dynamic company hero using business query data",type:"hero",props:{content:"Welcome to {{company.name}}",tagline:"{{company.tagline}} - Serving {{company.location}} since {{company.foundedYear}}",padding:"4rem",colorPreset:{color:"primary-500"}}},{description:"Dynamic employee spotlight using employee query",type:"hero",props:{content:"Meet {{employee.fullName}}",tagline:"{{employee.position}} at {{employee.department}} - {{employee.yearsExperience}} years of experience",padding:"3rem",colorPreset:{color:"secondary-400",gradientDirection:"bg-gradient-to-r"}}},{description:"Dynamic product launch hero using product query",type:"hero",props:{content:"Introducing {{product.name}}",tagline:"{{product.description}} - Starting at ${{product.price}}",padding:"5rem",colorPreset:{color:"accent-600"},shadow:"shadow-lg",rounding:"rounded-xl"}},{description:"Dynamic event announcement using event query",type:"hero",props:{content:"{{event.title}}",tagline:"Join us on {{event.date}} at {{event.venue}} - {{event.city}}",padding:"4rem",colorPreset:{color:"primary-400",gradientDirection:"bg-gradient-to-br"},textShadow:"text-shadow-md"}},{description:"Dynamic blog post hero using article query",type:"hero",props:{content:"{{article.title}}",tagline:"By {{article.author}} \u2022 Published {{article.publishDate}} \u2022 {{article.readTime}} min read",padding:"3rem",colorPreset:{color:"neutral-700"},justifyContent:"justify-start",alignItems:"items-start"}},{description:"Dynamic service promotion using service query",type:"hero",props:{content:"{{service.name}}",tagline:"{{service.description}} - {{service.duration}} \u2022 Starting at ${{service.price}}",padding:"6rem",colorPreset:{color:"secondary-500",gradientDirection:"bg-gradient-to-tl"},border:{width:"border-2",color:"border-secondary-300"}}},{description:"Dynamic property showcase using property query",type:"hero",props:{content:"{{property.address}}",tagline:"${{property.price}} \u2022 {{property.bedrooms}} bed, {{property.bathrooms}} bath \u2022 {{property.squareFootage}} sq ft",padding:"4rem",colorPreset:{color:"accent-500"},rounding:"rounded-lg",shadow:"shadow-md"}},{description:"Dynamic course announcement using course query",type:"hero",props:{content:"{{course.title}}",tagline:"Learn {{course.subject}} with {{course.instructor}} \u2022 {{course.duration}} \u2022 {{course.skillLevel}} level",padding:"5rem",colorPreset:{color:"primary-600"},textShadow:"text-shadow-lg",justifyContent:"justify-center",alignItems:"items-center"}}];export{C as a,D as b};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
|
+
|
|
3
|
+
var s=async({options:t})=>{let a=`https://mastodon.social/api/v1/accounts/lookup?${new URLSearchParams({acct:t.username}).toString()}`,o=await fetch(a);if(!o.ok)throw new Error(`fetchMastodonAccount Error: Response status: ${o.status}`);return await o.json()},e=s;export{e as a};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
2
|
|
|
3
|
-
import{b as s}from"./chunk-
|
|
3
|
+
import{b as s}from"./chunk-JRCVYDCD.js";import{Type as r}from"@sinclair/typebox";function c(t){return t.type==="object"}function l({title:t,children:e,category:o="settings",metadata:a,options:n}){return c(e)?r.Composite([r.Object({}),e],{title:t,metadata:{category:o,group:!0,...a},...n}):r.Object(e,{title:t,...n,metadata:{category:o,group:!0,...a}})}function m(t){let e=t.metadata;return{title:t.title??t.metadata?.title,meta:e,tab:e.groupTab||"common"}}function P(t,e){let o={...s,...t},{alignSelf:a,grow:n,...p}=o,i={...p,...e?.noAlignSelf?{}:{alignSelf:a},...e?.noGrow?{}:{grow:n}};return r.Object(i,{...e,additionalProperties:!1})}var T=r.Array;export{l as a,m as b,P as c,T as d};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
|
+
|
|
3
|
+
import{c as t}from"./chunk-6PGAWO4H.js";import{a as e}from"./chunk-4GIZ6WSG.js";import{BsCodeSquare as i}from"react-icons/bs";import{Type as r}from"@sinclair/typebox";var p=e({type:"html",name:"Html",category:"widgets",description:"A flexible brick that accepts HTML content. Useful for embeding custom HTML or third-party widgets.",aiInstructions:"Use only this brick type when integrating third party widgets or custom HTML content. Most of the time, you should use other bricks that are more secure and easier to use.",staticClasses:"self-stretch",defaultWidth:{mobile:"auto",desktop:"300px"},icon:i,props:t({html:r.String({title:"HTML Content",description:"The HTML content to render. Use with caution, as it can introduce security risks.",default:"<div>Your HTML content here</div>","ui:placeholder":"<div>Your HTML content here</div>","ui:multiline":!0,metadata:{category:"content"}})})}),n=[{description:"A tally form",type:"html",props:{html:'<iframe data-tally-src="https://tally.so/embed/wQZpd8?alignLeft=1&hideTitle=1&transparentBackground=1&dynamicHeight=1" loading="lazy" width="100%" height="282" frameborder="0" marginheight="0" marginwidth="0" title="test"></iframe>'}},{description:"YouTube video embed",type:"html",props:{html:'<iframe width="560" height="315" src="https://www.youtube.com/embed/dQw4w9WgXcQ" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>'}},{description:"Google Maps embed",type:"html",props:{html:'<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3024.309059887159!2d-74.00849368459473!3d40.71278097932847!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x89c25a165bedccab%3A0xa2008c34c27bfb67!2sWall%20St%2C%20New%20York%2C%20NY%2C%20USA!5e0!3m2!1sen!2sus!4v1620000000000" width="100%" height="300" style="border:0;" allowfullscreen="" loading="lazy"></iframe>'}},{description:"Twitter tweet embed",type:"html",props:{html:'<blockquote class="twitter-tweet"><p lang="en" dir="ltr">Just setting up my twttr</p>— Jack Dorsey (@jack) <a href="https://twitter.com/jack/status/20?ref_src=twsrc%5Etfw">March 21, 2006</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>'}},{description:"CodePen embed for code showcase",type:"html",props:{html:'<iframe height="300" style="width: 100%;" scrolling="no" title="CSS Animation Example" src="https://codepen.io/team/codepen/embed/PNaGbb?height=300&theme-id=light&default-tab=result" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"></iframe>'}},{description:"Calendly scheduling widget",type:"html",props:{html:'<div class="calendly-inline-widget" data-url="https://calendly.com/your-name/30min" style="min-width:320px;height:630px;"></div><script type="text/javascript" src="https://assets.calendly.com/assets/external/widget.js" async></script>'}},{description:"Custom pricing table with CSS styling",type:"html",props:{html:'<div style="display: flex; gap: 20px; justify-content: center;"><div style="border: 2px solid #e2e8f0; border-radius: 12px; padding: 24px; text-align: center; background: white;"><h3 style="margin: 0 0 16px; color: #1e293b;">Basic</h3><div style="font-size: 32px; font-weight: bold; color: #0ea5e9;">$9</div><p style="color: #64748b; margin: 8px 0 20px;">per month</p><ul style="list-style: none; padding: 0; margin: 0;"><li style="padding: 8px 0;">\u2713 5 Projects</li><li style="padding: 8px 0;">\u2713 10GB Storage</li><li style="padding: 8px 0;">\u2713 Email Support</li></ul></div></div>'}},{description:"Mailchimp newsletter signup form",type:"html",props:{html:'<div id="mc_embed_signup"><form action="https://your-domain.us1.list-manage.com/subscribe/post?u=123456789&id=abcdefghij" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate><div id="mc_embed_signup_scroll"><div class="mc-field-group"><label for="mce-EMAIL">Email Address</label><input type="email" value="" name="EMAIL" class="required email" id="mce-EMAIL" style="width: 100%; padding: 10px; margin: 8px 0; border: 1px solid #ccc; border-radius: 4px;"></div><div id="mce-responses" class="clear"><div class="response" id="mce-error-response" style="display:none"></div><div class="response" id="mce-success-response" style="display:none"></div></div><div style="position: absolute; left: -5000px;" aria-hidden="true"><input type="text" name="b_123456789_abcdefghij" tabindex="-1" value=""></div><div class="clear"><input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button" style="background: #007cba; color: white; padding: 10px 20px; border: none; border-radius: 4px; cursor: pointer;"></div></div></form></div>'}},{description:"Stripe payment button integration",type:"html",props:{html:'<script async src="https://js.stripe.com/v3/buy-button.js"></script><stripe-buy-button buy-button-id="buy_btn_1234567890" publishable-key="pk_test_1234567890"></stripe-buy-button>'}},{description:"Instagram post embed",type:"html",props:{html:'<blockquote class="instagram-media" data-instgrm-captioned data-instgrm-permalink="https://www.instagram.com/p/ABC123/" data-instgrm-version="14" style="background:#FFF; border:0; border-radius:3px; box-shadow:0 0 1px 0 rgba(0,0,0,0.5),0 1px 10px 0 rgba(0,0,0,0.15); margin: 1px; max-width:540px; min-width:326px; padding:0; width:99.375%; width:-webkit-calc(100% - 2px); width:calc(100% - 2px);"></blockquote><script async src="//www.instagram.com/embed.js"></script>'}},{description:"Custom countdown timer widget",type:"html",props:{html:'<div style="text-align: center; padding: 20px; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); border-radius: 12px; color: white;"><h3 style="margin: 0 0 20px; font-size: 24px;">Event Countdown</h3><div id="countdown" style="display: flex; justify-content: center; gap: 20px;"><div style="text-align: center;"><div style="font-size: 32px; font-weight: bold;">10</div><div style="font-size: 14px; opacity: 0.8;">DAYS</div></div><div style="text-align: center;"><div style="font-size: 32px; font-weight: bold;">15</div><div style="font-size: 14px; opacity: 0.8;">HOURS</div></div><div style="text-align: center;"><div style="font-size: 32px; font-weight: bold;">30</div><div style="font-size: 14px; opacity: 0.8;">MINUTES</div></div></div></div>'}},{description:"Interactive feedback widget with rating stars",type:"html",props:{html:'<div style="border: 1px solid #e2e8f0; border-radius: 8px; padding: 24px; background: #f8fafc;"><h4 style="margin: 0 0 16px; color: #1e293b;">How was your experience?</h4><div style="display: flex; gap: 8px; margin: 16px 0;"><span style="font-size: 24px; cursor: pointer; color: #fbbf24;">\u2605</span><span style="font-size: 24px; cursor: pointer; color: #fbbf24;">\u2605</span><span style="font-size: 24px; cursor: pointer; color: #fbbf24;">\u2605</span><span style="font-size: 24px; cursor: pointer; color: #fbbf24;">\u2605</span><span style="font-size: 24px; cursor: pointer; color: #d1d5db;">\u2605</span></div><textarea placeholder="Tell us more about your experience..." style="width: 100%; height: 80px; padding: 12px; border: 1px solid #d1d5db; border-radius: 6px; resize: vertical; font-family: inherit;"></textarea><button style="margin-top: 12px; background: #3b82f6; color: white; padding: 10px 20px; border: none; border-radius: 6px; cursor: pointer;">Submit Feedback</button></div>'}}];export{p as a,n as b};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
|
+
|
|
3
|
+
import{a as n}from"./chunk-5WY7LYXK.js";import{Type as i}from"@sinclair/typebox";function l(t,e={}){return i.String({title:t,...e})}function p(t="URL",e){return i.String({title:t,format:"url","ui:field":"url",default:e})}var r=i.String({"ui:field":"page-id"});function u(t="URL",e){return i.Union([i.String({format:"url"}),r],{default:e,title:t,metadata:{category:"content"},"ui:field":"url-page-id","ai:instructions":"This field can be a URL or a page ID. Use the page ID when linking to a internal page, and a URL for external links."})}function c(t={}){return n("content:urlOrPageId",{...t})}function d(t,e={}){return i.String({title:t??"Icon","ai:instructions":"Use a iconify reference like 'mdi:heart' or 'fa-solid:coffee'.","ui:field":"iconify",metadata:{category:"content"},...e})}function f(t={}){return n("assets:icon",t)}export{l as a,p as b,u as c,c as d,d as e,f};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
|
+
|
|
3
|
+
import{a as o}from"./chunk-5WY7LYXK.js";import{a as e}from"./chunk-SFKZAUPW.js";import{Type as s}from"@sinclair/typebox";function d(t={}){return e(["shadow-none","shadow-sm","shadow-md","shadow-lg","shadow-xl","shadow-2xl"],{title:"Shadow",description:"Box shadow around the brick",enumNames:["None","Small","Medium","Large","XL","2XL"],"ui:placeholder":"Not specified","ui:field":"enum","ui:display":"select","ui:responsive":"desktop","ui:styleId":"styles:shadow",...t})}function u(t={}){return o("styles:shadow",t)}function r(t={}){return e(["text-shadow-none","text-shadow-sm","text-shadow-md","text-shadow-lg","text-shadow-xl"],{title:"Text shadow",enumNames:["None","S","M","L","XL"],"ui:display":"button-group","ui:placeholder":"Not specified","ui:field":"enum","ui:styleId":"styles:textShadow",examples:["text-shadow-sm","text-shadow-md","text-shadow-lg"],...t})}function m(t={}){return o("styles:textShadow",t)}function l({defaultValue:t=1,title:i="Opacity"}={}){return s.Number({title:i,minimum:.1,maximum:1,default:t,multipleOf:.1,"ui:field":"slider","ui:unit":"%","ui:multiplier":100,examples:[.5,.75,1]})}export{d as a,u as b,r as c,m as d,l as e};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
|
+
|
|
3
|
+
import{Type as i}from"@sinclair/typebox";function r(t="Date",e){return i.String({title:t,format:"date","ui:field":"date",examples:["2023-03-15"],...e})}function a(t="Date and Time",e){return i.String({title:t,format:"date-time","ui:field":"datetime",examples:["2023-03-15T12:00:00Z"],...e})}export{r as a,a as b};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! Upstart.gg - Copyright (C) 2024 Flippable - https://github.com/upstart-gg/upstart/blob/main/LICENSE */
|
|
2
|
+
|
|
3
|
+
import{c}from"./chunk-6PGAWO4H.js";import{a as l}from"./chunk-4GIZ6WSG.js";import{m as i}from"./chunk-F4JNKU7J.js";import{b as a}from"./chunk-3FPFR5RA.js";import{a as o}from"./chunk-7UBMXMNJ.js";import{d as r}from"./chunk-DHSWVVMI.js";import{c as s}from"./chunk-Z4YKRLOX.js";import{c as t}from"./chunk-HSRXUIVM.js";import{Type as e}from"@sinclair/typebox";import{TbCarouselHorizontal as n}from"react-icons/tb";var P=l({type:"carousel",name:"Carousel",description:"An image carousel with navigation arrows and dots or numbers indicator",aiInstructions:"Use this brick to create an image carousel or slideshow. It can display multiple images that users can navigate through using arrows or dots. Each image can have an optional legend or caption. This brick is ideal for showcasing portfolios, product images, or any visual content in an engaging way.",category:"media",defaultInspectorTab:"content",consumesMultipleQueryRows:!0,minHeight:{desktop:200},minWidth:{desktop:300},icon:n,props:c({colorPreset:e.Optional(s({title:"Color"})),padding:e.Optional(t({default:"1rem",description:"Padding inside the carousel.","ai:instructions":"Use only a single value like '1rem' or '10px'",title:"Padding","ui:responsive":!0,"ui:placeholder":"Not specified","ui:styleId":"styles:padding"})),images:e.Optional(e.Array(e.Object({src:a({"ui:responsive":"desktop","ui:no-alt-text":!0,"ui:no-object-options":!0}),legend:o("Legend")}),{title:"Images",default:[],maxItems:12,metadata:{category:"content"}})),borderRadius:e.Optional(r({default:"rounded-md"})),loop:e.Optional(i())})}),b=[{description:"Basic image carousel with legends",type:"carousel",props:{images:[{src:{src:"https://via.placeholder.com/800x400.png?text=Slide+1",alt:"First slide"},legend:"Beautiful landscape"},{src:{src:"https://via.placeholder.com/800x400.png?text=Slide+2",alt:"Second slide"},legend:"Amazing architecture"},{src:{src:"https://via.placeholder.com/800x400.png?text=Slide+3",alt:"Third slide"},legend:"Stunning nature"}]}},{description:"Product showcase carousel with rounded corners and padding",type:"carousel",props:{images:[{src:{src:"https://via.placeholder.com/600x400.png?text=Product+1",alt:"Product 1"},legend:"Premium Headphones - $199"},{src:{src:"https://via.placeholder.com/600x400.png?text=Product+2",alt:"Product 2"},legend:"Wireless Speaker - $149"},{src:{src:"https://via.placeholder.com/600x400.png?text=Product+3",alt:"Product 3"},legend:"Smart Watch - $299"},{src:{src:"https://via.placeholder.com/600x400.png?text=Product+4",alt:"Product 4"},legend:"Laptop Stand - $79"}],borderRadius:"rounded-xl",padding:"2rem",colorPreset:{color:"gray-50"}}},{description:"Portfolio carousel with minimal styling",type:"carousel",props:{images:[{src:{src:"https://via.placeholder.com/900x600.png?text=Portfolio+1",alt:"Portfolio piece 1"},legend:"Web Design Project"},{src:{src:"https://via.placeholder.com/900x600.png?text=Portfolio+2",alt:"Portfolio piece 2"},legend:"Brand Identity Design"},{src:{src:"https://via.placeholder.com/900x600.png?text=Portfolio+3",alt:"Portfolio piece 3"},legend:"Mobile App Interface"}],borderRadius:"rounded-none",padding:"0"}},{description:"Event photos carousel with primary color theme",type:"carousel",props:{images:[{src:{src:"https://via.placeholder.com/800x500.png?text=Event+Photo+1",alt:"Event photo 1"},legend:"Opening Ceremony"},{src:{src:"https://via.placeholder.com/800x500.png?text=Event+Photo+2",alt:"Event photo 2"},legend:"Keynote Speaker"},{src:{src:"https://via.placeholder.com/800x500.png?text=Event+Photo+3",alt:"Event photo 3"},legend:"Networking Session"},{src:{src:"https://via.placeholder.com/800x500.png?text=Event+Photo+4",alt:"Event photo 4"},legend:"Award Ceremony"},{src:{src:"https://via.placeholder.com/800x500.png?text=Event+Photo+5",alt:"Event photo 5"},legend:"Closing Remarks"}],colorPreset:{color:"primary-100"},borderRadius:"rounded-lg",padding:"1.5rem"}},{description:"Travel destinations carousel without legends",type:"carousel",props:{images:[{src:{src:"https://via.placeholder.com/700x450.png?text=Paris",alt:"Paris cityscape"},legend:""},{src:{src:"https://via.placeholder.com/700x450.png?text=Tokyo",alt:"Tokyo skyline"},legend:""},{src:{src:"https://via.placeholder.com/700x450.png?text=New+York",alt:"New York streets"},legend:""},{src:{src:"https://via.placeholder.com/700x450.png?text=London",alt:"London landmarks"},legend:""}],borderRadius:"rounded-2xl",padding:"1rem"}},{description:"Team members carousel with blue color scheme",type:"carousel",props:{images:[{src:{src:"https://via.placeholder.com/400x400.png?text=Team+1",alt:"Team member 1"},legend:"John Smith - CEO"},{src:{src:"https://via.placeholder.com/400x400.png?text=Team+2",alt:"Team member 2"},legend:"Sarah Johnson - CTO"},{src:{src:"https://via.placeholder.com/400x400.png?text=Team+3",alt:"Team member 3"},legend:"Mike Davis - Design Lead"},{src:{src:"https://via.placeholder.com/400x400.png?text=Team+4",alt:"Team member 4"},legend:"Emily Chen - Marketing Director"}],colorPreset:{color:"blue-50"},borderRadius:"rounded-full",padding:"2rem"}},{description:"Recipe steps carousel with detailed descriptions",type:"carousel",props:{images:[{src:{src:"https://via.placeholder.com/600x400.png?text=Step+1",alt:"Recipe step 1"},legend:"Step 1: Prepare all ingredients"},{src:{src:"https://via.placeholder.com/600x400.png?text=Step+2",alt:"Recipe step 2"},legend:"Step 2: Heat oil in a large pan"},{src:{src:"https://via.placeholder.com/600x400.png?text=Step+3",alt:"Recipe step 3"},legend:"Step 3: Add vegetables and saut\xE9"},{src:{src:"https://via.placeholder.com/600x400.png?text=Step+4",alt:"Recipe step 4"},legend:"Step 4: Season and serve hot"}],colorPreset:{color:"orange-50"},borderRadius:"rounded-md",padding:"1.5rem"}},{description:"Before and after comparison carousel",type:"carousel",props:{images:[{src:{src:"https://via.placeholder.com/800x400.png?text=Before+1",alt:"Before renovation 1"},legend:"Kitchen - Before Renovation"},{src:{src:"https://via.placeholder.com/800x400.png?text=After+1",alt:"After renovation 1"},legend:"Kitchen - After Renovation"},{src:{src:"https://via.placeholder.com/800x400.png?text=Before+2",alt:"Before renovation 2"},legend:"Living Room - Before"},{src:{src:"https://via.placeholder.com/800x400.png?text=After+2",alt:"After renovation 2"},legend:"Living Room - After"}],colorPreset:{color:"green-50"},borderRadius:"rounded-lg",padding:"1rem"}},{description:"Art gallery carousel with dramatic styling",type:"carousel",props:{images:[{src:{src:"https://via.placeholder.com/600x800.png?text=Artwork+1",alt:"Abstract painting 1"},legend:"Abstract Composition #1 - 2023"},{src:{src:"https://via.placeholder.com/600x800.png?text=Artwork+2",alt:"Abstract painting 2"},legend:"Urban Landscape - 2023"},{src:{src:"https://via.placeholder.com/600x800.png?text=Artwork+3",alt:"Abstract painting 3"},legend:"Color Study #7 - 2024"}],colorPreset:{color:"gray-900"},borderRadius:"rounded-sm",padding:"3rem"}},{description:"Fashion lookbook carousel with purple theme",type:"carousel",props:{images:[{src:{src:"https://via.placeholder.com/500x700.png?text=Look+1",alt:"Fashion look 1"},legend:"Spring Collection - Casual Chic"},{src:{src:"https://via.placeholder.com/500x700.png?text=Look+2",alt:"Fashion look 2"},legend:"Summer Vibes - Beach Ready"},{src:{src:"https://via.placeholder.com/500x700.png?text=Look+3",alt:"Fashion look 3"},legend:"Autumn Elegance - Business"},{src:{src:"https://via.placeholder.com/500x700.png?text=Look+4",alt:"Fashion look 4"},legend:"Winter Style - Cozy Comfort"},{src:{src:"https://via.placeholder.com/500x700.png?text=Look+5",alt:"Fashion look 5"},legend:"Evening Wear - Formal Event"},{src:{src:"https://via.placeholder.com/500x700.png?text=Look+6",alt:"Fashion look 6"},legend:"Weekend Casual - Relaxed Fit"}],colorPreset:{color:"purple-100"},borderRadius:"rounded-xl",padding:"2rem"}},{description:"Car showcase carousel with compact design",type:"carousel",props:{images:[{src:{src:"https://via.placeholder.com/800x450.png?text=Car+1",alt:"Sports car 1"},legend:"2024 Sports Coupe"},{src:{src:"https://via.placeholder.com/800x450.png?text=Car+2",alt:"SUV model"},legend:"Family SUV"},{src:{src:"https://via.placeholder.com/800x450.png?text=Car+3",alt:"Electric vehicle"},legend:"Electric Sedan"}],colorPreset:{color:"red-50"},borderRadius:"rounded-lg",padding:"0.5rem"}},{description:"Software features carousel with large padding",type:"carousel",props:{images:[{src:{src:"https://via.placeholder.com/900x500.png?text=Feature+1",alt:"Software feature 1"},legend:"Dashboard Analytics - Real-time insights"},{src:{src:"https://via.placeholder.com/900x500.png?text=Feature+2",alt:"Software feature 2"},legend:"Team Collaboration - Work together seamlessly"},{src:{src:"https://via.placeholder.com/900x500.png?text=Feature+3",alt:"Software feature 3"},legend:"Mobile App - Access anywhere, anytime"},{src:{src:"https://via.placeholder.com/900x500.png?text=Feature+4",alt:"Software feature 4"},legend:"Security - Enterprise-grade protection"}],colorPreset:{color:"indigo-50"},borderRadius:"rounded-2xl",padding:"4rem"}},{description:"Dynamic product gallery using products query with pricing and details",type:"carousel",props:{images:[{src:{src:"{{products.image}}",alt:"{{products.name}}"},legend:"{{products.name}} - ${{products.price}}"}],colorPreset:{color:"primary-50"},borderRadius:"rounded-lg",padding:"1.5rem",loop:{over:"products"}}},{description:"Team member carousel using teamMembers query with roles and departments",type:"carousel",props:{images:[{src:{src:"{{teamMembers.photo}}",alt:"{{teamMembers.fullName}}"},legend:"{{teamMembers.fullName}} - {{teamMembers.position}}, {{teamMembers.department}}"}],colorPreset:{color:"secondary-100"},borderRadius:"rounded-xl",padding:"2rem",loop:{over:"teamMembers"}}},{description:"Portfolio showcase using portfolioProjects query with client information",type:"carousel",props:{images:[{src:{src:"{{portfolioProjects.featuredImage}}",alt:"{{portfolioProjects.projectName}}"},legend:"{{portfolioProjects.projectName}} - {{portfolioProjects.clientName}} ({{portfolioProjects.year}})"}],colorPreset:{color:"neutral-100"},borderRadius:"rounded-md",padding:"1rem",loop:{over:"portfolioProjects"}}},{description:"Event photo gallery using eventPhotos query with captions and dates",type:"carousel",props:{images:[{src:{src:"{{eventPhotos.imageUrl}}",alt:"{{eventPhotos.caption}}"},legend:"{{eventPhotos.caption}} - {{eventPhotos.eventDate}}"}],colorPreset:{color:"accent-50"},borderRadius:"rounded-lg",padding:"2rem",loop:{over:"eventPhotos"}}},{description:"Property listings carousel using realEstateProperties query with pricing",type:"carousel",props:{images:[{src:{src:"{{realEstateProperties.mainPhoto}}",alt:"{{realEstateProperties.address}}"},legend:"{{realEstateProperties.address}} - ${{realEstateProperties.price}} \u2022 {{realEstateProperties.bedrooms}}BR/{{realEstateProperties.bathrooms}}BA"}],colorPreset:{color:"primary-100"},borderRadius:"rounded-xl",padding:"1.5rem",loop:{over:"realEstateProperties"}}},{description:"Restaurant menu carousel using menuItems query with categories and prices",type:"carousel",props:{images:[{src:{src:"{{menuItems.photo}}",alt:"{{menuItems.dishName}}"},legend:"{{menuItems.dishName}} - {{menuItems.category}} \u2022 ${{menuItems.price}}"}],colorPreset:{color:"neutral-50"},borderRadius:"rounded-lg",padding:"1rem",loop:{over:"menuItems"}}},{description:"Travel destinations carousel using destinations query with country information",type:"carousel",props:{images:[{src:{src:"{{destinations.heroImage}}",alt:"{{destinations.cityName}}"},legend:"{{destinations.cityName}}, {{destinations.country}} - {{destinations.bestTimeToVisit}}"}],colorPreset:{color:"secondary-50"},borderRadius:"rounded-2xl",padding:"2.5rem",loop:{over:"destinations"}}},{description:"Art collection carousel using artworks query with artist and year information",type:"carousel",props:{images:[{src:{src:"{{artworks.imageUrl}}",alt:"{{artworks.title}}"},legend:"{{artworks.title}} by {{artworks.artist}} ({{artworks.year}}) - {{artworks.medium}}"}],colorPreset:{color:"accent-100"},borderRadius:"rounded-sm",padding:"3rem",loop:{over:"artworks"}}}];export{P as a,b};
|