Skip to content

Commit

Permalink
Merge pull request #3486 from superhero-com/release/v2.5.1
Browse files Browse the repository at this point in the history
Release v2.5.1
  • Loading branch information
CedrikNikita authored Feb 6, 2025
2 parents c32f0b5 + 7446180 commit ee71842
Show file tree
Hide file tree
Showing 30 changed files with 184 additions and 82 deletions.
1 change: 1 addition & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
UNFINISHED_FEATURES=true
ETHERSCAN_API_KEY=
ETHPLORER_API_KEY=
WALLET_CONNECT_PROJECT_ID=
TOKEN_SALES_URL_MAINNET=
TOKEN_SALES_URL_TESTNET=
6 changes: 3 additions & 3 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,13 +49,13 @@ jobs:
publish_dir: dist/web/root
cname: wallet.superhero.com

- uses: softprops/action-gh-release@v1
- uses: softprops/action-gh-release@v2.2.1
if: startsWith(github.ref, 'refs/tags/')
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
name: Release ${{ github.ref }}
- uses: alexellis/upload-assets@0.4.0
- uses: alexellis/upload-assets@0.4.1
if: startsWith(github.ref, 'refs/tags/')
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Expand All @@ -64,7 +64,7 @@ jobs:

- uses: rlespinasse/github-slug-action@v4.x
- name: Deploy to stage
uses: easingthemes/ssh-deploy@v4.1.8
uses: easingthemes/ssh-deploy@v5.1.0
if: github.event_name == 'push'
env:
SSH_PRIVATE_KEY: ${{ secrets.STAGE_PRIVATE_KEY }}
Expand Down
31 changes: 31 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,37 @@

All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.

### [2.5.1](https://github.com/Superhero-com/superhero-wallet/compare/v2.5.0...v2.5.1) (2025-02-06)


### Features

* be able to set ethplorer api key ([f409883](https://github.com/Superhero-com/superhero-wallet/commit/f409883892408dba7e35df7c46ec1992ce6c8ab4))
* show full createCommunity contract call info ([34ed221](https://github.com/Superhero-com/superhero-wallet/commit/34ed2218aaf5d2e45b850d10523af62ec89795f5))
* show internal spendTx correctly ([35bd814](https://github.com/Superhero-com/superhero-wallet/commit/35bd8143e397bff1da20b3a32e713a740957d419))


### Bug Fixes

* **aeternity:** correct usage of onAccount property ([b2227b0](https://github.com/Superhero-com/superhero-wallet/commit/b2227b0909d39a088c4b5c037fdd957864d1cbeb))
* be able to show set password help modal ([453c777](https://github.com/Superhero-com/superhero-wallet/commit/453c7775d5cebf01a8cce67ca061b65f75a520b7))
* do not overlap token name with amount in TransactionAssetRow ([08b6df1](https://github.com/Superhero-com/superhero-wallet/commit/08b6df14ba9767464fdcc8d5655e8c42d321d4c9))
* do not rewrite encrypted state with default value on initialization ([1328fcf](https://github.com/Superhero-com/superhero-wallet/commit/1328fcf396bee6181735ad452f541570a48d38fe))
* **ethereum:** show correct token transaction details ([2f3fa84](https://github.com/Superhero-com/superhero-wallet/commit/2f3fa841229055c44f6229a790b1bb190c652909))
* show correct information for loaded transactions ([621f082](https://github.com/Superhero-com/superhero-wallet/commit/621f082e67187b72462b683ca5fac737ee0ca8c3))


### Maintenance

* adjust transaction details page ([238e022](https://github.com/Superhero-com/superhero-wallet/commit/238e022056428adc16e34536361509f54329ff42))
* change several icons style ([24a75a0](https://github.com/Superhero-com/superhero-wallet/commit/24a75a02b26e1fd3e7dd78cc0f5719249e83635b))
* update github actions ([9883c3a](https://github.com/Superhero-com/superhero-wallet/commit/9883c3aced519d98dc47aaba79a7425c367326c5))


### Performance

* reduce the number of name check requests ([f294b29](https://github.com/Superhero-com/superhero-wallet/commit/f294b292b708886b23f04f66f57da9619ac1f46b))

## [2.5.0](https://github.com/Superhero-com/superhero-wallet/compare/v2.4.0...v2.5.0) (2025-01-30)


Expand Down
4 changes: 2 additions & 2 deletions android/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ android {
applicationId "com.superhero.cordova"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 20500
versionName "2.5.0"
versionCode 20501
versionName "2.5.1"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
aaptOptions {
// Files and dirs to omit from the packaged assets dir, modified to accommodate modern web apps.
Expand Down
4 changes: 2 additions & 2 deletions ios/App/App.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -365,7 +365,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 2.5.0;
MARKETING_VERSION = 2.5.1;
OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"COCOAPODS\" \"-DDEBUG\"";
PRODUCT_BUNDLE_IDENTIFIER = com.superhero.cordova;
PRODUCT_NAME = "$(TARGET_NAME)";
Expand All @@ -390,7 +390,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 2.5.0;
MARKETING_VERSION = 2.5.1;
PRODUCT_BUNDLE_IDENTIFIER = com.superhero.cordova;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "";
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "superhero-wallet",
"version": "2.5.0",
"version": "2.5.1",
"description": "Superhero wallet",
"author": "Superhero",
"license": "MIT",
Expand Down
5 changes: 4 additions & 1 deletion src/composables/aeSdk.ts
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,10 @@ export function useAeSdk() {
*/
async function getDryAeSdk(): Promise<AeSdk> {
if (!dryAeSdk) {
const nodeInstance = new Node(aeActiveNetworkSettings.value.nodeUrl, { ignoreVersion: true });
const nodeInstance = new Node(
aeActiveNetworkSettings.value.nodeUrl,
{ ignoreVersion: true, retryCount: 0 },
);
dryAeSdk = new AeSdk({
nodes: [{
name: activeNetworkName.value,
Expand Down
9 changes: 2 additions & 7 deletions src/composables/auth.ts
Original file line number Diff line number Diff line change
Expand Up @@ -361,13 +361,8 @@ export const useAuth = createCustomScopedComposable(() => {
mnemonicDecrypted.value = mnemonic.value;
}

if (!IS_MOBILE_APP && !encryptionKey.value) {
if (IS_EXTENSION) {
await checkUserAuth(); // Check auth when opening again the extension
}
if (IS_OFFSCREEN_TAB) {
syncBackgroundEncryptionKey();
}
if (!encryptionKey.value && IS_EXTENSION) {
await checkUserAuth(); // Check auth when opening again the extension
}
})();

Expand Down
1 change: 1 addition & 0 deletions src/constants/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -71,5 +71,6 @@ export const IS_PRODUCTION = process.env.NODE_ENV === 'production';
export const UNFINISHED_FEATURES = !!process.env.UNFINISHED_FEATURES;

export const ETHERSCAN_API_KEY = process.env.ETHERSCAN_API_KEY!;
export const ETHPLORER_API_KEY = process.env.ETHPLORER_API_KEY!;

export const WALLET_CONNECT_PROJECT_ID = process.env.WALLET_CONNECT_PROJECT_ID!;
6 changes: 3 additions & 3 deletions src/icons/check-circle.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 4 additions & 4 deletions src/icons/question-circle.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 3 additions & 4 deletions src/icons/warning.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 4 additions & 1 deletion src/popup/components/DetailsItem.vue
Original file line number Diff line number Diff line change
Expand Up @@ -112,13 +112,16 @@ export default defineComponent({
.value {
@extend %face-sans-15-regular;
display: flex;
flex-wrap: wrap;
gap: 4px;
align-items: center;
letter-spacing: 0.05em;
color: rgba($color-white, 0.85);
margin-bottom: 8px;
.secondary {
color: $color-grey-light;
margin-left: 4px;
white-space: nowrap;
}
Expand Down
8 changes: 7 additions & 1 deletion src/popup/components/InputField.vue
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
:title="help?.title"
:msg="help?.msg"
:full-screen="!!help?.fullscreen"
:show-above-all="!!help?.showAboveAll"
data-cy="btn-help"
@help="$emit('help')"
/>
Expand Down Expand Up @@ -159,7 +160,12 @@ export default defineComponent({
default: null,
},
help: {
type: Object as PropType<{ title: string; msg: string; fullscreen: Boolean }>,
type: Object as PropType<{
title: string;
msg: string;
fullscreen: Boolean;
showAboveAll: Boolean;
}>,
default: null,
},
integer: Boolean,
Expand Down
56 changes: 32 additions & 24 deletions src/popup/components/Modals/Help.vue
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
:icon="icon || 'info'"
:full-screen="fullScreen"
class="help-modal"
:class="{ 'show-above-all': showAboveAll }"
>
<template #msg>
<TemplateRenderer
Expand All @@ -29,41 +30,48 @@ export default {
option: { type: Object, default: null },
icon: { type: String, default: null },
fullScreen: Boolean,
showAboveAll: Boolean,
},
};
</script>

<style lang="scss">
@use '@/styles/variables' as *;
.help-modal .help-template-renderer {
p {
margin-top: 8px;
.help-modal {
&.show-above-all {
z-index: $z-index-login-modal;
}
ol {
text-align: left;
list-style-type: none;
counter-reset: list-number;
.help-template-renderer {
p {
margin-top: 8px;
}
ol {
text-align: left;
list-style-type: none;
counter-reset: list-number;
li {
margin-bottom: 18px;
li {
margin-bottom: 18px;
&::before {
counter-increment: list-number;
content: counter(list-number);
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
padding: 2px;
width: 24px;
height: 24px;
position: absolute;
left: 24px;
background: rgba($color-white, 0.03);
border: 2px solid rgba($color-white, 0.15);
border-radius: 28px;
&::before {
counter-increment: list-number;
content: counter(list-number);
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
padding: 2px;
width: 24px;
height: 24px;
position: absolute;
left: 24px;
background: rgba($color-white, 0.03);
border: 2px solid rgba($color-white, 0.15);
border-radius: 28px;
}
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/popup/components/Modals/RecipientInfo.vue
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<template>
<Default
v-bind="{ ...$attrs, resolve }"
icon="help"
icon="info"
:title="$t('modals.recipient.title')"
:close="resolve"
full-screen
Expand Down
1 change: 1 addition & 0 deletions src/popup/components/Modals/SetPassword.vue
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@
title: $t('pages.setPassword.help.title'),
msg: $t('pages.setPassword.help.text'),
fullscreen: true,
showAboveAll: true,
}"
show-password-strength
/>
Expand Down
2 changes: 1 addition & 1 deletion src/popup/components/StatusIcon.vue
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import Alert from '../../icons/alert.svg?vue-component';
import Warning from '../../icons/warning.svg?vue-component';
import CheckCircle from '../../icons/check-circle.svg?vue-component';
import NotSecure from '../../icons/not-secure.svg?vue-component';
import Globe from '../../icons/globe.svg?vue-component';
import Globe from '../../icons/globe-small.svg?vue-component';
import QrScan from '../../icons/qr-scan.svg?vue-component';
export default defineComponent({
Expand Down
2 changes: 1 addition & 1 deletion src/popup/components/Tokens.vue
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ export default defineComponent({
* Array of tokens that is returned by the transactionTokenInfoResolvers
*/
tokens: { type: Array as PropType<ITokenResolved[]>, required: true },
symbolLength: { type: Number, default: 11 },
symbolLength: { type: Number, default: 10 },
doubleSymbolLength: { type: Number, default: 5 },
/**
* TODO if protocol is not set, assume AE, but this should be set correctly
Expand Down
2 changes: 2 additions & 0 deletions src/popup/components/TransactionAssetRows.vue
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,8 @@ export default defineComponent({
.amount {
@extend %face-sans-18-regular;
font-size: var(--font-size);
}
}
}
Expand Down
2 changes: 2 additions & 0 deletions src/popup/components/buttons/BtnHelp.vue
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ export default defineComponent({
small: Boolean,
warning: Boolean,
fullScreen: Boolean,
showAboveAll: Boolean,
},
setup(props, { emit }) {
const { openModal } = useModals();
Expand All @@ -41,6 +42,7 @@ export default defineComponent({
option: props.option,
textCenter: true,
fullScreen: props.fullScreen,
showAboveAll: props.showAboveAll,
});
}
}
Expand Down
11 changes: 3 additions & 8 deletions src/popup/plugins/veeValidate.ts
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ defineRule(
export default () => {
const { balance, updateBalances } = useBalances();
const { currencyRates } = useCurrencies({ pollingDisabled: true });
const { getAeSdk } = useAeSdk();
const { getDryAeSdk } = useAeSdk();

const NAME_STATES = {
REGISTERED: Symbol('name state: registered'),
Expand All @@ -172,8 +172,8 @@ export default () => {
const checkNameDebounced = debounce(
async (name, expectedNameState, comparedAddress, { resolve, reject }) => {
try {
const aeSdk = await getAeSdk();
const nameEntry = (await aeSdk.api.getNameEntryByName(name)) as any as NameEntry;
const dryAeSdk = await getDryAeSdk();
const nameEntry = (await dryAeSdk.api.getNameEntryByName(name)) as any as NameEntry;
const address = getAddressByNameEntry(nameEntry);
resolve(({
[NAME_STATES.REGISTERED]: true,
Expand All @@ -196,14 +196,9 @@ export default () => {
{ leading: true },
);

let lastName: string;
function checkName(expectedNameState: ObjectValues<typeof NAME_STATES>) {
return (name: string, [comparedAddress]: string[]): Promise<boolean> => new Promise(
(resolve, reject) => {
if (name === lastName) {
checkNameDebounced.flush();
}
lastName = name;
checkNameDebounced(name, expectedNameState, comparedAddress, { resolve, reject });
},
);
Expand Down
Loading

0 comments on commit ee71842

Please sign in to comment.