@upstart.gg/sdk 0.0.104 → 0.0.105
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/ajv.js +1 -1
- package/dist/shared/attributes.js +1 -1
- package/dist/shared/bricks/manifests/accordion.manifest.js +1 -1
- package/dist/shared/bricks/manifests/all-manifests.js +1 -1
- package/dist/shared/bricks/manifests/button.manifest.js +1 -1
- package/dist/shared/bricks/manifests/card.manifest.js +1 -1
- package/dist/shared/bricks/manifests/carousel.manifest.js +1 -1
- package/dist/shared/bricks/manifests/container.manifest.js +1 -1
- package/dist/shared/bricks/manifests/divider.manifest.js +1 -1
- package/dist/shared/bricks/manifests/footer.manifest.js +1 -1
- package/dist/shared/bricks/manifests/form.manifest.js +1 -1
- package/dist/shared/bricks/manifests/hero.manifest.js +1 -1
- package/dist/shared/bricks/manifests/icon.manifest.js +1 -1
- package/dist/shared/bricks/manifests/image.manifest.js +1 -1
- package/dist/shared/bricks/manifests/images-gallery.manifest.js +1 -1
- package/dist/shared/bricks/manifests/map.manifest.js +1 -1
- package/dist/shared/bricks/manifests/navbar.manifest.js +1 -1
- package/dist/shared/bricks/manifests/sidebar.manifest.js +1 -1
- package/dist/shared/bricks/manifests/social-links.manifest.js +1 -1
- package/dist/shared/bricks/manifests/testimonials.manifest.js +1 -1
- package/dist/shared/bricks/manifests/text.manifest.js +1 -1
- package/dist/shared/bricks/manifests/timeline.manifest.js +1 -1
- package/dist/shared/bricks/manifests/video.manifest.js +1 -1
- package/dist/shared/bricks.js +1 -1
- package/dist/shared/chunk-245ZLDVB.js +3 -0
- package/dist/shared/{chunk-QALNFBY7.js → chunk-2D6ZEIDX.js} +1 -1
- package/dist/shared/{chunk-CW5FWW5W.js → chunk-4BLCQRF5.js} +1 -1
- package/dist/shared/{chunk-TEPFFY32.js → chunk-5MGYT6FI.js} +1 -1
- package/dist/shared/{chunk-HQQYIKTE.js → chunk-CS5N4UQU.js} +1 -1
- package/dist/shared/{chunk-5IEGQ7YT.js → chunk-FRWB3BF3.js} +1 -1
- package/dist/shared/{chunk-I5S2MPPR.js → chunk-HYXCHFS5.js} +1 -1
- package/dist/shared/{chunk-TCZBR3ZU.js → chunk-IKSRCRZZ.js} +1 -1
- package/dist/shared/{chunk-LJQXN32B.js → chunk-ISF6EBPX.js} +1 -1
- package/dist/shared/{chunk-UK6H3FDX.js → chunk-JDBVMPSI.js} +1 -1
- package/dist/shared/{chunk-UISES3HA.js → chunk-M3Z3XDUC.js} +1 -1
- package/dist/shared/{chunk-22KRCQK5.js → chunk-MWP5IU33.js} +1 -1
- package/dist/shared/{chunk-7L3UOEMR.js → chunk-NCSLTHKN.js} +1 -1
- package/dist/shared/{chunk-O22VV7YR.js → chunk-OWON727Q.js} +1 -1
- package/dist/shared/{chunk-CEXHD4BO.js → chunk-P5RC56CL.js} +2 -2
- package/dist/shared/{chunk-ZFTWLZ3G.js → chunk-QI3BZDXL.js} +1 -1
- package/dist/shared/{chunk-F6MLW6DO.js → chunk-RDSK2G6V.js} +1 -1
- package/dist/shared/{chunk-I43NIQ2K.js → chunk-RXRPFXDF.js} +1 -1
- package/dist/shared/{chunk-POYVTV5F.js → chunk-VFGMOA4M.js} +1 -1
- package/dist/shared/{chunk-VDHLON5R.js → chunk-VPD626ML.js} +1 -1
- package/dist/shared/{chunk-WCNVFVDK.js → chunk-VROOAFFW.js} +1 -1
- package/dist/shared/{chunk-E2EBTWJI.js → chunk-WB4PGCZQ.js} +1 -1
- package/dist/shared/chunk-X2RJL33B.js +3 -0
- package/dist/shared/{chunk-OQIFFJ7I.js → chunk-X4ZBUWUL.js} +1 -1
- package/dist/shared/datasources/external/rss/fetcher.d.ts +1 -1
- package/dist/shared/datasources/external/rss/fetcher.d.ts.map +1 -1
- package/dist/shared/page.js +1 -1
- package/dist/shared/site.js +1 -1
- package/package.json +5 -9
- package/dist/shared/chunk-GPKRRX3D.js +0 -3
- package/dist/shared/chunk-JFDOR3UH.js +0 -3
- package/src/node/cli/api.ts +0 -101
- package/src/node/cli/commands/cmd-build.ts +0 -64
- package/src/node/cli/commands/login/cmd-login.ts +0 -111
- package/src/node/cli/commands/logout/cmd-logout.ts +0 -11
- package/src/node/cli/commands/publish/cmd-publish.ts +0 -135
- package/src/node/cli/commands/publish/parse-gitignore.ts +0 -278
- package/src/node/cli/commands/publish/uploader.ts +0 -333
- package/src/node/cli/constants.ts +0 -14
- package/src/node/cli/is-logged-in.ts +0 -28
- package/src/node/cli/program.ts +0 -77
- package/src/node/cli/store.ts +0 -64
- package/src/node/cli/tests/api.test.ts +0 -161
- package/src/node/cli/types.ts +0 -34
- package/src/node/cli/utils.ts +0 -20
- package/src/node/shared/config.ts +0 -69
- package/src/node/shared/logger.ts +0 -44
- package/src/shared/ajv.ts +0 -103
- package/src/shared/analytics/init.ts +0 -14
- package/src/shared/analytics/track.ts +0 -21
- package/src/shared/analytics/types.ts +0 -13
- package/src/shared/attributes.ts +0 -211
- package/src/shared/brick-manifest.ts +0 -110
- package/src/shared/bricks/manifests/accordion.manifest.ts +0 -179
- package/src/shared/bricks/manifests/all-manifests.ts +0 -92
- package/src/shared/bricks/manifests/button.manifest.ts +0 -145
- package/src/shared/bricks/manifests/card.manifest.ts +0 -269
- package/src/shared/bricks/manifests/carousel.manifest.ts +0 -106
- package/src/shared/bricks/manifests/container.manifest.ts +0 -357
- package/src/shared/bricks/manifests/divider.manifest.ts +0 -121
- package/src/shared/bricks/manifests/footer.manifest.ts +0 -487
- package/src/shared/bricks/manifests/form.manifest.ts +0 -112
- package/src/shared/bricks/manifests/hero.manifest.ts +0 -132
- package/src/shared/bricks/manifests/icon.manifest.ts +0 -130
- package/src/shared/bricks/manifests/image.manifest.ts +0 -203
- package/src/shared/bricks/manifests/images-gallery.manifest.ts +0 -227
- package/src/shared/bricks/manifests/map.manifest.ts +0 -75
- package/src/shared/bricks/manifests/navbar.manifest.ts +0 -344
- package/src/shared/bricks/manifests/sidebar.manifest.ts +0 -90
- package/src/shared/bricks/manifests/social-links.manifest.ts +0 -370
- package/src/shared/bricks/manifests/testimonials.manifest.ts +0 -397
- package/src/shared/bricks/manifests/tests/header.manifest.test.ts +0 -10
- package/src/shared/bricks/manifests/text.manifest.ts +0 -164
- package/src/shared/bricks/manifests/timeline.manifest.ts +0 -456
- package/src/shared/bricks/manifests/video.manifest.ts +0 -59
- package/src/shared/bricks/props/_style-presets.ts +0 -352
- package/src/shared/bricks/props/align.ts +0 -59
- package/src/shared/bricks/props/background.ts +0 -118
- package/src/shared/bricks/props/boolean.ts +0 -11
- package/src/shared/bricks/props/border.ts +0 -84
- package/src/shared/bricks/props/color.ts +0 -24
- package/src/shared/bricks/props/common.ts +0 -37
- package/src/shared/bricks/props/container.ts +0 -356
- package/src/shared/bricks/props/css-length.ts +0 -25
- package/src/shared/bricks/props/datasource.ts +0 -60
- package/src/shared/bricks/props/date.ts +0 -24
- package/src/shared/bricks/props/effects.ts +0 -123
- package/src/shared/bricks/props/enum.ts +0 -42
- package/src/shared/bricks/props/file.ts +0 -12
- package/src/shared/bricks/props/geolocation.ts +0 -30
- package/src/shared/bricks/props/helpers.ts +0 -101
- package/src/shared/bricks/props/image.ts +0 -90
- package/src/shared/bricks/props/number.ts +0 -16
- package/src/shared/bricks/props/padding.ts +0 -21
- package/src/shared/bricks/props/position.ts +0 -27
- package/src/shared/bricks/props/preset.ts +0 -136
- package/src/shared/bricks/props/string.ts +0 -56
- package/src/shared/bricks/props/tests/align.test.ts +0 -37
- package/src/shared/bricks/props/tests/background.test.ts +0 -102
- package/src/shared/bricks/props/tests/border.test.ts +0 -38
- package/src/shared/bricks/props/tests/effects.test.ts +0 -37
- package/src/shared/bricks/props/tests/helpers.test.ts +0 -133
- package/src/shared/bricks/props/tests/image.test.ts +0 -71
- package/src/shared/bricks/props/tests/padding.ts +0 -12
- package/src/shared/bricks/props/tests/string.test.ts +0 -79
- package/src/shared/bricks/props/text.ts +0 -66
- package/src/shared/bricks/props/types.ts +0 -57
- package/src/shared/bricks.ts +0 -232
- package/src/shared/context.ts +0 -39
- package/src/shared/datarecords/external/airtable/handler.ts +0 -21
- package/src/shared/datarecords/external/airtable/options.ts +0 -22
- package/src/shared/datarecords/external/generic-webhook/handler.ts +0 -10
- package/src/shared/datarecords/external/generic-webhook/options.ts +0 -13
- package/src/shared/datarecords/external/google/oauth/config.ts +0 -30
- package/src/shared/datarecords/external/google/sheets/handler.ts +0 -26
- package/src/shared/datarecords/external/google/sheets/options.ts +0 -9
- package/src/shared/datarecords/types.ts +0 -120
- package/src/shared/datarecords.ts +0 -5
- package/src/shared/datasources/README.md +0 -3
- package/src/shared/datasources/external/facebook/posts/fetcher.ts +0 -52
- package/src/shared/datasources/external/facebook/posts/sample.ts +0 -35
- package/src/shared/datasources/external/facebook/posts/schema.ts +0 -33
- package/src/shared/datasources/external/facebook/posts/tests/fetcher.test.ts +0 -73
- package/src/shared/datasources/external/http-json/fetcher.ts +0 -28
- package/src/shared/datasources/external/http-json/options.ts +0 -12
- package/src/shared/datasources/external/http-json/schema.ts +0 -6
- package/src/shared/datasources/external/http-json/tests/fetcher.test.ts +0 -70
- package/src/shared/datasources/external/instagram/feed/fetcher.ts +0 -33
- package/src/shared/datasources/external/instagram/feed/sample.ts +0 -22
- package/src/shared/datasources/external/instagram/feed/schema.ts +0 -23
- package/src/shared/datasources/external/instagram/feed/tests/fetcher.test.ts +0 -64
- package/src/shared/datasources/external/mastodon/account/fetcher.ts +0 -24
- package/src/shared/datasources/external/mastodon/account/sample.ts +0 -33
- package/src/shared/datasources/external/mastodon/account/schema.ts +0 -45
- package/src/shared/datasources/external/mastodon/account/tests/fetcher.test.ts +0 -47
- package/src/shared/datasources/external/mastodon/options.ts +0 -11
- package/src/shared/datasources/external/mastodon/status/fetcher.ts +0 -35
- package/src/shared/datasources/external/mastodon/status/sample.array.ts +0 -59
- package/src/shared/datasources/external/mastodon/status/sample.single.ts +0 -55
- package/src/shared/datasources/external/mastodon/status/schema.ts +0 -130
- package/src/shared/datasources/external/mastodon/status/tests/fetcher.test.ts +0 -74
- package/src/shared/datasources/external/meta/oauth/config.ts +0 -16
- package/src/shared/datasources/external/meta/options.ts +0 -11
- package/src/shared/datasources/external/rss/fetcher.ts +0 -29
- package/src/shared/datasources/external/rss/options.ts +0 -11
- package/src/shared/datasources/external/rss/sample.ts +0 -22
- package/src/shared/datasources/external/rss/schema.ts +0 -42
- package/src/shared/datasources/external/threads/media/fetcher.ts +0 -53
- package/src/shared/datasources/external/threads/media/sample.ts +0 -44
- package/src/shared/datasources/external/threads/media/schema.ts +0 -37
- package/src/shared/datasources/external/tiktok/oauth/config.ts +0 -17
- package/src/shared/datasources/external/tiktok/video/fetcher.ts +0 -39
- package/src/shared/datasources/external/tiktok/video/options.ts +0 -12
- package/src/shared/datasources/external/tiktok/video/sample.ts +0 -26
- package/src/shared/datasources/external/tiktok/video/schema.ts +0 -27
- package/src/shared/datasources/external/youtube/list/fetcher.ts +0 -37
- package/src/shared/datasources/external/youtube/list/options.ts +0 -15
- package/src/shared/datasources/external/youtube/list/sample.ts +0 -33
- package/src/shared/datasources/external/youtube/list/schema.ts +0 -38
- package/src/shared/datasources/external/youtube/oauth/config.ts +0 -15
- package/src/shared/datasources/fetcher.ts +0 -17
- package/src/shared/datasources/internal/blog/schema.ts +0 -69
- package/src/shared/datasources/internal/changelog/schema.ts +0 -48
- package/src/shared/datasources/internal/contact-info/schema.ts +0 -20
- package/src/shared/datasources/internal/cv/schema.ts +0 -217
- package/src/shared/datasources/internal/faq/schema.ts +0 -27
- package/src/shared/datasources/internal/job-board/schema.ts +0 -228
- package/src/shared/datasources/internal/links/schema.ts +0 -15
- package/src/shared/datasources/internal/recipes/schema.ts +0 -42
- package/src/shared/datasources/internal/restaurant/schema.ts +0 -225
- package/src/shared/datasources/provider-options.ts +0 -7
- package/src/shared/datasources/samples.ts +0 -26
- package/src/shared/datasources/schemas.ts +0 -45
- package/src/shared/datasources/types.ts +0 -276
- package/src/shared/datasources/utils.ts +0 -16
- package/src/shared/datasources.ts +0 -42
- package/src/shared/env.ts +0 -23
- package/src/shared/errors.ts +0 -1
- package/src/shared/images.ts +0 -44
- package/src/shared/index.ts +0 -3
- package/src/shared/layout-constants.ts +0 -25
- package/src/shared/manifest.ts +0 -50
- package/src/shared/oauth.ts +0 -16
- package/src/shared/page.ts +0 -61
- package/src/shared/prompt.ts +0 -9
- package/src/shared/responsive.ts +0 -5
- package/src/shared/site.ts +0 -97
- package/src/shared/sitemap.ts +0 -66
- package/src/shared/social-icons.ts +0 -307
- package/src/shared/tests/attributes.test.ts +0 -37
- package/src/shared/theme.ts +0 -245
- package/src/shared/themes/README.md +0 -34
- package/src/shared/themes/color-system.ts +0 -127
- package/src/shared/utils/canvas-data-uri.ts +0 -2
- package/src/shared/utils/invariant.ts +0 -25
- package/src/shared/utils/json-date.ts +0 -8
- package/src/shared/utils/merge.ts +0 -12
- package/src/shared/utils/object-hash.ts +0 -7
- package/src/shared/utils/schema.ts +0 -35
- package/src/shared/utils/try-catch.ts +0 -12
- package/src/shared/utils/typed-ref.ts +0 -41
|
@@ -1,456 +0,0 @@
|
|
|
1
|
-
import { defineBrickManifest } from "~/shared/brick-manifest";
|
|
2
|
-
import { defineProps, optional, group, prop } from "../props/helpers";
|
|
3
|
-
import { Type } from "@sinclair/typebox";
|
|
4
|
-
import { MdTimeline } from "react-icons/md";
|
|
5
|
-
import { backgroundColor, backgroundColorRef } from "../props/background";
|
|
6
|
-
import { textContent, textContentRef } from "../props/text";
|
|
7
|
-
import { string } from "../props/string";
|
|
8
|
-
import { padding, paddingRef } from "../props/padding";
|
|
9
|
-
import { border, borderRef } from "../props/border";
|
|
10
|
-
import { shadow, shadowRef } from "../props/effects";
|
|
11
|
-
import { RiMapPinTimeLine } from "react-icons/ri";
|
|
12
|
-
import type { BrickProps } from "../props/types";
|
|
13
|
-
import { colorRef } from "../props/color";
|
|
14
|
-
import { StringEnum } from "~/shared/utils/schema";
|
|
15
|
-
import type { FC } from "react";
|
|
16
|
-
|
|
17
|
-
export const manifest = defineBrickManifest({
|
|
18
|
-
type: "timeline",
|
|
19
|
-
kind: "widget",
|
|
20
|
-
name: "Timeline",
|
|
21
|
-
description: "A timeline element for showing chronological events",
|
|
22
|
-
aiInstructions: `
|
|
23
|
-
This timeline element displays a series of chronological events, milestones, or processes.
|
|
24
|
-
It can be used for company history, project roadmaps, or any sequential information.
|
|
25
|
-
Each item has a date/time, title, description, and optional icon.
|
|
26
|
-
`.trim(),
|
|
27
|
-
icon: RiMapPinTimeLine,
|
|
28
|
-
|
|
29
|
-
defaultHeight: { desktop: 12, mobile: 18 },
|
|
30
|
-
defaultWidth: { desktop: 36, mobile: 24 },
|
|
31
|
-
|
|
32
|
-
props: defineProps(
|
|
33
|
-
{
|
|
34
|
-
container: optional(
|
|
35
|
-
group({
|
|
36
|
-
title: "Container",
|
|
37
|
-
children: {
|
|
38
|
-
backgroundColor: optional(backgroundColorRef()),
|
|
39
|
-
padding: optional(paddingRef),
|
|
40
|
-
border: optional(borderRef),
|
|
41
|
-
shadow: optional(shadowRef()),
|
|
42
|
-
},
|
|
43
|
-
}),
|
|
44
|
-
),
|
|
45
|
-
items: prop({
|
|
46
|
-
title: "Timeline items",
|
|
47
|
-
schema: Type.Array(
|
|
48
|
-
Type.Object({
|
|
49
|
-
date: string("Date", "2024", {
|
|
50
|
-
description: "Date or time period for this event",
|
|
51
|
-
}),
|
|
52
|
-
title: textContentRef({ title: "Title", default: "Event title", disableSizing: true }),
|
|
53
|
-
description: textContentRef({ title: "Description", default: "Event description" }),
|
|
54
|
-
icon: optional(
|
|
55
|
-
prop({
|
|
56
|
-
title: "Icon",
|
|
57
|
-
description: "Icon to display (iconify reference)",
|
|
58
|
-
schema: string("Icon", undefined, {
|
|
59
|
-
description: "Icon for this timeline item",
|
|
60
|
-
"ui:widget": "iconify",
|
|
61
|
-
}),
|
|
62
|
-
}),
|
|
63
|
-
),
|
|
64
|
-
}),
|
|
65
|
-
),
|
|
66
|
-
}),
|
|
67
|
-
variants: Type.Array(
|
|
68
|
-
Type.Union(
|
|
69
|
-
[
|
|
70
|
-
Type.Literal("vertical", {
|
|
71
|
-
title: "Vertical",
|
|
72
|
-
description: "Display timeline vertically",
|
|
73
|
-
}),
|
|
74
|
-
Type.Literal("horizontal", {
|
|
75
|
-
title: "Horizontal",
|
|
76
|
-
description: "Display timeline horizontally",
|
|
77
|
-
}),
|
|
78
|
-
Type.Literal("alternating", {
|
|
79
|
-
title: "Alternating",
|
|
80
|
-
description: "Alternate items left and right (vertical only)",
|
|
81
|
-
}),
|
|
82
|
-
Type.Literal("with-connectors", {
|
|
83
|
-
title: "With connectors",
|
|
84
|
-
description: "Show connecting lines between items",
|
|
85
|
-
}),
|
|
86
|
-
Type.Literal("minimal", {
|
|
87
|
-
title: "Minimal",
|
|
88
|
-
description: "Simple design with less visual elements",
|
|
89
|
-
}),
|
|
90
|
-
Type.Literal("card-style", {
|
|
91
|
-
title: "Card style",
|
|
92
|
-
description: "Display each item as a card",
|
|
93
|
-
}),
|
|
94
|
-
],
|
|
95
|
-
{
|
|
96
|
-
title: "Variant",
|
|
97
|
-
description: "Timeline display variants",
|
|
98
|
-
},
|
|
99
|
-
),
|
|
100
|
-
{ default: ["vertical", "with-connectors"] },
|
|
101
|
-
),
|
|
102
|
-
appearance: optional(
|
|
103
|
-
group({
|
|
104
|
-
title: "Appearance",
|
|
105
|
-
children: {
|
|
106
|
-
lineColor: optional(
|
|
107
|
-
prop({
|
|
108
|
-
title: "Line color",
|
|
109
|
-
description: "Color for the timeline dot/line",
|
|
110
|
-
schema: StringEnum(["primary", "secondary", "accent"], {
|
|
111
|
-
default: "primary",
|
|
112
|
-
enumNames: ["Primary", "Secondary", "Accent"],
|
|
113
|
-
}),
|
|
114
|
-
}),
|
|
115
|
-
),
|
|
116
|
-
lineWidth: optional(
|
|
117
|
-
prop({
|
|
118
|
-
title: "Line width",
|
|
119
|
-
schema: Type.Union(
|
|
120
|
-
[
|
|
121
|
-
Type.Literal("border-2", { title: "Thin" }),
|
|
122
|
-
Type.Literal("border-4", { title: "Medium" }),
|
|
123
|
-
Type.Literal("border-8", { title: "Thick" }),
|
|
124
|
-
],
|
|
125
|
-
{ default: "border-2" },
|
|
126
|
-
),
|
|
127
|
-
}),
|
|
128
|
-
),
|
|
129
|
-
dotSize: optional(
|
|
130
|
-
prop({
|
|
131
|
-
title: "Dot size",
|
|
132
|
-
schema: Type.Union(
|
|
133
|
-
[
|
|
134
|
-
Type.Literal("w-3", { title: "S" }),
|
|
135
|
-
Type.Literal("w-4", { title: "M" }),
|
|
136
|
-
Type.Literal("w-6", { title: "L" }),
|
|
137
|
-
Type.Literal("w-8", { title: "XL" }),
|
|
138
|
-
],
|
|
139
|
-
{ default: "w-4" },
|
|
140
|
-
),
|
|
141
|
-
}),
|
|
142
|
-
),
|
|
143
|
-
datePosition: optional(
|
|
144
|
-
prop({
|
|
145
|
-
title: "Date position",
|
|
146
|
-
schema: Type.Union(
|
|
147
|
-
[
|
|
148
|
-
Type.Literal("above", { title: "Above title" }),
|
|
149
|
-
Type.Literal("below", { title: "Below title" }),
|
|
150
|
-
Type.Literal("inline", { title: "Inline with title" }),
|
|
151
|
-
],
|
|
152
|
-
{ default: "above" },
|
|
153
|
-
),
|
|
154
|
-
}),
|
|
155
|
-
),
|
|
156
|
-
},
|
|
157
|
-
}),
|
|
158
|
-
),
|
|
159
|
-
textStyles: optional(
|
|
160
|
-
group({
|
|
161
|
-
title: "Text styles",
|
|
162
|
-
children: {
|
|
163
|
-
dateColor: optional(colorRef({ default: "text-base-content/70", title: "Date color" })),
|
|
164
|
-
titleColor: optional(colorRef({ default: "text-base-content", title: "Title color" })),
|
|
165
|
-
descriptionColor: optional(
|
|
166
|
-
colorRef({ default: "text-base-content/80", title: "Description color" }),
|
|
167
|
-
),
|
|
168
|
-
},
|
|
169
|
-
}),
|
|
170
|
-
),
|
|
171
|
-
},
|
|
172
|
-
{
|
|
173
|
-
default: {
|
|
174
|
-
container: {
|
|
175
|
-
padding: "p-6",
|
|
176
|
-
backgroundColor: "bg-transparent",
|
|
177
|
-
},
|
|
178
|
-
variants: ["vertical", "with-connectors"],
|
|
179
|
-
appearance: {
|
|
180
|
-
lineColor: "primary",
|
|
181
|
-
lineWidth: "border-2",
|
|
182
|
-
dotSize: "w-4 h-4",
|
|
183
|
-
datePosition: "above",
|
|
184
|
-
},
|
|
185
|
-
textStyles: {
|
|
186
|
-
dateColor: "text-base-content/70",
|
|
187
|
-
titleColor: "text-base-content",
|
|
188
|
-
descriptionColor: "text-base-content/80",
|
|
189
|
-
},
|
|
190
|
-
},
|
|
191
|
-
},
|
|
192
|
-
),
|
|
193
|
-
});
|
|
194
|
-
|
|
195
|
-
export type Manifest = typeof manifest;
|
|
196
|
-
|
|
197
|
-
export const examples: {
|
|
198
|
-
description: string;
|
|
199
|
-
type: string;
|
|
200
|
-
props: BrickProps<Manifest>["brick"]["props"];
|
|
201
|
-
}[] = [
|
|
202
|
-
{
|
|
203
|
-
description: "Company milestone timeline with alternating layout",
|
|
204
|
-
type: "timeline",
|
|
205
|
-
props: {
|
|
206
|
-
container: {
|
|
207
|
-
backgroundColor: "bg-base-100",
|
|
208
|
-
padding: "p-8",
|
|
209
|
-
},
|
|
210
|
-
variants: ["vertical", "alternating", "with-connectors"],
|
|
211
|
-
appearance: {
|
|
212
|
-
lineColor: "primary",
|
|
213
|
-
lineWidth: "border-4",
|
|
214
|
-
dotSize: "w-6",
|
|
215
|
-
datePosition: "above",
|
|
216
|
-
},
|
|
217
|
-
items: [
|
|
218
|
-
{
|
|
219
|
-
date: "2019",
|
|
220
|
-
title: "Company Founded",
|
|
221
|
-
description: "Started our journey with a vision to revolutionize the industry",
|
|
222
|
-
icon: "mdi:rocket-launch",
|
|
223
|
-
},
|
|
224
|
-
{
|
|
225
|
-
date: "2020",
|
|
226
|
-
title: "First Product Launch",
|
|
227
|
-
description: "Released our flagship product to the market with overwhelming response",
|
|
228
|
-
icon: "mdi:product-hunt",
|
|
229
|
-
},
|
|
230
|
-
{
|
|
231
|
-
date: "2021",
|
|
232
|
-
title: "Series A Funding",
|
|
233
|
-
description: "Raised $10M in Series A funding to accelerate growth and expansion",
|
|
234
|
-
icon: "mdi:currency-usd",
|
|
235
|
-
},
|
|
236
|
-
{
|
|
237
|
-
date: "2023",
|
|
238
|
-
title: "Global Expansion",
|
|
239
|
-
description: "Opened offices in Europe and Asia, serving customers worldwide",
|
|
240
|
-
icon: "mdi:earth",
|
|
241
|
-
},
|
|
242
|
-
{
|
|
243
|
-
date: "2024",
|
|
244
|
-
title: "IPO Planning",
|
|
245
|
-
description: "Preparing for initial public offering and continued growth",
|
|
246
|
-
icon: "mdi:trending-up",
|
|
247
|
-
},
|
|
248
|
-
],
|
|
249
|
-
},
|
|
250
|
-
},
|
|
251
|
-
{
|
|
252
|
-
description: "Project roadmap with horizontal layout",
|
|
253
|
-
type: "timeline",
|
|
254
|
-
props: {
|
|
255
|
-
container: {
|
|
256
|
-
padding: "p-8",
|
|
257
|
-
},
|
|
258
|
-
variants: ["horizontal", "with-connectors", "card-style"],
|
|
259
|
-
appearance: {
|
|
260
|
-
lineColor: "accent",
|
|
261
|
-
lineWidth: "border-2",
|
|
262
|
-
dotSize: "w-4",
|
|
263
|
-
datePosition: "below",
|
|
264
|
-
},
|
|
265
|
-
textStyles: {
|
|
266
|
-
dateColor: "text-primary",
|
|
267
|
-
titleColor: "text-base-content",
|
|
268
|
-
descriptionColor: "text-base-content/80",
|
|
269
|
-
},
|
|
270
|
-
items: [
|
|
271
|
-
{
|
|
272
|
-
date: "Q1 2024",
|
|
273
|
-
title: "Planning Phase",
|
|
274
|
-
description: "Requirements gathering and technical specifications",
|
|
275
|
-
icon: "mdi:clipboard-text",
|
|
276
|
-
},
|
|
277
|
-
{
|
|
278
|
-
date: "Q2 2024",
|
|
279
|
-
title: "Development",
|
|
280
|
-
description: "Core feature development and testing",
|
|
281
|
-
icon: "mdi:code-braces",
|
|
282
|
-
},
|
|
283
|
-
{
|
|
284
|
-
date: "Q3 2024",
|
|
285
|
-
title: "Beta Testing",
|
|
286
|
-
description: "User acceptance testing and feedback collection",
|
|
287
|
-
icon: "mdi:test-tube",
|
|
288
|
-
},
|
|
289
|
-
{
|
|
290
|
-
date: "Q4 2024",
|
|
291
|
-
title: "Launch",
|
|
292
|
-
description: "Production deployment and go-to-market strategy",
|
|
293
|
-
icon: "mdi:rocket",
|
|
294
|
-
},
|
|
295
|
-
],
|
|
296
|
-
},
|
|
297
|
-
},
|
|
298
|
-
{
|
|
299
|
-
description: "Personal career timeline with minimal design",
|
|
300
|
-
type: "timeline",
|
|
301
|
-
props: {
|
|
302
|
-
container: {
|
|
303
|
-
padding: "p-4",
|
|
304
|
-
},
|
|
305
|
-
variants: ["vertical", "minimal"],
|
|
306
|
-
appearance: {
|
|
307
|
-
lineColor: "secondary",
|
|
308
|
-
lineWidth: "border-2",
|
|
309
|
-
datePosition: "inline",
|
|
310
|
-
},
|
|
311
|
-
textStyles: {
|
|
312
|
-
dateColor: "text-base-content/60",
|
|
313
|
-
titleColor: "text-base-content",
|
|
314
|
-
descriptionColor: "text-base-content/70",
|
|
315
|
-
},
|
|
316
|
-
items: [
|
|
317
|
-
{
|
|
318
|
-
date: "2020-2024",
|
|
319
|
-
title: "Senior Software Engineer",
|
|
320
|
-
description: "Led development of microservices architecture at Tech Startup Inc.",
|
|
321
|
-
},
|
|
322
|
-
{
|
|
323
|
-
date: "2018-2020",
|
|
324
|
-
title: "Full Stack Developer",
|
|
325
|
-
description: "Built scalable web applications using React and Node.js at Digital Agency",
|
|
326
|
-
},
|
|
327
|
-
{
|
|
328
|
-
date: "2016-2018",
|
|
329
|
-
title: "Junior Developer",
|
|
330
|
-
description: "Started career developing mobile apps and learning modern frameworks",
|
|
331
|
-
},
|
|
332
|
-
{
|
|
333
|
-
date: "2012-2016",
|
|
334
|
-
title: "Computer Science Degree",
|
|
335
|
-
description: "Bachelor's degree in Computer Science from State University",
|
|
336
|
-
},
|
|
337
|
-
],
|
|
338
|
-
},
|
|
339
|
-
},
|
|
340
|
-
{
|
|
341
|
-
description: "Product development phases with card styling",
|
|
342
|
-
type: "timeline",
|
|
343
|
-
props: {
|
|
344
|
-
container: {
|
|
345
|
-
backgroundColor: "bg-base-50",
|
|
346
|
-
padding: "p-8",
|
|
347
|
-
},
|
|
348
|
-
variants: ["vertical", "card-style", "with-connectors"],
|
|
349
|
-
appearance: {
|
|
350
|
-
lineColor: "accent",
|
|
351
|
-
lineWidth: "border-4",
|
|
352
|
-
dotSize: "w-6",
|
|
353
|
-
datePosition: "above",
|
|
354
|
-
},
|
|
355
|
-
textStyles: {
|
|
356
|
-
dateColor: "text-accent",
|
|
357
|
-
titleColor: "text-base-content",
|
|
358
|
-
descriptionColor: "text-base-content/80",
|
|
359
|
-
},
|
|
360
|
-
items: [
|
|
361
|
-
{
|
|
362
|
-
date: "Phase 1",
|
|
363
|
-
title: "Research & Discovery",
|
|
364
|
-
description: "Market research, user interviews, and competitive analysis to understand user needs",
|
|
365
|
-
icon: "mdi:magnify",
|
|
366
|
-
},
|
|
367
|
-
{
|
|
368
|
-
date: "Phase 2",
|
|
369
|
-
title: "Design & Prototyping",
|
|
370
|
-
description: "Create wireframes, mockups, and interactive prototypes for user testing",
|
|
371
|
-
icon: "mdi:palette",
|
|
372
|
-
},
|
|
373
|
-
{
|
|
374
|
-
date: "Phase 3",
|
|
375
|
-
title: "Development",
|
|
376
|
-
description: "Build the product using agile methodology with continuous integration",
|
|
377
|
-
icon: "mdi:hammer-wrench",
|
|
378
|
-
},
|
|
379
|
-
{
|
|
380
|
-
date: "Phase 4",
|
|
381
|
-
title: "Testing & QA",
|
|
382
|
-
description:
|
|
383
|
-
"Comprehensive testing including unit tests, integration tests, and user acceptance testing",
|
|
384
|
-
icon: "mdi:bug",
|
|
385
|
-
},
|
|
386
|
-
{
|
|
387
|
-
date: "Phase 5",
|
|
388
|
-
title: "Launch & Monitor",
|
|
389
|
-
description:
|
|
390
|
-
"Product launch with monitoring, analytics, and continuous improvement based on user feedback",
|
|
391
|
-
icon: "mdi:rocket-launch",
|
|
392
|
-
},
|
|
393
|
-
],
|
|
394
|
-
},
|
|
395
|
-
},
|
|
396
|
-
{
|
|
397
|
-
description: "Event schedule timeline with large dots",
|
|
398
|
-
type: "timeline",
|
|
399
|
-
props: {
|
|
400
|
-
container: {
|
|
401
|
-
backgroundColor: "bg-primary/5",
|
|
402
|
-
padding: "p-8",
|
|
403
|
-
},
|
|
404
|
-
variants: ["vertical", "with-connectors"],
|
|
405
|
-
appearance: {
|
|
406
|
-
lineColor: "primary",
|
|
407
|
-
lineWidth: "border-8",
|
|
408
|
-
dotSize: "w-6",
|
|
409
|
-
datePosition: "above",
|
|
410
|
-
},
|
|
411
|
-
textStyles: {
|
|
412
|
-
dateColor: "text-primary",
|
|
413
|
-
titleColor: "text-primary",
|
|
414
|
-
descriptionColor: "text-base-content",
|
|
415
|
-
},
|
|
416
|
-
items: [
|
|
417
|
-
{
|
|
418
|
-
date: "9:00 AM",
|
|
419
|
-
title: "Registration & Welcome",
|
|
420
|
-
description: "Check-in, networking breakfast, and welcome address by the CEO",
|
|
421
|
-
icon: "mdi:account-check",
|
|
422
|
-
},
|
|
423
|
-
{
|
|
424
|
-
date: "10:00 AM",
|
|
425
|
-
title: "Keynote Presentation",
|
|
426
|
-
description: "Future of Technology: Trends and Innovations Shaping Tomorrow",
|
|
427
|
-
icon: "mdi:presentation",
|
|
428
|
-
},
|
|
429
|
-
{
|
|
430
|
-
date: "11:30 AM",
|
|
431
|
-
title: "Panel Discussion",
|
|
432
|
-
description: "Industry leaders discuss challenges and opportunities in digital transformation",
|
|
433
|
-
icon: "mdi:account-group",
|
|
434
|
-
},
|
|
435
|
-
{
|
|
436
|
-
date: "1:00 PM",
|
|
437
|
-
title: "Networking Lunch",
|
|
438
|
-
description: "Catered lunch with opportunities to connect with speakers and attendees",
|
|
439
|
-
icon: "mdi:food",
|
|
440
|
-
},
|
|
441
|
-
{
|
|
442
|
-
date: "2:30 PM",
|
|
443
|
-
title: "Workshop Sessions",
|
|
444
|
-
description: "Hands-on workshops covering AI, cloud computing, and cybersecurity",
|
|
445
|
-
icon: "mdi:school",
|
|
446
|
-
},
|
|
447
|
-
{
|
|
448
|
-
date: "4:00 PM",
|
|
449
|
-
title: "Closing Remarks",
|
|
450
|
-
description: "Summary of key insights and announcement of next year's conference",
|
|
451
|
-
icon: "mdi:microphone",
|
|
452
|
-
},
|
|
453
|
-
],
|
|
454
|
-
},
|
|
455
|
-
},
|
|
456
|
-
];
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { defineBrickManifest } from "~/shared/brick-manifest";
|
|
2
|
-
import { defineProps, optional } from "../props/helpers";
|
|
3
|
-
import { RxVideo } from "react-icons/rx";
|
|
4
|
-
import { string } from "../props/string";
|
|
5
|
-
import type { BrickProps } from "../props/types";
|
|
6
|
-
import type { FC } from "react";
|
|
7
|
-
import { backgroundRef } from "../props/background";
|
|
8
|
-
import { borderRef } from "../props/border";
|
|
9
|
-
import { paddingRef } from "../props/padding";
|
|
10
|
-
import { shadowRef } from "../props/effects";
|
|
11
|
-
export type { Type } from "@sinclair/typebox";
|
|
12
|
-
|
|
13
|
-
export const manifest = defineBrickManifest({
|
|
14
|
-
type: "video",
|
|
15
|
-
kind: "brick",
|
|
16
|
-
name: "Video",
|
|
17
|
-
description: "Youtube video",
|
|
18
|
-
repeatable: true,
|
|
19
|
-
icon: RxVideo,
|
|
20
|
-
props: defineProps({
|
|
21
|
-
url: string("Video URL", undefined, {
|
|
22
|
-
description: "URL of the video to embed. It can be a YouTube link or an embed link.",
|
|
23
|
-
}),
|
|
24
|
-
background: optional(backgroundRef()),
|
|
25
|
-
border: optional(borderRef),
|
|
26
|
-
padding: optional(paddingRef),
|
|
27
|
-
shadow: optional(shadowRef()),
|
|
28
|
-
}),
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
export type Manifest = typeof manifest;
|
|
32
|
-
|
|
33
|
-
export const examples: {
|
|
34
|
-
description: string;
|
|
35
|
-
type: string;
|
|
36
|
-
props: BrickProps<Manifest>["brick"]["props"];
|
|
37
|
-
}[] = [
|
|
38
|
-
{
|
|
39
|
-
description: "A YouTube video",
|
|
40
|
-
type: "video",
|
|
41
|
-
props: {
|
|
42
|
-
url: "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
|
|
43
|
-
},
|
|
44
|
-
},
|
|
45
|
-
{
|
|
46
|
-
description: "An embedded YouTube video",
|
|
47
|
-
type: "video",
|
|
48
|
-
props: {
|
|
49
|
-
url: "https://www.youtube.com/embed/dQw4w9WgXcQ",
|
|
50
|
-
},
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
description: "A Vimeo video",
|
|
54
|
-
type: "video",
|
|
55
|
-
props: {
|
|
56
|
-
url: "https://vimeo.com/123456789",
|
|
57
|
-
},
|
|
58
|
-
},
|
|
59
|
-
];
|