Mercurial > libervia-web
comparison libervia/web/pages/lists/_browser/__init__.py @ 1597:c1c1d68d063e
pages (lists): uses std lib `json` and don't use anymore `DOMNODE`:
those tricks are not needed anymore with recent versions of Brython.
author | Goffi <goffi@goffi.org> |
---|---|
date | Sun, 11 Feb 2024 21:32:53 +0100 |
parents | eb00d593801d |
children |
comparison
equal
deleted
inserted
replaced
1596:52098b5bab8d | 1597:c1c1d68d063e |
---|---|
1 from browser import DOMNode, document, aio | 1 import json |
2 from javascript import JSON | 2 |
3 from bridge import AsyncBridge as Bridge, BridgeException | 3 from bridge import AsyncBridge as Bridge, BridgeException |
4 from browser import document, aio | |
4 import dialog | 5 import dialog |
5 | 6 |
6 bridge = Bridge() | 7 bridge = Bridge() |
7 | 8 |
8 | 9 |
9 async def on_delete(evt): | 10 async def on_delete(evt): |
10 evt.stopPropagation() | 11 evt.stopPropagation() |
11 evt.preventDefault() | 12 evt.preventDefault() |
12 target = evt.currentTarget | 13 target = evt.currentTarget |
13 item_elt = DOMNode(target.closest('.item')) | 14 item_elt = target.closest('.item') |
14 item_elt.classList.add("selected_for_deletion") | 15 item_elt.classList.add("selected_for_deletion") |
15 item = JSON.parse(item_elt.dataset.item) | 16 item = json.loads(item_elt.dataset.item) |
17 | |
16 confirmed = await dialog.Confirm( | 18 confirmed = await dialog.Confirm( |
17 f"List {item['name']!r} will be deleted, are you sure?", | 19 f"List {item['name']!r} will be deleted, are you sure?", |
18 ok_label="delete", | 20 ok_label="delete", |
19 ).ashow() | 21 ).ashow() |
20 | 22 |