Appearance
Экспорт активов
Модальное окно экспорта
Компонент: modules/exportTransactionsPopup/components/ExportTransactionsPopup.vue
Интерфейс
- Переключатель пароля — включить/выключить шифрование
- Поле пароля — ввод пароля (при включённом шифровании)
- Подтверждение пароля — повторный ввод
- Кнопка экспорта
Процесс экспорта
mermaid
flowchart TD
A["Пользователь нажимает Экспорт"] --> B["JSON.stringify(transactions)"]
B --> C{"Пароль указан?"}
C -->|"Да"| D["createPortfolioFile(content, password)"]
D --> E["$global.$encrypt.encrypt(content, password)"]
E --> F["Обёртка в формат v3:<br/>{content: encrypted, version: 'v3'}"]
F --> G["Создание Blob"]
G --> H["file-saver: saveAs()<br/>transactions_history_YYYY_MM_DD.ppp"]
C -->|"Нет"| I["createPortfolioFile(content, null)"]
I --> J["Создание Blob из JSON"]
J --> K["file-saver: saveAs()<br/>transactions_history_YYYY_MM_DD.pp"]Формат имени файла
transactions_history_YYYY_MM_DD.pp — без пароля
transactions_history_YYYY_MM_DD.ppp — с паролемДата генерируется через moment().format('YYYY_MM_DD').
Содержимое файла
Экспортируется весь объект транзакций из Vuex store — кластер, сгруппированный по coinId. Включает все типы транзакций со всеми полями.