diff --git a/app/javascript/mastodon/features/collection_adder/index.tsx b/app/javascript/mastodon/features/collection_adder/index.tsx
index 3fad6a3797..b1ec2b0375 100644
--- a/app/javascript/mastodon/features/collection_adder/index.tsx
+++ b/app/javascript/mastodon/features/collection_adder/index.tsx
@@ -3,6 +3,7 @@ import { useCallback, useId, useState } from 'react';
import { FormattedMessage, useIntl, defineMessages } from 'react-intl';
import type { ApiCollectionJSON } from '@/mastodon/api_types/collections';
+import { EmptyState } from '@/mastodon/components/empty_state';
import { LoadingIndicator } from '@/mastodon/components/loading_indicator';
import { NavigationFocusTarget } from '@/mastodon/components/navigation_focus_target';
import { useCurrentAccountId } from '@/mastodon/hooks/useAccountId';
@@ -16,7 +17,10 @@ import { IconButton } from 'mastodon/components/icon_button';
import { useAppDispatch, useAppSelector } from 'mastodon/store';
import { MAX_COLLECTION_ACCOUNT_COUNT } from '../collections/editor/accounts';
-import { useCollectionsCreatedBy } from '../collections/overview/created_by_account';
+import {
+ NewCollectionButton,
+ useCollectionsCreatedBy,
+} from '../collections/overview/created_by_account';
import { CollectionToggle } from './collection_toggle';
@@ -136,6 +140,23 @@ export const CollectionAdder: React.FC<{
>
{status === 'loading' || !account ? (
+ ) : collections.length === 0 ? (
+
+ }
+ message={
+
+ }
+ >
+
+
) : (
collections.map((item) => (
diff --git a/app/javascript/mastodon/features/collections/overview/created_by_account.tsx b/app/javascript/mastodon/features/collections/overview/created_by_account.tsx
index 80fc90b759..33f5c559b3 100644
--- a/app/javascript/mastodon/features/collections/overview/created_by_account.tsx
+++ b/app/javascript/mastodon/features/collections/overview/created_by_account.tsx
@@ -26,8 +26,14 @@ import {
} from '../editor';
import classes from '../styles.module.scss';
-const CreateButton: React.FC = () => (
-
+export const NewCollectionButton: React.FC<{ onClick?: () => void }> = ({
+ onClick,
+}) => (
+
@@ -97,7 +103,7 @@ export const CollectionsCreatedByAccount: React.FC = () => {
/>
}
>
-
+
);
} else {
@@ -129,7 +135,7 @@ export const CollectionsCreatedByAccount: React.FC = () => {
}}
/>
- {showCreateButton && }
+ {showCreateButton && }
{isOwnCollectionPage && !canCreateMoreCollections && (
diff --git a/app/javascript/mastodon/locales/en.json b/app/javascript/mastodon/locales/en.json
index b6ccc679f1..afae4342c5 100644
--- a/app/javascript/mastodon/locales/en.json
+++ b/app/javascript/mastodon/locales/en.json
@@ -649,6 +649,7 @@
"empty_column.collections": "{acct} has not created any collections yet.",
"empty_column.collections.featured_in": "You have not been added to any collections yet.",
"empty_column.collections.featured_in_undiscoverable": "In order for people to add you to collections, you need to allow featuring in discovery experiences from Preferences > Privacy and reach",
+ "empty_column.collections_self": "You have not created any collections yet.",
"empty_column.community": "The local timeline is empty. Write something publicly to get the ball rolling!",
"empty_column.direct": "You don't have any private mentions yet. When you send or receive one, it will show up here.",
"empty_column.disabled_feed": "This feed has been disabled by your server administrators.",