style: remove all external data source labels and badges from UI

This commit is contained in:
alireza 2026-08-26 14:31:06 +03:30
parent 334ea1a3de
commit a6e4593b01
4 changed files with 147 additions and 148 deletions

View File

@ -22,7 +22,7 @@ export type DomainKey = "global" | "domestic" | "live";
export const DOMAINS: { key: DomainKey; label: string; hint: string }[] = [ export const DOMAINS: { key: DomainKey; label: string; hint: string }[] = [
{ key: "global", label: "بازار جهانی", hint: "فلزات و کامودیتی با تاریخچه و مقایسه" }, { key: "global", label: "بازار جهانی", hint: "فلزات و کامودیتی با تاریخچه و مقایسه" },
{ key: "domestic", label: "بازار داخلی", hint: "ارز، سکه و طلا — زنده" }, { key: "domestic", label: "بازار داخلی", hint: "ارز، سکه و طلا — زنده" },
{ key: "live", label: "زنده", hint: "کامودیتی لحظه‌ای — Yahoo Finance" }, { key: "live", label: "زنده", hint: "کامودیتی و بازارهای جهانی" },
]; ];
// Category (sub-group) names from /api/tree, translated to Persian. // Category (sub-group) names from /api/tree, translated to Persian.

View File

@ -1,141 +1,141 @@
/* eslint-disable */ /* eslint-disable */
// @ts-nocheck // @ts-nocheck
// noinspection JSUnusedGlobalSymbols // noinspection JSUnusedGlobalSymbols
// This file was automatically generated by TanStack Router. // This file was automatically generated by TanStack Router.
// You should NOT make any changes in this file as it will be overwritten. // You should NOT make any changes in this file as it will be overwritten.
// Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified. // Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.
import { Route as rootRouteImport } from './routes/__root' import { Route as rootRouteImport } from './routes/__root'
import { Route as RegisterRouteImport } from './routes/register' import { Route as RegisterRouteImport } from './routes/register'
import { Route as ProfileRouteImport } from './routes/profile' import { Route as ProfileRouteImport } from './routes/profile'
import { Route as LoginRouteImport } from './routes/login' import { Route as LoginRouteImport } from './routes/login'
import { Route as DashboardRouteImport } from './routes/dashboard' import { Route as DashboardRouteImport } from './routes/dashboard'
import { Route as IndexRouteImport } from './routes/index' import { Route as IndexRouteImport } from './routes/index'
const RegisterRoute = RegisterRouteImport.update({ const RegisterRoute = RegisterRouteImport.update({
id: '/register', id: '/register',
path: '/register', path: '/register',
getParentRoute: () => rootRouteImport, getParentRoute: () => rootRouteImport,
} as any) } as any)
const ProfileRoute = ProfileRouteImport.update({ const ProfileRoute = ProfileRouteImport.update({
id: '/profile', id: '/profile',
path: '/profile', path: '/profile',
getParentRoute: () => rootRouteImport, getParentRoute: () => rootRouteImport,
} as any) } as any)
const LoginRoute = LoginRouteImport.update({ const LoginRoute = LoginRouteImport.update({
id: '/login', id: '/login',
path: '/login', path: '/login',
getParentRoute: () => rootRouteImport, getParentRoute: () => rootRouteImport,
} as any) } as any)
const DashboardRoute = DashboardRouteImport.update({ const DashboardRoute = DashboardRouteImport.update({
id: '/dashboard', id: '/dashboard',
path: '/dashboard', path: '/dashboard',
getParentRoute: () => rootRouteImport, getParentRoute: () => rootRouteImport,
} as any) } as any)
const IndexRoute = IndexRouteImport.update({ const IndexRoute = IndexRouteImport.update({
id: '/', id: '/',
path: '/', path: '/',
getParentRoute: () => rootRouteImport, getParentRoute: () => rootRouteImport,
} as any) } as any)
export interface FileRoutesByFullPath { export interface FileRoutesByFullPath {
'/': typeof IndexRoute '/': typeof IndexRoute
'/dashboard': typeof DashboardRoute '/dashboard': typeof DashboardRoute
'/login': typeof LoginRoute '/login': typeof LoginRoute
'/profile': typeof ProfileRoute '/profile': typeof ProfileRoute
'/register': typeof RegisterRoute '/register': typeof RegisterRoute
} }
export interface FileRoutesByTo { export interface FileRoutesByTo {
'/': typeof IndexRoute '/': typeof IndexRoute
'/dashboard': typeof DashboardRoute '/dashboard': typeof DashboardRoute
'/login': typeof LoginRoute '/login': typeof LoginRoute
'/profile': typeof ProfileRoute '/profile': typeof ProfileRoute
'/register': typeof RegisterRoute '/register': typeof RegisterRoute
} }
export interface FileRoutesById { export interface FileRoutesById {
__root__: typeof rootRouteImport __root__: typeof rootRouteImport
'/': typeof IndexRoute '/': typeof IndexRoute
'/dashboard': typeof DashboardRoute '/dashboard': typeof DashboardRoute
'/login': typeof LoginRoute '/login': typeof LoginRoute
'/profile': typeof ProfileRoute '/profile': typeof ProfileRoute
'/register': typeof RegisterRoute '/register': typeof RegisterRoute
} }
export interface FileRouteTypes { export interface FileRouteTypes {
fileRoutesByFullPath: FileRoutesByFullPath fileRoutesByFullPath: FileRoutesByFullPath
fullPaths: '/' | '/dashboard' | '/login' | '/profile' | '/register' fullPaths: '/' | '/dashboard' | '/login' | '/profile' | '/register'
fileRoutesByTo: FileRoutesByTo fileRoutesByTo: FileRoutesByTo
to: '/' | '/dashboard' | '/login' | '/profile' | '/register' to: '/' | '/dashboard' | '/login' | '/profile' | '/register'
id: '__root__' | '/' | '/dashboard' | '/login' | '/profile' | '/register' id: '__root__' | '/' | '/dashboard' | '/login' | '/profile' | '/register'
fileRoutesById: FileRoutesById fileRoutesById: FileRoutesById
} }
export interface RootRouteChildren { export interface RootRouteChildren {
IndexRoute: typeof IndexRoute IndexRoute: typeof IndexRoute
DashboardRoute: typeof DashboardRoute DashboardRoute: typeof DashboardRoute
LoginRoute: typeof LoginRoute LoginRoute: typeof LoginRoute
ProfileRoute: typeof ProfileRoute ProfileRoute: typeof ProfileRoute
RegisterRoute: typeof RegisterRoute RegisterRoute: typeof RegisterRoute
} }
declare module '@tanstack/react-router' { declare module '@tanstack/react-router' {
interface FileRoutesByPath { interface FileRoutesByPath {
'/register': { '/register': {
id: '/register' id: '/register'
path: '/register' path: '/register'
fullPath: '/register' fullPath: '/register'
preLoaderRoute: typeof RegisterRouteImport preLoaderRoute: typeof RegisterRouteImport
parentRoute: typeof rootRouteImport parentRoute: typeof rootRouteImport
} }
'/profile': { '/profile': {
id: '/profile' id: '/profile'
path: '/profile' path: '/profile'
fullPath: '/profile' fullPath: '/profile'
preLoaderRoute: typeof ProfileRouteImport preLoaderRoute: typeof ProfileRouteImport
parentRoute: typeof rootRouteImport parentRoute: typeof rootRouteImport
} }
'/login': { '/login': {
id: '/login' id: '/login'
path: '/login' path: '/login'
fullPath: '/login' fullPath: '/login'
preLoaderRoute: typeof LoginRouteImport preLoaderRoute: typeof LoginRouteImport
parentRoute: typeof rootRouteImport parentRoute: typeof rootRouteImport
} }
'/dashboard': { '/dashboard': {
id: '/dashboard' id: '/dashboard'
path: '/dashboard' path: '/dashboard'
fullPath: '/dashboard' fullPath: '/dashboard'
preLoaderRoute: typeof DashboardRouteImport preLoaderRoute: typeof DashboardRouteImport
parentRoute: typeof rootRouteImport parentRoute: typeof rootRouteImport
} }
'/': { '/': {
id: '/' id: '/'
path: '/' path: '/'
fullPath: '/' fullPath: '/'
preLoaderRoute: typeof IndexRouteImport preLoaderRoute: typeof IndexRouteImport
parentRoute: typeof rootRouteImport parentRoute: typeof rootRouteImport
} }
} }
} }
const rootRouteChildren: RootRouteChildren = { const rootRouteChildren: RootRouteChildren = {
IndexRoute: IndexRoute, IndexRoute: IndexRoute,
DashboardRoute: DashboardRoute, DashboardRoute: DashboardRoute,
LoginRoute: LoginRoute, LoginRoute: LoginRoute,
ProfileRoute: ProfileRoute, ProfileRoute: ProfileRoute,
RegisterRoute: RegisterRoute, RegisterRoute: RegisterRoute,
} }
export const routeTree = rootRouteImport export const routeTree = rootRouteImport
._addFileChildren(rootRouteChildren) ._addFileChildren(rootRouteChildren)
._addFileTypes<FileRouteTypes>() ._addFileTypes<FileRouteTypes>()
import type { getRouter } from './router.tsx' import type { getRouter } from './router.tsx'
import type { startInstance } from './start.ts' import type { startInstance } from './start.ts'
declare module '@tanstack/react-start' { declare module '@tanstack/react-start' {
interface Register { interface Register {
ssr: true ssr: true
router: Awaited<ReturnType<typeof getRouter>> router: Awaited<ReturnType<typeof getRouter>>
config: Awaited<ReturnType<typeof startInstance.getOptions>> config: Awaited<ReturnType<typeof startInstance.getOptions>>
} }
} }

View File

@ -1213,7 +1213,7 @@ function CommodityView() {
<ViewHeader <ViewHeader
live={rows.length > 0} live={rows.length > 0}
title="کامودیتی" title="کامودیتی"
subtitle="قیمت لحظه‌ای جهانی از Yahoo Finance" subtitle="قیمت لحظه‌ای بازارهای جهانی"
badge="زنده" badge="زنده"
lastUpdate={lastUpdate} lastUpdate={lastUpdate}
/> />
@ -2460,7 +2460,7 @@ function CryptoView() {
<ViewHeader <ViewHeader
live={coins.length > 0} live={coins.length > 0}
title="کریپتو" title="کریپتو"
subtitle="بازار ارزهای دیجیتال — زنده از CoinGecko" subtitle="بازار ارزهای دیجیتال — نرخ لحظه‌ای"
badge="هر ۶۰ ثانیه" badge="هر ۶۰ ثانیه"
lastUpdate={data?.fetched_at ? new Date(data.fetched_at).toLocaleTimeString("fa-IR") : ""} lastUpdate={data?.fetched_at ? new Date(data.fetched_at).toLocaleTimeString("fa-IR") : ""}
/> />
@ -2767,8 +2767,7 @@ function WorldEconomyView() {
<ViewHeader <ViewHeader
live={rows.length > 0 || bonds.length > 0} live={rows.length > 0 || bonds.length > 0}
title="اقتصاد جهانی و اوراق قرضه" title="اقتصاد جهانی و اوراق قرضه"
subtitle={subTab === "macro" ? "شاخص‌های کلانِ اقتصادهای بزرگ دنیا" : "بازار اوراق قرضه دولتی و خزانه‌داری — منبع TradingView"} subtitle={subTab === "macro" ? "شاخص‌های کلانِ اقتصادهای بزرگ دنیا" : "بازار اوراق قرضه دولتی و خزانه‌داری"}
badge={subTab === "macro" ? "Trading Economics" : "TradingView Bonds"}
lastUpdate={lastUpdate} lastUpdate={lastUpdate}
/> />
<div className="flex items-center gap-1 bg-secondary/70 border border-border rounded-lg p-1 w-fit self-start sm:self-auto"> <div className="flex items-center gap-1 bg-secondary/70 border border-border rounded-lg p-1 w-fit self-start sm:self-auto">

View File

@ -399,7 +399,7 @@ function Landing() {
<DomainRow <DomainRow
icon={<Zap className="w-5 h-5" />} icon={<Zap className="w-5 h-5" />}
title="زنده" title="زنده"
desc="قیمت لحظه‌ای نفت، طلا، فلزات و کشاورزی از Yahoo Finance روی وب‌سوکت." desc="قیمت لحظه‌ای نفت، طلا، فلزات و محصولات اساسی."
meta="۲۰ کالا" meta="۲۰ کالا"
/> />
</div> </div>
@ -455,7 +455,7 @@ function Landing() {
<footer className="border-t border-border"> <footer className="border-t border-border">
<div className="mx-auto max-w-6xl px-5 py-8 flex flex-wrap items-center justify-between gap-3 text-sm text-muted-foreground"> <div className="mx-auto max-w-6xl px-5 py-8 flex flex-wrap items-center justify-between gap-3 text-sm text-muted-foreground">
<span>سامانه جامع آمار و اطلاعات دیدوان</span> <span>سامانه جامع آمار و اطلاعات دیدوان</span>
<span className="font-mono text-[11px]">داده‌ها: Yahoo Finance · Trading Economics</span>
</div> </div>
</footer> </footer>
</div> </div>