From 2ec7a2d6c01fa8329c59718ae1aaf7e595b625f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D1=82=D0=BE=D0=BD=20=D0=A2=D1=80=D0=BE=D1=88?= =?UTF-8?q?=D0=B8=D0=BD?= Date: Sat, 12 Sep 2026 21:54:06 +0300 Subject: [PATCH] ui: show FID, layout and decoded FCI in the file manager detail pane - selecting an EF now renders an info block between the File: title and the contents: FID, file type, size, record length/count (nulls skipped) followed by the decoded FCI via the existing profilerFciPreviewItems() decoder (no raw hex), matching the snapshot detail view - pysimFsInfoHtml() is pure and reused by pysimFsClickFile(); the [LF] shorthand stays in the title; custom files get the same metadata from the temporary select probe - tests: pysimFsInfoHtml in profiler.test.js (full response, missing fci_hex, skipped nulls) and a structural check for #pysim-fs-info; help EN/RU and READMEs updated; SW cache v119 -> v120. --- README.md | 1 + README_RUS.md | 1 + frontend/help-ru.html | 2 +- frontend/help.html | 2 +- frontend/index.html | 20 ++++++++++++++++++++ frontend/sw.js | 2 +- frontend/tests/html.test.js | 9 +++++++++ frontend/tests/profiler.test.js | 29 ++++++++++++++++++++++++++++- 8 files changed, 62 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index eecc032..9ccbe69 100644 --- a/README.md +++ b/README.md @@ -490,6 +490,7 @@ Browse the UICC filesystem in a tree view. Files are shown with names, FIDs, and - **Read** — reads the selected file (auto-detects transparent vs record files) - **Edit** — switch to edit mode, modify hex data, click **Save** to write back - **Raw / Decoded** — toggle between hex dump and pysim-decoded JSON view +- Selecting a file shows its FID, file type, size / record layout and the decoded FCI above the contents - Missing files are shown in red (✗); a present but empty DF shows `(empty)` - **Probe all files** — walks the whole tree (incl. custom files), marks every entry present/absent with *N / total* progress, stoppable, and ends with a summary; browsing itself stays lazy diff --git a/README_RUS.md b/README_RUS.md index 45acbf4..91a4bcd 100644 --- a/README_RUS.md +++ b/README_RUS.md @@ -464,6 +464,7 @@ Delivery PoR (SPI2 `01`) проще — карта возвращает PoR на - **Read** — чтение файла (автоопределение transparent/record) - **Edit** — режим редактирования, измените hex-данные и нажмите **Save** для записи - **Raw / Decoded** — переключение между hex-дампом и декодированным JSON +- При выборе файла над содержимым показываются FID, тип файла, размер / структура записей и декодированный FCI - Отсутствующие файлы показаны красным (✗); существующий пустой DF — `(пусто)` - **Проверить все файлы** — обход всего дерева (включая пользовательские) с пометкой «есть/нет», прогрессом *N / всего*, возможностью остановки и сводкой в конце; сам просмотр остаётся ленивым diff --git a/frontend/help-ru.html b/frontend/help-ru.html index e3af178..45cf686 100644 --- a/frontend/help-ru.html +++ b/frontend/help-ru.html @@ -317,7 +317,7 @@

Подключение к локальному pysim-otaman-server для работы с картой: введите URL сервера (по умолчанию http://127.0.0.1:8080) и нажмите Подключиться. Область статуса показывает состояние ридера/карты, а Подключить карту (пере)инициализирует карту после вставки. Подвкладки: Файловый менеджер, Командная строка pySim и Отправка APDU. «Профайлер» и «Симулятор телефона» — отдельные вкладки верхнего уровня.

4.1 Файловый менеджер

-

Дерево файловой системы отображается слева; выбор файла открывает панель деталей справа. Элементы сгруппированы: DF выше EF, сортировка по FID или символьному имени (пиллы над деревом; выбор сохраняется в localStorage).

+

Дерево файловой системы отображается слева; выбор файла открывает панель деталей справа. Элементы сгруппированы: DF выше EF, сортировка по FID или символьному имени (пиллы над деревом; выбор сохраняется в localStorage). При выборе файла над содержимым также показываются FID, тип файла, размер / структура записей и декодированный FCI.