diff --git a/apps/frontend/src/components/ui/moderation/BatchScanProgressAlert.vue b/apps/frontend/src/components/ui/moderation/BatchScanProgressAlert.vue new file mode 100644 index 0000000000..42c8b80de0 --- /dev/null +++ b/apps/frontend/src/components/ui/moderation/BatchScanProgressAlert.vue @@ -0,0 +1,39 @@ + + + diff --git a/apps/frontend/src/components/ui/moderation/ModerationDelphiReportCard.vue b/apps/frontend/src/components/ui/moderation/ModerationDelphiReportCard.vue deleted file mode 100644 index d374418ea7..0000000000 --- a/apps/frontend/src/components/ui/moderation/ModerationDelphiReportCard.vue +++ /dev/null @@ -1,182 +0,0 @@ - - - - - diff --git a/apps/frontend/src/components/ui/moderation/ModerationReportCard.vue b/apps/frontend/src/components/ui/moderation/ModerationReportCard.vue index 895099a780..b813f87385 100644 --- a/apps/frontend/src/components/ui/moderation/ModerationReportCard.vue +++ b/apps/frontend/src/components/ui/moderation/ModerationReportCard.vue @@ -1,126 +1,123 @@ + + diff --git a/apps/frontend/src/components/ui/thread/ReportThread.vue b/apps/frontend/src/components/ui/thread/ReportThread.vue index 7053f8e9e9..6c6483afc4 100644 --- a/apps/frontend/src/components/ui/thread/ReportThread.vue +++ b/apps/frontend/src/components/ui/thread/ReportThread.vue @@ -1,14 +1,11 @@ diff --git a/apps/frontend/src/pages/moderation/technical-review.vue b/apps/frontend/src/pages/moderation/technical-review.vue index 3a5ae57552..4f1b739e5d 100644 --- a/apps/frontend/src/pages/moderation/technical-review.vue +++ b/apps/frontend/src/pages/moderation/technical-review.vue @@ -1,3 +1,290 @@ + + diff --git a/apps/frontend/tailwind.config.ts b/apps/frontend/tailwind.config.ts index 8ecce39e94..4f776ccebc 100644 --- a/apps/frontend/tailwind.config.ts +++ b/apps/frontend/tailwind.config.ts @@ -14,6 +14,13 @@ const config: Config = { theme: { extend: { colors: { + surface: { + l1: 'var(--surface-l1)', + l2: 'var(--surface-l2)', + l3: 'var(--surface-l3)', + l4: 'var(--surface-l4)', + l5: 'var(--surface-l5)', + }, icon: 'var(--color-base)', // Text primary: 'var(--color-base)', @@ -29,13 +36,13 @@ const config: Config = { blue: 'var(--color-blue)', purple: 'var(--color-purple)', bg: { - DEFAULT: 'var(--color-bg)', + DEFAULT: 'var(--surface-l1)', // var(--color-bg) red: 'var(--color-red-bg)', orange: 'var(--color-orange-bg)', green: 'var(--color-green-bg)', blue: 'var(--color-blue-bg)', purple: 'var(--color-purple-bg)', - raised: 'var(--color-raised-bg)', + raised: 'var(--surface-l3)', // var(--color-raised-bg) }, banners: { error: { diff --git a/packages/assets/generated-icons.ts b/packages/assets/generated-icons.ts index 4adb0cf0e4..ba9a84ef94 100644 --- a/packages/assets/generated-icons.ts +++ b/packages/assets/generated-icons.ts @@ -154,6 +154,7 @@ import _ServerPlusIcon from './icons/server-plus.svg?component' import _SettingsIcon from './icons/settings.svg?component' import _ShareIcon from './icons/share.svg?component' import _ShieldIcon from './icons/shield.svg?component' +import _ShieldAlertIcon from './icons/shield-alert.svg?component' import _SignalIcon from './icons/signal.svg?component' import _SkullIcon from './icons/skull.svg?component' import _SlashIcon from './icons/slash.svg?component' @@ -351,6 +352,7 @@ export const ServerPlusIcon = _ServerPlusIcon export const ServerIcon = _ServerIcon export const SettingsIcon = _SettingsIcon export const ShareIcon = _ShareIcon +export const ShieldAlertIcon = _ShieldAlertIcon export const ShieldIcon = _ShieldIcon export const SignalIcon = _SignalIcon export const SkullIcon = _SkullIcon diff --git a/packages/assets/icons/shield-alert.svg b/packages/assets/icons/shield-alert.svg new file mode 100644 index 0000000000..94cfbb72f9 --- /dev/null +++ b/packages/assets/icons/shield-alert.svg @@ -0,0 +1,18 @@ + + + + + diff --git a/packages/assets/styles/variables.scss b/packages/assets/styles/variables.scss index 77f2407107..85574ed746 100644 --- a/packages/assets/styles/variables.scss +++ b/packages/assets/styles/variables.scss @@ -1,8 +1,15 @@ .light-properties { - --color-bg: #ebebeb; - --color-raised-bg: #ffffff; - --color-super-raised-bg: #e9e9e9; - --color-button-bg: #f5f5f5; + --surface-l1: #ebebeb; + --surface-l2: #ffffff; + --surface-l3: #f5f5f5; + --surface-l4: #eeeeee; + --surface-l5: #e6e6e6; + + --color-bg: var(--surface-l1); + --color-raised-bg: var(--surface-l3); + --color-super-raised-bg: var(--surface-l4); + + --color-button-bg: var(--surface-l4); --color-button-border: rgba(161, 161, 161, 0.35); --color-scrollbar: #96a2b0; @@ -133,10 +140,17 @@ html { .dark-mode, .dark, :root[data-theme='dark'] { - --color-bg: #16181c; - --color-raised-bg: #26292f; - --color-super-raised-bg: #40434a; - --color-button-bg: #33363d; + --surface-l1: #16181c; + --surface-l2: #1d1f23; + --surface-l3: #27292e; + --surface-l4: #34363c; + --surface-l5: #42444a; + + --color-bg: var(--surface-l1); + --color-raised-bg: var(--surface-l3); + --color-super-raised-bg: var(--surface-l4); + + --color-button-bg: var(--surface-l4); --color-button-border: rgba(193, 190, 209, 0.12); --color-scrollbar: var(--color-button-bg); @@ -220,8 +234,12 @@ html { .oled-mode { @extend .dark-mode; - --color-bg: #000000; - --color-raised-bg: #101013; + --surface-l1: #000000; + --surface-l2: #101013; + --surface-l3: #1b1b20; + --surface-l4: #25262b; + --surface-l5: #2e2f34; + --color-button-bg: #222329; --color-ad: #0d1828; diff --git a/packages/moderation/src/types/reports.ts b/packages/moderation/src/types/reports.ts index c5e0c1e042..16122b6778 100644 --- a/packages/moderation/src/types/reports.ts +++ b/packages/moderation/src/types/reports.ts @@ -1,4 +1,4 @@ -import type { DelphiReport, Project, Report, Thread, User, Version } from '@modrinth/utils' +import type { Project, Report, Thread, User, Version } from '@modrinth/utils' export interface OwnershipTarget { name: string @@ -16,10 +16,6 @@ export interface ExtendedReport extends Report { target?: OwnershipTarget } -export interface ExtendedDelphiReport extends DelphiReport { - target?: OwnershipTarget -} - export interface ReportQuickReply { label: string message: string | ((report: ExtendedReport) => Promise | string) diff --git a/packages/ui/src/components/settings/ThemeSelector.vue b/packages/ui/src/components/settings/ThemeSelector.vue index 32b496ec14..239115d23d 100644 --- a/packages/ui/src/components/settings/ThemeSelector.vue +++ b/packages/ui/src/components/settings/ThemeSelector.vue @@ -4,7 +4,7 @@ import { defineMessages, useVIntl } from '@vintl/vintl' const { formatMessage } = useVIntl() -defineProps<{ +const { updateColorTheme, currentTheme, themeOptions, systemThemeColor } = defineProps<{ updateColorTheme: (theme: T) => void currentTheme: T themeOptions: readonly T[] @@ -53,6 +53,11 @@ const colorTheme = defineMessages({ function asString(theme: T): string { return theme } + +function getPreviewClass(option: T): string { + const base = option === 'system' ? systemThemeColor : option + return base.endsWith('-mode') ? base : `${base}-mode` +}