diff --git a/apps/timo-web/app/[locale]/(main)/(with-time-sidebar)/home/_components/todo-card/HomeTodoCard.tsx b/apps/timo-web/app/[locale]/(main)/(with-time-sidebar)/home/_components/todo-card/HomeTodoCard.tsx
index 0ce550c2..498fbbce 100644
--- a/apps/timo-web/app/[locale]/(main)/(with-time-sidebar)/home/_components/todo-card/HomeTodoCard.tsx
+++ b/apps/timo-web/app/[locale]/(main)/(with-time-sidebar)/home/_components/todo-card/HomeTodoCard.tsx
@@ -1,13 +1,13 @@
import { useSortable } from "@dnd-kit/sortable";
import { CSS } from "@dnd-kit/utilities";
import {
+ ControlPauseActiveIcon,
+ ControlPlayActiveIcon,
MemoDisableIcon,
MemoOnIcon,
PlayDisabledIcon,
- PlayIcon,
RepeatTodoDisableIcon,
RepeatTodoOnIcon,
- StopIcon,
} from "@repo/timo-design-system/icons";
import {
Checkbox,
@@ -142,9 +142,9 @@ export const HomeTodoCard = ({
{isCompleted ? (
) : isRunning ? (
-
+
) : isPlayHighlighted ? (
-
+
) : (
)}
diff --git a/apps/timo-web/app/[locale]/(main)/(with-time-sidebar)/today/_components/TodayTodoCard.tsx b/apps/timo-web/app/[locale]/(main)/(with-time-sidebar)/today/_components/TodayTodoCard.tsx
index f222083d..c9bfc903 100644
--- a/apps/timo-web/app/[locale]/(main)/(with-time-sidebar)/today/_components/TodayTodoCard.tsx
+++ b/apps/timo-web/app/[locale]/(main)/(with-time-sidebar)/today/_components/TodayTodoCard.tsx
@@ -3,13 +3,13 @@ import {
CalendarOnIcon,
ClockDisableIcon,
ClockOnIcon,
+ ControlPauseActiveIcon,
+ ControlPlayActiveIcon,
MemoDisableIcon,
MemoOnIcon,
PlayDisabledIcon,
- PlayIcon,
RepeatDisableIcon,
RepeatOnIcon,
- StopIcon,
} from "@repo/timo-design-system/icons";
import {
Checkbox,
@@ -152,9 +152,9 @@ export const TodayTodoCard = ({
{isDone ? (
) : isPlaying ? (
-
+
) : isPlayHighlighted ? (
-
+
) : (
)}
diff --git a/apps/timo-web/app/[locale]/(main)/focus/_components/FocusTaskItem.tsx b/apps/timo-web/app/[locale]/(main)/focus/_components/FocusTaskItem.tsx
index ba02e4c0..17db9059 100644
--- a/apps/timo-web/app/[locale]/(main)/focus/_components/FocusTaskItem.tsx
+++ b/apps/timo-web/app/[locale]/(main)/focus/_components/FocusTaskItem.tsx
@@ -1,8 +1,8 @@
import {
CalendarOnIcon,
ClockOnIcon,
- PlayIcon,
- StopIcon,
+ ControlPauseActiveIcon,
+ ControlPlayActiveIcon,
} from "@repo/timo-design-system/icons";
import { Checkbox, PlayButton } from "@repo/timo-design-system/ui";
import { cn } from "@repo/timo-design-system/utils";
@@ -77,9 +77,9 @@ export const FocusTaskItem = ({
onClick={onTogglePlay}
>
{isRunning ? (
-
+
) : (
-
+
)}
diff --git a/apps/timo-web/app/[locale]/(main)/settings/_components/account/SettingsProfileView.tsx b/apps/timo-web/app/[locale]/(main)/settings/_components/account/SettingsProfileView.tsx
index a5e8f4a4..09331135 100644
--- a/apps/timo-web/app/[locale]/(main)/settings/_components/account/SettingsProfileView.tsx
+++ b/apps/timo-web/app/[locale]/(main)/settings/_components/account/SettingsProfileView.tsx
@@ -1,4 +1,4 @@
-import { PillButton } from "@repo/timo-design-system/ui";
+import { Button } from "@repo/timo-design-system/ui";
import Image from "next/image";
import type {
@@ -88,25 +88,30 @@ export const SettingsProfileView = ({
{labels.calendarSection}
-
+
-
{isCalendarConnected ? labels.disconnect : labels.connect}
-
+
diff --git a/apps/timo-web/app/[locale]/(main)/settings/_components/withdrawal/SettingsWithdrawalView.tsx b/apps/timo-web/app/[locale]/(main)/settings/_components/withdrawal/SettingsWithdrawalView.tsx
index 5e0b1c8f..7d858a1a 100644
--- a/apps/timo-web/app/[locale]/(main)/settings/_components/withdrawal/SettingsWithdrawalView.tsx
+++ b/apps/timo-web/app/[locale]/(main)/settings/_components/withdrawal/SettingsWithdrawalView.tsx
@@ -1,4 +1,5 @@
import { WarningGrayIcon } from "@repo/timo-design-system/icons";
+import { Button } from "@repo/timo-design-system/ui";
import type { SettingsWithdrawalLabels } from "@/app/[locale]/(main)/settings/_types/withdrawal/withdrawal-type";
@@ -42,13 +43,15 @@ export const SettingsWithdrawalView = ({
-
+
);
diff --git a/apps/timo-web/app/[locale]/(main)/settings/_containers/account/SettingsLogoutModalContainer.tsx b/apps/timo-web/app/[locale]/(main)/settings/_containers/account/SettingsLogoutModalContainer.tsx
index 8fd210fc..31e5bea4 100644
--- a/apps/timo-web/app/[locale]/(main)/settings/_containers/account/SettingsLogoutModalContainer.tsx
+++ b/apps/timo-web/app/[locale]/(main)/settings/_containers/account/SettingsLogoutModalContainer.tsx
@@ -1,7 +1,7 @@
"use client";
import timoTimerLogo from "@repo/timo-design-system/assets/images/logo/timo-timer.svg";
-import { Modal, PillButton } from "@repo/timo-design-system/ui";
+import { Button, Modal } from "@repo/timo-design-system/ui";
import Image from "next/image";
import { useTranslations } from "next-intl";
import { useRef } from "react";
@@ -22,12 +22,15 @@ export const SettingsLogoutModalContainer = ({
return (
- modalTriggerRef.current?.click()}
- className="w-fit"
+ className="w-20"
>
{labels.logout}
-
+
;
@@ -16,6 +17,7 @@ export interface TimerControlButtonProps {
export const TimerControlButton = ({
icon,
activeIcon,
+ disabledIcon,
label,
variant = "default",
onClick,
@@ -38,7 +40,9 @@ export const TimerControlButton = ({
: "bg-timo-gray-300",
)}
>
- {isForcedActive || !activeIcon ? (
+ {disabled && disabledIcon ? (
+ disabledIcon
+ ) : isForcedActive || !activeIcon ? (
icon
) : (
<>
diff --git a/apps/timo-web/components/timer/TimerControls.tsx b/apps/timo-web/components/timer/TimerControls.tsx
index 10137a19..c654ae96 100644
--- a/apps/timo-web/components/timer/TimerControls.tsx
+++ b/apps/timo-web/components/timer/TimerControls.tsx
@@ -1,10 +1,15 @@
import {
- EndBlackIcon,
- EndBlueIcon,
- PlayTimerIcon,
- PlusBlueIcon,
- PlusIcon,
- StopIcon,
+ ControlEndActiveIcon,
+ ControlEndDefaultIcon,
+ ControlEndDisabledIcon,
+ ControlPauseActiveIcon,
+ ControlPauseDisabledIcon,
+ ControlPlayActiveIcon,
+ ControlPlayDefaultIcon,
+ ControlPlayDisabledIcon,
+ ControlPlusActiveIcon,
+ ControlPlusDefaultIcon,
+ ControlPlusDisabledIcon,
} from "@repo/timo-design-system/icons";
import { Modal } from "@repo/timo-design-system/ui";
import { useTranslations } from "next-intl";
@@ -39,17 +44,39 @@ export const TimerControls = ({
disabled={disabled}
className={MODAL_TRIGGER_CLASS}
>
-
-
-
-
-
-
+ {disabled ? (
+
+ ) : (
+ <>
+
+
+
+
+
+
+ >
+ )}
:
+ isRunning ? (
+
+ ) : (
+
+ )
+ }
+ activeIcon={
+ isRunning ? undefined : (
+
+ )
+ }
+ disabledIcon={
+ isRunning ? (
+
+ ) : (
+
+ )
}
label={isRunning ? t("pause") : t("play")}
variant={isRunning ? "active" : "default"}
@@ -63,12 +90,18 @@ export const TimerControls = ({
disabled={disabled}
className={MODAL_TRIGGER_CLASS}
>
-
-
-
-
-
-
+ {disabled ? (
+
+ ) : (
+ <>
+
+
+
+
+
+
+ >
+ )}
);
diff --git a/apps/timo-web/components/todo-modal/detail/DetailTodoTaskFields.tsx b/apps/timo-web/components/todo-modal/detail/DetailTodoTaskFields.tsx
index 3ef108b6..b916fa37 100644
--- a/apps/timo-web/components/todo-modal/detail/DetailTodoTaskFields.tsx
+++ b/apps/timo-web/components/todo-modal/detail/DetailTodoTaskFields.tsx
@@ -1,7 +1,7 @@
import {
+ ControlPauseActiveIcon,
+ ControlPlayActiveIcon,
PlayDisabledIcon,
- PlayIcon,
- StopIcon,
} from "@repo/timo-design-system/icons";
import { Checkbox, PlayButton } from "@repo/timo-design-system/ui";
@@ -105,9 +105,9 @@ export const DetailTodoTaskFields = ({
{isCompleted ? (
) : isRunning ? (
-
+
) : isPlayHighlighted ? (
-
+
) : (
)}
diff --git a/packages/timo-design-system/src/components/button/play-button/PlayButton.stories.tsx b/packages/timo-design-system/src/components/button/play-button/PlayButton.stories.tsx
index 8844b3b6..4219b250 100644
--- a/packages/timo-design-system/src/components/button/play-button/PlayButton.stories.tsx
+++ b/packages/timo-design-system/src/components/button/play-button/PlayButton.stories.tsx
@@ -1,7 +1,7 @@
import { PlayButton } from "./PlayButton";
-import { PlayIcon } from "../../../icons/generated/Play";
+import { ControlPauseActiveIcon } from "../../../icons/generated/ControlPauseActive";
+import { ControlPlayActiveIcon } from "../../../icons/generated/ControlPlayActive";
import { PlayDisabledIcon } from "../../../icons/generated/PlayDisabled";
-import { StopIcon } from "../../../icons/generated/Stop";
import type { Meta, StoryObj } from "@storybook/react";
@@ -47,7 +47,7 @@ export const Play: Story = {
args: { variant: "play", size: "sm" },
render: (args) => (
-
@@ -59,7 +59,7 @@ export const Stop: Story = {
args: { variant: "stop", size: "sm" },
render: (args) => (
-
@@ -86,10 +86,10 @@ export const AllVariants: Story = {
-
+
-
+
@@ -97,10 +97,10 @@ export const AllVariants: Story = {
-
+
-
+
diff --git a/packages/timo-design-system/src/icons/source/control-end-active.svg b/packages/timo-design-system/src/icons/source/control-end-active.svg
new file mode 100644
index 00000000..6fce9b56
--- /dev/null
+++ b/packages/timo-design-system/src/icons/source/control-end-active.svg
@@ -0,0 +1,3 @@
+
diff --git a/packages/timo-design-system/src/icons/source/control-end-default.svg b/packages/timo-design-system/src/icons/source/control-end-default.svg
new file mode 100644
index 00000000..c168f406
--- /dev/null
+++ b/packages/timo-design-system/src/icons/source/control-end-default.svg
@@ -0,0 +1,3 @@
+
diff --git a/packages/timo-design-system/src/icons/source/control-end-disabled.svg b/packages/timo-design-system/src/icons/source/control-end-disabled.svg
new file mode 100644
index 00000000..eb7af556
--- /dev/null
+++ b/packages/timo-design-system/src/icons/source/control-end-disabled.svg
@@ -0,0 +1,3 @@
+
diff --git a/packages/timo-design-system/src/icons/source/control-pause-active.svg b/packages/timo-design-system/src/icons/source/control-pause-active.svg
new file mode 100644
index 00000000..7b34c27d
--- /dev/null
+++ b/packages/timo-design-system/src/icons/source/control-pause-active.svg
@@ -0,0 +1,3 @@
+
diff --git a/packages/timo-design-system/src/icons/source/control-pause-default.svg b/packages/timo-design-system/src/icons/source/control-pause-default.svg
new file mode 100644
index 00000000..56640cb8
--- /dev/null
+++ b/packages/timo-design-system/src/icons/source/control-pause-default.svg
@@ -0,0 +1,3 @@
+
diff --git a/packages/timo-design-system/src/icons/source/control-pause-disabled.svg b/packages/timo-design-system/src/icons/source/control-pause-disabled.svg
new file mode 100644
index 00000000..b08b025e
--- /dev/null
+++ b/packages/timo-design-system/src/icons/source/control-pause-disabled.svg
@@ -0,0 +1,3 @@
+
diff --git a/packages/timo-design-system/src/icons/source/control-play-active.svg b/packages/timo-design-system/src/icons/source/control-play-active.svg
new file mode 100644
index 00000000..a8c19986
--- /dev/null
+++ b/packages/timo-design-system/src/icons/source/control-play-active.svg
@@ -0,0 +1,3 @@
+
diff --git a/packages/timo-design-system/src/icons/source/control-play-default.svg b/packages/timo-design-system/src/icons/source/control-play-default.svg
new file mode 100644
index 00000000..66dd3235
--- /dev/null
+++ b/packages/timo-design-system/src/icons/source/control-play-default.svg
@@ -0,0 +1,3 @@
+
diff --git a/packages/timo-design-system/src/icons/source/control-play-disabled.svg b/packages/timo-design-system/src/icons/source/control-play-disabled.svg
new file mode 100644
index 00000000..1291fc7a
--- /dev/null
+++ b/packages/timo-design-system/src/icons/source/control-play-disabled.svg
@@ -0,0 +1,3 @@
+
diff --git a/packages/timo-design-system/src/icons/source/control-plus-active.svg b/packages/timo-design-system/src/icons/source/control-plus-active.svg
new file mode 100644
index 00000000..1f83e6cb
--- /dev/null
+++ b/packages/timo-design-system/src/icons/source/control-plus-active.svg
@@ -0,0 +1,3 @@
+
diff --git a/packages/timo-design-system/src/icons/source/control-plus-default.svg b/packages/timo-design-system/src/icons/source/control-plus-default.svg
new file mode 100644
index 00000000..bbdec7d0
--- /dev/null
+++ b/packages/timo-design-system/src/icons/source/control-plus-default.svg
@@ -0,0 +1,3 @@
+
diff --git a/packages/timo-design-system/src/icons/source/control-plus-disabled.svg b/packages/timo-design-system/src/icons/source/control-plus-disabled.svg
new file mode 100644
index 00000000..da29df39
--- /dev/null
+++ b/packages/timo-design-system/src/icons/source/control-plus-disabled.svg
@@ -0,0 +1,3 @@
+
diff --git a/packages/timo-design-system/src/icons/source/end-black.svg b/packages/timo-design-system/src/icons/source/end-black.svg
deleted file mode 100644
index 4cc69b64..00000000
--- a/packages/timo-design-system/src/icons/source/end-black.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/packages/timo-design-system/src/icons/source/end-blue.svg b/packages/timo-design-system/src/icons/source/end-blue.svg
deleted file mode 100644
index c538db3c..00000000
--- a/packages/timo-design-system/src/icons/source/end-blue.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/packages/timo-design-system/src/icons/source/play.svg b/packages/timo-design-system/src/icons/source/play.svg
deleted file mode 100644
index 3037e424..00000000
--- a/packages/timo-design-system/src/icons/source/play.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/packages/timo-design-system/src/icons/source/stop.svg b/packages/timo-design-system/src/icons/source/stop.svg
deleted file mode 100644
index 64ebe72f..00000000
--- a/packages/timo-design-system/src/icons/source/stop.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-