add API routes, admin UI, and SPA bootstrap
views_api wires the full task lifecycle: create / update / delete / list (per-wallet, public, admin-all) and the completion flow (claim / start / complete via POST, unclaim via DELETE, plus a "mine" lookup for the current user's claim on a task or specific occurrence). Auth model: tasks are owned by an LNbits wallet but signed with the wallet owner's account.pubkey — _wallet_pubkey resolves that pubkey at create time and refuses to create tasks for accounts that haven't generated a keypair yet, so we never publish a task we can't sign. Completions optimistically insert with a local hash, publish to Nostr, then re-insert under the actual event id so a later delete can find it. Static SPA: Quasar-UMD index.vue / index.js mirroring the events extension layout — wallet picker, task table, create/edit dialog with optional daily/weekly recurrence, plus an admin-only public_listing toggle. /tasks/:id and display.vue intentionally left out until the public task page lands. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
24acbe6674
commit
48a63c0338
5 changed files with 631 additions and 12 deletions
|
|
@ -4,11 +4,5 @@
|
|||
"name": "PageTasks",
|
||||
"template": "/tasks/static/js/index.vue",
|
||||
"component": "/tasks/static/js/index.js"
|
||||
},
|
||||
{
|
||||
"path": "/tasks/:id",
|
||||
"name": "PageTaskDisplay",
|
||||
"template": "/tasks/static/js/display.vue",
|
||||
"component": "/tasks/static/js/display.js"
|
||||
}
|
||||
]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue