Refine download controls and simplify project documentation
Build and publish website container / build (push) Successful in 6m48s
Build and publish website container / build (push) Successful in 6m48s
This commit is contained in:
1 parent
421c2a9fcc
commit
4861439581
8 files changed
+24
-360
No files matched your search
@@ -50,12 +50,12 @@ async function copyPassword(password: string) {
|
||||
@keydown.esc.stop.prevent="close"
|
||||
>
|
||||
<summary
|
||||
class="button full-width download-source-trigger"
|
||||
:class="{ primary: source === 'gitea' }"
|
||||
class="button download-source-trigger"
|
||||
:class="{ primary: source === 'cloud', 'full-width': source === 'cloud' }"
|
||||
>
|
||||
<Code2 v-if="source === 'gitea'" :size="18" />
|
||||
<CloudDownload v-else :size="18" />
|
||||
{{ source === 'gitea' ? 'Gitea 下载' : '云盘下载' }}
|
||||
{{ source === 'gitea' ? 'Gitea 发布' : '云盘下载' }}
|
||||
<ChevronDown class="download-source-chevron" :size="16" />
|
||||
</summary>
|
||||
<div class="download-source-menu">
|
||||
|
||||
@@ -17,9 +17,13 @@ const meta = ref<PageMeta>({ page: 1, per_page: 9, total: 0, total_pages: 0, has
|
||||
const loading = ref(true),
|
||||
error = ref(''),
|
||||
notice = ref('')
|
||||
const platform = ref<'windows' | 'macos'>(
|
||||
const preferredPlatform = ref<'windows' | 'macos'>(
|
||||
/Mac|iPhone|iPad/i.test(navigator.userAgent) ? 'macos' : 'windows',
|
||||
)
|
||||
const hasMacOS = computed(() =>
|
||||
Boolean(safeUrl(selected.value?.giteaDmgUrl) || safeUrl(selected.value?.cloudDmgUrl)),
|
||||
)
|
||||
const platform = computed(() => (hasMacOS.value ? preferredPlatform.value : 'windows'))
|
||||
const cache = new Map<number, { downloads: Version[]; meta: PageMeta }>()
|
||||
let generation = 0
|
||||
const downloadSources = computed(() => {
|
||||
@@ -130,7 +134,7 @@ onMounted(() => load(1, true))
|
||||
<button
|
||||
:class="{ active: platform === 'windows' }"
|
||||
:aria-pressed="platform === 'windows'"
|
||||
@click="platform = 'windows'"
|
||||
@click="preferredPlatform = 'windows'"
|
||||
>
|
||||
<PlatformLogo platform="windows" decorative />
|
||||
Windows
|
||||
@@ -138,7 +142,8 @@ onMounted(() => load(1, true))
|
||||
<button
|
||||
:class="{ active: platform === 'macos' }"
|
||||
:aria-pressed="platform === 'macos'"
|
||||
@click="platform = 'macos'"
|
||||
:disabled="!hasMacOS"
|
||||
@click="preferredPlatform = 'macos'"
|
||||
>
|
||||
<PlatformLogo platform="macos" decorative />
|
||||
macOS
|
||||
@@ -167,14 +172,7 @@ onMounted(() => load(1, true))
|
||||
<div class="download-facts">
|
||||
<span>{{ formatDate(selected.releaseDate) }}</span>
|
||||
<span v-if="selected.fileSize">{{ selected.fileSize }}</span>
|
||||
<span v-if="platform === 'windows' && selected.supportOS">{{ selected.supportOS }}</span>
|
||||
<span
|
||||
v-else-if="
|
||||
platform === 'macos' && (downloadSources.gitea.length || downloadSources.cloud.length)
|
||||
"
|
||||
>
|
||||
macOS
|
||||
</span>
|
||||
<span v-if="selected.supportOS">{{ selected.supportOS }}</span>
|
||||
</div>
|
||||
<div class="download-links">
|
||||
<DownloadSource
|
||||
|
||||
@@ -680,7 +680,7 @@ svg {
|
||||
}
|
||||
.download-links {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||
grid-template-columns: max-content minmax(0, 1fr);
|
||||
gap: 12px;
|
||||
margin-block: 22px;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user