diff --git a/packages/app-store/apps.metadata.generated.ts b/packages/app-store/apps.metadata.generated.ts index 3733ff0d8d..a18b3131a0 100644 --- a/packages/app-store/apps.metadata.generated.ts +++ b/packages/app-store/apps.metadata.generated.ts @@ -8,6 +8,7 @@ import around_config_json from "./around/config.json"; import { metadata as caldavcalendar__metadata_ts } from "./caldavcalendar/_metadata"; import campfire_config_json from "./campfire/config.json"; import closecom_config_json from "./closecom/config.json"; +import cron_config_json from "./cron/config.json"; import { metadata as dailyvideo__metadata_ts } from "./dailyvideo/_metadata"; import routing_forms_config_json from "./ee/routing-forms/config.json"; import { metadata as exchange2013calendar__metadata_ts } from "./exchange2013calendar/_metadata"; @@ -64,6 +65,7 @@ export const appStoreMetadata = { caldavcalendar: caldavcalendar__metadata_ts, campfire: campfire_config_json, closecom: closecom_config_json, + cron: cron_config_json, dailyvideo: dailyvideo__metadata_ts, "routing-forms": routing_forms_config_json, exchange2013calendar: exchange2013calendar__metadata_ts, diff --git a/packages/app-store/apps.server.generated.ts b/packages/app-store/apps.server.generated.ts index 9ea61df563..76c16c8e5e 100644 --- a/packages/app-store/apps.server.generated.ts +++ b/packages/app-store/apps.server.generated.ts @@ -9,6 +9,7 @@ export const apiHandlers = { caldavcalendar: import("./caldavcalendar/api"), campfire: import("./campfire/api"), closecom: import("./closecom/api"), + cron: import("./cron/api"), "routing-forms": import("./ee/routing-forms/api"), exchange2013calendar: import("./exchange2013calendar/api"), exchange2016calendar: import("./exchange2016calendar/api"), diff --git a/packages/app-store/cron/DESCRIPTION.md b/packages/app-store/cron/DESCRIPTION.md new file mode 100644 index 0000000000..59db5ebbd2 --- /dev/null +++ b/packages/app-store/cron/DESCRIPTION.md @@ -0,0 +1,21 @@ +--- +items: + - 1.png + - 2.png + - 3.png + - 4.png + - 5.png +--- + +{DESCRIPTION} + +### Cron's most valuable features + + +- **Availability sharing** — mark holds on the grid, share the slots, and schedule with ease. +- **Team overlays** — quickly overlay teammates' calendars. +- **Time zones** — add as many as needed, drag & drop to quickly "travel" to places. +- **Multiple accounts** — unify work and personal calendars in one place. +- **Menu bar calendar** — tightly integrated; see and join upcoming meetings in seconds. +- **Speed, multi-select flows, keyboard shortcuts, and gorgeous light/dark modes.** diff --git a/packages/app-store/cron/api/add.ts b/packages/app-store/cron/api/add.ts new file mode 100644 index 0000000000..a0ddbe97f4 --- /dev/null +++ b/packages/app-store/cron/api/add.ts @@ -0,0 +1,20 @@ +import { createDefaultInstallation } from "@calcom/app-store/_utils/installation"; +import type { AppDeclarativeHandler } from "@calcom/types/AppHandler"; + +import appConfig from "../config.json"; + +const handler: AppDeclarativeHandler = { + appType: appConfig.type, + variant: appConfig.variant, + slug: appConfig.slug, + supportsMultipleInstalls: false, + handlerType: "add", + redirect: { + newTab: true, + url: "https://cron.com", + }, + createCredential: ({ appType, user, slug }) => + createDefaultInstallation({ appType, userId: user.id, slug, key: {} }), +}; + +export default handler; diff --git a/packages/app-store/cron/api/index.ts b/packages/app-store/cron/api/index.ts new file mode 100644 index 0000000000..4c0d2ead01 --- /dev/null +++ b/packages/app-store/cron/api/index.ts @@ -0,0 +1 @@ +export { default as add } from "./add"; diff --git a/packages/app-store/cron/components/.gitkeep b/packages/app-store/cron/components/.gitkeep new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/app-store/cron/config.json b/packages/app-store/cron/config.json new file mode 100644 index 0000000000..334020bf73 --- /dev/null +++ b/packages/app-store/cron/config.json @@ -0,0 +1,17 @@ +{ + "/*": "Don't modify slug - If required, do it using cli edit command", + "name": "Cron", + "slug": "cron", + "type": "cron_other", + "imageSrc": "logo.png", + "logo": "logo.png", + "url": "https://cal.com/apps/cron", + "variant": "other", + "categories": ["calendar"], + "publisher": "miguelnietoa", + "email": "support@cal.com", + "description": "Cron is the next-generation calendar for professionals and teams.", + "isTemplate": false, + "__createdUsingCli": true, + "__template": "link-as-an-app" +} diff --git a/packages/app-store/cron/index.ts b/packages/app-store/cron/index.ts new file mode 100644 index 0000000000..d7f3602204 --- /dev/null +++ b/packages/app-store/cron/index.ts @@ -0,0 +1 @@ +export * as api from "./api"; diff --git a/packages/app-store/cron/package.json b/packages/app-store/cron/package.json new file mode 100644 index 0000000000..79efd43ece --- /dev/null +++ b/packages/app-store/cron/package.json @@ -0,0 +1,14 @@ +{ + "$schema": "https://json.schemastore.org/package.json", + "private": true, + "name": "@calcom/cron", + "version": "0.0.0", + "main": "./index.ts", + "dependencies": { + "@calcom/lib": "*" + }, + "devDependencies": { + "@calcom/types": "*" + }, + "description": "Cron is the next-generation calendar for professionals and teams." +} diff --git a/packages/app-store/cron/static/1.png b/packages/app-store/cron/static/1.png new file mode 100644 index 0000000000..e279f23d42 Binary files /dev/null and b/packages/app-store/cron/static/1.png differ diff --git a/packages/app-store/cron/static/2.png b/packages/app-store/cron/static/2.png new file mode 100644 index 0000000000..52b0e41812 Binary files /dev/null and b/packages/app-store/cron/static/2.png differ diff --git a/packages/app-store/cron/static/3.png b/packages/app-store/cron/static/3.png new file mode 100644 index 0000000000..8f6ac9994c Binary files /dev/null and b/packages/app-store/cron/static/3.png differ diff --git a/packages/app-store/cron/static/4.png b/packages/app-store/cron/static/4.png new file mode 100644 index 0000000000..451c661132 Binary files /dev/null and b/packages/app-store/cron/static/4.png differ diff --git a/packages/app-store/cron/static/5.png b/packages/app-store/cron/static/5.png new file mode 100644 index 0000000000..907ccf764f Binary files /dev/null and b/packages/app-store/cron/static/5.png differ diff --git a/packages/app-store/cron/static/logo.png b/packages/app-store/cron/static/logo.png new file mode 100644 index 0000000000..667d958628 Binary files /dev/null and b/packages/app-store/cron/static/logo.png differ diff --git a/packages/prisma/seed-app-store.config.json b/packages/prisma/seed-app-store.config.json index f93db4f144..1fe815c640 100644 --- a/packages/prisma/seed-app-store.config.json +++ b/packages/prisma/seed-app-store.config.json @@ -204,5 +204,12 @@ "slug": "facetime", "type": "facetime_video", "isTemplate": false + }, + { + "dirName": "cron", + "categories": ["calendar"], + "slug": "cron", + "type": "cron_other", + "isTemplate": false } ]