BIN
asset_sources/other/ios_launch_image/campfire/LaunchImage.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
asset_sources/other/ios_launch_image/campfire/LaunchImage@2x.png
Normal file
After Width: | Height: | Size: 44 KiB |
BIN
asset_sources/other/ios_launch_image/campfire/LaunchImage@3x.png
Normal file
After Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 4.8 KiB After Width: | Height: | Size: 4.8 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 2.2 KiB |
After Width: | Height: | Size: 4.8 KiB |
After Width: | Height: | Size: 16 KiB |
3
ios/.gitignore
vendored
|
@ -30,3 +30,6 @@ Runner/GeneratedPluginRegistrant.*
|
||||||
!default.mode2v3
|
!default.mode2v3
|
||||||
!default.pbxuser
|
!default.pbxuser
|
||||||
!default.perspectivev3
|
!default.perspectivev3
|
||||||
|
|
||||||
|
# app specific, handled by scripts
|
||||||
|
Runner/Assets.xcassets/LaunchImage.imageset/*.png
|
||||||
|
|
|
@ -174,7 +174,7 @@ class _NewWalletRecoveryPhraseWarningViewState
|
||||||
"write it down. Keep it safe and never share it with "
|
"write it down. Keep it safe and never share it with "
|
||||||
"anyone. Your recovery phrase is the only way you can"
|
"anyone. Your recovery phrase is the only way you can"
|
||||||
" access your funds if you forget your PIN, lose your"
|
" access your funds if you forget your PIN, lose your"
|
||||||
" phone, etc.\n\nStack Wallet does not keep nor is "
|
" phone, etc.\n\n${AppConfig.appName} does not keep nor is "
|
||||||
"able to restore your recover phrase. Only you have "
|
"able to restore your recover phrase. Only you have "
|
||||||
"access to your wallet.",
|
"access to your wallet.",
|
||||||
style: isDesktop
|
style: isDesktop
|
||||||
|
|
|
@ -1155,7 +1155,7 @@ class _BuyFormState extends ConsumerState<BuyForm> {
|
||||||
),
|
),
|
||||||
if (AppConfig.isStackCoin(selectedCrypto?.ticker))
|
if (AppConfig.isStackCoin(selectedCrypto?.ticker))
|
||||||
CustomTextButton(
|
CustomTextButton(
|
||||||
text: "Choose from Stack",
|
text: "Choose from ${AppConfig.prefix}",
|
||||||
onTap: () {
|
onTap: () {
|
||||||
try {
|
try {
|
||||||
final coin = AppConfig.getCryptoCurrencyForTicker(
|
final coin = AppConfig.getCryptoCurrencyForTicker(
|
||||||
|
|
|
@ -194,7 +194,7 @@ class _Step2ViewState extends ConsumerState<Step2View> {
|
||||||
),
|
),
|
||||||
if (AppConfig.isStackCoin(model.receiveTicker))
|
if (AppConfig.isStackCoin(model.receiveTicker))
|
||||||
CustomTextButton(
|
CustomTextButton(
|
||||||
text: "Choose from Stack",
|
text: "Choose from ${AppConfig.prefix}",
|
||||||
onTap: () {
|
onTap: () {
|
||||||
try {
|
try {
|
||||||
final coin = AppConfig.coins.firstWhere(
|
final coin = AppConfig.coins.firstWhere(
|
||||||
|
@ -480,7 +480,7 @@ class _Step2ViewState extends ConsumerState<Step2View> {
|
||||||
),
|
),
|
||||||
if (AppConfig.isStackCoin(model.sendTicker))
|
if (AppConfig.isStackCoin(model.sendTicker))
|
||||||
CustomTextButton(
|
CustomTextButton(
|
||||||
text: "Choose from Stack",
|
text: "Choose from ${AppConfig.prefix}",
|
||||||
onTap: () {
|
onTap: () {
|
||||||
try {
|
try {
|
||||||
final coin = AppConfig.coins.firstWhere(
|
final coin = AppConfig.coins.firstWhere(
|
||||||
|
|
|
@ -14,10 +14,9 @@ import 'dart:io';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter_svg/svg.dart';
|
import 'package:flutter_svg/svg.dart';
|
||||||
|
|
||||||
|
import '../../app_config.dart';
|
||||||
import '../../models/exchange/response_objects/trade.dart';
|
import '../../models/exchange/response_objects/trade.dart';
|
||||||
import 'confirm_change_now_send.dart';
|
|
||||||
import '../home_view/home_view.dart';
|
|
||||||
import '../send_view/sub_widgets/building_transaction_dialog.dart';
|
|
||||||
import '../../pages_desktop_specific/desktop_exchange/desktop_exchange_view.dart';
|
import '../../pages_desktop_specific/desktop_exchange/desktop_exchange_view.dart';
|
||||||
import '../../providers/providers.dart';
|
import '../../providers/providers.dart';
|
||||||
import '../../route_generator.dart';
|
import '../../route_generator.dart';
|
||||||
|
@ -43,6 +42,9 @@ import '../../widgets/desktop/desktop_dialog_close_button.dart';
|
||||||
import '../../widgets/expandable.dart';
|
import '../../widgets/expandable.dart';
|
||||||
import '../../widgets/rounded_white_container.dart';
|
import '../../widgets/rounded_white_container.dart';
|
||||||
import '../../widgets/stack_dialog.dart';
|
import '../../widgets/stack_dialog.dart';
|
||||||
|
import '../home_view/home_view.dart';
|
||||||
|
import '../send_view/sub_widgets/building_transaction_dialog.dart';
|
||||||
|
import 'confirm_change_now_send.dart';
|
||||||
|
|
||||||
class SendFromView extends ConsumerStatefulWidget {
|
class SendFromView extends ConsumerStatefulWidget {
|
||||||
const SendFromView({
|
const SendFromView({
|
||||||
|
@ -135,7 +137,7 @@ class _SendFromViewState extends ConsumerState<SendFromView> {
|
||||||
left: 32,
|
left: 32,
|
||||||
),
|
),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Send from Stack",
|
"Send from ${AppConfig.prefix}",
|
||||||
style: STextStyles.desktopH3(context),
|
style: STextStyles.desktopH3(context),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|
|
@ -264,7 +264,7 @@ class _TradeDetailsViewState extends ConsumerState<TradeDetailsView> {
|
||||||
trade.status == "waiting" ||
|
trade.status == "waiting" ||
|
||||||
trade.status == "Waiting"))
|
trade.status == "Waiting"))
|
||||||
SecondaryButton(
|
SecondaryButton(
|
||||||
label: "Send from Stack",
|
label: "Send from ${AppConfig.prefix}",
|
||||||
buttonHeight: ButtonHeight.l,
|
buttonHeight: ButtonHeight.l,
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
CryptoCurrency coin;
|
CryptoCurrency coin;
|
||||||
|
@ -1379,7 +1379,7 @@ class _TradeDetailsViewState extends ConsumerState<TradeDetailsView> {
|
||||||
trade.status == "waiting" ||
|
trade.status == "waiting" ||
|
||||||
trade.status == "Waiting"))
|
trade.status == "Waiting"))
|
||||||
SecondaryButton(
|
SecondaryButton(
|
||||||
label: "Send from Stack",
|
label: "Send from ${AppConfig.prefix}",
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
CryptoCurrency coin;
|
CryptoCurrency coin;
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -171,7 +171,7 @@ class _IntroViewState extends ConsumerState<IntroView> {
|
||||||
),
|
),
|
||||||
if (isDesktop)
|
if (isDesktop)
|
||||||
SecondaryButton(
|
SecondaryButton(
|
||||||
label: "Restore from Stack backup",
|
label: "Restore from ${AppConfig.prefix} backup",
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.of(context).pushNamed(
|
Navigator.of(context).pushNamed(
|
||||||
CreatePasswordView.routeName,
|
CreatePasswordView.routeName,
|
||||||
|
@ -314,7 +314,7 @@ class GetStartedButton extends StatelessWidget {
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
child: Text(
|
child: Text(
|
||||||
"Create new Stack",
|
"Create new ${AppConfig.prefix}",
|
||||||
style: STextStyles.button(context).copyWith(fontSize: 20),
|
style: STextStyles.button(context).copyWith(fontSize: 20),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|
|
@ -12,6 +12,7 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:tuple/tuple.dart';
|
import 'package:tuple/tuple.dart';
|
||||||
|
|
||||||
|
import '../../../../app_config.dart';
|
||||||
import '../../../../providers/global/prefs_provider.dart';
|
import '../../../../providers/global/prefs_provider.dart';
|
||||||
import '../../../../themes/stack_colors.dart';
|
import '../../../../themes/stack_colors.dart';
|
||||||
import '../../../../utilities/constants.dart';
|
import '../../../../utilities/constants.dart';
|
||||||
|
@ -218,7 +219,7 @@ class AdvancedSettingsView extends StatelessWidget {
|
||||||
text: TextSpan(
|
text: TextSpan(
|
||||||
children: [
|
children: [
|
||||||
TextSpan(
|
TextSpan(
|
||||||
text: "Stack Experience",
|
text: "${AppConfig.prefix} Experience",
|
||||||
style: STextStyles.titleBold12(context),
|
style: STextStyles.titleBold12(context),
|
||||||
),
|
),
|
||||||
TextSpan(
|
TextSpan(
|
||||||
|
|
|
@ -99,7 +99,7 @@ class GlobalSettingsView extends StatelessWidget {
|
||||||
SettingsListButton(
|
SettingsListButton(
|
||||||
iconAssetName: Assets.svg.downloadFolder,
|
iconAssetName: Assets.svg.downloadFolder,
|
||||||
iconSize: 14,
|
iconSize: 14,
|
||||||
title: "Stack backup & restore",
|
title: "${AppConfig.prefix} backup & restore",
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.push(
|
Navigator.push(
|
||||||
context,
|
context,
|
||||||
|
@ -113,9 +113,9 @@ class GlobalSettingsView extends StatelessWidget {
|
||||||
biometricsCancelButtonString:
|
biometricsCancelButtonString:
|
||||||
"CANCEL",
|
"CANCEL",
|
||||||
biometricsLocalizedReason:
|
biometricsLocalizedReason:
|
||||||
"Authenticate to access Stack backup & restore settings",
|
"Authenticate to access ${AppConfig.prefix} backup & restore settings",
|
||||||
biometricsAuthenticationTitle:
|
biometricsAuthenticationTitle:
|
||||||
"Stack backup",
|
"${AppConfig.prefix} backup",
|
||||||
),
|
),
|
||||||
settings: const RouteSettings(
|
settings: const RouteSettings(
|
||||||
name: "/swblockscreen",
|
name: "/swblockscreen",
|
||||||
|
|
|
@ -14,6 +14,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
import 'package:url_launcher/url_launcher.dart';
|
import 'package:url_launcher/url_launcher.dart';
|
||||||
|
|
||||||
|
import '../../../../app_config.dart';
|
||||||
import '../../../../providers/global/auto_swb_service_provider.dart';
|
import '../../../../providers/global/auto_swb_service_provider.dart';
|
||||||
import '../../../../providers/providers.dart';
|
import '../../../../providers/providers.dart';
|
||||||
import '../../../../themes/stack_colors.dart';
|
import '../../../../themes/stack_colors.dart';
|
||||||
|
@ -316,7 +317,7 @@ class _AutoBackupViewState extends ConsumerState<AutoBackupView> {
|
||||||
children: [
|
children: [
|
||||||
const TextSpan(
|
const TextSpan(
|
||||||
text:
|
text:
|
||||||
"Auto Backup is a custom Stack Wallet feature that offers a convenient backup of your data.\n\nTo ensure maximum security, we recommend using a unique password that you haven't used anywhere else on the internet before. Your password is not stored.\n\nFor more information, please see our website ",
|
"Auto Backup is a custom ${AppConfig.appName} feature that offers a convenient backup of your data.\n\nTo ensure maximum security, we recommend using a unique password that you haven't used anywhere else on the internet before. Your password is not stored.\n\nFor more information, please see our website ",
|
||||||
),
|
),
|
||||||
TextSpan(
|
TextSpan(
|
||||||
text: "stackwallet.com.",
|
text: "stackwallet.com.",
|
||||||
|
|
|
@ -18,6 +18,7 @@ import 'package:flutter_svg/svg.dart';
|
||||||
import 'package:stack_wallet_backup/stack_wallet_backup.dart';
|
import 'package:stack_wallet_backup/stack_wallet_backup.dart';
|
||||||
import 'package:zxcvbn/zxcvbn.dart';
|
import 'package:zxcvbn/zxcvbn.dart';
|
||||||
|
|
||||||
|
import '../../../../app_config.dart';
|
||||||
import '../../../../notifications/show_flush_bar.dart';
|
import '../../../../notifications/show_flush_bar.dart';
|
||||||
import '../../../../providers/global/prefs_provider.dart';
|
import '../../../../providers/global/prefs_provider.dart';
|
||||||
import '../../../../providers/global/secure_store_provider.dart';
|
import '../../../../providers/global/secure_store_provider.dart';
|
||||||
|
@ -651,12 +652,12 @@ class _EnableAutoBackupViewState extends ConsumerState<CreateAutoBackupView> {
|
||||||
builder: (_) => Platform.isAndroid
|
builder: (_) => Platform.isAndroid
|
||||||
? StackOkDialog(
|
? StackOkDialog(
|
||||||
title:
|
title:
|
||||||
"Stack Auto Backup enabled and saved to:",
|
"${AppConfig.prefix} Auto Backup enabled and saved to:",
|
||||||
message: fileToSave,
|
message: fileToSave,
|
||||||
)
|
)
|
||||||
: const StackOkDialog(
|
: const StackOkDialog(
|
||||||
title:
|
title:
|
||||||
"Stack Auto Backup enabled!",
|
"${AppConfig.prefix} Auto Backup enabled!",
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
if (mounted) {
|
if (mounted) {
|
||||||
|
|
|
@ -17,6 +17,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter_svg/svg.dart';
|
import 'package:flutter_svg/svg.dart';
|
||||||
import 'package:zxcvbn/zxcvbn.dart';
|
import 'package:zxcvbn/zxcvbn.dart';
|
||||||
|
|
||||||
|
import '../../../../app_config.dart';
|
||||||
import '../../../../notifications/show_flush_bar.dart';
|
import '../../../../notifications/show_flush_bar.dart';
|
||||||
import '../../../../providers/global/secure_store_provider.dart';
|
import '../../../../providers/global/secure_store_provider.dart';
|
||||||
import '../../../../themes/stack_colors.dart';
|
import '../../../../themes/stack_colors.dart';
|
||||||
|
@ -774,7 +775,7 @@ class _RestoreFromFileViewState extends State<CreateBackupView> {
|
||||||
height: 26,
|
height: 26,
|
||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
"Stack backup saved to: \n",
|
"${AppConfig.prefix} backup saved to: \n",
|
||||||
style: STextStyles
|
style: STextStyles
|
||||||
.desktopH3(context),
|
.desktopH3(context),
|
||||||
),
|
),
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
|
import '../../../../../app_config.dart';
|
||||||
import '../../../../../themes/stack_colors.dart';
|
import '../../../../../themes/stack_colors.dart';
|
||||||
import '../../../../../utilities/text_styles.dart';
|
import '../../../../../utilities/text_styles.dart';
|
||||||
import '../../../../../utilities/util.dart';
|
import '../../../../../utilities/util.dart';
|
||||||
|
@ -89,7 +90,7 @@ class CancelStackRestoreDialog extends StatelessWidget {
|
||||||
.snackBarBackError,
|
.snackBarBackError,
|
||||||
child: Text(
|
child: Text(
|
||||||
"If you cancel, the restore will not complete, and "
|
"If you cancel, the restore will not complete, and "
|
||||||
"the wallets will not appear in your Stack.",
|
"the wallets will not appear in your ${AppConfig.prefix}.",
|
||||||
style: STextStyles.desktopTextMedium(context),
|
style: STextStyles.desktopTextMedium(context),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|
|
@ -20,6 +20,7 @@ import 'package:flutter_svg/svg.dart';
|
||||||
import 'package:stack_wallet_backup/stack_wallet_backup.dart';
|
import 'package:stack_wallet_backup/stack_wallet_backup.dart';
|
||||||
import 'package:zxcvbn/zxcvbn.dart';
|
import 'package:zxcvbn/zxcvbn.dart';
|
||||||
|
|
||||||
|
import '../../../../app_config.dart';
|
||||||
import '../../../../notifications/show_flush_bar.dart';
|
import '../../../../notifications/show_flush_bar.dart';
|
||||||
import '../../../../providers/global/prefs_provider.dart';
|
import '../../../../providers/global/prefs_provider.dart';
|
||||||
import '../../../../providers/global/secure_store_provider.dart';
|
import '../../../../providers/global/secure_store_provider.dart';
|
||||||
|
@ -221,10 +222,11 @@ class _EditAutoBackupViewState extends ConsumerState<EditAutoBackupView> {
|
||||||
barrierDismissible: false,
|
barrierDismissible: false,
|
||||||
builder: (_) => Platform.isAndroid
|
builder: (_) => Platform.isAndroid
|
||||||
? StackOkDialog(
|
? StackOkDialog(
|
||||||
title: "Stack Auto Backup saved to:",
|
title: "${AppConfig.prefix} Auto Backup saved to:",
|
||||||
message: fileToSave,
|
message: fileToSave,
|
||||||
)
|
)
|
||||||
: const StackOkDialog(title: "Stack Auto Backup saved"),
|
: const StackOkDialog(
|
||||||
|
title: "${AppConfig.prefix} Auto Backup saved"),
|
||||||
);
|
);
|
||||||
if (mounted) {
|
if (mounted) {
|
||||||
passwordController.text = "";
|
passwordController.text = "";
|
||||||
|
|
|
@ -14,6 +14,8 @@ import 'package:file_picker/file_picker.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:path_provider/path_provider.dart';
|
import 'package:path_provider/path_provider.dart';
|
||||||
import 'package:permission_handler/permission_handler.dart';
|
import 'package:permission_handler/permission_handler.dart';
|
||||||
|
|
||||||
|
import '../../../../../app_config.dart';
|
||||||
import '../../../../../utilities/util.dart';
|
import '../../../../../utilities/util.dart';
|
||||||
|
|
||||||
class SWBFileSystem {
|
class SWBFileSystem {
|
||||||
|
@ -39,17 +41,18 @@ class SWBFileSystem {
|
||||||
// debugPrint(rootPath!.absolute.toString());
|
// debugPrint(rootPath!.absolute.toString());
|
||||||
|
|
||||||
late Directory sampleFolder;
|
late Directory sampleFolder;
|
||||||
|
const dirName = "${AppConfig.prefix}_backup";
|
||||||
|
|
||||||
if (Platform.isIOS) {
|
if (Platform.isIOS) {
|
||||||
sampleFolder = Directory(rootPath!.path);
|
sampleFolder = Directory(rootPath!.path);
|
||||||
} else if (Platform.isAndroid) {
|
} else if (Platform.isAndroid) {
|
||||||
sampleFolder = Directory('${rootPath!.path}Documents/Stack_backups');
|
sampleFolder = Directory('${rootPath!.path}Documents/$dirName');
|
||||||
} else if (Platform.isLinux) {
|
} else if (Platform.isLinux) {
|
||||||
sampleFolder = Directory('${rootPath!.path}/Stack_backups');
|
sampleFolder = Directory('${rootPath!.path}/$dirName');
|
||||||
} else if (Platform.isWindows) {
|
} else if (Platform.isWindows) {
|
||||||
sampleFolder = Directory('${rootPath!.path}/Stack_backups');
|
sampleFolder = Directory('${rootPath!.path}/$dirName');
|
||||||
} else if (Platform.isMacOS) {
|
} else if (Platform.isMacOS) {
|
||||||
sampleFolder = Directory('${rootPath!.path}/Stack_backups');
|
sampleFolder = Directory('${rootPath!.path}/$dirName');
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -14,6 +14,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter_svg/svg.dart';
|
import 'package:flutter_svg/svg.dart';
|
||||||
import 'package:tuple/tuple.dart';
|
import 'package:tuple/tuple.dart';
|
||||||
|
|
||||||
|
import '../../../../app_config.dart';
|
||||||
import '../../../../notifications/show_flush_bar.dart';
|
import '../../../../notifications/show_flush_bar.dart';
|
||||||
import '../../../../route_generator.dart';
|
import '../../../../route_generator.dart';
|
||||||
import '../../../../themes/stack_colors.dart';
|
import '../../../../themes/stack_colors.dart';
|
||||||
|
@ -205,7 +206,7 @@ class _RestoreFromEncryptedStringViewState
|
||||||
color: Colors.transparent,
|
color: Colors.transparent,
|
||||||
child: Center(
|
child: Center(
|
||||||
child: Text(
|
child: Text(
|
||||||
"Decrypting Stack backup file",
|
"Decrypting ${AppConfig.prefix} backup file",
|
||||||
style:
|
style:
|
||||||
STextStyles.pageTitleH2(
|
STextStyles.pageTitleH2(
|
||||||
context,
|
context,
|
||||||
|
|
|
@ -338,7 +338,7 @@ class _RestoreFromFileViewState extends ConsumerState<RestoreFromFileView> {
|
||||||
color: Colors.transparent,
|
color: Colors.transparent,
|
||||||
child: Center(
|
child: Center(
|
||||||
child: Text(
|
child: Text(
|
||||||
"Decrypting Stack backup file",
|
"Decrypting ${AppConfig.prefix} backup file",
|
||||||
style: STextStyles.pageTitleH2(
|
style: STextStyles.pageTitleH2(
|
||||||
context,
|
context,
|
||||||
).copyWith(
|
).copyWith(
|
||||||
|
@ -452,7 +452,7 @@ class _RestoreFromFileViewState extends ConsumerState<RestoreFromFileView> {
|
||||||
color: Colors.transparent,
|
color: Colors.transparent,
|
||||||
child: Center(
|
child: Center(
|
||||||
child: Text(
|
child: Text(
|
||||||
"Decrypting Stack backup file",
|
"Decrypting ${AppConfig.prefix} backup file",
|
||||||
style: STextStyles.pageTitleH2(
|
style: STextStyles.pageTitleH2(
|
||||||
context,
|
context,
|
||||||
).copyWith(
|
).copyWith(
|
||||||
|
|
|
@ -10,9 +10,8 @@
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_svg/svg.dart';
|
import 'package:flutter_svg/svg.dart';
|
||||||
import 'auto_backup_view.dart';
|
|
||||||
import 'create_backup_view.dart';
|
import '../../../../app_config.dart';
|
||||||
import 'restore_from_file_view.dart';
|
|
||||||
import '../../../../themes/stack_colors.dart';
|
import '../../../../themes/stack_colors.dart';
|
||||||
import '../../../../utilities/assets.dart';
|
import '../../../../utilities/assets.dart';
|
||||||
import '../../../../utilities/constants.dart';
|
import '../../../../utilities/constants.dart';
|
||||||
|
@ -20,6 +19,9 @@ import '../../../../utilities/text_styles.dart';
|
||||||
import '../../../../widgets/background.dart';
|
import '../../../../widgets/background.dart';
|
||||||
import '../../../../widgets/custom_buttons/app_bar_icon_button.dart';
|
import '../../../../widgets/custom_buttons/app_bar_icon_button.dart';
|
||||||
import '../../../../widgets/rounded_white_container.dart';
|
import '../../../../widgets/rounded_white_container.dart';
|
||||||
|
import 'auto_backup_view.dart';
|
||||||
|
import 'create_backup_view.dart';
|
||||||
|
import 'restore_from_file_view.dart';
|
||||||
|
|
||||||
class StackBackupView extends StatelessWidget {
|
class StackBackupView extends StatelessWidget {
|
||||||
const StackBackupView({
|
const StackBackupView({
|
||||||
|
@ -42,7 +44,7 @@ class StackBackupView extends StatelessWidget {
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
title: Text(
|
title: Text(
|
||||||
"Stack backup",
|
"${AppConfig.prefix} backup",
|
||||||
style: STextStyles.navBarTitle(context),
|
style: STextStyles.navBarTitle(context),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|
|
@ -170,7 +170,11 @@ class _Mnemonic extends ConsumerWidget {
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding: const EdgeInsets.all(12),
|
padding: const EdgeInsets.all(12),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Please write down your backup key. Keep it safe and never share it with anyone. Your backup key is the only way you can access your funds if you forget your PIN, lose your phone, etc.\n\nStack Wallet does not keep nor is able to restore your backup key. Only you have access to your wallet.",
|
"Please write down your backup key. Keep it safe and never share "
|
||||||
|
"it with anyone. Your backup key is the only way you can access"
|
||||||
|
" your funds if you forget your PIN, lose your phone, etc.\n\n"
|
||||||
|
"${AppConfig.appName} does not keep nor is able to restore your"
|
||||||
|
" backup key. Only you have access to your wallet.",
|
||||||
style: STextStyles.label(context),
|
style: STextStyles.label(context),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
|
|
||||||
|
import '../../../../app_config.dart';
|
||||||
import '../../../../providers/providers.dart';
|
import '../../../../providers/providers.dart';
|
||||||
import '../../../../themes/stack_colors.dart';
|
import '../../../../themes/stack_colors.dart';
|
||||||
import '../../../../utilities/text_styles.dart';
|
import '../../../../utilities/text_styles.dart';
|
||||||
|
@ -69,7 +70,11 @@ class DeleteWalletWarningView extends ConsumerWidget {
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.warningBackground,
|
.warningBackground,
|
||||||
child: Text(
|
child: Text(
|
||||||
"You are going to permanently delete your wallet.\n\nIf you delete your wallet, the only way you can have access to your funds is by using your backup key.\n\nStack Wallet does not keep nor is able to restore your backup key or your wallet.\n\nPLEASE SAVE YOUR BACKUP KEY.",
|
"You are going to permanently delete your wallet.\n\n"
|
||||||
|
"If you delete your wallet, the only way you can have access"
|
||||||
|
" to your funds is by using your backup key.\n\n"
|
||||||
|
"${AppConfig.appName} does not keep nor is able to restore "
|
||||||
|
"your backup key or your wallet.\n\nPLEASE SAVE YOUR BACKUP KEY.",
|
||||||
style: STextStyles.baseXS(context).copyWith(
|
style: STextStyles.baseXS(context).copyWith(
|
||||||
color: Theme.of(context)
|
color: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
|
|
|
@ -960,8 +960,7 @@ class _DesktopTransactionCardRowState
|
||||||
unawaited(
|
unawaited(
|
||||||
showFloatingFlushBar(
|
showFloatingFlushBar(
|
||||||
context: context,
|
context: context,
|
||||||
message:
|
message: "Restored Epic funds from your Seed have no Data.",
|
||||||
"Restored Epic funds from your Seed have no Data.\nUse Stack Backup to keep your transaction history.",
|
|
||||||
type: FlushBarType.warning,
|
type: FlushBarType.warning,
|
||||||
duration: const Duration(seconds: 5),
|
duration: const Duration(seconds: 5),
|
||||||
),
|
),
|
||||||
|
|
|
@ -326,7 +326,7 @@ class _DesktopStep2State extends ConsumerState<DesktopStep2> {
|
||||||
),
|
),
|
||||||
))
|
))
|
||||||
CustomTextButton(
|
CustomTextButton(
|
||||||
text: "Choose from Stack",
|
text: "Choose from ${AppConfig.prefix}",
|
||||||
onTap: selectRecipientAddressFromStack,
|
onTap: selectRecipientAddressFromStack,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
|
@ -472,7 +472,7 @@ class _DesktopStep2State extends ConsumerState<DesktopStep2> {
|
||||||
),
|
),
|
||||||
))
|
))
|
||||||
CustomTextButton(
|
CustomTextButton(
|
||||||
text: "Choose from Stack",
|
text: "Choose from ${AppConfig.prefix}",
|
||||||
onTap: selectRefundAddressFromStack,
|
onTap: selectRefundAddressFromStack,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
|
|
|
@ -13,6 +13,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter_svg/svg.dart';
|
import 'package:flutter_svg/svg.dart';
|
||||||
import 'package:tuple/tuple.dart';
|
import 'package:tuple/tuple.dart';
|
||||||
|
|
||||||
|
import '../../../app_config.dart';
|
||||||
import '../../../providers/providers.dart';
|
import '../../../providers/providers.dart';
|
||||||
import '../../../themes/stack_colors.dart';
|
import '../../../themes/stack_colors.dart';
|
||||||
import '../../../utilities/amount/amount.dart';
|
import '../../../utilities/amount/amount.dart';
|
||||||
|
@ -87,7 +88,7 @@ class _DesktopChooseFromStackState
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
children: [
|
children: [
|
||||||
Text(
|
Text(
|
||||||
"Choose from Stack",
|
"Choose from ${AppConfig.prefix}",
|
||||||
style: STextStyles.desktopH3(context),
|
style: STextStyles.desktopH3(context),
|
||||||
),
|
),
|
||||||
const SizedBox(
|
const SizedBox(
|
||||||
|
|
|
@ -12,6 +12,7 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter_svg/flutter_svg.dart';
|
import 'package:flutter_svg/flutter_svg.dart';
|
||||||
|
|
||||||
|
import '../../../../../app_config.dart';
|
||||||
import '../../../../../db/sqlite/firo_cache.dart';
|
import '../../../../../db/sqlite/firo_cache.dart';
|
||||||
import '../../../../../providers/db/main_db_provider.dart';
|
import '../../../../../providers/db/main_db_provider.dart';
|
||||||
import '../../../../../providers/global/prefs_provider.dart';
|
import '../../../../../providers/global/prefs_provider.dart';
|
||||||
|
@ -281,7 +282,7 @@ class _MoreFeaturesDialogState extends ConsumerState<MoreFeaturesDialog> {
|
||||||
if (wallet is OrdinalsInterface)
|
if (wallet is OrdinalsInterface)
|
||||||
_MoreFeaturesItem(
|
_MoreFeaturesItem(
|
||||||
label: "Ordinals",
|
label: "Ordinals",
|
||||||
detail: "View and control your ordinals in Stack",
|
detail: "View and control your ordinals in ${AppConfig.prefix}",
|
||||||
iconAsset: Assets.svg.ordinal,
|
iconAsset: Assets.svg.ordinal,
|
||||||
onPressed: () async => widget.onOrdinalsPressed?.call(),
|
onPressed: () async => widget.onOrdinalsPressed?.call(),
|
||||||
),
|
),
|
||||||
|
|
|
@ -15,6 +15,7 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:isar/isar.dart';
|
import 'package:isar/isar.dart';
|
||||||
|
|
||||||
|
import '../../app_config.dart';
|
||||||
import '../../db/hive/db.dart';
|
import '../../db/hive/db.dart';
|
||||||
import '../../notifications/show_flush_bar.dart';
|
import '../../notifications/show_flush_bar.dart';
|
||||||
import '../../pages/intro_view.dart';
|
import '../../pages/intro_view.dart';
|
||||||
|
@ -143,7 +144,7 @@ class _ForgotPasswordDesktopViewState
|
||||||
),
|
),
|
||||||
TextSpan(
|
TextSpan(
|
||||||
text: widget.shouldCreateNew
|
text: widget.shouldCreateNew
|
||||||
? "create a new Stack"
|
? "create a new ${AppConfig.prefix}"
|
||||||
: "restore from backup",
|
: "restore from backup",
|
||||||
style: STextStyles.desktopTextSmallBold(context),
|
style: STextStyles.desktopTextSmallBold(context),
|
||||||
),
|
),
|
||||||
|
|
|
@ -74,7 +74,9 @@ class _ForgotPasswordDesktopViewState
|
||||||
SizedBox(
|
SizedBox(
|
||||||
width: 400,
|
width: 400,
|
||||||
child: Text(
|
child: Text(
|
||||||
"${AppConfig.appName} does not store your password. Create new wallet or use a Stack backup file to restore your wallet.",
|
"${AppConfig.appName} does not store your password. "
|
||||||
|
"Create new wallet or use a ${AppConfig.prefix} "
|
||||||
|
"backup file to restore your wallet.",
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
style: STextStyles.desktopTextSmall(context).copyWith(
|
style: STextStyles.desktopTextSmall(context).copyWith(
|
||||||
color: Theme.of(context)
|
color: Theme.of(context)
|
||||||
|
@ -87,7 +89,7 @@ class _ForgotPasswordDesktopViewState
|
||||||
height: 48,
|
height: 48,
|
||||||
),
|
),
|
||||||
PrimaryButton(
|
PrimaryButton(
|
||||||
label: "Create new Stack",
|
label: "Create new ${AppConfig.prefix}",
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
const shouldCreateNew = true;
|
const shouldCreateNew = true;
|
||||||
Navigator.of(context).pushNamed(
|
Navigator.of(context).pushNamed(
|
||||||
|
@ -100,7 +102,7 @@ class _ForgotPasswordDesktopViewState
|
||||||
height: 24,
|
height: 24,
|
||||||
),
|
),
|
||||||
SecondaryButton(
|
SecondaryButton(
|
||||||
label: "Restore from Stack backup",
|
label: "Restore from ${AppConfig.prefix} backup",
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
const shouldCreateNew = false;
|
const shouldCreateNew = false;
|
||||||
Navigator.of(context).pushNamed(
|
Navigator.of(context).pushNamed(
|
||||||
|
|
|
@ -94,7 +94,7 @@ class _ForgottenPassphraseRestoreFromSWBState
|
||||||
color: Colors.transparent,
|
color: Colors.transparent,
|
||||||
child: Center(
|
child: Center(
|
||||||
child: Text(
|
child: Text(
|
||||||
"Decrypting Stack backup file",
|
"Decrypting ${AppConfig.prefix} backup file",
|
||||||
style: STextStyles.pageTitleH2(context).copyWith(
|
style: STextStyles.pageTitleH2(context).copyWith(
|
||||||
color:
|
color:
|
||||||
Theme.of(context).extension<StackColors>()!.textWhite,
|
Theme.of(context).extension<StackColors>()!.textWhite,
|
||||||
|
@ -245,7 +245,7 @@ class _ForgottenPassphraseRestoreFromSWBState
|
||||||
height: 32,
|
height: 32,
|
||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
"Use your Stack backup file to restore your wallets, address book, and wallet preferences.",
|
"Use your ${AppConfig.prefix} backup file to restore your wallets, address book, and wallet preferences.",
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
style: STextStyles.desktopTextSmall(context).copyWith(
|
style: STextStyles.desktopTextSmall(context).copyWith(
|
||||||
color: Theme.of(context)
|
color: Theme.of(context)
|
||||||
|
|
|
@ -12,6 +12,7 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter_svg/svg.dart';
|
import 'package:flutter_svg/svg.dart';
|
||||||
|
|
||||||
|
import '../../../../app_config.dart';
|
||||||
import '../../../../pages/settings_views/global_settings_view/advanced_views/manage_coin_units/manage_coin_units_view.dart';
|
import '../../../../pages/settings_views/global_settings_view/advanced_views/manage_coin_units/manage_coin_units_view.dart';
|
||||||
import '../../../../providers/global/prefs_provider.dart';
|
import '../../../../providers/global/prefs_provider.dart';
|
||||||
import '../../../../themes/stack_colors.dart';
|
import '../../../../themes/stack_colors.dart';
|
||||||
|
@ -184,7 +185,7 @@ class _AdvancedSettings extends ConsumerState<AdvancedSettings> {
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
children: [
|
children: [
|
||||||
Text(
|
Text(
|
||||||
"Stack Experience",
|
"${AppConfig.prefix} Experience",
|
||||||
style: STextStyles.desktopTextExtraSmall(
|
style: STextStyles.desktopTextExtraSmall(
|
||||||
context,
|
context,
|
||||||
).copyWith(
|
).copyWith(
|
||||||
|
|
|
@ -20,6 +20,7 @@ import 'package:flutter_svg/svg.dart';
|
||||||
import 'package:stack_wallet_backup/stack_wallet_backup.dart';
|
import 'package:stack_wallet_backup/stack_wallet_backup.dart';
|
||||||
import 'package:zxcvbn/zxcvbn.dart';
|
import 'package:zxcvbn/zxcvbn.dart';
|
||||||
|
|
||||||
|
import '../../../../app_config.dart';
|
||||||
import '../../../../notifications/show_flush_bar.dart';
|
import '../../../../notifications/show_flush_bar.dart';
|
||||||
import '../../../../pages/settings_views/global_settings_view/stack_backup_views/helpers/restore_create_backup.dart';
|
import '../../../../pages/settings_views/global_settings_view/stack_backup_views/helpers/restore_create_backup.dart';
|
||||||
import '../../../../pages/settings_views/global_settings_view/stack_backup_views/helpers/swb_file_system.dart';
|
import '../../../../pages/settings_views/global_settings_view/stack_backup_views/helpers/swb_file_system.dart';
|
||||||
|
@ -776,7 +777,7 @@ class _CreateAutoBackup extends ConsumerState<CreateAutoBackup> {
|
||||||
if (Platform.isAndroid) {
|
if (Platform.isAndroid) {
|
||||||
return StackOkDialog(
|
return StackOkDialog(
|
||||||
title:
|
title:
|
||||||
"Stack Auto Backup enabled and saved to:",
|
"${AppConfig.prefix} Auto Backup enabled and saved to:",
|
||||||
message: fileToSave,
|
message: fileToSave,
|
||||||
);
|
);
|
||||||
} else if (Util.isDesktop) {
|
} else if (Util.isDesktop) {
|
||||||
|
@ -800,7 +801,7 @@ class _CreateAutoBackup extends ConsumerState<CreateAutoBackup> {
|
||||||
.spaceBetween,
|
.spaceBetween,
|
||||||
children: [
|
children: [
|
||||||
Text(
|
Text(
|
||||||
"Stack Auto Backup enabled!",
|
"${AppConfig.prefix} Auto Backup enabled!",
|
||||||
style:
|
style:
|
||||||
STextStyles.desktopH3(
|
STextStyles.desktopH3(
|
||||||
context,
|
context,
|
||||||
|
@ -834,7 +835,8 @@ class _CreateAutoBackup extends ConsumerState<CreateAutoBackup> {
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
return const StackOkDialog(
|
return const StackOkDialog(
|
||||||
title: "Stack Auto Backup enabled!",
|
title:
|
||||||
|
"${AppConfig.prefix} Auto Backup enabled!",
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -15,6 +15,7 @@ import 'package:event_bus/event_bus.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:isar/isar.dart';
|
import 'package:isar/isar.dart';
|
||||||
|
|
||||||
|
import '../app_config.dart';
|
||||||
import '../models/isar/models/log.dart';
|
import '../models/isar/models/log.dart';
|
||||||
import '../utilities/logger.dart';
|
import '../utilities/logger.dart';
|
||||||
|
|
||||||
|
@ -98,7 +99,7 @@ class DebugService extends ChangeNotifier {
|
||||||
Future<String> exportToFile(String directory, EventBus eventBus) async {
|
Future<String> exportToFile(String directory, EventBus eventBus) async {
|
||||||
final now = DateTime.now();
|
final now = DateTime.now();
|
||||||
final filename =
|
final filename =
|
||||||
"Stack_Wallet_logs_${now.year}_${now.month}_${now.day}_${now.hour}_${now.minute}_${now.second}.txt";
|
"${AppConfig.prefix}_Wallet_logs_${now.year}_${now.month}_${now.day}_${now.hour}_${now.minute}_${now.second}.txt";
|
||||||
final filepath = "$directory/$filename";
|
final filepath = "$directory/$filename";
|
||||||
final File file = await File(filepath).create();
|
final File file = await File(filepath).create();
|
||||||
|
|
||||||
|
|
|
@ -31,7 +31,7 @@ final pThemeService = Provider<ThemeService>((ref) {
|
||||||
});
|
});
|
||||||
|
|
||||||
class ThemeService {
|
class ThemeService {
|
||||||
static const _currentDefaultThemeVersion = 11;
|
static const _currentDefaultThemeVersion = 15;
|
||||||
ThemeService._();
|
ThemeService._();
|
||||||
static ThemeService? _instance;
|
static ThemeService? _instance;
|
||||||
static ThemeService get instance => _instance ??= ThemeService._();
|
static ThemeService get instance => _instance ??= ThemeService._();
|
||||||
|
|
|
@ -181,8 +181,7 @@ class _TransactionCardState extends ConsumerState<TransactionCard> {
|
||||||
unawaited(
|
unawaited(
|
||||||
showFloatingFlushBar(
|
showFloatingFlushBar(
|
||||||
context: context,
|
context: context,
|
||||||
message:
|
message: "Restored Epic funds from your Seed have no Data.",
|
||||||
"Restored Epic funds from your Seed have no Data.\nUse Stack Backup to keep your transaction history.",
|
|
||||||
type: FlushBarType.warning,
|
type: FlushBarType.warning,
|
||||||
duration: const Duration(seconds: 5),
|
duration: const Duration(seconds: 5),
|
||||||
),
|
),
|
||||||
|
|
32
pubspec.lock
|
@ -1064,26 +1064,26 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: leak_tracker
|
name: leak_tracker
|
||||||
sha256: "78eb209deea09858f5269f5a5b02be4049535f568c07b275096836f01ea323fa"
|
sha256: "7f0df31977cb2c0b88585095d168e689669a2cc9b97c309665e3386f3e9d341a"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "10.0.0"
|
version: "10.0.4"
|
||||||
leak_tracker_flutter_testing:
|
leak_tracker_flutter_testing:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: leak_tracker_flutter_testing
|
name: leak_tracker_flutter_testing
|
||||||
sha256: b46c5e37c19120a8a01918cfaf293547f47269f7cb4b0058f21531c2465d6ef0
|
sha256: "06e98f569d004c1315b991ded39924b21af84cf14cc94791b8aea337d25b57f8"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.0.1"
|
version: "3.0.3"
|
||||||
leak_tracker_testing:
|
leak_tracker_testing:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: leak_tracker_testing
|
name: leak_tracker_testing
|
||||||
sha256: a597f72a664dbd293f3bfc51f9ba69816f84dcd403cdac7066cb3f6003f3ab47
|
sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.0.1"
|
version: "3.0.1"
|
||||||
lelantus:
|
lelantus:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
|
@ -1151,10 +1151,10 @@ packages:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: meta
|
name: meta
|
||||||
sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04
|
sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.11.0"
|
version: "1.12.0"
|
||||||
mime:
|
mime:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -1736,26 +1736,26 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: test
|
name: test
|
||||||
sha256: a1f7595805820fcc05e5c52e3a231aedd0b72972cb333e8c738a8b1239448b6f
|
sha256: "7ee446762c2c50b3bd4ea96fe13ffac69919352bd3b4b17bac3f3465edc58073"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.24.9"
|
version: "1.25.2"
|
||||||
test_api:
|
test_api:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: test_api
|
name: test_api
|
||||||
sha256: "5c2f730018264d276c20e4f1503fd1308dfbbae39ec8ee63c5236311ac06954b"
|
sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.6.1"
|
version: "0.7.0"
|
||||||
test_core:
|
test_core:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: test_core
|
name: test_core
|
||||||
sha256: a757b14fc47507060a162cc2530d9a4a2f92f5100a952c7443b5cad5ef5b106a
|
sha256: "2bc4b4ecddd75309300d8096f781c0e3280ca1ef85beda558d33fcbedc2eead4"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.5.9"
|
version: "0.6.0"
|
||||||
tezart:
|
tezart:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
|
@ -1954,10 +1954,10 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: vm_service
|
name: vm_service
|
||||||
sha256: b3d56ff4341b8f182b96aceb2fa20e3dcb336b9f867bc0eafc0de10f1048e957
|
sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "13.0.0"
|
version: "14.2.1"
|
||||||
wakelock:
|
wakelock:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
|
|
|
@ -15,3 +15,22 @@ done
|
||||||
# Configure ios for Duo.
|
# Configure ios for Duo.
|
||||||
sed -i '' "s/${APP_NAME_PLACEHOLDER}/${NEW_NAME}/g" "${APP_PROJECT_ROOT_DIR}/${IOS_TF_0}"
|
sed -i '' "s/${APP_NAME_PLACEHOLDER}/${NEW_NAME}/g" "${APP_PROJECT_ROOT_DIR}/${IOS_TF_0}"
|
||||||
sed -i '' "s/${APP_ID_PLACEHOLDER}/${NEW_APP_ID}/g" "${APP_PROJECT_ROOT_DIR}/${IOS_TF_1}"
|
sed -i '' "s/${APP_ID_PLACEHOLDER}/${NEW_APP_ID}/g" "${APP_PROJECT_ROOT_DIR}/${IOS_TF_1}"
|
||||||
|
|
||||||
|
# use app specific launch images
|
||||||
|
LAUNCH_IMAGES_DIR="${APP_PROJECT_ROOT_DIR}/ios/Runner/Assets.xcassets/LaunchImage.imageset"
|
||||||
|
for file in "${LAUNCH_IMAGES_DIR}"/*.png;
|
||||||
|
do
|
||||||
|
# Check if the file exists to avoid errors if no PNG files are found
|
||||||
|
if [ -f "${file}" ]; then
|
||||||
|
rm "${file}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
LAUNCH_IMAGES_TEMPLATES_DIR="${APP_PROJECT_ROOT_DIR}/asset_sources/other/ios_launch_image/${NEW_BASIC_NAME}"
|
||||||
|
for file in "${LAUNCH_IMAGES_TEMPLATES_DIR}"/*.png;
|
||||||
|
do
|
||||||
|
# Check if the file exists to avoid errors if no PNG files are found
|
||||||
|
if [ -f "${file}" ]; then
|
||||||
|
cp "${file}" "${LAUNCH_IMAGES_DIR}/"
|
||||||
|
fi
|
||||||
|
done
|