@marcos_feitoza/personal-finance-frontend-core-ui 1.0.2 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ # [1.1.0](https://github.com/MarcosOps/personal-finance-frontend-core-ui/compare/v1.0.2...v1.1.0) (2025-11-28)
2
+
3
+
4
+ ### Features
5
+
6
+ * add confirmation dialog for deletion operations ([029b159](https://github.com/MarcosOps/personal-finance-frontend-core-ui/commit/029b159d370e2c68f71afeefb320dea7182b58bb))
7
+ * update readme.me ([7b1ac44](https://github.com/MarcosOps/personal-finance-frontend-core-ui/commit/7b1ac445a2b3183283779f710e46a0fed7238657))
8
+
1
9
  ## [1.0.2](https://github.com/MarcosOps/personal-finance-frontend-core-ui/compare/v1.0.1...v1.0.2) (2025-11-26)
2
10
 
3
11
 
package/README.md CHANGED
@@ -1,16 +1,35 @@
1
- # personal_finance_frontend_core_ui
1
+ # Core UI - Frontend (Flutter)
2
2
 
3
- A new Flutter project.
3
+ Este pacote contém os widgets e componentes de interface do usuário (UI) reutilizáveis para a aplicação Personal Finance Frontend.
4
4
 
5
- ## Getting Started
5
+ ## Propósito
6
6
 
7
- This project is a starting point for a Flutter application.
7
+ O objetivo deste pacote é centralizar e padronizar a aparência e o comportamento dos elementos de UI em todo o aplicativo. Ele fornece uma biblioteca de componentes que podem ser utilizados por outros pacotes de feature, garantindo consistência visual e reduzindo a duplicação de código.
8
8
 
9
- A few resources to get you started if this is your first Flutter project:
9
+ ## Conteúdo Principal
10
10
 
11
- - [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab)
12
- - [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook)
11
+ - **`widgets/`**: Contém diversos widgets reutilizáveis, como `AppFormCard`, `AppDropdown`, `TradeForm`, `DividendLogForm`, `CryptoTradeForm`, `RrspContributionForm`, etc.
12
+ - **`utils/app_dialogs.dart`**: Funções utilitárias para exibir diálogos padronizados (ex: confirmação de exclusão).
13
+ - **`utils/app_logger.dart`**: Implementação de um logger condicional que exibe logs apenas em modo de depuração.
14
+ - **`utils/currency_input_formatter.dart`**: Formatter para campos de entrada de moeda.
15
+ - **`utils/theme_notifier.dart`**: Provedor para gerenciar o tema da aplicação (claro/escuro).
13
16
 
14
- For help getting started with Flutter development, view the
15
- [online documentation](https://docs.flutter.dev/), which offers tutorials,
16
- samples, guidance on mobile development, and a full API reference.
17
+ ---
18
+
19
+ ## Como Usar (Instalação como Dependência)
20
+
21
+ Este pacote é uma dependência local para a aplicação principal (`personal-finance-frontend`) e outras features packages do frontend.
22
+
23
+ No `pubspec.yaml` do pacote consumidor, adicione a seguinte linha em `dependencies`:
24
+
25
+ ```yaml
26
+ personal_finance_frontend_core_ui:
27
+ path: ../personal-finance-frontend-core-ui
28
+ ```
29
+
30
+ ## Features
31
+
32
+ - **Widgets Reutilizáveis**: Componentes de UI com design e comportamento padronizados.
33
+ - **Diálogos Centralizados**: Funções para exibir diálogos consistentes em todo o aplicativo.
34
+ - **Logging Condicional**: Um logger que ajuda a manter o console limpo em produção, exibindo mensagens apenas em desenvolvimento.
35
+ - **Ferramentas de Formatação**: Utilitários para formatar entradas de usuário (ex: valores monetários).
@@ -0,0 +1,30 @@
1
+ import 'package:flutter/material.dart';
2
+
3
+ class AppDialogs {
4
+ /// Displays a confirmation dialog for deletion operations.
5
+ ///
6
+ /// Returns `true` if the user confirms deletion, `false` otherwise.
7
+ static Future<bool?> showDeleteConfirmationDialog(
8
+ BuildContext context, String itemName) async {
9
+ return await showDialog<bool>(
10
+ context: context,
11
+ builder: (BuildContext context) {
12
+ return AlertDialog(
13
+ title: const Text('Confirmar Exclusão'),
14
+ content: Text(
15
+ 'Você tem certeza que deseja excluir "$itemName"? Esta ação não pode ser desfeita.'),
16
+ actions: <Widget>[
17
+ TextButton(
18
+ onPressed: () => Navigator.of(context).pop(false),
19
+ child: const Text('Cancelar'),
20
+ ),
21
+ TextButton(
22
+ onPressed: () => Navigator.of(context).pop(true),
23
+ child: const Text('Excluir'),
24
+ ),
25
+ ],
26
+ );
27
+ },
28
+ );
29
+ }
30
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@marcos_feitoza/personal-finance-frontend-core-ui",
3
- "version": "1.0.2",
3
+ "version": "1.1.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },