Skip to content
Projects
Groups
Snippets
Help
Sign in / Register
Toggle navigation
Minds Frontend
Project overview
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Locked Files
Issues
400
Merge Requests
64
CI / CD
Security & Compliance
Packages
Analytics
Wiki
Snippets
Members
Collapse sidebar
Close sidebar
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Minds
Minds Frontend
Commits
e6120dab
Commit
e6120dab
authored
36 minutes ago
by
Olivia Madrid
Browse files
Options
Download
fake data removal cleanup
parent
d352ede4
epic/wallet-80
1 merge request
!686
WIP: Epic/wallet 80
Pipeline
#117855170
failed with stages
in 11 minutes and 32 seconds
Changes
32
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
32 changed files
with
392 additions
and
226 deletions
+392
-226
src/app/common/components/shadowbox-header-tabs/shadowbox-header-tabs.component.html
View file @
e6120dab
...
...
@@ -41,13 +41,6 @@
: (tab.value | token: 18 | number: '1.0-3')
}}
</ng-template>
<ng-template
ngSwitchCase=
"btc"
>
{{
friendlyVals
? (tab.value | number: '1.0-3')
: (tab.value | token: 18 | number: '1.0-3')
}}
</ng-template>
<ng-template
ngSwitchCase=
"number"
>
{{ tab.value | number }}
</ng-template>
...
...
@@ -59,6 +52,7 @@
: (tab.value / 100 | number: '1.2-2')
}}
</ng-template>
<ng-template
ngSwitchCase=
"btc"
>
</ng-template>
<ng-template
ngSwitchDefault
>
{{ tab.value | number: '1.0-3' }}
</ng-template>
...
...
This diff is collapsed.
src/app/common/components/shadowbox-header/shadowbox-header.component.ts
View file @
e6120dab
...
...
@@ -69,7 +69,6 @@ export class ShadowboxHeaderComponent implements AfterViewInit {
@
HostListener
(
'
click
'
,
[
'
$event
'
])
onClick
(
$event
)
{
const
targetMetric
=
$event
.
target
;
console
.
log
(
'
clickevent
'
,
$event
);
if
(
targetMetric
.
className
===
'
m-shadowboxHeader__overflowFade--left
'
)
{
this
.
slide
(
'
left
'
);
}
else
{
...
...
This diff is collapsed.
src/app/modules/wallet/v2/balance-cash/balance-cash.component.html
View file @
e6120dab
<div
class=
"m-walletBalance--cash"
*ngIf=
"loaded"
>
<div
*ngIf=
"!inProgress"
class=
"m-walletBalance--cash__colContainer"
>
<div
class=
"m-walletBalance--cash"
*ngIf=
"!inProgress"
>
<div
class=
"m-walletBalance---cash__onboardingNotice"
>
<p
(click)=
"scrollToCashSettings.emit()"
>
<a>
Add your bank information
</a>
</p>
<p>
Start receiving cash payouts by adding your bank details.
</p>
</div>
<div
class=
"m-walletBalance--cash__colContainer"
>
<!-- ---PENDING BALANCE ------------------------------------------------- -->
<div
class=
"m-walletBalance--cash__col"
>
<div
class=
"m-walletBalance--cash__colTitle"
>
Pending Balance
<m-tooltip
icon=
"help"
>
T
O DO: this is the total amount of wires and earnings that you will
receive. Add something about payout date being estimated. And might
take up to 7 days
>
T
he total amount of cash you are scheduled to receive from wires
and/or earnings. The payout date is estimated and it may take up to 7
days before your balance reaches your bank account.
</m-tooltip>
</div>
<div
class=
"m-walletBalance--cash__colValWrapper"
>
<span
class=
"m-walletBalance--cash__colVal--int"
>
{{
pendingBalance.int
| number: '1.0-0'
| currency: currency
| slice: 0:-3
}}
</span
><span
class=
"m-walletBalance--cash__colVal--frac"
*ngIf=
"pendingBalance.frac"
>
.{{ pendingBalance.frac }}
</span
>
</div>
<div
class=
"m-walletBalance--cash__colSubtitle"
>
<p>
Estimated Payout
</p>
<p>
{{ nextPayoutDate }}
</p>
<div
class=
"m-walletBalance--cash__colValWrapper"
*ngIf=
"!hasAccount"
>
<span
class=
"m-walletBalance--cash__colVal--int"
>
$0
</span>
</div>
<ng-container
*ngIf=
"hasAccount"
>
<div
class=
"m-walletBalance--cash__colValWrapper"
>
<span
class=
"m-walletBalance--cash__colVal--int"
>
{{
pendingBalance.int
| number: '1.0-0'
| currency: currency
| slice: 0:-3
}}
</span
><span
class=
"m-walletBalance--cash__colVal--frac"
*ngIf=
"pendingBalance.frac"
>
.{{ pendingBalance.frac }}
</span
>
</div>
<div
class=
"m-walletBalance--cash__colSubtitle"
>
<p>
Estimated Payout
</p>
<p>
{{ nextPayoutDate }}
</p>
</div>
</ng-container>
</div>
<!-- ---TOTAL PAID OUT------------------------------------------------- -->
...
...
@@ -71,7 +82,8 @@
<div
class=
"m-walletBalance--cash__colSubtitle"
>
<p>
Go to
<a
routerLink=
"/analytics/dashboard/earnings"
>
Pro Analytics
</a>
Go to
<a
routerLink=
"/analytics/dashboard/earnings"
>
Pro Analytics
</a>
</p>
</div>
</div>
...
...
This diff is collapsed.
src/app/modules/wallet/v2/balance-cash/balance-cash.component.scss
View file @
e6120dab
...
...
@@ -11,7 +11,7 @@ m-walletBalance--cash {
}
.m-walletBalance--cash__colContainer
{
display
:
flex
;
justify-content
:
space-between
;
justify-content
:
flex-start
;
flex-flow
:
row
wrap
;
}
...
...
@@ -43,6 +43,7 @@ m-walletBalance--cash {
.m-walletBalance--cash__col
{
max-width
:
200px
;
margin-right
:
18px
;
.m-walletBalance--cash__colTitle
{
font-size
:
16px
;
line-height
:
21px
;
...
...
@@ -81,32 +82,38 @@ m-walletBalance--cash {
}
}
// .m-walletBalance--cash__colTitle {
// min-width: 78px;
// font-size: 16px;
// line-height: 21px;
// }
.m-walletBalance--cash__colValWrapper
{
font-size
:
13px
;
line-height
:
18px
;
font-weight
:
500
;
margin-top
:
8px
;
}
// .m-walletBalance--cash__colVal--int {
// font-size: 16px;
// line-height: 21px;
// @include m-theme() {
// color: themed($m-grey-800);
// }
// }
// .m-walletBalance--cash__colVal--frac {
// font-size: 13px;
// line-height: 18px;
// }
a
{
display
:
inline-block
;
margin-top
:
14px
;
font-size
:
14px
;
line-height
:
19px
;
}
// ONBOARDING NOTICE ///////////////////////////
.m-walletBalance---cash__onboardingNotice
{
margin-bottom
:
30px
;
padding
:
20px
23px
;
@include
m-theme
()
{
border
:
1px
solid
themed
(
$m-borderColor--primary
);
}
p
{
font-size
:
13px
;
line-height
:
18px
;
margin
:
0
;
}
a
{
font-size
:
14px
;
line-height
:
19px
;
margin
:
0
0
3px
0
;
text-decoration
:
underline
;
cursor
:
pointer
;
}
}
}
This diff is collapsed.
src/app/modules/wallet/v2/balance-cash/balance-cash.component.ts
View file @
e6120dab
...
...
@@ -51,13 +51,14 @@ export class WalletBalanceCashComponent implements OnInit, OnDestroy {
this
.
detectChanges
();
}
);
// TOOOJM toggle
this
.
isPro
=
true
;
// this.isPro = this.configs.get('pro');
this
.
isPro
=
this
.
configs
.
get
(
'
pro
'
);
this
.
load
();
this
.
getProEarnings
();
// this.loaded = true;
if
(
this
.
isPro
)
{
this
.
getProEarnings
();
}
this
.
loaded
=
true
;
this
.
detectChanges
();
}
...
...
@@ -68,7 +69,8 @@ export class WalletBalanceCashComponent implements OnInit, OnDestroy {
}
async
load
()
{
// TODOOJM confirm that mark has migrated all stripe accts to monthly intervals
// TODOOJM confirm that Mark has migrated all stripe accts to monthly intervals
// TODOOJM OR just get the payout date from the stripe account itself
this
.
nextPayoutDate
=
moment
()
.
endOf
(
'
month
'
)
.
format
(
'
ddd Do MMM
'
);
...
...
@@ -92,6 +94,7 @@ export class WalletBalanceCashComponent implements OnInit, OnDestroy {
this
.
account
.
pendingBalance
.
amount
)
/
100
;
console
.
log
(
'
888totalpaidoutraw
'
,
totalPaidOutRaw
);
if
(
totalPaidOutRaw
<
0
)
{
totalPaidOutRaw
=
0
;
}
...
...
@@ -107,16 +110,14 @@ export class WalletBalanceCashComponent implements OnInit, OnDestroy {
this
.
inProgress
=
true
;
this
.
detectChanges
();
// try {
// const response: number = await this.walletService.getProEarnings();
// this.proEarnings = this.formatBalance(response);
// } catch (e) {
// console.error(e.message);
// this.proEarnings = this.formatBalance(0);
// }
this
.
proEarnings
=
this
.
formatBalance
(
123.4
);
try
{
const
response
:
number
=
await
this
.
walletService
.
getProEarnings
();
this
.
proEarnings
=
this
.
formatBalance
(
response
);
}
catch
(
e
)
{
console
.
error
(
e
.
message
);
this
.
proEarnings
=
this
.
formatBalance
(
0
);
}
this
.
inProgress
=
false
;
this
.
loaded
=
true
;
this
.
detectChanges
();
}
...
...
This diff is collapsed.
src/app/modules/wallet/v2/chart/chart.component.html
View file @
e6120dab
<ng-container
*ngIf=
"!inProgress"
>
<ng-container
*ngIf=
"!inProgress
&& dashboard
"
>
<m-timespanFilter
[timespans]=
"dashboard.timespans"
[activeTimespanId]=
"activeTimespan.id"
...
...
@@ -12,3 +12,6 @@
[segments]=
"activeMetric.visualisation.segments"
></m-chartV2>
</ng-container>
<div
*ngIf=
"inProgress || !dashboard"
class=
"m-wallet__spinner"
>
<div
class=
"mdl-spinner mdl-js-spinner is-active"
[
mdl
]
></div>
</div>
This diff is collapsed.
src/app/modules/wallet/v2/chart/chart.component.scss
View file @
e6120dab
m-walletChart
{
m-timespanFilter
{
margin-right
:
40px
;
@media
screen
and
(
max-width
:
$max-mobile
)
{
margin-right
:
20px
;
}
}
.m-chartV2__chartContainer
{
margin-top
:
16px
;
...
...
This diff is collapsed.
src/app/modules/wallet/v2/chart/chart.component.ts
View file @
e6120dab
...
...
@@ -23,19 +23,17 @@ export class WalletChartComponent implements OnInit {
async
load
()
{
this
.
inProgress
=
true
;
let
queryTsId
=
'
1W
'
;
if
(
this
.
init
)
{
queryTsId
=
this
.
activeTimespan
.
id
;
}
const
response
:
any
=
await
this
.
walletService
.
getTokenChart
(
queryTsId
);
const
timespanId
=
this
.
init
?
this
.
activeTimespan
.
id
:
'
30d
'
;
const
response
:
any
=
await
this
.
walletService
.
getTokenChart
(
timespanId
);
if
(
response
&&
response
.
dashboard
)
{
this
.
dashboard
=
response
.
dashboard
;
this
.
dashboard
.
timespans
=
this
.
mapTimespanLabels
(
response
.
dashboard
.
timespans
);
this
.
activeTimespan
=
this
.
dashboard
.
timespans
.
find
(
ts
=>
ts
.
selected
===
true
ts
=>
ts
.
id
===
timespanId
);
const
activeMetricId
=
this
.
dashboard
.
metric
;
...
...
@@ -65,7 +63,9 @@ export class WalletChartComponent implements OnInit {
};
timespans
.
forEach
(
t
=>
{
t
.
label
=
labelMap
[
t
.
id
];
if
(
labelMap
[
t
.
id
])
{
t
.
label
=
labelMap
[
t
.
id
];
}
});
return
timespans
;
...
...
This diff is collapsed.
src/app/modules/wallet/v2/dashboard.component.html
View file @
e6120dab
<m-pageLayout
[menu]=
"menu"
>
<div
*ngIf=
"inProgress"
class=
"m-wallet__spinner"
>
<div
class=
"mdl-spinner mdl-js-spinner is-active"
[
mdl
]
></div>
</div>
<m-pageLayout
[menu]=
"menu"
*ngIf=
"!inProgress"
>
<div
class=
"m-walletDashboard"
m-pageLayout__main
*ngIf=
"currencies"
>
<m-dashboardLayout>
<ng-container
m-dashboardLayout__header
>
...
...
@@ -70,11 +73,13 @@
<m-walletSettings--tokens
class=
"m-walletDashboardViews__view"
*ngIf=
"activeCurrencyId === 'tokens'"
(onchainAddressChanged)=
"loadWallet()"
#tokenSettings
></m-walletSettings--tokens>
<m-walletSettings--cash
class=
"m-walletDashboardViews__view"
*ngIf=
"activeCurrencyId === 'cash'"
(accountChanged)=
"loadWallet()"
#cashSettings
></m-walletSettings--cash>
<m-walletSettings--eth
...
...
This diff is collapsed.
src/app/modules/wallet/v2/dashboard.component.scss
View file @
e6120dab
...
...
@@ -16,6 +16,14 @@
}
////////////////////////////////////////////
m-walletDashboard
{
.m-wallet__spinner
{
display
:
flex
;
justify-content
:
space-around
;
align-items
:
center
;
}
m-tooltip
{
z-index
:
99999
;
}
m-shadowboxHeader
{
min-height
:
103px
;
}
...
...
@@ -351,8 +359,8 @@ m-walletDashboard {
min-width
:
100%
;
max-width
:
100%
;
}
m-phoneInput
input
{
min-width
:
none
;
.m-phoneInput__
input
{
min-width
:
0
;
}
}
}
...
...
@@ -398,7 +406,7 @@ m-walletDashboard {
font-size
:
14px
;
line-height
:
19px
;
margin
:
23px
0
0
0
;
// font-weight: 300;
font-weight
:
400
;
// TODOOJM - make this 300 on the install metamask page
@include
m-theme
()
{
color
:
themed
(
$m-textColor--tertiary
);
}
...
...
@@ -417,16 +425,15 @@ m-walletDashboard {
flex-flow
:
row
wrap
;
font-size
:
15px
;
line-height
:
20px
;
// font-weight: 300;
div
:first-child
{
margin
-right
:
18px
;
margin
:
0
18px
8px
0
;
@include
m-theme
()
{
color
:
themed
(
$m-textColor--primary
);
}
}
a
{
font-size
:
1
5
px
;
font-size
:
1
4
px
;
line-height
:
20px
;
font-weight
:
300
;
}
...
...
@@ -491,6 +498,9 @@ m-walletDashboard {
)
10
100%
;
}
a
{
font-weight
:
300
;
}
}
div
{
display
:
flex
;
...
...
This diff is collapsed.
src/app/modules/wallet/v2/dashboard.component.ts
View file @
e6120dab
...
...
@@ -7,13 +7,12 @@ import {
Inject
,
ViewChild
,
ElementRef
,
AfterViewInit
,
OnDestroy
,
}
from
'
@angular/core
'
;
import
{
isPlatformBrowser
}
from
'
@angular/common
'
;
import
{
Subscription
}
from
'
rxjs
'
;
import
{
WalletDashboardService
}
from
'
./dashboard.service
'
;
import
{
WalletDashboardService
,
Wallet
}
from
'
./dashboard.service
'
;
import
{
Session
}
from
'
../../../services/session
'
;
import
{
ActivatedRoute
,
Router
,
ParamMap
}
from
'
@angular/router
'
;
import
sidebarMenu
from
'
./sidebar-menu.default
'
;
...
...
@@ -34,7 +33,8 @@ export class WalletDashboardComponent implements OnInit, OnDestroy {
menu
:
Menu
=
sidebarMenu
;
paramsSubscription
:
Subscription
;
wallet
=
{};
wallet
:
Wallet
;
inProgress
:
boolean
=
true
;
activeCurrencyId
:
string
;
activeViewId
:
string
;
...
...
@@ -78,8 +78,6 @@ export class WalletDashboardComponent implements OnInit, OnDestroy {
this
.
onboardingComplete
=
true
;
}
this
.
wallet
=
this
.
walletService
.
getWallet
();
this
.
paramsSubscription
=
this
.
route
.
paramMap
.
subscribe
(
(
params
:
ParamMap
)
=>
{
const
currencyParam
=
params
.
get
(
'
currency
'
);
...
...
@@ -103,8 +101,7 @@ export class WalletDashboardComponent implements OnInit, OnDestroy {
this
.
detectChanges
();
}
);
this
.
setCurrencies
();
this
.
detectChanges
();
this
.
loadWallet
();
}
ngOnDestroy
()
{
...
...
@@ -113,19 +110,41 @@ export class WalletDashboardComponent implements OnInit, OnDestroy {
}
}
async
loadWallet
()
{
try
{
this
.
wallet
=
await
this
.
walletService
.
getWallet
();
if
(
this
.
wallet
)
{
this
.
setCurrencies
();
this
.
inProgress
=
false
;
}
}
catch
(
e
)
{
console
.
error
(
e
);
}
this
.
detectChanges
();
}
setCurrencies
()
{
const
headerCurrencies
=
[
'
tokens
'
,
'
cash
'
,
'
eth
'
,
'
btc
'
];
this
.
currencies
=
[];
const
headerCurrencies
:
string
[]
=
[
'
tokens
'
,
'
cash
'
,
'
eth
'
,
'
btc
'
];
headerCurrencies
.
forEach
(
currency
=>
{
const
headerTab
:
ShadowboxHeaderTab
=
{
id
:
currency
,
label
:
this
.
wallet
[
currency
].
label
,
unit
:
this
.
wallet
[
currency
].
unit
,
isLocalCurrency
:
currency
===
'
cash
'
?
true
:
false
,
value
:
this
.
wallet
[
currency
].
balance
,
isLocalCurrency
:
false
,
};
if
(
currency
!==
'
btc
'
)
{
headerTab
.
value
=
this
.
wallet
[
currency
].
balance
;
// Handle currency formatting for cash
if
(
currency
===
'
cash
'
)
{
if
(
this
.
wallet
.
cash
.
unit
===
'
cash
'
)
{
headerTab
.
unit
=
'
usd
'
;
}
else
{
headerTab
.
isLocalCurrency
=
true
;
}
}
this
.
currencies
.
push
(
headerTab
);
this
.
detectChanges
();
});
}
...
...
This diff is collapsed.
src/app/modules/wallet/v2/dashboard.service.ts
View file @
e6120dab
...
...
@@ -4,58 +4,70 @@ import { Session } from '../../../services/session';
import
{
Web3WalletService
}
from
'
../../blockchain/web3-wallet.service
'
;
import
{
TokenContractService
}
from
'
../../blockchain/contracts/token-contract.service
'
;
import
toFriendlyCryptoVal
from
'
../../../helpers/friendly-crypto
'
;
import
{
BehaviorSubject
,
Observable
,
combineLatest
}
from
'
rxjs
'
;
import
fakeData
from
'
./fake-data
'
;
export
interface
WalletCurrency
{
label
:
string
;
unit
:
string
;
balance
:
number
;
address
:
string
|
null
;
}
export
interface
Wallet
{
tokens
:
WalletCurrency
;
offchain
:
WalletCurrency
;
onchain
:
WalletCurrency
;
receiver
:
WalletCurrency
;
cash
:
WalletCurrency
;
eth
:
WalletCurrency
;
btc
:
WalletCurrency
;
}
@
Injectable
()
export
class
WalletDashboardService
{
walletLoaded
=
false
;
totalTokens
=
0
;
wallet
:
any
=
{
wallet
:
Wallet
=
{
tokens
:
{
label
:
'
Tokens
'
,
unit
:
'
tokens
'
,
balance
:
'
0
'
,
balance
:
0
,
address
:
null
,
},
offchain
:
{
label
:
'
Off-chain
'
,
unit
:
'
tokens
'
,
balance
:
'
0
'
,
balance
:
0
,
address
:
'
offchain
'
,
},
onchain
:
{
label
:
'
On-chain
'
,
unit
:
'
tokens
'
,
balance
:
'
0
'
,
balance
:
0
,
address
:
null
,
},
receiver
:
{
label
:
'
Receiver
'
,
unit
:
'
tokens
'
,
balance
:
'
0
'
,
balance
:
0
,
address
:
null
,
},
cash
:
{
label
:
'
Cash
'
,
unit
:
'
cash
'
,
balance
:
'
0
'
,
balance
:
0
,
address
:
null
,
},
eth
:
{
label
:
'
Ether
'
,
unit
:
'
eth
'
,
balance
:
'
0
'
,
balance
:
0
,
address
:
null
,
},
btc
:
{
label
:
'
Bitcoin
'
,
unit
:
'
btc
'
,
balance
:
'
0
'
,
balance
:
0
,
address
:
null
,
},
// loading: false,
};
constructor
(
...
...
@@ -65,13 +77,10 @@ export class WalletDashboardService {
protected
session
:
Session
)
{}
getWallet
()
{
this
.
getTokenAccounts
();
this
.
getEthAccount
();
this
.
getStripeAccount
();
// TODOOJM toggle
// this.wallet = fakeData.wallet;
async
getWallet
()
{
await
this
.
getTokenAccounts
();
await
this
.
getEthAccount
();
await
this
.
getStripeAccount
();
this
.
walletLoaded
=
true
;
return
this
.
wallet
;
...
...
@@ -141,7 +150,7 @@ export class WalletDashboardService {
this
.
wallet
.
onchain
.
balance
);
}
catch
(
e
)
{
console
.
log
(
e
);
console
.
error
(
e
);
}
}
...
...
@@ -159,25 +168,27 @@ export class WalletDashboardService {
}
async
getStripeAccount
()
{
//TODOOJM toggle
// return fakeData.stripe_account.account;
const
merchant
=
this
.
session
.
getLoggedInUser
().
merchant
;
if
(
merchant
&&
merchant
.
service
===
'
stripe
'
)
{
try
{
const
{
account
}
=
<
any
>
(
await
this
.
client
.
get
(
'
api/v2/payments/stripe/connect
'
)
);
if
(
account
&&
account
.
totalBalance
)
{
if
(
account
)
{
this
.
wallet
.
cash
.
address
=
'
stripe
'
;
this
.
wallet
.
cash
.
balance
=
(
account
.
totalBalance
.
amount
-
account
.
pendingBalance
.
amount
)
/
100
;
if
(
account
.
bankAccount
)
{
const
c
=
account
.
bankAccount
.
currency
;
this
.
wallet
.
cash
.
label
=
c
.
toUpperCase
;
this
.
wallet
.
cash
.
unit
=
c
;
const
bankCurrency
=
account
.
bankAccount
.
currency
;
this
.
wallet
.
cash
.
label
=
bankCurrency
.
toUpperCase
;
this
.
wallet
.
cash
.
unit
=
bankCurrency
;
}
else
{
// Has stripe account but not setup bank account
const
defaultCurrency
=
account
.
pendingBalance
.
currency
;
this
.
wallet
.
cash
.
label
=
defaultCurrency
.
toUpperCase
;
this
.
wallet
.
cash
.
unit
=
defaultCurrency
;
}
}
return
account
;
}
catch
(
e
)
{
console
.
error
(
e
);
...
...
@@ -189,22 +200,12 @@ export class WalletDashboardService {
}
async
createStripeAccount
(
form
)
{
console
.
log
(
'
stripeform
'
,
form
);
try
{
const
response
=
<
any
>
(
await
this
.
client
.
p
ost
(
'
api/v1/merchant/onboard
'
,
form
)
await
this
.
client
.
p
ut
(
'
api/v2/wallet/usd/account
'
,
form
)
);
return
response
;
}
catch
(
e
)
{
console
.
error
(
e
);
return
e
;
}
}
async
updateStripeAccount
(
form
)
{
try
{
const
response
=
<
any
>
(
await
this
.
client
.
post
(
'
api/v2/payments/stripe/connect
'
,
form
)
);
return
response
;
}
catch
(
e
)
{
console
.
error
(
e
);
...
...
@@ -285,7 +286,6 @@ export class WalletDashboardService {
// TODOOJM toggle fake data
return
response
.
transactions
;
// return fakeData.stripe_payouts;
}
catch
(
e
)
{
console
.
error
(
e
);
return
;
...
...
@@ -293,31 +293,25 @@ export class WalletDashboardService {
}
async
getTokenChart
(
activeTimespanId
)
{
const
opts
=
{
timespan
:
activeTimespanId
};
// TODOOJM toggle
const
opts
=
{
metric
:
'
token_balance
'
,
timespan
:
activeTimespanId
,
};
try
{
const
response
=
<
any
>
(
await
this
.
client
.
post
(
'
api/v2/analytics/dashboards/engagement?metric=token_balance
'
,
opts
)
await
this
.
client
.
get
(
'
api/v2/analytics/dashboards/token
'
,
opts
)
);
return
response
;
}
catch
(
e
)
{
console
.
error
(
e
);
return
e
;
}
// return fakeData.token_chart;
}
async
getProEarnings
()
{
// return 77.3;
try
{
const
response
=
<
any
>
(
await
this
.
client
.
pos
t
(
await
this
.
client
.
ge
t
(
'
api/v2/analytics/dashboards/earnings?metric=earnings_total×pan=today
'
)
);
...
...
@@ -336,18 +330,10 @@ export class WalletDashboardService {
async
getTokenTransactions
(
opts
)
{
try
{
// TODOOJM uncomment
const
response
=
<
any
>
(
await
this
.
client
.
get
(
`api/v2/blockchain/transactions/ledger`
,
opts
)
);
return
response
;
// TODOOJM remove
// if (!opts.contract) {
// return fakeData.tx_tokens;
// } else {
// return fakeData.tx_tokens_filtered;
// }
}
catch
(
e
)
{
console
.
error
(
e
);
return
;
...
...
@@ -384,7 +370,6 @@ export class WalletDashboardService {
}
async
getDailyTokenContributionScores
(
dateRangeOpts
)
{
// TODOOJM toggle
try
{
const
response
:
any
=
await
this
.
client
.
post
(
'
api/v2/blockchain/contributions
'
,
...
...
@@ -398,6 +383,5 @@ export class WalletDashboardService {
console
.
error
(
e
);
return
false
;
}
// return fakeData.pendingTokenRewards;
}
}
This diff is collapsed.
src/app/modules/wallet/v2/rewards-popup/rewards-popup.component.html
View file @
e6120dab
<div
class=
"m-walletRewardsPopup"
>
<div
*ngIf=
"inProgress"
>
<div
*ngIf=
"inProgress"
class=
"m-wallet__spinner"
>
<div
class=
"mdl-spinner mdl-js-spinner is-active"
[
mdl
]
></div>
</div>
<div
...
...
This diff is collapsed.
src/app/modules/wallet/v2/rewards-popup/rewards-popup.component.ts
View file @
e6120dab
...
...
@@ -4,6 +4,7 @@ import {
Input
,
ChangeDetectionStrategy
,
ChangeDetectorRef
,
ViewRef
,
}
from
'
@angular/core
'
;
import
{
WalletDashboardService
}
from
'
../dashboard.service
'
;
...
...
@@ -58,7 +59,9 @@ export class WalletRewardsPopupComponent implements OnInit {
this
.
detectChanges
();
}
detectChanges
()
{
this
.
cd
.
markForCheck
();
this
.
cd
.
detectChanges
();
if
(
!
(
this
.
cd
as
ViewRef
).
destroyed
)
{
this
.
cd
.
markForCheck
();
this
.
cd
.
detectChanges
();
}
}
}
This diff is collapsed.
src/app/modules/wallet/v2/settings-cash/cash-bank-form/cash-bank-form.component.html
View file @
e6120dab
...
...
@@ -103,7 +103,7 @@
</div>
</div>
<div
class=
"m-walletSettingsView--hasAccount__leaveMonetization"
>
<
!-- <
div class="m-walletSettingsView--hasAccount__leaveMonetization">
<h4>Leave Monetization Program</h4>
<p>
For security reasons, you won't be able to rejoin the monetization
...
...
@@ -114,7 +114,7 @@
(click)="showModal = true; modalContent = 'leaveMonetization'"
>Leave Monetization Program</m-shadowboxSubmitButton
>
</div>
</div>
-->
</ng-container>
<!-- CONFIRMATION MODAL: LEAVE EDIT MODE -------------------- -->
<m-walletModal
...
...
This diff is collapsed.
src/app/modules/wallet/v2/settings-cash/cash-bank-form/cash-bank-form.component.ts
View file @
e6120dab
...
...
@@ -71,6 +71,7 @@ export class WalletCashBankFormComponent implements OnInit {
// this.detectChanges();
// }
async
removeBank
()
{
this
.
showModal
=
false
;
this
.
inProgress
=
true
;
this
.
detectChanges
();
...
...
@@ -138,6 +139,7 @@ export class WalletCashBankFormComponent implements OnInit {
}
leaveEditMode
()
{
this
.
showModal
=
false
;
this
.
editing
=
false
;
this
.
form
.
reset
();
this
.
detectChanges
();
...
...
This diff is collapsed.
src/app/modules/wallet/v2/settings-cash/cash-onboarding-extras/cash-onboarding-extras.component.html
View file @
e6120dab
...
...
@@ -110,23 +110,23 @@
>
<div
class=
"m-walletForm__field--text"
>
<div
class=
"m-walletForm__row--label"
>
<label
for=
"personalId"
i18n
<label
for=
"personalId
Number
"
i18n
>
Personal ID / Social Security Number (SSN) / National Insurance
Number
</label
>
</div>
<div
class=
"m-walletForm__row--input"
>
<input
#personalId
id=
"personalId"
name=
"personalId"
#personalId
Number
id=
"personalId
Number
"
name=
"personalId
Number
"
class=
"form-control"
data-minds=
"personalId"
data-minds=
"personalId
Number
"
/>
</div>
</div>
<m-shadowboxSubmitButton
(click)=
"updateField('id_number', personalId.value)"
(click)=
"updateField('id_number', personalId
Number
.value)"
[disabled]=
"inProgress"
[saving]=
"inProgress"
>
Save
</m-shadowboxSubmitButton
...
...
This diff is collapsed.
src/app/modules/wallet/v2/settings-cash/cash-onboarding/cash-onboarding.component.html
View file @
e6120dab
<div
class=
"m-walletCashOnboarding"
>
<div
class=
"m-walletCashOnboardingView--addDetails"
*ngIf=
"!editing"
>
<p>
Add your bank account details where cash rewards will be deposited.
</p>
<m-shadowboxSubmitButton
(click)=
"enterEditMode()"
color=
"grey"
>
Set up cash payment
s
</m-shadowboxSubmitButton
>
<m-shadowboxSubmitButton
(click)=
"enterEditMode()"
>
Add your bank detail
s
</m-shadowboxSubmitButton
>
`
</div>
<div
class=
"m-walletCashOnboardingView--form"
*ngIf=
"editing"
>
<form
[formGroup]=
"form"
>
<p>
Enter personal details to s
etup your cash payment
account.
</p>
<p>
Enter personal details to s
tart setting up your cash
account.
</p>
<!-- ------------------------------------------------------------ -->
<!-- **** INPUT: COUNTRY DROPDOWN -->
...
...
@@ -87,15 +87,6 @@
class=
"form-control"
(selectedDateChange)=
"dob.setValue($event)"
></m-date
__dropdowns
>
<!-- <minds-date-input
id="dob"
name="dob"
class="form-control"
formControlName="dob"
data-minds="dob"
[date]="dob.value"
(dateChange)="dob.setValue($event)"
></minds-date-input> -->
</div>
</div>
...
...
@@ -124,19 +115,19 @@
*ngIf=
"isCountry(['HK', 'SG'])"
>
<div
class=
"m-walletForm__row--label"
>
<label
for=
"personalId"
i18n
*ngIf=
"isCountry(['HK'])"
<label
for=
"personalId
Number
"
i18n
*ngIf=
"isCountry(['HK'])"
>
Hong Kong Identity Card (HKID)
</label
>
<label
for=
"personalId"
i18n
*ngIf=
"isCountry(['SG'])"
<label
for=
"personalId
Number
"
i18n
*ngIf=
"isCountry(['SG'])"
>
National Registration Identity Card (NRIC)
</label
>
</div>
<div
class=
"m-walletForm__row--input"
>
<input
type=
"text"
id=
"personalId"
name=
"personalId"
formControlName=
"personalId"
id=
"personalId
Number
"
name=
"personalId
Number
"
formControlName=
"personalId
Number
"
class=
"form-control"
/>
</div>
...
...
@@ -267,10 +258,12 @@
<div
class=
"m-walletForm__field--checkbox"
>
<div
class=
"m-walletSettings__row--input"
>
<m-formInput
__checkbox
formControlName=
"stripeAgree"
>
I have read and agree to the
<a
href=
"https://stripe.com/legal"
target=
"_blank"
>
Stripe Services Agreement
</a>
<span
>
I have read and agree to the
<a
href=
"https://stripe.com/legal"
target=
"_blank"
>
Stripe Services Agreement
</a></span
>
</m-formInput
__checkbox
>
</div>
</div>
...
...
@@ -284,14 +277,14 @@
<!-- FORM BUTTONS -------------- -->
<div
class=
"m-walletForm__buttonsContainer"
>
<m-shadowboxSubmitButton
(click)=
"
toggleEditMode(false)
"
(click)=
"
showModal = true
"
[disabled]=
"inProgress"
color=
"grey"
>
Cancel
</m-shadowboxSubmitButton
>
<m-shadowboxSubmitButton
(click)=
"createAccount()"
[disabled]=
"inProgress"
[disabled]=
"inProgress
|| form.invalid
"
[saving]=
"inProgress"
>
Update Personal Information
</m-shadowboxSubmitButton
>
...
...
This diff is collapsed.
src/app/modules/wallet/v2/settings-cash/cash-onboarding/cash-onboarding.component.ts
View file @
e6120dab
...
...
@@ -9,7 +9,7 @@ import {
import
{
FormBuilder
,
Validators
}
from
'
@angular/forms
'
;
import
{
requiredFor
,
optionalFor
}
from
'
./../settings-cash.validators
'
;
import
{
WalletDashboardService
}
from
'
../../dashboard.service
'
;
import
{
FormToastService
}
from
'
../../../../../common/services/form-toast.service
'
;
import
{
Session
}
from
'
../../../../../services/session
'
;
@
Component
({
selector
:
'
m-walletCashOnboarding
'
,
...
...
@@ -31,10 +31,12 @@ export class WalletCashOnboardingComponent implements OnInit {
private
cd
:
ChangeDetectorRef
,
protected
walletService
:
WalletDashboardService
,
private
fb
:
FormBuilder
,
pr
ivate
formToastService
:
FormToastService
pr
otected
session
:
Session
)
{}
ngOnInit
()
{
this
.
user
=
this
.
session
.
getLoggedInUser
();
this
.
form
=
this
.
fb
.
group
({
country
:
[
'
US
'
,
Validators
.
required
],
...
...
@@ -59,10 +61,11 @@ export class WalletCashOnboardingComponent implements OnInit {
this
.
inProgress
=
true
;
this
.
error
=
''
;
console
.
log
(
'
createAccountFormval
'
,
this
.
form
.
value
);
this
.
walletService
.
createStripeAccount
(
this
.
form
.
value
)
.
then
((
response
:
any
)
=>
{
console
.
log
(
'
createAccount response
'
,
response
);
console
.
log
(
'
create
Stripe
Account response
'
,
response
);
if
(
!
this
.
user
.
programs
)
{
this
.
user
.
programs
=
[];
...
...
@@ -73,10 +76,11 @@ export class WalletCashOnboardingComponent implements OnInit {
id
:
response
.
id
,
service
:
'
stripe
'
,
};
this
.
detectChanges
();
})
.
catch
(
e
=>
{
// TODO backend should include e.param
and handle errors inline
// TODO backend should include e.param
to allow inline error handling
this
.
error
=
e
.
message
;
});
...
...
@@ -93,6 +97,7 @@ export class WalletCashOnboardingComponent implements OnInit {
this
.
detectChanges
();
}
leaveEditMode
()
{
this
.
showModal
=
false
;
this
.
editing
=
false
;
this
.
form
.
reset
();
this
.
detectChanges
();
...
...
This diff is collapsed.
src/app/modules/wallet/v2/settings-cash/settings-cash.component.scss
View file @
e6120dab
...
...
@@ -47,6 +47,9 @@ m-walletSettings--cash {
m-walletCashOnboarding
{
.m-walletForm__field--checkbox
{
margin-top
:
100px
;
span
{
font-size
:
14px
;
}
}
}
}
This diff is collapsed.
src/app/modules/wallet/v2/settings-cash/settings-cash.component.ts
View file @
e6120dab
import
{
Component
,
OnInit
,
ChangeDetectorRef
}
from
'
@angular/core
'
;
import
{
Component
,
OnInit
,
ChangeDetectorRef
,
Output
,
EventEmitter
,
}
from
'
@angular/core
'
;
import
{
WalletDashboardService
}
from
'
../dashboard.service
'
;
import
{
Session
}
from
'
../../../../services/session
'
;
...
...
@@ -7,6 +13,9 @@ import { Session } from '../../../../services/session';
templateUrl
:
'
./settings-cash.component.html
'
,
})
export
class
WalletSettingsCashComponent
implements
OnInit
{
@
Output
()
accountChanged
:
EventEmitter
<
any
>
=
new
EventEmitter
<
any
>
();
@
Output
()
scrollToCashSettings
:
EventEmitter
<
any
>
=
new
EventEmitter
<
any
>
();
loaded
:
boolean
=
false
;
inProgress
:
boolean
=
true
;
user
;
...
...
@@ -61,7 +70,8 @@ export class WalletSettingsCashComponent implements OnInit {
// 3. (if necessary) extras
// 4. (once verified) bank
this
.
view
=
null
;
const
previousView
=
this
.
view
;
// this.view = null;
this
.
inProgress
=
true
;
this
.
detectChanges
();
...
...
@@ -82,6 +92,9 @@ export class WalletSettingsCashComponent implements OnInit {
this
.
view
=
'
extras
'
;
}
}
if
(
this
.
loaded
&&
previousView
===
this
.
view
&&
this
.
view
!==
'
error
'
)
{
this
.
accountChanged
.
emit
();
}
this
.
inProgress
=
false
;
this
.
detectChanges
();
}
...
...
@@ -94,8 +107,7 @@ export class WalletSettingsCashComponent implements OnInit {
.
getStripeAccount
()
.
then
((
account
:
any
)
=>
{
this
.
account
=
account
;
// console.log('888 this account', this.account);
// this.setView();
this
.
setView
();
})
.
catch
(
e
=>
{
this
.
error
=
e
.
message
;
...
...
This diff is collapsed.
src/app/modules/wallet/v2/settings-eth/settings-eth.component.html
View file @
e6120dab
<div
class=
"m-walletSettings"
*ngIf=
"
w
allet"
>
<div
class=
"m-walletSettings"
*ngIf=
"
ethW
allet"
>
<h2>
Ether Address
</h2>
<p>
Your Ether address is the same as your on-chain address.
<m-tooltip
...
...
@@ -12,10 +12,10 @@
To view or change your address, go to
<a
(click)=
"scrollToTokenSettings.emit()"
>
token settings
</a>
.
</p>
<div
*ngIf=
"
wallet.onchain.address
"
>
<div
*ngIf=
"
ethWallet.address"
class=
"m-walletSettings--eth__balanceWrapper
"
>
<div>
<p
class=
"m-wallet
Form__row--l
abel"
>
Ether total
</p>
<p
>
{{ wallet.eth
.balance }}
</p>
<p
class=
"m-wallet
Settings--eth__balanceL
abel"
>
Ether total
</p>
<p
class=
"m-walletSettings--eth__balanceVal"
>
{{ ethWallet
.balance }}
</p>
</div>
<m-shadowboxSubmitButton
[routerLink]=
"['/token', { purchaseEth: 'open' }]"
>
Buy Ether
...
...
This diff is collapsed.
src/app/modules/wallet/v2/settings-eth/settings-eth.component.scss
View file @
e6120dab
m-walletSettings--eth
{
.m-walletSettings--eth__balanceWrapper
{
display
:
flex
;
flex-flow
:
row
wrap
;
align-items
:
flex-end
;
justify-content
:
space-between
;
max-width
:
260px
;
margin-top
:
56px
;
&
>
div
{
margin-right
:
24px
;
}
}
.m-walletSettings--eth__balanceLabel
{
font-size
:
16px
;
line-height
:
21px
;
margin
:
0
0
3px
0
;
}
.m-walletSettings--eth__balanceVal
{
font-size
:
24px
;
line-height
:
32px
;
margin
:
0
;
@include
m-theme
()
{
color
:
themed
(
$m-textColor--primary
);
}
}
}
This diff is collapsed.
src/app/modules/wallet/v2/settings-eth/settings-eth.component.ts
View file @
e6120dab
import
{
Component
,
OnInit
,
Output
,
EventEmitter
}
from
'
@angular/core
'
;
import
{
WalletDashboardService
}
from
'
../dashboard.service
'
;
import
{
Component
,
OnInit
,
Output
,
EventEmitter
,
ChangeDetectorRef
,
}
from
'
@angular/core
'
;
import
{
WalletDashboardService
,
WalletCurrency
}
from
'
../dashboard.service
'
;
@
Component
({
selector
:
'
m-walletSettings--eth
'
,
templateUrl
:
'
./settings-eth.component.html
'
,
})
export
class
WalletSettingsETHComponent
implements
OnInit
{
wallet
;
showModal
=
false
;
ethWallet
:
WalletCurrency
;
@
Output
()
scrollToTokenSettings
:
EventEmitter
<
any
>
=
new
EventEmitter
();
constructor
(
protected
walletService
:
WalletDashboardService
)
{}
constructor
(
protected
walletService
:
WalletDashboardService
,
private
cd
:
ChangeDetectorRef
)
{}
ngOnInit
()
{
this
.
load
();
}
load
()
{
this
.
wallet
=
this
.
walletService
.
getWallet
();
async
load
()
{
this
.
ethWallet
=
await
this
.
walletService
.
getEthAccount
();
console
.
log
(
'
ethw
'
,
this
.
ethWallet
);
this
.
detectChanges
();
}
detectChanges
()
{
this
.
cd
.
markForCheck
();
this
.
cd
.
detectChanges
();
}
}
This diff is collapsed.
src/app/modules/wallet/v2/settings-tokens/settings-tokens.component.html
View file @
e6120dab
...
...
@@ -38,18 +38,16 @@
</ng-container>
<ng-container
*ngIf=
"linkingMetamask"
>
<ng-container
*ngIf=
"hasExternal"
>
<p
*ngIf=
"providedAddress"
>
<
!-- <
p *ngIf="providedAddress">
{{ providedAddress }}
</p>
</p> -->
<p
*ngIf=
"!providedAddress"
>
MetaMask is either locked or connected to another network.
</p>
</ng-container>
<p
*ngIf=
"hasExternal && providedAddress"
>
<
!-- <
p *ngIf="hasExternal && providedAddress">
Please ensure you select the "Main Ethereum Network".
</p>
</p> -->
<p
*ngIf=
"downloadingMetamask"
>
Note: You might need to reload Minds after installing and setting up
MetaMask.
...
...
This diff is collapsed.
src/app/modules/wallet/v2/settings-tokens/settings-tokens.component.ts
View file @
e6120dab
...
...
@@ -77,6 +77,7 @@ export class WalletSettingsTokensComponent implements OnInit, OnDestroy {
}
// TODOOJM add fx to reload whenever the current setting is updated
ngOnInit
()
{
this
.
load
();
}
...
...
@@ -124,7 +125,7 @@ export class WalletSettingsTokensComponent implements OnInit, OnDestroy {
}
catch
(
e
)
{
console
.
error
(
e
);
// TODOOJM get rid of form toast
this
.
formToastService
.
error
(
e
);
//
this.formToastService.error(e);
}
finally
{
this
.
inProgress
=
false
;
this
.
detectChanges
();
...
...
@@ -172,7 +173,7 @@ export class WalletSettingsTokensComponent implements OnInit, OnDestroy {
}
catch
(
e
)
{
console
.
error
(
e
);
// TODOOJM get rid of form toast
this
.
formToastService
.
error
(
e
);
//
this.formToastService.error(e);
this
.
inProgress
=
false
;
}
}
...
...
@@ -228,6 +229,7 @@ export class WalletSettingsTokensComponent implements OnInit, OnDestroy {
async
useExternal
()
{
this
.
linkingMetamask
=
true
;
this
.
inProgress
=
true
;
await
this
.
web3Wallet
.
ready
();
this
.
detectExternal
();
if
(
isPlatformBrowser
(
this
.
platformId
))
{
...
...
@@ -237,6 +239,7 @@ export class WalletSettingsTokensComponent implements OnInit, OnDestroy {
}
},
1000
);
}
this
.
detectChanges
();
}
async
detectExternal
()
{
...
...
@@ -245,12 +248,36 @@ export class WalletSettingsTokensComponent implements OnInit, OnDestroy {
if
(
this
.
providedAddress
!==
address
)
{
this
.
providedAddress
=
address
;
this
.
currentAddress
=
address
;
if
(
isPlatformBrowser
(
this
.
platformId
))
{
if
(
address
)
{
clearInterval
(
this
.
_externalTimer
);
// this.provideAddress();
this
.
provideMetamaskAddress
(
address
);
this
.
detectChanges
();
}
}
this
.
detectChanges
();
}
}
if
(
this
.
providedAddress
)
{
clearInterval
(
this
.
_externalTimer
);
this
.
provideAddress
();
}
async
provideMetamaskAddress
(
address
)
{
try
{
this
.
inProgress
=
true
;
this
.
detectChanges
();
await
this
.
blockchain
.
setWallet
({
address
:
address
});
this
.
currentAddress
=
address
;
this
.
display
=
Views
.
CurrentAddress
;
this
.
addressSetupComplete
.
emit
();
}
catch
(
e
)
{
// TODOOJM get rid of form toast
this
.
formToastService
.
error
(
e
);
console
.
error
(
e
);
}
finally
{
this
.
inProgress
=
false
;
this
.
linkingMetamask
=
false
;
this
.
detectChanges
();
}
}
...
...
This diff is collapsed.
src/app/modules/wallet/v2/token-onboarding/token-onboarding.component.scss
View file @
e6120dab
...
...
@@ -39,6 +39,10 @@ m-walletTokenOnboarding {
@include
m-theme
()
{
border-right
:
1px
solid
themed
(
$m-grey-50
);
}
.m-walletTokenOnboardingModal__view--verifyPhone
{
margin-top
:
12px
;
}
}
.m-walletTokenOnboardingStep__title
{
font-weight
:
500
;
...
...
@@ -76,6 +80,13 @@ m-walletTokenOnboarding {
}
}
.m-walletForm__wrapper
{
margin-bottom
:
38px
;
}
.m-phoneInput__countryList
{
max-height
:
114px
;
}
// ***************************************************
@media
screen
and
(
max-width
:
$max-mobile
)
{
[
class
*=
'm-walletTokenOnboardingStep--'
]
{
...
...
This diff is collapsed.
src/app/modules/wallet/v2/transactions-cash/transactions-cash.component.ts
View file @
e6120dab
...
...
@@ -4,6 +4,7 @@ import {
Component
,
Input
,
OnInit
,
ViewRef
,
}
from
'
@angular/core
'
;
import
{
ActivatedRoute
,
Router
}
from
'
@angular/router
'
;
import
{
Client
}
from
'
../../../../services/api/client
'
;
...
...
@@ -50,6 +51,8 @@ export class WalletTransactionsCashComponent implements OnInit {
async
getStripeAccount
()
{
const
account
=
await
this
.
walletService
.
getStripeAccount
();
if
(
!
account
)
{
this
.
init
=
true
;
this
.
detectChanges
();
return
;
}
else
{
if
(
account
.
bankAccount
)
{
...
...
@@ -57,7 +60,6 @@ export class WalletTransactionsCashComponent implements OnInit {
}
this
.
runningTotal
=
account
.
pendingBalance
.
amount
/
100
;
this
.
detectChanges
();
}
...
...
@@ -217,7 +219,9 @@ export class WalletTransactionsCashComponent implements OnInit {
}
detectChanges
()
{
this
.
cd
.
markForCheck
();
this
.
cd
.
detectChanges
();
if
(
!
(
this
.
cd
as
ViewRef
).
destroyed
)
{
this
.
cd
.
markForCheck
();
this
.
cd
.
detectChanges
();
}
}
}
This diff is collapsed.
src/app/modules/wallet/v2/transactions-table/transactions-table.component.scss
View file @
e6120dab
...
...
@@ -72,6 +72,11 @@ m-walletTransactionsTable {
}
}
}
.m-walletTransactionsTable__typeWrapper
{
&
.containsPopover
{
cursor
:
defaut
;
}
}
.m-walletTransactionsTable__avatar
{
border-radius
:
100%
;
...
...
This diff is collapsed.
src/app/modules/wallet/v2/transactions-tokens/transactions-tokens.component.html
View file @
e6120dab
...
...
@@ -8,7 +8,7 @@
Upcoming
</div>
<div
class=
"m-walletTransactionsTable__typeWrapper"
class=
"m-walletTransactionsTable__typeWrapper
containsPopover
"
(mouseenter)=
"showRewardsPopup = true"
(mouseleave)=
"showRewardsPopup = false"
>
...
...
This diff is collapsed.
src/app/modules/wallet/v2/transactions-tokens/transactions-tokens.component.ts
View file @
e6120dab
...
...
@@ -4,6 +4,7 @@ import {
Component
,
OnInit
,
OnDestroy
,
ViewRef
,
}
from
'
@angular/core
'
;
import
{
ActivatedRoute
,
Router
}
from
'
@angular/router
'
;
import
{
Client
}
from
'
../../../../services/api/client
'
;
...
...
@@ -36,6 +37,7 @@ export class WalletTransactionsTokensComponent implements OnInit, OnDestroy {
showRewardsPopup
:
boolean
=
false
;
startOfToday
=
moment
().
startOf
(
'
day
'
);
// For admins viewing a remote user's transactions
remote
:
boolean
=
false
;
remoteUsername
:
string
=
''
;
...
...
@@ -107,10 +109,10 @@ export class WalletTransactionsTokensComponent implements OnInit, OnDestroy {
async
getBalance
()
{
const
tokenAccounts
=
await
this
.
walletService
.
getTokenAccounts
();
this
.
runningTotal
=
tokenAccounts
.
tokens
.
balance
;
this
.
load
(
true
);
this
.
load
Transactions
(
true
);
}
async
load
(
refresh
:
boolean
)
{
async
load
Transactions
(
refresh
:
boolean
)
{
if
(
this
.
inProgress
&&
!
refresh
)
{
return
;
}
...
...
@@ -276,7 +278,9 @@ export class WalletTransactionsTokensComponent implements OnInit, OnDestroy {
}
detectChanges
()
{
this
.
cd
.
markForCheck
();
this
.
cd
.
detectChanges
();
if
(
!
(
this
.
cd
as
ViewRef
).
destroyed
)
{
this
.
cd
.
markForCheck
();
this
.
cd
.
detectChanges
();
}
}
}
This diff is collapsed.
src/app/modules/wallet/v2/wallet-v2.module.ts
View file @
e6120dab
import
{
NgModule
}
from
'
@angular/core
'
;
import
{
NgModule
,
PLATFORM_ID
}
from
'
@angular/core
'
;
import
{
CommonModule
as
NgCommonModule
}
from
'
@angular/common
'
;
import
{
RouterModule
,
Routes
}
from
'
@angular/router
'
;
import
{
FormsModule
,
ReactiveFormsModule
}
from
'
@angular/forms
'
;
...
...
@@ -25,6 +25,12 @@ import { WalletTransactionsCashComponent } from './transactions-cash/transaction
import
{
WalletCashOnboardingComponent
}
from
'
./settings-cash/cash-onboarding/cash-onboarding.component
'
;
import
{
WalletCashOnboardingExtrasComponent
}
from
'
./settings-cash/cash-onboarding-extras/cash-onboarding-extras.component
'
;
import
{
WalletCashBankFormComponent
}
from
'
./settings-cash/cash-bank-form/cash-bank-form.component
'
;
import
{
Web3WalletService
}
from
'
../../blockchain/web3-wallet.service
'
;
import
{
LocalWalletService
}
from
'
../../blockchain/local-wallet.service
'
;
import
{
TransactionOverlayService
}
from
'
../../blockchain/transaction-overlay/transaction-overlay.service
'
;
import
{
ConfigsService
}
from
'
../../../common/services/configs.service
'
;
import
{
TokenContractService
}
from
'
../../blockchain/contracts/token-contract.service
'
;
import
{
WithdrawContractService
}
from
'
../../blockchain/contracts/withdraw-contract.service
'
;
//////////////////////////////////////////////////
// TODO add a wildcard and the parameter routes as children once feature-flag is lifted
...
...
@@ -90,6 +96,21 @@ export const WALLET_V2_ROUTES: Routes = [
WalletCashBankFormComponent
,
],
exports
:
[
WalletDashboardComponent
],
providers
:
[
WalletDashboardService
],
providers
:
[
WalletDashboardService
,
{
provide
:
Web3WalletService
,
useFactory
:
Web3WalletService
.
_
,
deps
:
[
LocalWalletService
,
TransactionOverlayService
,
PLATFORM_ID
,
ConfigsService
,
],
},
TokenContractService
,
WithdrawContractService
,
ConfigsService
,
],
})
export
class
WalletV2Module
{}
This diff is collapsed.
Please
register
or
sign in
to comment