mirror of
https://github.com/ThatGuySam/doesitarm.git
synced 2026-05-18 06:44:46 -07:00
Merge branch 'develop'
This commit is contained in:
commit
b5e6ab396a
3 changed files with 108 additions and 20 deletions
|
|
@ -143,24 +143,8 @@ export default {
|
||||||
url: '/',
|
url: '/',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Developer Tools',
|
label: 'Categories',
|
||||||
url: '/kind/developer-tools',
|
url: '/categories',
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'Music Tools',
|
|
||||||
url: '/kind/music-and-audio-tools',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'Video and Motion Tools',
|
|
||||||
url: '/kind/video-and-motion-tools',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'Photo Tools',
|
|
||||||
url: '/kind/photo-and-graphic-tools',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'Entertainment',
|
|
||||||
url: '/kind/entertainment-and-media-apps',
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Games',
|
label: 'Games',
|
||||||
|
|
|
||||||
|
|
@ -10,12 +10,10 @@ const listsOptions = [
|
||||||
{
|
{
|
||||||
buildMethod: buildAppList,
|
buildMethod: buildAppList,
|
||||||
path: '/static/app-list.json',
|
path: '/static/app-list.json',
|
||||||
route: app => '/app/' + app.slug
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
buildMethod: buildGamesList,
|
buildMethod: buildGamesList,
|
||||||
path: '/static/game-list.json',
|
path: '/static/game-list.json',
|
||||||
route: app => '/game/' + app.slug
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
|
||||||
106
pages/categories.vue
Normal file
106
pages/categories.vue
Normal file
|
|
@ -0,0 +1,106 @@
|
||||||
|
<template>
|
||||||
|
<section class="container py-24">
|
||||||
|
<div class="flex flex-col">
|
||||||
|
<h1 class="title text-2xl leading-tight mb-6">
|
||||||
|
Categories
|
||||||
|
</h1>
|
||||||
|
|
||||||
|
<div class="line-separator border-white border-t-2 mb-12" />
|
||||||
|
|
||||||
|
<ul class="categories-list space-y-3">
|
||||||
|
<li
|
||||||
|
v-for="(section, i) in sectionList"
|
||||||
|
:key="`${section.slug}-${i}`"
|
||||||
|
:ref="`${section.slug}-row`"
|
||||||
|
class="relative"
|
||||||
|
>
|
||||||
|
<!-- section.endpoint: {{ section.endpoint }} -->
|
||||||
|
<a
|
||||||
|
:href="`/kind/${section.slug}`"
|
||||||
|
class="flex justify-start items-center inset-x-0 text-3xl md:text-4xl hover:bg-darkest border-2 border-white border-opacity-0 hover:border-opacity-50 focus:outline-none focus:bg-gray-50 duration-300 ease-in-out rounded-lg space-x-3 -mx-5 px-5 md:pr-64 py-3"
|
||||||
|
style="transition-property: border;"
|
||||||
|
>
|
||||||
|
<div class="font-hairline">
|
||||||
|
<div>{{ section.label }}</div>
|
||||||
|
<div class="text-xs opacity-75 mb-3">{{ section.appNames.slice(0, 25).join(', ') }}, etc...</div>
|
||||||
|
</div>
|
||||||
|
<div>➔</div>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import Search from '~/components/search.vue'
|
||||||
|
import LinkButton from '~/components/link-button.vue'
|
||||||
|
|
||||||
|
import { byTimeThenNull } from '~/helpers/sort-list.js'
|
||||||
|
|
||||||
|
// import appList from '~/static/app-list.json'
|
||||||
|
// import gamelist from '~/static/game-list.json'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
async asyncData () {
|
||||||
|
|
||||||
|
const { default: appList } = await import('~/static/app-list.json')
|
||||||
|
const { default: gamelist } = await import('~/static/game-list.json')
|
||||||
|
|
||||||
|
const allList = [
|
||||||
|
...appList.sort(byTimeThenNull),
|
||||||
|
...gamelist,
|
||||||
|
]
|
||||||
|
|
||||||
|
const sectionList = {}
|
||||||
|
|
||||||
|
allList.forEach( app => {
|
||||||
|
// Find and store all sections
|
||||||
|
|
||||||
|
// console.log('app.section.slug', app.section.slug)
|
||||||
|
|
||||||
|
if (sectionList.hasOwnProperty(app.section.slug)) {
|
||||||
|
sectionList[app.section.slug].appNames.push(app.name)
|
||||||
|
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
sectionList[app.section.slug] = {
|
||||||
|
...app.section,
|
||||||
|
appNames: [ app.name ]
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
return {
|
||||||
|
sectionList
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
Search,
|
||||||
|
LinkButton
|
||||||
|
},
|
||||||
|
data: function () {
|
||||||
|
return {}
|
||||||
|
},
|
||||||
|
// computed: {
|
||||||
|
// sectionList () {
|
||||||
|
// return sectionList
|
||||||
|
// }
|
||||||
|
// },
|
||||||
|
head() {
|
||||||
|
return {
|
||||||
|
title: `Categories of App Support for Apple Silicon - Does It ARM`,
|
||||||
|
// meta: [
|
||||||
|
// // hid is used as unique identifier. Do not use `vmid` for it as it will not work
|
||||||
|
// {
|
||||||
|
// hid: 'description',
|
||||||
|
// name: 'description',
|
||||||
|
// content: 'My custom description'
|
||||||
|
// }
|
||||||
|
// ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
Loading…
Add table
Add a link
Reference in a new issue