mirror of
https://github.com/Such-Software/hash-wallet.git
synced 2026-10-18 05:51:34 +02:00
Rename the new-ui assets (source in res/pictures + compiled .svg.vec in assets/new-ui) and their 3 code refs. Content was already Hash Bags; only the filenames were cake: - cake_squircle_icon -> hash_squircle_icon (About page) - cakewallet-wordmark(.light) -> hash-wordmark(.light) (receive QR) - cake-setting -> hash-setting (settings) Remove unused cake assets (0 refs): by-cakelabs, cakelabs-icon, new-ui cupcake duplicate, cake_icon.png, cake_wordmark.png. (assets/images/cupcake* kept — that is Cake's Cupcake hardware-signer device name, a real integration, not branding.)
125 lines
4.7 KiB
Dart
125 lines
4.7 KiB
Dart
import 'dart:math';
|
||
|
||
import 'package:hash_wallet/entities/new_ui_entities/list_item/list_item_regular_row.dart';
|
||
import 'package:hash_wallet/generated/i18n.dart';
|
||
import 'package:hash_wallet/new-ui/widgets/modal_page_wrapper.dart';
|
||
import 'package:hash_wallet/new-ui/widgets/receive_page/receive_top_bar.dart';
|
||
import 'package:hash_wallet/src/widgets/hash_image_widget.dart';
|
||
import 'package:hash_wallet/src/widgets/new_list_row/new_list_section.dart';
|
||
import 'package:flutter/material.dart';
|
||
import 'package:url_launcher/url_launcher.dart';
|
||
|
||
// written by people who happened to read my slack message in 2025
|
||
// whoever works on this codebase in the future, feel free to add your own mark here
|
||
const List<String> aboutPageEasterEggs = [
|
||
"Designed in (S)pain",
|
||
"Proudly managing over 🤷♂️ XMR",
|
||
"The bag is not a lie 💰",
|
||
"I don’t play soccer because I enjoy the sport. I’m just doing it for kicks.",
|
||
"Markets in red? Big deal.\nWhat color is the grass outside?",
|
||
"Conquered Web3, now working on Web6-7",
|
||
"Proud owner of none of your funds\n(we are not impressed)",
|
||
"*writing down my seedphrase*\nhash hash hash hash hash hash hash ha...",
|
||
"Don't forget to actually use your crypto to pay for stuff in the real world 🙂",
|
||
"A chain of blocks? That's preposterous!",
|
||
"IOU a hug <3",
|
||
"Warning: up to 4.8% programmed by cats",
|
||
"We love collecting your data <3\nWe're just really incompetent at it"
|
||
];
|
||
|
||
class AboutPage extends StatefulWidget {
|
||
const AboutPage({super.key, required this.appVersion});
|
||
|
||
final String appVersion;
|
||
|
||
@override
|
||
State<AboutPage> createState() => _AboutPageState();
|
||
}
|
||
|
||
class _AboutPageState extends State<AboutPage> {
|
||
static const int easterEggTreshold = 5;
|
||
String _bottomText = S.current.payment_made_easy;
|
||
int _easterEggCounter = 0;
|
||
|
||
void _easterEgg() {
|
||
_easterEggCounter++;
|
||
if(_easterEggCounter == easterEggTreshold) {
|
||
setState(() {
|
||
_bottomText = aboutPageEasterEggs.elementAt(Random().nextInt(aboutPageEasterEggs.length));
|
||
});
|
||
}
|
||
}
|
||
|
||
@override
|
||
Widget build(BuildContext context) {
|
||
return ModalPageWrapper(
|
||
topBar: ModalTopBar(
|
||
title: S.of(context).about,
|
||
leadingIcon: Icon(Icons.arrow_back_ios_new),
|
||
onLeadingPressed: Navigator.of(context).pop,
|
||
),
|
||
content: Container(
|
||
color: Theme.of(context).colorScheme.surface,
|
||
child: Column(children: [
|
||
Column(
|
||
children: [
|
||
Column(
|
||
spacing: 16,
|
||
children: [
|
||
SizedBox(),
|
||
GestureDetector(
|
||
onTap: _easterEgg,
|
||
child: HashImageWidget(
|
||
imageUrl: "assets/new-ui/hash_squircle_icon.svg",
|
||
width: 128,
|
||
height: 128,
|
||
),
|
||
),
|
||
Row(
|
||
mainAxisAlignment: MainAxisAlignment.center,
|
||
spacing: 8,
|
||
children: [
|
||
Text(
|
||
"Hash Bags",
|
||
style: TextStyle(fontSize: 32, fontWeight: FontWeight.w500),
|
||
),
|
||
Text(widget.appVersion,
|
||
style: TextStyle(
|
||
fontSize: 32,
|
||
fontWeight: FontWeight.w500,
|
||
color: Theme.of(context).colorScheme.onSurfaceVariant))
|
||
],
|
||
),
|
||
Padding(
|
||
padding: const EdgeInsets.symmetric(horizontal: 12.0),
|
||
child: Wrap(
|
||
children: [
|
||
Text(
|
||
_bottomText,
|
||
textAlign: TextAlign.center,
|
||
style: TextStyle(color: Theme.of(context).colorScheme.onSurfaceVariant),
|
||
),
|
||
],
|
||
),
|
||
),
|
||
],
|
||
),
|
||
SizedBox(height: 32),
|
||
NewListSections(sections: {
|
||
"": [
|
||
ListItemRegularRow(
|
||
keyValue: "gh",
|
||
label: "GitHub",
|
||
onTap: () => launchUrl(Uri.https("github.com", "Such-Software/hash-wallet")),
|
||
trailingIconPath: "assets/new-ui/link_arrow.svg",
|
||
foregroundColor: Theme.of(context).colorScheme.primary,
|
||
trailingIconSize: 10),
|
||
],
|
||
})
|
||
],
|
||
)
|
||
])),
|
||
);
|
||
}
|
||
}
|