diff --git a/apps/web/components/eventtype/SkeletonLoader.tsx b/apps/web/components/eventtype/SkeletonLoader.tsx
index 66e507bfb4..9e52d7f420 100644
--- a/apps/web/components/eventtype/SkeletonLoader.tsx
+++ b/apps/web/components/eventtype/SkeletonLoader.tsx
@@ -5,13 +5,13 @@ function SkeletonLoader() {
return (
-
+
@@ -42,19 +42,6 @@ function SkeletonItem() {
-
);
}
diff --git a/packages/features/ee/workflows/components/v2/SkeletonLoaderEdit.tsx b/packages/features/ee/workflows/components/v2/SkeletonLoaderEdit.tsx
new file mode 100644
index 0000000000..3e8c3e2a02
--- /dev/null
+++ b/packages/features/ee/workflows/components/v2/SkeletonLoaderEdit.tsx
@@ -0,0 +1,24 @@
+import { SkeletonAvatar, SkeletonContainer, SkeletonText } from "@calcom/ui";
+import { Icon } from "@calcom/ui/Icon";
+
+function SkeletonLoader() {
+ return (
+
+
+
+ );
+}
+
+export default SkeletonLoader;
diff --git a/packages/features/ee/workflows/components/v2/SkeletonLoaderList.tsx b/packages/features/ee/workflows/components/v2/SkeletonLoaderList.tsx
new file mode 100644
index 0000000000..d50792f8f1
--- /dev/null
+++ b/packages/features/ee/workflows/components/v2/SkeletonLoaderList.tsx
@@ -0,0 +1,39 @@
+import { Icon } from "@calcom/ui";
+import { SkeletonText } from "@calcom/ui/v2";
+
+function SkeletonLoader() {
+ return (
+
+ );
+}
+
+export default SkeletonLoader;
+
+function SkeletonItem() {
+ return (
+
+
+
+
+ );
+}
diff --git a/packages/features/ee/workflows/components/v2/WorkflowDetailsPage.tsx b/packages/features/ee/workflows/components/v2/WorkflowDetailsPage.tsx
index 51bae5938d..21586ead4e 100644
--- a/packages/features/ee/workflows/components/v2/WorkflowDetailsPage.tsx
+++ b/packages/features/ee/workflows/components/v2/WorkflowDetailsPage.tsx
@@ -93,6 +93,7 @@ export default function WorkflowDetailsPage(props: Props) {
{
diff --git a/packages/features/ee/workflows/components/v2/WorkflowListPage.tsx b/packages/features/ee/workflows/components/v2/WorkflowListPage.tsx
index 376610402e..f74575eea4 100644
--- a/packages/features/ee/workflows/components/v2/WorkflowListPage.tsx
+++ b/packages/features/ee/workflows/components/v2/WorkflowListPage.tsx
@@ -6,12 +6,18 @@ import { useState } from "react";
import classNames from "@calcom/lib/classNames";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import { HttpError } from "@calcom/lib/http-error";
-import showToast from "@calcom/lib/notification";
import { trpc } from "@calcom/trpc/react";
-import { Tooltip } from "@calcom/ui";
-import Dropdown, { DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from "@calcom/ui/Dropdown";
import { Icon } from "@calcom/ui/Icon";
-import { Button, ButtonGroup } from "@calcom/ui/v2";
+import {
+ Button,
+ ButtonGroup,
+ Dropdown,
+ DropdownMenuContent,
+ DropdownMenuItem,
+ DropdownMenuTrigger,
+ showToast,
+ Tooltip,
+} from "@calcom/ui/v2";
import { getActionIcon } from "../../lib/getActionIcon";
import { DeleteDialog } from "./DeleteDialog";
@@ -111,17 +117,15 @@ export default function WorkflowListPage({ workflows }: Props) {
{workflow.activeOn && workflow.activeOn.length > 0 ? (
-
-
(
- {activeOn.eventType.title}
- ))}>
- <>
-
- {t("active_on_event_types", { count: workflow.activeOn.length })}
- >
-
-
+ (
+ {activeOn.eventType.title}
+ ))}>
+
+
+ {t("active_on_event_types", { count: workflow.activeOn.length })}
+
+
) : (
@@ -134,26 +138,67 @@ export default function WorkflowListPage({ workflows }: Props) {
-
-
+
+
+
+ await router.replace("/workflows/" + workflow.id)}
+ />
+
+
+ {
+ setDeleteDialogOpen(true);
+ setwWorkflowToDeleteId(workflow.id);
+ }}
+ color="secondary"
+ combined
+ size="icon"
+ StartIcon={Icon.FiTrash2}
+ />
+
+
+
+
+
+
+
+
+
+
+ await router.replace("/workflows/" + workflow.id)}>
+ {t("edit")}
+
+
+
+ {
+ setDeleteDialogOpen(true);
+ setwWorkflowToDeleteId(workflow.id);
+ }}
+ color="minimal"
+ StartIcon={Icon.FiTrash2}>
+ {t("delete")}
+
+
+
+
+
diff --git a/packages/features/ee/workflows/pages/v2/index.tsx b/packages/features/ee/workflows/pages/v2/index.tsx
index 611487e1cd..0ccfd530db 100644
--- a/packages/features/ee/workflows/pages/v2/index.tsx
+++ b/packages/features/ee/workflows/pages/v2/index.tsx
@@ -6,11 +6,11 @@ import { HttpError } from "@calcom/lib/http-error";
import { trpc } from "@calcom/trpc/react";
import useMeQuery from "@calcom/trpc/react/hooks/useMeQuery";
import { Icon } from "@calcom/ui";
-import Loader from "@calcom/ui/Loader";
import { Alert, Button, showToast } from "@calcom/ui/v2";
import Shell from "@calcom/ui/v2/core/Shell";
import LicenseRequired from "../../../common/components/v2/LicenseRequired";
+import SkeletonLoader from "../../components/v2/SkeletonLoaderList";
import WorkflowList from "../../components/v2/WorkflowListPage";
function WorkflowsPage() {
@@ -60,7 +60,7 @@ function WorkflowsPage() {
}>
{isLoading ? (
-
+
) : (
<>
{isFreeUser ? (
@@ -73,7 +73,7 @@ function WorkflowsPage() {
) : (
-
+ <>>
);
}
diff --git a/packages/features/ee/workflows/pages/v2/workflow.tsx b/packages/features/ee/workflows/pages/v2/workflow.tsx
index 0c02d17745..a53a1cc68e 100644
--- a/packages/features/ee/workflows/pages/v2/workflow.tsx
+++ b/packages/features/ee/workflows/pages/v2/workflow.tsx
@@ -19,12 +19,12 @@ import { HttpError } from "@calcom/lib/http-error";
import { stringOrNumber } from "@calcom/prisma/zod-utils";
import { trpc } from "@calcom/trpc/react";
import useMeQuery from "@calcom/trpc/react/hooks/useMeQuery";
-import Loader from "@calcom/ui/Loader";
import { Option } from "@calcom/ui/form/MultiSelectCheckboxes";
import { Alert, Button, Form, showToast } from "@calcom/ui/v2";
import Shell from "@calcom/ui/v2/core/Shell";
import LicenseRequired from "../../../common/components/v2/LicenseRequired";
+import SkeletonLoader from "../../components/v2/SkeletonLoaderEdit";
import WorkflowDetailsPage from "../../components/v2/WorkflowDetailsPage";
import { getTranslatedText } from "../../lib/variableTranslations";
import { translateVariablesToEnglish } from "../../lib/variableTranslations";
@@ -221,7 +221,7 @@ function WorkflowPage() {
/>
>
) : (
-
+
)}
>
) : (
@@ -233,7 +233,7 @@ function WorkflowPage() {
) : (
-
+ <>>
);
}
diff --git a/packages/ui/apps/SkeletonLoader.tsx b/packages/ui/apps/SkeletonLoader.tsx
index bf12ded304..9bf07aabce 100644
--- a/packages/ui/apps/SkeletonLoader.tsx
+++ b/packages/ui/apps/SkeletonLoader.tsx
@@ -6,8 +6,8 @@ import { ShellSubHeading } from "../Shell";
function SkeletonLoader({ className }: { className?: string }) {
return (
<>
- } {...{ className }} />
-
+ } {...{ className }} />
+
diff --git a/packages/ui/v2/core/form/MultiSelectCheckboxes.tsx b/packages/ui/v2/core/form/MultiSelectCheckboxes.tsx
index 1a5d3ac0ac..1e2e9c24b0 100644
--- a/packages/ui/v2/core/form/MultiSelectCheckboxes.tsx
+++ b/packages/ui/v2/core/form/MultiSelectCheckboxes.tsx
@@ -2,6 +2,7 @@ import React, { Dispatch, SetStateAction } from "react";
import { components, GroupBase, OptionProps } from "react-select";
import { Props } from "react-select";
+import { classNames } from "@calcom/lib";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import Select from "./Select";
@@ -68,6 +69,7 @@ export default function MultiSelectCheckboxes({
selected,
setSelected,
setValue,
+ className,
}: Omit & MultiSelectionCheckboxesProps) {
const additonalComponents = { MultiValue };
@@ -91,7 +93,7 @@ export default function MultiSelectCheckboxes({
}}
options={options}
isMulti
- className="w-64 text-sm"
+ className={classNames(className ? className : "w-64 text-sm")}
isSearchable={false}
closeMenuOnSelect={false}
hideSelectedOptions={false}