nicolium: move stuff around

Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
This commit is contained in:
nicole mikołajczyk
2026-03-18 16:50:43 +01:00
parent decefd73ac
commit 759b1cd59a
79 changed files with 85 additions and 109 deletions

View File

@ -7,6 +7,7 @@ import '@/styles/new/notifications.scss';
import { defineMessages, FormattedMessage, useIntl } from 'react-intl';
import { saveSettings } from '@/actions/settings';
import PlaceholderNotification from '@/components/placeholders/placeholder-notification';
import PullToRefresh from '@/components/pull-to-refresh';
import ScrollTopButton from '@/components/scroll-top-button';
import ScrollableList from '@/components/scrollable-list';
@ -14,7 +15,6 @@ import Icon from '@/components/ui/icon';
import Portal from '@/components/ui/portal';
import Tabs from '@/components/ui/tabs';
import Notification from '@/features/notifications/components/notification';
import PlaceholderNotification from '@/features/placeholder/components/placeholder-notification';
import { useFeatures } from '@/hooks/use-features';
import { queryClient } from '@/queries/client';
import { queryKeys } from '@/queries/keys';

View File

@ -4,11 +4,11 @@ import { FormattedMessage } from 'react-intl';
import AccountContainer from '@/components/accounts/account-container';
import Hashtag from '@/components/hashtag';
import PlaceholderAccount from '@/components/placeholders/placeholder-account';
import PlaceholderHashtag from '@/components/placeholders/placeholder-hashtag';
import PlaceholderStatus from '@/components/placeholders/placeholder-status';
import ScrollableList from '@/components/scrollable-list';
import StatusContainer from '@/components/statuses/status-container';
import PlaceholderAccount from '@/features/placeholder/components/placeholder-account';
import PlaceholderHashtag from '@/features/placeholder/components/placeholder-hashtag';
import PlaceholderStatus from '@/features/placeholder/components/placeholder-status';
import {
useSearchAccounts,
useSearchHashtags,

View File

@ -4,6 +4,7 @@ import React, { useMemo, useRef, useState } from 'react';
import { defineMessages, FormattedList, FormattedMessage, useIntl } from 'react-intl';
import HoverAccountWrapper from '@/components/accounts/hover-account-wrapper';
import PlaceholderStatus from '@/components/placeholders/placeholder-status';
import PullToRefresh from '@/components/pull-to-refresh';
import ScrollTopButton from '@/components/scroll-top-button';
import ScrollableList, { type IScrollableList } from '@/components/scrollable-list';
@ -14,7 +15,6 @@ import Icon from '@/components/ui/icon';
import Portal from '@/components/ui/portal';
import { useCurrentAccount } from '@/contexts/current-account-context';
import Emojify from '@/features/emoji/emojify';
import PlaceholderStatus from '@/features/placeholder/components/placeholder-status';
import PendingStatus from '@/features/ui/components/pending-status';
import { useFeatures } from '@/hooks/use-features';
import { useAccounts } from '@/queries/accounts/use-accounts';

View File

@ -5,13 +5,13 @@ import { FormattedMessage } from 'react-intl';
import AccountContainer from '@/components/accounts/account-container';
import { EmptyMessage } from '@/components/empty-message';
import Hashtag from '@/components/hashtag';
import PlaceholderAccount from '@/components/placeholders/placeholder-account';
import PlaceholderHashtag from '@/components/placeholders/placeholder-hashtag';
import PlaceholderStatus from '@/components/placeholders/placeholder-status';
import ScrollableList from '@/components/scrollable-list';
import StatusContainer from '@/components/statuses/status-container';
import TrendingLink from '@/components/trending-link';
import Button from '@/components/ui/button';
import PlaceholderAccount from '@/features/placeholder/components/placeholder-account';
import PlaceholderHashtag from '@/features/placeholder/components/placeholder-hashtag';
import PlaceholderStatus from '@/features/placeholder/components/placeholder-status';
import { useFeatures } from '@/hooks/use-features';
import { useSuggestedAccounts } from '@/queries/trends/use-suggested-accounts';
import { useTrendingLinks } from '@/queries/trends/use-trending-links';

View File

@ -4,7 +4,7 @@ import React, { useState } from 'react';
import Icon from '@/components/ui/icon';
import Select from '@/components/ui/select';
import { SelectDropdown } from '@/features/forms';
import { SelectDropdown } from '@/components/ui/select-dropdown';
interface IList {
children: React.ReactNode;

View File

@ -5,7 +5,7 @@ import React, { useCallback, useEffect, useLayoutEffect, useRef, useState } from
import { defineMessages, useIntl } from 'react-intl';
import Icon from '@/components/icon';
import { formatTime, getPointerPosition } from '@/features/video';
import { formatTime, getPointerPosition } from '@/components/media/video';
import { useSettings } from '@/stores/settings';
import Visualizer from './visualizer';

View File

@ -14,7 +14,7 @@ import {
maximumAspectRatio,
} from '@/utils/media-aspect-ratio';
import { isFullscreen, requestFullscreen, exitFullscreen } from '../ui/util/fullscreen';
import { isFullscreen, requestFullscreen, exitFullscreen } from '../../features/ui/util/fullscreen';
const DEFAULT_HEIGHT = 300;

View File

@ -1,9 +1,9 @@
import React from 'react';
import { FormattedMessage } from 'react-intl';
import PlaceholderGroupSearch from '@/components/placeholders/placeholder-group-search';
import Widget from '@/components/ui/widget';
import GroupListItem from '@/features/groups/components/discover/group-list-item';
import PlaceholderGroupSearch from '@/features/placeholder/components/placeholder-group-search';
import { useGroupsQuery } from '@/queries/groups/use-groups';
const MyGroupsPanel = () => {

View File

@ -1,8 +1,7 @@
import React from 'react';
import Widget from '@/components/ui/widget';
import { ProfileField } from '../../util/async-components';
import { ProfileField } from '@/features/ui/util/async-components';
import type { Account } from 'pl-api';

View File

@ -10,15 +10,14 @@ import Icon from '@/components/ui/icon';
import Text from '@/components/ui/text';
import { useCurrentAccount } from '@/contexts/current-account-context';
import Emojify from '@/features/emoji/emojify';
import ProfileFamiliarFollowers from '@/features/ui/components/profile-familiar-followers';
import ProfileStats from '@/features/ui/components/profile-stats';
import { ProfileField } from '@/features/ui/util/async-components';
import { useAcct } from '@/hooks/use-acct';
import { useAccountScrobbleQuery } from '@/queries/accounts/account-scrobble';
import { useSettings } from '@/stores/settings';
import { capitalize } from '@/utils/strings';
import { ProfileField } from '../../util/async-components';
import ProfileFamiliarFollowers from '../profile-familiar-followers';
import ProfileStats from '../profile-stats';
import type { Account } from 'pl-api';
const messages = defineMessages({

View File

@ -3,9 +3,9 @@ import React from 'react';
import { FormattedMessage } from 'react-intl';
import Hashtag from '@/components/hashtag';
import PlaceholderSidebarTrends from '@/components/placeholders/placeholder-sidebar-trends';
import Text from '@/components/ui/text';
import Widget from '@/components/ui/widget';
import PlaceholderSidebarTrends from '@/features/placeholder/components/placeholder-sidebar-trends';
import useTrendingTags from '@/queries/trends/use-trending-tags';
interface ITrendsPanel {

View File

@ -3,9 +3,9 @@ import React from 'react';
import { defineMessages, FormattedMessage, useIntl } from 'react-intl';
import AccountContainer from '@/components/accounts/account-container';
import PlaceholderSidebarSuggestions from '@/components/placeholders/placeholder-sidebar-suggestions';
import Text from '@/components/ui/text';
import Widget from '@/components/ui/widget';
import PlaceholderSidebarSuggestions from '@/features/placeholder/components/placeholder-sidebar-suggestions';
import { useFeatures } from '@/hooks/use-features';
import {
useDismissSuggestion,

View File

@ -1,7 +1,7 @@
import clsx from 'clsx';
import React from 'react';
import { randomIntFromInterval, generateText } from '../utils';
import { randomIntFromInterval, generateText } from '@/utils/placeholders';
/** Fake link preview to display while data is loading. */
const PlaceholderCard: React.FC = React.memo(() => (

View File

@ -2,8 +2,7 @@ import clsx from 'clsx';
import React from 'react';
import Text from '@/components/ui/text';
import { randomIntFromInterval } from '../utils';
import { randomIntFromInterval } from '@/utils/placeholders';
import PlaceholderAvatar from './placeholder-avatar';

View File

@ -1,6 +1,6 @@
import React from 'react';
import { randomIntFromInterval, generateText } from '../utils';
import { randomIntFromInterval, generateText } from '@/utils/placeholders';
interface IPlaceholderDisplayName {
maxLength: number;

View File

@ -1,6 +1,6 @@
import React from 'react';
import { generateText, randomIntFromInterval } from '../utils';
import { generateText, randomIntFromInterval } from '@/utils/placeholders';
const PlaceholderEventHeader = () => {
const eventNameLength = randomIntFromInterval(5, 25);

View File

@ -1,8 +1,7 @@
import React from 'react';
import Text from '@/components/ui/text';
import { generateText, randomIntFromInterval } from '../utils';
import { generateText, randomIntFromInterval } from '@/utils/placeholders';
const PlaceholderEventPreview = () => {
const eventNameLength = randomIntFromInterval(5, 25);

View File

@ -1,8 +1,7 @@
import React from 'react';
import Text from '@/components/ui/text';
import { generateText, randomIntFromInterval } from '../utils';
import { generateText, randomIntFromInterval } from '@/utils/placeholders';
const PlaceholderGroupCard = () => {
const groupNameLength = randomIntFromInterval(12, 20);

View File

@ -1,8 +1,7 @@
import React from 'react';
import Text from '@/components/ui/text';
import { generateText, randomIntFromInterval } from '../utils';
import { generateText, randomIntFromInterval } from '@/utils/placeholders';
const PlaceholderGroupSearch = ({ withJoinAction = true }: { withJoinAction?: boolean }) => {
const groupNameLength = randomIntFromInterval(12, 20);

View File

@ -1,6 +1,6 @@
import React from 'react';
import { generateText, randomIntFromInterval } from '../utils';
import { generateText, randomIntFromInterval } from '@/utils/placeholders';
/** Fake hashtag to display while data is loading. */
const PlaceholderHashtag: React.FC = () => {

View File

@ -1,6 +1,6 @@
import React from 'react';
import { randomIntFromInterval, generateText } from '../utils';
import { randomIntFromInterval, generateText } from '@/utils/placeholders';
const PlaceholderSidebarSuggestions = ({ limit }: { limit: number }) => {
const length = randomIntFromInterval(15, 3);

View File

@ -1,6 +1,6 @@
import React from 'react';
import { randomIntFromInterval, generateText } from '../utils';
import { randomIntFromInterval, generateText } from '@/utils/placeholders';
const PlaceholderSidebarTrends = ({ limit }: { limit: number }) => {
const trend = randomIntFromInterval(6, 3);

View File

@ -1,6 +1,6 @@
import React from 'react';
import { randomIntFromInterval, generateText } from '../utils';
import { randomIntFromInterval, generateText } from '@/utils/placeholders';
interface IPlaceholderStatusContent {
maxLength: number;

View File

@ -4,9 +4,9 @@ import React, { useRef, useCallback, useMemo } from 'react';
import { FormattedMessage } from 'react-intl';
import LoadGap from '@/components/load-gap';
import PlaceholderStatus from '@/components/placeholders/placeholder-status';
import ScrollableList, { type IScrollableList } from '@/components/scrollable-list';
import StatusContainer from '@/components/statuses/status-container';
import PlaceholderStatus from '@/features/placeholder/components/placeholder-status';
import PendingStatus from '@/features/ui/components/pending-status';
import { timelineToFilterContextType } from '@/queries/settings/use-filters';
import { selectChild } from '@/utils/scroll-utils';

View File

@ -1,8 +1,8 @@
import React, { Suspense } from 'react';
import AttachmentThumbs from '@/components/media/attachment-thumbs';
import PlaceholderCard from '@/components/placeholders/placeholder-card';
import PreviewCard from '@/components/preview-card';
import PlaceholderCard from '@/features/placeholder/components/placeholder-card';
import { MediaGallery, Video, Audio } from '@/features/ui/util/async-components';
import { useAccount } from '@/queries/accounts/use-account';
import { useModalsActions } from '@/stores/modals';

View File

@ -2,7 +2,7 @@ import clsx from 'clsx';
import throttle from 'lodash/throttle';
import React, { useCallback, useEffect, useRef, useState } from 'react';
import { getPointerPosition } from '@/features/video';
import { getPointerPosition } from '@/components/media/video';
interface ISlider {
id?: string;

View File

@ -1,7 +1,7 @@
import throttle from 'lodash/throttle';
import React, { useCallback, useRef } from 'react';
import { getPointerPosition } from '@/features/video';
import { getPointerPosition } from '@/components/media/video';
interface IStepSlider {
id?: string;

View File

@ -2,9 +2,9 @@ import clsx from 'clsx';
import React, { useCallback, useRef, useState } from 'react';
import { Virtuoso, type VirtuosoHandle } from 'react-virtuoso';
import PlaceholderChat from '@/components/placeholders/placeholder-chat';
import PullToRefresh from '@/components/pull-to-refresh';
import Spinner from '@/components/ui/spinner';
import PlaceholderChat from '@/features/placeholder/components/placeholder-chat';
import { useChats } from '@/queries/chats';
import { useShoutboxIsLoading } from '@/stores/shoutbox';
import { selectChild } from '@/utils/scroll-utils';

View File

@ -2,12 +2,12 @@ import React, { useState, useEffect, useRef, useCallback, useMemo } from 'react'
import { useIntl, defineMessages, FormattedMessage } from 'react-intl';
import { type Components, Virtuoso, type VirtuosoHandle } from 'react-virtuoso';
import PlaceholderChatMessage from '@/components/placeholders/placeholder-chat-message';
import Avatar from '@/components/ui/avatar';
import Button from '@/components/ui/button';
import Divider from '@/components/ui/divider';
import Spinner from '@/components/ui/spinner';
import Text from '@/components/ui/text';
import PlaceholderChatMessage from '@/features/placeholder/components/placeholder-chat-message';
import { useRelationshipQuery } from '@/queries/accounts/use-relationship';
import {
useChatMessages,

View File

@ -4,12 +4,12 @@ import React, { useState, useEffect, useRef, useMemo } from 'react';
import { Virtuoso, type VirtuosoHandle } from 'react-virtuoso';
import HoverAccountWrapper from '@/components/accounts/hover-account-wrapper';
import PlaceholderChatMessage from '@/components/placeholders/placeholder-chat-message';
import { ParsedContent } from '@/components/statuses/parsed-content';
import Avatar from '@/components/ui/avatar';
import Text from '@/components/ui/text';
import { useCurrentAccount } from '@/contexts/current-account-context';
import Emojify from '@/features/emoji/emojify';
import PlaceholderChatMessage from '@/features/placeholder/components/placeholder-chat-message';
import { useAccount } from '@/queries/accounts/use-account';
import { useShoutboxIsLoading, useShoutboxMessages, type ShoutMessage } from '@/stores/shoutbox';

View File

@ -2,8 +2,8 @@ import { debounce } from '@tanstack/react-pacer/debouncer';
import React, { useCallback, useRef } from 'react';
import { FormattedMessage } from 'react-intl';
import PlaceholderStatus from '@/components/placeholders/placeholder-status';
import ScrollableList from '@/components/scrollable-list';
import PlaceholderStatus from '@/features/placeholder/components/placeholder-status';
import { useConversations } from '@/queries/conversations/use-conversations';
import { selectChild } from '@/utils/scroll-utils';

View File

@ -5,6 +5,7 @@ import { defineMessages, FormattedMessage, useIntl } from 'react-intl';
import VerificationBadge from '@/components/accounts/verification-badge';
import DropdownMenu, { type Menu as MenuType } from '@/components/dropdown-menu';
import Icon from '@/components/icon';
import PlaceholderEventHeader from '@/components/placeholders/placeholder-event-header';
import StillImage from '@/components/still-image';
import Button from '@/components/ui/button';
import IconButton from '@/components/ui/icon-button';
@ -33,7 +34,6 @@ import copy from '@/utils/copy';
import { download } from '@/utils/download';
import { shortNumberFormat } from '@/utils/numbers';
import PlaceholderEventHeader from '../../placeholder/components/placeholder-event-header';
import EventActionButton from '../components/event-action-button';
import EventDate from '../components/event-date';

View File

@ -5,7 +5,7 @@ import { defineMessages, useIntl } from 'react-intl';
import Account from '@/components/accounts/account';
import DropdownMenu from '@/components/dropdown-menu/dropdown-menu';
import PlaceholderAccount from '@/features/placeholder/components/placeholder-account';
import PlaceholderAccount from '@/components/placeholders/placeholder-account';
import { useAccount } from '@/queries/accounts/use-account';
import { useBlockGroupUserMutation } from '@/queries/groups/use-group-blocks';
import {

View File

@ -7,8 +7,8 @@ import List, { ListItem } from '@/components/list';
import Button from '@/components/ui/button';
import Form from '@/components/ui/form';
import { Multiselect } from '@/components/ui/multiselect';
import { SelectDropdown } from '@/components/ui/select-dropdown';
import StepSlider from '@/components/ui/step-slider';
import { SelectDropdown } from '@/features/forms';
import SettingToggle from '@/features/settings/components/setting-toggle';
import { useFeatures } from '@/hooks/use-features';
import { useFrontendConfig } from '@/hooks/use-frontend-config';

View File

@ -1,9 +1,9 @@
import clsx from 'clsx';
import React from 'react';
import PlaceholderStatus from '@/components/placeholders/placeholder-status';
import StatusContainer from '@/components/statuses/status-container';
import Tombstone from '@/components/statuses/tombstone';
import PlaceholderStatus from '@/features/placeholder/components/placeholder-status';
import { useMinimalStatus } from '@/queries/statuses/use-status';
import { useReplyCount, useReplyToId } from '@/stores/contexts';
import { useStatusMeta } from '@/stores/status-meta';

View File

@ -3,10 +3,10 @@ import clsx from 'clsx';
import React, { useCallback, useEffect, useMemo, useRef } from 'react';
import { useIntl } from 'react-intl';
import PlaceholderStatus from '@/components/placeholders/placeholder-status';
import ScrollableList from '@/components/scrollable-list';
import StatusActionBar from '@/components/statuses/status-action-bar';
import Tombstone from '@/components/statuses/tombstone';
import PlaceholderStatus from '@/features/placeholder/components/placeholder-status';
import { Hotkeys } from '@/features/ui/components/hotkeys';
import PendingStatus from '@/features/ui/components/pending-status';
import {

View File

@ -3,11 +3,11 @@ import clsx from 'clsx';
import React from 'react';
import Account from '@/components/accounts/account';
import PlaceholderCard from '@/components/placeholders/placeholder-card';
import PlaceholderMediaGallery from '@/components/placeholders/placeholder-media-gallery';
import StatusContent from '@/components/statuses/status-content';
import StatusReplyMentions from '@/components/statuses/status-reply-mentions';
import Card from '@/components/ui/card';
import PlaceholderCard from '@/features/placeholder/components/placeholder-card';
import PlaceholderMediaGallery from '@/features/placeholder/components/placeholder-media-gallery';
import QuotedStatus from '@/features/status/containers/quoted-status-container';
import { useOwnAccount } from '@/hooks/use-own-account';
import { queryKeys } from '@/queries/keys';

View File

@ -5,7 +5,7 @@ import { defineMessages, useIntl } from 'react-intl';
import Account from '@/components/accounts/account';
import DropdownMenu from '@/components/dropdown-menu';
import PlaceholderAccount from '@/features/placeholder/components/placeholder-account';
import PlaceholderAccount from '@/components/placeholders/placeholder-account';
import { useFeatures } from '@/hooks/use-features';
import {
useLoggedInAccount,

View File

@ -1,55 +1,37 @@
import { lazy } from 'react';
// Panels
export const AccountNotePanel = lazy(
() => import('@/features/ui/components/panels/account-note-panel'),
);
export const AccountNotePanel = lazy(() => import('@/components/panels/account-note-panel'));
export const AnnouncementsPanel = lazy(
() => import('@/components/announcements/announcements-panel'),
);
export const BirthdayPanel = lazy(() => import('@/features/ui/components/panels/birthday-panel'));
export const BirthdayPanel = lazy(() => import('@/components/panels/birthday-panel'));
export const CryptoDonatePanel = lazy(
() => import('@/features/crypto-donate/components/crypto-donate-panel'),
);
export const GroupMediaPanel = lazy(
() => import('@/features/ui/components/panels/group-media-panel'),
);
export const InstanceInfoPanel = lazy(
() => import('@/features/ui/components/panels/instance-info-panel'),
);
export const GroupMediaPanel = lazy(() => import('@/components/panels/group-media-panel'));
export const InstanceInfoPanel = lazy(() => import('@/components/panels/instance-info-panel'));
export const InstanceModerationPanel = lazy(
() => import('@/features/ui/components/panels/instance-moderation-panel'),
() => import('@/components/panels/instance-moderation-panel'),
);
export const LatestAccountsPanel = lazy(
() => import('@/features/admin/components/latest-accounts-panel'),
);
export const MyGroupsPanel = lazy(() => import('@/features/ui/components/panels/my-groups-panel'));
export const NewEventPanel = lazy(() => import('@/features/ui/components/panels/new-event-panel'));
export const NewGroupPanel = lazy(() => import('@/features/ui/components/panels/new-group-panel'));
export const NotificationsPanel = lazy(
() => import('@/features/ui/components/panels/notifications-panel'),
);
export const PinnedAccountsPanel = lazy(
() => import('@/features/ui/components/panels/pinned-accounts-panel'),
);
export const ProfileFieldsPanel = lazy(
() => import('@/features/ui/components/panels/profile-fields-panel'),
);
export const ProfileInfoPanel = lazy(
() => import('@/features/ui/components/panels/profile-info-panel'),
);
export const ProfileMediaPanel = lazy(
() => import('@/features/ui/components/panels/profile-media-panel'),
);
export const PromoPanel = lazy(() => import('@/features/ui/components/panels/promo-panel'));
export const SignUpPanel = lazy(() => import('@/features/ui/components/panels/sign-up-panel'));
export const TrendsPanel = lazy(() => import('@/features/ui/components/panels/trends-panel'));
export const UserPanel = lazy(() => import('@/features/ui/components/panels/user-panel'));
export const WhoToFollowPanel = lazy(
() => import('@/features/ui/components/panels/who-to-follow-panel'),
);
export const MyGroupsPanel = lazy(() => import('@/components/panels/my-groups-panel'));
export const NewEventPanel = lazy(() => import('@/components/panels/new-event-panel'));
export const NewGroupPanel = lazy(() => import('@/components/panels/new-group-panel'));
export const NotificationsPanel = lazy(() => import('@/components/panels/notifications-panel'));
export const PinnedAccountsPanel = lazy(() => import('@/components/panels/pinned-accounts-panel'));
export const ProfileFieldsPanel = lazy(() => import('@/components/panels/profile-fields-panel'));
export const ProfileInfoPanel = lazy(() => import('@/components/panels/profile-info-panel'));
export const ProfileMediaPanel = lazy(() => import('@/components/panels/profile-media-panel'));
export const PromoPanel = lazy(() => import('@/components/panels/promo-panel'));
export const SignUpPanel = lazy(() => import('@/components/panels/sign-up-panel'));
export const TrendsPanel = lazy(() => import('@/components/panels/trends-panel'));
export const UserPanel = lazy(() => import('@/components/panels/user-panel'));
export const WhoToFollowPanel = lazy(() => import('@/components/panels/who-to-follow-panel'));
export const Audio = lazy(() => import('@/features/audio'));
export const Audio = lazy(() => import('@/components/media/audio'));
export const ChatWidget = lazy(() => import('@/features/chats/components/chat-widget/chat-widget'));
export const ComposeEditor = lazy(() => import('@/features/compose/editor'));
export const ComposeForm = lazy(() => import('@/features/compose/components/compose-form'));
@ -62,4 +44,4 @@ export const ModalRoot = lazy(() => import('@/features/ui/components/modal-root'
export const ProfileField = lazy(() => import('@/features/ui/components/profile-field'));
export const AccountHoverCard = lazy(() => import('@/components/accounts/account-hover-card'));
export const StatusHoverCard = lazy(() => import('@/components/statuses/status-hover-card'));
export const Video = lazy(() => import('@/features/video'));
export const Video = lazy(() => import('@/components/media/video'));

View File

@ -2,11 +2,11 @@ import { Outlet, useLocation, useNavigate } from '@tanstack/react-router';
import React, { useMemo } from 'react';
import { FormattedMessage } from 'react-intl';
import PlaceholderStatus from '@/components/placeholders/placeholder-status';
import Column from '@/components/ui/column';
import Layout from '@/components/ui/layout';
import Tabs, { type Item } from '@/components/ui/tabs';
import { useCurrentAccount } from '@/contexts/current-account-context';
import PlaceholderStatus from '@/features/placeholder/components/placeholder-status';
import LinkFooter from '@/features/ui/components/link-footer';
import { layouts } from '@/features/ui/router';
import {

View File

@ -4,12 +4,12 @@ import React, { useCallback, useEffect, useRef, useState } from 'react';
import { defineMessages, FormattedMessage, useIntl } from 'react-intl';
import Blurhash from '@/components/media/blurhash';
import { getPointerPosition } from '@/components/media/video';
import FormGroup from '@/components/ui/form-group';
import Icon from '@/components/ui/icon';
import Modal from '@/components/ui/modal';
import Textarea from '@/components/ui/textarea';
import { MIMETYPE_ICONS } from '@/components/upload';
import { getPointerPosition } from '@/features/video';
import { useCompose } from '@/hooks/use-compose';
import { useFeatures } from '@/hooks/use-features';
import toast from '@/toast';

View File

@ -10,10 +10,10 @@ import FormGroup from '@/components/ui/form-group';
import IconButton from '@/components/ui/icon-button';
import Input from '@/components/ui/input';
import Modal from '@/components/ui/modal';
import { SelectDropdown } from '@/components/ui/select-dropdown';
import Spinner from '@/components/ui/spinner';
import Text from '@/components/ui/text';
import Toggle from '@/components/ui/toggle';
import { SelectDropdown } from '@/features/forms';
import {
useAddAccountsToAntenna,
useAddDomainsToAntenna,

View File

@ -1,11 +1,11 @@
import React, { useState } from 'react';
import { FormattedMessage } from 'react-intl';
import { getCurrentDate } from '@/components/panels/birthday-panel';
import ScrollableList from '@/components/scrollable-list';
import Modal from '@/components/ui/modal';
import Spinner from '@/components/ui/spinner';
import Account from '@/features/birthdays/account';
import { getCurrentDate } from '@/features/ui/components/panels/birthday-panel';
import { useBirthdayReminders } from '@/queries/accounts/use-birthday-reminders';
import type { BaseModalProps } from '@/features/ui/components/modal-root';

View File

@ -7,8 +7,8 @@ import Form from '@/components/ui/form';
import FormActions from '@/components/ui/form-actions';
import FormGroup from '@/components/ui/form-group';
import Input from '@/components/ui/input';
import { SelectDropdown } from '@/components/ui/select-dropdown';
import Toggle from '@/components/ui/toggle';
import { SelectDropdown } from '@/features/forms';
import { useFeatures } from '@/hooks/use-features';
import { useList, useUpdateList } from '@/queries/accounts/use-lists';
import toast from '@/toast';

View File

@ -5,16 +5,16 @@ import clsx from 'clsx';
import React, { useCallback, useEffect, useMemo, useState } from 'react';
import { defineMessages, useIntl, FormattedMessage } from 'react-intl';
import Audio from '@/components/media/audio';
import ExtendedVideoPlayer from '@/components/media/extended-video-player';
import Video from '@/components/media/video';
import MissingIndicator from '@/components/missing-indicator';
import PlaceholderStatus from '@/components/placeholders/placeholder-status';
import StatusActionBar from '@/components/statuses/status-action-bar';
import Icon from '@/components/ui/icon';
import IconButton from '@/components/ui/icon-button';
import Audio from '@/features/audio';
import PlaceholderStatus from '@/features/placeholder/components/placeholder-status';
import Thread from '@/features/status/components/thread';
import ZoomableImage from '@/features/ui/components/zoomable-image';
import Video from '@/features/video';
import { useStatus } from '@/queries/statuses/use-status';
import { userTouching } from '@/utils/is-mobile';

View File

@ -8,10 +8,10 @@ import MissingIndicator from '@/components/missing-indicator';
import OutlineBox from '@/components/outline-box';
import Button from '@/components/ui/button';
import Column from '@/components/ui/column';
import { SelectDropdown } from '@/components/ui/select-dropdown';
import TagInput from '@/components/ui/tag-input';
import Text from '@/components/ui/text';
import Toggle from '@/components/ui/toggle';
import { SelectDropdown } from '@/features/forms';
import ColumnLoading from '@/features/ui/components/column-loading';
import { adminAccountRoute } from '@/features/ui/router';
import { useDeactivateUserModal, useDeleteUserModal } from '@/hooks/use-admin-modals';

View File

@ -3,9 +3,9 @@ import { GroupRoles } from 'pl-api';
import React, { useMemo } from 'react';
import { PendingItemsRow } from '@/components/pending-items-row';
import PlaceholderAccount from '@/components/placeholders/placeholder-account';
import ScrollableList from '@/components/scrollable-list';
import GroupMemberListItem from '@/features/group/components/group-member-list-item';
import PlaceholderAccount from '@/features/placeholder/components/placeholder-account';
import { groupMembersRoute } from '@/features/ui/router';
import { useGroupQuery } from '@/queries/groups/use-group';
import {

View File

@ -3,10 +3,10 @@ import React from 'react';
import { FormattedMessage } from 'react-intl';
import GroupCard from '@/components/group-card';
import PlaceholderGroupCard from '@/components/placeholders/placeholder-group-card';
import ScrollableList from '@/components/scrollable-list';
import Button from '@/components/ui/button';
import Text from '@/components/ui/text';
import PlaceholderGroupCard from '@/features/placeholder/components/placeholder-group-card';
import { useGroupsQuery } from '@/queries/groups/use-groups';
import { useModalsActions } from '@/stores/modals';

View File

@ -11,10 +11,10 @@ import FormActions from '@/components/ui/form-actions';
import FormGroup from '@/components/ui/form-group';
import Input from '@/components/ui/input';
import Select from '@/components/ui/select';
import { SelectDropdown } from '@/components/ui/select-dropdown';
import Streamfield from '@/components/ui/streamfield';
import Text from '@/components/ui/text';
import Toggle from '@/components/ui/toggle';
import { SelectDropdown } from '@/features/forms';
import { editFilterRoute } from '@/features/ui/router';
import { useFeatures } from '@/hooks/use-features';
import { useCreateFilter, useFilter, useUpdateFilter } from '@/queries/settings/use-filters';

View File

@ -12,12 +12,12 @@ import Form from '@/components/ui/form';
import FormActions from '@/components/ui/form-actions';
import FormGroup from '@/components/ui/form-group';
import Input from '@/components/ui/input';
import { SelectDropdown } from '@/components/ui/select-dropdown';
import Streamfield from '@/components/ui/streamfield';
import Textarea from '@/components/ui/textarea';
import Toggle from '@/components/ui/toggle';
import AvatarPicker from '@/features/edit-profile/components/avatar-picker';
import HeaderPicker from '@/features/edit-profile/components/header-picker';
import { SelectDropdown } from '@/features/forms';
import { useImageField } from '@/hooks/forms/use-image-field';
import { useClient } from '@/hooks/use-client';
import { useFeatures } from '@/hooks/use-features';

View File

@ -2,9 +2,9 @@ import React from 'react';
import { defineMessages, useIntl, FormattedMessage } from 'react-intl';
import Hashtag from '@/components/hashtag';
import PlaceholderHashtag from '@/components/placeholders/placeholder-hashtag';
import ScrollableList from '@/components/scrollable-list';
import Column from '@/components/ui/column';
import PlaceholderHashtag from '@/features/placeholder/components/placeholder-hashtag';
import { useFollowedTags } from '@/queries/hashtags/use-followed-tags';
const messages = defineMessages({

View File

@ -8,10 +8,10 @@ import Column from '@/components/ui/column';
import Form from '@/components/ui/form';
import FormActions from '@/components/ui/form-actions';
import { InlineMultiselect } from '@/components/ui/inline-multiselect';
import { SelectDropdown } from '@/components/ui/select-dropdown';
import Tabs from '@/components/ui/tabs';
import Text from '@/components/ui/text';
import Warning from '@/features/compose/components/warning';
import { SelectDropdown } from '@/features/forms';
import { useClient } from '@/hooks/use-client';
import { useFeatures } from '@/hooks/use-features';
import { useInteractionPolicies } from '@/queries/settings/use-interaction-policies';

View File

@ -12,9 +12,9 @@ import Form from '@/components/ui/form';
import FormActions from '@/components/ui/form-actions';
import FormGroup from '@/components/ui/form-group';
import Input from '@/components/ui/input';
import { SelectDropdown } from '@/components/ui/select-dropdown';
import Toggle from '@/components/ui/toggle';
import { useCurrentAccount } from '@/contexts/current-account-context';
import { SelectDropdown } from '@/features/forms';
import KVStore from '@/storage/kv-store';
import { useSettings } from '@/stores/settings';
import { hasCanvasExtractPermission } from '@/utils/favicon-service';

View File

@ -2,13 +2,13 @@ import { Link } from '@tanstack/react-router';
import React, { useState } from 'react';
import { defineMessages, FormattedMessage, useIntl } from 'react-intl';
import PlaceholderEventPreview from '@/components/placeholders/placeholder-event-preview';
import ReactSwipeableViews from '@/components/react-swipeable-views';
import EventPreview from '@/components/statuses/event-preview';
import Button from '@/components/ui/button';
import Card, { CardBody, CardHeader, CardTitle } from '@/components/ui/card';
import Column from '@/components/ui/column';
import Icon from '@/components/ui/icon';
import PlaceholderEventPreview from '@/features/placeholder/components/placeholder-event-preview';
import { useStatus } from '@/queries/statuses/use-status';
import {
useJoinedEventsTimeline,

View File

@ -2,10 +2,10 @@ import React, { useEffect, useRef } from 'react';
import { FormattedMessage } from 'react-intl';
import MissingIndicator from '@/components/missing-indicator';
import PlaceholderStatus from '@/components/placeholders/placeholder-status';
import ScrollableList from '@/components/scrollable-list';
import Tombstone from '@/components/statuses/tombstone';
import { useCurrentAccount } from '@/contexts/current-account-context';
import PlaceholderStatus from '@/features/placeholder/components/placeholder-status';
import ThreadStatus from '@/features/status/components/thread-status';
import PendingStatus from '@/features/ui/components/pending-status';
import { eventDiscussionRoute } from '@/features/ui/router';

View File

@ -5,9 +5,9 @@ import { defineMessages, useIntl } from 'react-intl';
import { changeSetting } from '@/actions/settings';
import DropdownMenu, { type Menu } from '@/components/dropdown-menu';
import MissingIndicator from '@/components/missing-indicator';
import PlaceholderStatus from '@/components/placeholders/placeholder-status';
import PullToRefresh from '@/components/pull-to-refresh';
import Column from '@/components/ui/column';
import PlaceholderStatus from '@/features/placeholder/components/placeholder-status';
import Thread from '@/features/status/components/thread';
import { statusRoute } from '@/features/ui/router';
import { useStatus } from '@/queries/statuses/use-status';

View File

@ -1,11 +1,11 @@
import React from 'react';
import { defineMessages, useIntl } from 'react-intl';
import PromoPanel from '@/components/panels/promo-panel';
import Column from '@/components/ui/column';
import Divider from '@/components/ui/divider';
import Text from '@/components/ui/text';
import LinkFooter from '@/features/ui/components/link-footer';
import PromoPanel from '@/features/ui/components/panels/promo-panel';
import { useInstance } from '@/stores/instance';
const messages = defineMessages({