Release 202507031107
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
---
|
||||
import LoadingIndicator from 'astro-loading-indicator/component'
|
||||
import { Schema } from 'astro-seo-schema'
|
||||
import { ONION_ADDRESS } from 'astro:env/server'
|
||||
import { ClientRouter } from 'astro:transitions'
|
||||
import { pwaAssetsHead } from 'virtual:pwa-assets/head'
|
||||
import { pwaInfo } from 'virtual:pwa-info'
|
||||
@@ -78,30 +79,32 @@ const fullTitle = `${pageTitle} | KYCnot.me ${modeName}`
|
||||
const ogImageUrl = makeOgImageUrl(ogImage, Astro.url)
|
||||
---
|
||||
|
||||
<!-- Primary Meta Tags -->
|
||||
{/* Primary Meta Tags */}
|
||||
<meta name="generator" content={Astro.generator} />
|
||||
<meta name="description" content={description} />
|
||||
<title>{fullTitle}</title>
|
||||
<!-- {canonicalUrl && <link rel="canonical" href={canonicalUrl} />} -->
|
||||
{/* canonicalUrl && <link rel="canonical" href={canonicalUrl} /> */}
|
||||
<meta http-equiv="onion-location" content={ONION_ADDRESS} />
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
{/* Open Graph / Facebook */}
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content={Astro.url} />
|
||||
<meta property="og:title" content={fullTitle} />
|
||||
<meta property="og:description" content={description} />
|
||||
{!!ogImageUrl && <meta property="og:image" content={ogImageUrl} />}
|
||||
|
||||
<!-- Twitter -->
|
||||
{/* Twitter */}
|
||||
<meta property="twitter:card" content="summary_large_image" />
|
||||
<meta property="twitter:url" content={Astro.url} />
|
||||
<meta property="twitter:title" content={fullTitle} />
|
||||
<meta property="twitter:description" content={description} />
|
||||
{!!ogImageUrl && <meta property="twitter:image" content={ogImageUrl} />}
|
||||
|
||||
<!-- Other -->
|
||||
{/* Other */}
|
||||
<link rel="sitemap" href="/sitemap-index.xml" />
|
||||
<link rel="sitemap" href="/sitemaps/search.xml" />
|
||||
|
||||
<!-- PWA -->
|
||||
{/* PWA */}
|
||||
{pwaAssetsHead.themeColor && <meta name="theme-color" content={pwaAssetsHead.themeColor.content} />}
|
||||
{pwaAssetsHead.links.filter((link) => link.rel !== 'icon').map((link) => <link {...link} />)}
|
||||
{pwaInfo && <Fragment set:html={pwaInfo.webManifest.linkTag} />}
|
||||
@@ -115,10 +118,10 @@ const ogImageUrl = makeOgImageUrl(ogImage, Astro.url)
|
||||
<TailwindJsPluggin />
|
||||
{htmx && <HtmxScript />}
|
||||
|
||||
<!-- JSON-LD Schemas -->
|
||||
{/* JSON-LD Schemas */}
|
||||
{schemas?.map((item) => <Schema item={item} />)}
|
||||
|
||||
<!-- Breadcrumbs -->
|
||||
{/* Breadcrumbs */}
|
||||
{
|
||||
breadcrumbLists.map((breadcrumbList) => (
|
||||
<Schema
|
||||
|
||||
@@ -10,7 +10,8 @@ import { transformCase } from '../lib/strings'
|
||||
|
||||
import ServiceFiltersPill from './ServiceFiltersPill.astro'
|
||||
|
||||
import type { AttributeOption, ServicesFiltersObject, ServicesFiltersOptions } from '../pages/index.astro'
|
||||
import type { ServicesFiltersOptions } from '../lib/searchFiltersOptions'
|
||||
import type { AttributeOption, ServicesFiltersObject } from '../pages/index.astro'
|
||||
import type { Prisma } from '@prisma/client'
|
||||
import type { HTMLAttributes } from 'astro/types'
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
---
|
||||
import { Icon } from 'astro-icon/components'
|
||||
|
||||
import { kycLevels } from '../constants/kycLevels'
|
||||
import { cn } from '../lib/cn'
|
||||
import { makeOverallScoreInfo } from '../lib/overallScore'
|
||||
import { type ServicesFiltersObject, type ServicesFiltersOptions } from '../pages/index.astro'
|
||||
import { type ServicesFiltersObject } from '../pages/index.astro'
|
||||
|
||||
import Button from './Button.astro'
|
||||
import PillsRadioGroup from './PillsRadioGroup.astro'
|
||||
import Tooltip from './Tooltip.astro'
|
||||
|
||||
import type { ServicesFiltersOptions } from '../lib/searchFiltersOptions'
|
||||
import type { HTMLAttributes } from 'astro/types'
|
||||
|
||||
export type Props = HTMLAttributes<'form'> & {
|
||||
@@ -111,7 +111,7 @@ const {
|
||||
<legend class="font-title mb-3 leading-none text-green-500">Type</legend>
|
||||
<ul class="[&:not(:has(~_.peer:checked))]:[&>li:not([data-show-always])]:hidden">
|
||||
{
|
||||
options.categories?.map((category) => (
|
||||
options.categories.map((category) => (
|
||||
<li data-show-always={category.showAlways ? '' : undefined}>
|
||||
<label class="flex cursor-pointer items-center gap-2 text-sm text-white">
|
||||
<input
|
||||
@@ -252,7 +252,7 @@ const {
|
||||
</div>
|
||||
<div class="text-day-400 mt-1 flex justify-between px-1 text-xs">
|
||||
{
|
||||
kycLevels.map((level) => (
|
||||
options.kycLevels.map((level) => (
|
||||
<span class="flex w-0 items-center justify-center text-center whitespace-nowrap">
|
||||
{level.value}
|
||||
<Icon name={level.icon} class="ms-1 size-3 shrink-0" />
|
||||
@@ -334,7 +334,7 @@ const {
|
||||
<li data-show-always={attribute.showAlways ? '' : undefined} class="cursor-pointer">
|
||||
<fieldset class="relative flex max-w-full min-w-0 cursor-pointer items-center text-sm text-white">
|
||||
<legend class="sr-only">
|
||||
{attribute.title} ({attribute._count?.services})
|
||||
{attribute.title} ({attribute._count.services})
|
||||
</legend>
|
||||
<input
|
||||
type="radio"
|
||||
@@ -417,7 +417,7 @@ const {
|
||||
<span class="flex-1 overflow-hidden text-ellipsis whitespace-nowrap">
|
||||
{attribute.title}
|
||||
</span>
|
||||
<span class="text-day-500 ml-2 font-normal">{attribute._count?.services}</span>
|
||||
<span class="text-day-500 ml-2 font-normal">{attribute._count.services}</span>
|
||||
</label>
|
||||
<label
|
||||
for={emptyId}
|
||||
@@ -432,7 +432,7 @@ const {
|
||||
<span class="flex-1 overflow-hidden text-ellipsis whitespace-nowrap">
|
||||
{attribute.title}
|
||||
</span>
|
||||
<span class="text-day-500 ml-2 font-normal">{attribute._count?.services}</span>
|
||||
<span class="text-day-500 ml-2 font-normal">{attribute._count.services}</span>
|
||||
</label>
|
||||
</fieldset>
|
||||
</li>
|
||||
|
||||
@@ -15,7 +15,8 @@ import Button from './Button.astro'
|
||||
import ServiceCard from './ServiceCard.astro'
|
||||
import ServiceFiltersPillsRow from './ServiceFiltersPillsRow.astro'
|
||||
|
||||
import type { AttributeOption, ServicesFiltersObject, ServicesFiltersOptions } from '../pages/index.astro'
|
||||
import type { ServicesFiltersOptions } from '../lib/searchFiltersOptions'
|
||||
import type { AttributeOption, ServicesFiltersObject } from '../pages/index.astro'
|
||||
import type { Prisma } from '@prisma/client'
|
||||
import type { ComponentProps, HTMLAttributes } from 'astro/types'
|
||||
|
||||
@@ -82,6 +83,7 @@ const urlIfIncludingCommunity = urlWithParams(Astro.url, {
|
||||
]),
|
||||
})
|
||||
|
||||
// NOTE: If you make changes to this function, remember to update the sitemap: src/pages/sitemaps/search.xml.ts
|
||||
const searchTitle = (() => {
|
||||
if (filters.q) {
|
||||
return `Search results for “${filters.q}”`
|
||||
|
||||
Reference in New Issue
Block a user