You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
/*
|
|
|
|
* app.ts
|
|
|
|
* Copyright (C) 2024 veypi <i@veypi.com>
|
|
|
|
* 2024-10-23 15:35
|
|
|
|
* Distributed under terms of the GPL license.
|
|
|
|
*/
|
|
|
|
|
|
|
|
import { v, proxy, vfor } from "../v2dom";
|
|
|
|
import logic from '../logic'
|
|
|
|
import api from "../api";
|
|
|
|
import * as typs from "../typs"
|
|
|
|
|
|
|
|
|
|
|
|
export default () => {
|
|
|
|
let apps: typs.App[] = proxy.Watch([])
|
|
|
|
api.app.List({}).then(e => {
|
|
|
|
apps.push(...e)
|
|
|
|
})
|
|
|
|
return v({
|
|
|
|
class: 'voa-apps',
|
|
|
|
children: [
|
|
|
|
v('voa-apps-header', [v('voa-apps-title', '我的应用')]),
|
|
|
|
v('voa-apps-body', [
|
|
|
|
vfor(apps,
|
|
|
|
(data, idx) => v('voa-apps-box', [v('span', () => idx + ': ' + data.name)])),
|
|
|
|
|
|
|
|
// [logic.myapps,
|
|
|
|
// (data) => v('voa-app-box', () => data.name)],
|
|
|
|
v({
|
|
|
|
typ: 'div', children: ['add'], vbind: [logic.myapps[0], 'name'],
|
|
|
|
onclick: () => {
|
|
|
|
// let tmp = apps[1]
|
|
|
|
// apps[1] = apps[0]
|
|
|
|
// apps[0] = tmp
|
|
|
|
// apps.splice(2, 1)
|
|
|
|
apps.push({ name: new Date().toLocaleTimeString() } as any)
|
|
|
|
}
|
|
|
|
})
|
|
|
|
])
|
|
|
|
]
|
|
|
|
})
|
|
|
|
}
|