diff --git a/src/components/studio/VersionTimeline.tsx b/src/components/studio/VersionTimeline.tsx index 190bef5..465c9f2 100644 --- a/src/components/studio/VersionTimeline.tsx +++ b/src/components/studio/VersionTimeline.tsx @@ -184,26 +184,35 @@ export const VersionTimeline = forwardRef
{/* Header */} -
-
- -

{t('versionHistory')}

- - ({versions.length}) +
+
+
+ +

{t('versionHistory')}

+
+ + {versions.length} {versions.length === 1 ? 'version' : 'versions'}
{userLimits && ( -
-
- Limit: {userLimits.versionLimit}/{userLimits.maxVersionLimit} - {userLimits.subscribePlan} +
+
+ Storage used +
+ {versions.length}/{userLimits.maxVersionLimit} + + {userLimits.subscribePlan} + +
-
+
= userLimits.versionLimit ? 'bg-orange-500' : 'bg-primary' + className={`h-full rounded-full transition-all duration-300 ${ + versions.length >= userLimits.versionLimit + ? 'bg-gradient-to-r from-orange-500 to-red-500' + : 'bg-gradient-to-r from-primary to-primary/70' }`} - style={{ width: `${Math.min(100, (versions.length / userLimits.versionLimit) * 100)}%` }} + style={{ width: `${Math.min(100, (versions.length / userLimits.maxVersionLimit) * 100)}%` }} >
@@ -213,9 +222,9 @@ export const VersionTimeline = forwardRef {/* Timeline line */} -
+
-
+
{versions.map((version, index) => { const isSelected = selectedVersionId === version.id const isLatest = index === 0 @@ -224,90 +233,101 @@ export const VersionTimeline = forwardRef handleVersionSelect(version)} > {/* Timeline dot */} -
- {isCurrentVersion && hasUnsavedChanges && ( -
+ {/* Inner highlight for selected */} + {isSelected && ( +
)}
-
-
-
- + {/* Version header */} +
+
+ - v{version.version} + Version {version.version} - {isLatest && ( - - Latest - - )} - {isCurrentVersion && hasUnsavedChanges && ( - - Modified - - )} +
+ {isLatest && ( + + Latest + + )} + {isCurrentVersion && hasUnsavedChanges && ( + + Modified + + )} +
- + {formatDate(version.createdAt)}
-

- {version.changelog} -

+ {/* Changelog */} +
+

+ {version.changelog || 'No changes recorded'} +

+
- {/* Action buttons - only show on hover or when selected */} - {isSelected && ( -
+ {/* Action buttons - show on hover or when selected */} +
+ + {!isLatest && ( - {!isLatest && ( - - )} -
- )} + )} +
) @@ -316,38 +336,45 @@ export const VersionTimeline = forwardRef {versions.length === 0 && ( -
- -

No versions yet

+
+
+ +
+

No version history

+

Versions will appear here as you save changes

)}
{/* Warning Modal */} {showWarning && ( -
-
-
- -
+
+
+
+
+ +
+

- Unsaved Changes + Unsaved Changes Detected

-

- You have unsaved changes that will be lost if you switch versions. Are you sure you want to continue? +

+ You currently have unsaved changes that will be lost if you switch to a different version. Would you like to continue?

-
+