Fix session name label language switch + add frontend screenshot
- Store raw session name in STATE.currentSessionRawName - Re-render session-name-display in toggleLang() with current translation - Add frontend.png screenshot to README - Bump 1.22.15, SW cache v46->v47
This commit is contained in:
1 parent
af16eb1dd8
commit
ede38c985e
7 files changed
+12
-5
No files matched your search
@@ -7,6 +7,8 @@ that both captures APDU traffic and serves that PWA.
|
|||||||
|
|
||||||
**Single dependency**: PyUSB (libusb wrapper). No libosmocore, no libosmosim.
|
**Single dependency**: PyUSB (libusb wrapper). No libosmocore, no libosmosim.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
**APDU decoder** (server-side, rendered by the PWA):
|
**APDU decoder** (server-side, rendered by the PWA):
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 445 KiB |
+6
-1
@@ -421,6 +421,7 @@ const STATE = {
|
|||||||
captureActive: false,
|
captureActive: false,
|
||||||
currentSessionId: null,
|
currentSessionId: null,
|
||||||
currentSessionName: null,
|
currentSessionName: null,
|
||||||
|
currentSessionRawName: null,
|
||||||
sessionViewId: null,
|
sessionViewId: null,
|
||||||
sessionStarted: null,
|
sessionStarted: null,
|
||||||
livePoller: null,
|
livePoller: null,
|
||||||
@@ -2364,6 +2365,7 @@ async function loadSession(id) {
|
|||||||
STATE.sessionStarted = data.session.started;
|
STATE.sessionStarted = data.session.started;
|
||||||
STATE.captureActive = false;
|
STATE.captureActive = false;
|
||||||
STATE.currentSessionName = data.session.name || t('Session #') + id;
|
STATE.currentSessionName = data.session.name || t('Session #') + id;
|
||||||
|
STATE.currentSessionRawName = data.session.name || null;
|
||||||
STATE.messages = data.messages;
|
STATE.messages = data.messages;
|
||||||
STATE.mapExpanded.clear();
|
STATE.mapExpanded.clear();
|
||||||
switchTab('trace');
|
switchTab('trace');
|
||||||
@@ -2621,7 +2623,7 @@ function onFilterChange() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// ──────────────────── Versioning ────────────────────
|
// ──────────────────── Versioning ────────────────────
|
||||||
const PWA_VERSION = '1.22.14';
|
const PWA_VERSION = '1.22.15';
|
||||||
const MIN_SERVER_VERSION = '1.0.0';
|
const MIN_SERVER_VERSION = '1.0.0';
|
||||||
|
|
||||||
function parseVersion(v) {
|
function parseVersion(v) {
|
||||||
@@ -2773,6 +2775,9 @@ function toggleLang() {
|
|||||||
localStorage.setItem('lang', currentLang);
|
localStorage.setItem('lang', currentLang);
|
||||||
applyLang();
|
applyLang();
|
||||||
translatePage();
|
translatePage();
|
||||||
|
if (STATE.sessionViewId) {
|
||||||
|
el('session-name-display').textContent = t('Session: ') + (STATE.currentSessionRawName || '#' + STATE.sessionViewId);
|
||||||
|
}
|
||||||
updateStatus();
|
updateStatus();
|
||||||
updateCaptureButton();
|
updateCaptureButton();
|
||||||
renderMessages();
|
renderMessages();
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
const CACHE = 'simtrace-analyser-v46';
|
const CACHE = 'simtrace-analyser-v47';
|
||||||
|
|
||||||
const PRECACHE = [
|
const PRECACHE = [
|
||||||
'index.html',
|
'index.html',
|
||||||
|
|||||||
+1
-1
@@ -4,7 +4,7 @@ build-backend = "setuptools.backends._legacy:_Backend"
|
|||||||
|
|
||||||
[project]
|
[project]
|
||||||
name = "simtrace2-pysniff"
|
name = "simtrace2-pysniff"
|
||||||
version = "1.22.14"
|
version = "1.22.15"
|
||||||
description = "Python-based sniffing tool for SIMtrace2 hardware (SIM card communication sniffer)"
|
description = "Python-based sniffing tool for SIMtrace2 hardware (SIM card communication sniffer)"
|
||||||
readme = {file = "README.md", content-type = "text/markdown"}
|
readme = {file = "README.md", content-type = "text/markdown"}
|
||||||
license = {text = "GPL-2.0-or-later"}
|
license = {text = "GPL-2.0-or-later"}
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ from .gsmtap import GsmtapSender, GsmtapReceiver
|
|||||||
from .pcap import PcapWriter
|
from .pcap import PcapWriter
|
||||||
from .dump import FileDumper, format_message
|
from .dump import FileDumper, format_message
|
||||||
|
|
||||||
__version__ = '1.22.14'
|
__version__ = '1.22.15'
|
||||||
__all__ = [
|
__all__ = [
|
||||||
'SniffSession',
|
'SniffSession',
|
||||||
'DeviceDisconnected',
|
'DeviceDisconnected',
|
||||||
|
|||||||
@@ -224,7 +224,7 @@ class TestImportEndpoint(unittest.TestCase):
|
|||||||
class TestVersion(unittest.TestCase):
|
class TestVersion(unittest.TestCase):
|
||||||
def test_package_version(self):
|
def test_package_version(self):
|
||||||
from simtrace2_pysniff import __version__
|
from simtrace2_pysniff import __version__
|
||||||
self.assertEqual(__version__, '1.22.14')
|
self.assertEqual(__version__, '1.22.15')
|
||||||
|
|
||||||
def test_status_includes_version(self):
|
def test_status_includes_version(self):
|
||||||
import os
|
import os
|
||||||
|
|||||||
Reference in new issue
Block a user