Skip to content

Commit 1dca430

Browse files
committed
Add method and flow to add an existing vesting contract
1 parent f3090aa commit 1dca430

File tree

10 files changed

+319
-6
lines changed

10 files changed

+319
-6
lines changed

client/HubApi.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,13 @@ export default class HubApi<DB extends BehaviorType = BehaviorType.POPUP> { // D
219219
return this._request(requestBehavior, RequestType.RENAME, [request]);
220220
}
221221

222+
public addVestingContract<B extends BehaviorType = DB>(
223+
request: Promise<BasicRequest> | BasicRequest,
224+
requestBehavior: RequestBehavior<B> = this._defaultBehavior as any,
225+
): Promise<B extends BehaviorType.REDIRECT ? void : Account> {
226+
return this._request(requestBehavior, RequestType.ADD_VESTING_CONTRACT, [request]);
227+
}
228+
222229
public migrate<B extends BehaviorType = DB>(
223230
requestBehavior: RequestBehavior<B> = this._defaultBehavior as any,
224231
): Promise<B extends BehaviorType.REDIRECT ? void : Account[]> {

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
"@nimiq/iqons": "^1.5.2",
2222
"@nimiq/keyguard-client": "^1.3.0",
2323
"@nimiq/ledger-api": "^1.1.0",
24-
"@nimiq/network-client": "^0.4.0",
24+
"@nimiq/network-client": "^0.6.2",
2525
"@nimiq/rpc": "^0.4.1",
2626
"@nimiq/style": "^0.8.2",
2727
"@nimiq/utils": "^0.5.0",

src/components/Network.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<template></template>
22

33
<script lang="ts">
4-
import { Component, Prop, Vue } from 'vue-property-decorator';
4+
import { Component, Vue } from 'vue-property-decorator';
55
import { SignedTransaction } from '../lib/PublicRequestTypes';
66
import { NetworkClient, DetailedPlainTransaction } from '@nimiq/network-client';
77
import Config from 'config';

src/i18n/en.po

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,10 @@ msgstr ""
6262
msgid "Add a message..."
6363
msgstr ""
6464

65+
#: src/views/AddVestingContract.vue:51
66+
msgid "Add contract"
67+
msgstr ""
68+
6569
#: src/views/AddAccountSelection.vue:4
6670
msgid "Add to account"
6771
msgstr ""
@@ -70,6 +74,10 @@ msgstr ""
7074
msgid "Add to Ledger"
7175
msgstr ""
7276

77+
#: src/views/AddVestingContract.vue:4
78+
msgid "Add Vesting Contract"
79+
msgstr ""
80+
7381
#: src/views/AddAddressLedger.vue:16
7482
msgid "Address Added"
7583
msgstr ""
@@ -87,6 +95,10 @@ msgstr ""
8795
msgid "Amount"
8896
msgstr ""
8997

98+
#: src/views/AddVestingContract.vue:40
99+
msgid "Amount/Step:"
100+
msgstr ""
101+
90102
#: src/views/CashlinkManage.vue:158
91103
#: src/views/CheckoutTransmission.vue:77
92104
msgid "Awaiting receipt confirmation..."
@@ -153,6 +165,14 @@ msgstr ""
153165
msgid "Backed Up"
154166
msgstr ""
155167

168+
#: src/views/AddVestingContract.vue:28
169+
msgid "Balance:"
170+
msgstr ""
171+
172+
#: src/views/AddVestingContract.vue:36
173+
msgid "Blocks/Step:"
174+
msgstr ""
175+
156176
#: src/lib/LabelingMachine.ts:43
157177
msgid "Blue"
158178
msgstr ""
@@ -347,6 +367,14 @@ msgstr ""
347367
msgid "Continue"
348368
msgstr ""
349369

370+
#: src/views/AddVestingContract.vue:56
371+
msgid "Contract added."
372+
msgstr ""
373+
374+
#: src/views/AddVestingContract.vue:20
375+
msgid "Contract Information"
376+
msgstr ""
377+
350378
#: src/views/CashlinkManage.vue:32
351379
msgid "Copied"
352380
msgstr ""
@@ -409,6 +437,10 @@ msgstr ""
409437
msgid "Enter manually"
410438
msgstr ""
411439

440+
#: src/views/AddVestingContract.vue:45
441+
msgid "Enter the address of a vesting contract."
442+
msgstr ""
443+
412444
#: src/views/CashlinkCreate.vue:159
413445
msgid "express"
414446
msgstr ""
@@ -431,6 +463,10 @@ msgstr ""
431463
msgid "Fetching Addresses"
432464
msgstr ""
433465

466+
#: src/views/AddVestingContract.vue:16
467+
msgid "Fetching contract information..."
468+
msgstr ""
469+
434470
#: src/views/LoginSuccess.vue:42
435471
msgid "Fetching your addresses"
436472
msgstr ""
@@ -621,6 +657,10 @@ msgstr ""
621657
msgid "Orange"
622658
msgstr ""
623659

660+
#: src/views/AddVestingContract.vue:22
661+
msgid "Owner:"
662+
msgstr ""
663+
624664
#: src/components/NonNimiqCheckoutCard.vue:103
625665
msgid "Pay with {currencyFullName}"
626666
msgstr ""
@@ -765,11 +805,16 @@ msgstr ""
765805
msgid "standard"
766806
msgstr ""
767807

808+
#: src/views/AddVestingContract.vue:32
809+
msgid "Start Block:"
810+
msgstr ""
811+
768812
#: src/views/Migrate.vue:232
769813
msgid "Storing your new accounts..."
770814
msgstr ""
771815

772816
#: src/components/NimiqCheckoutCard.vue:277
817+
#: src/views/AddVestingContract.vue:11
773818
#: src/views/CashlinkManage.vue:154
774819
#: src/views/CheckoutTransmission.vue:73
775820
msgid "Syncing consensus..."
@@ -903,6 +948,7 @@ msgid "Verify Payment"
903948
msgstr ""
904949

905950
#: src/lib/LabelingMachine.ts:25
951+
#: src/views/AddVestingContract.vue:137
906952
msgid "Vesting Contract"
907953
msgstr ""
908954

src/lib/PublicRequestTypes.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ export enum RequestType {
2222
LOGOUT = 'logout',
2323
ADD_ADDRESS = 'add-address',
2424
RENAME = 'rename',
25+
ADD_VESTING_CONTRACT = 'add-vesting-contract',
2526
CHOOSE_ADDRESS = 'choose-address',
2627
CREATE_CASHLINK = 'create-cashlink',
2728
MANAGE_CASHLINK = 'manage-cashlink',

src/lib/RequestParser.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -250,6 +250,7 @@ export class RequestParser {
250250
case RequestType.CHOOSE_ADDRESS:
251251
case RequestType.LOGIN:
252252
case RequestType.MIGRATE:
253+
case RequestType.ADD_VESTING_CONTRACT:
253254
return {
254255
kind: requestType,
255256
appName: request.appName,
@@ -451,6 +452,7 @@ export class RequestParser {
451452
case RequestType.CHOOSE_ADDRESS:
452453
case RequestType.LOGIN:
453454
case RequestType.MIGRATE:
455+
case RequestType.ADD_VESTING_CONTRACT:
454456
return {
455457
appName: request.appName,
456458
} as BasicRequest;

src/lib/RpcApi.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ export default class RpcApi {
7878
RequestType.LOGOUT,
7979
RequestType.ADD_ADDRESS,
8080
RequestType.RENAME,
81+
RequestType.ADD_VESTING_CONTRACT,
8182
RequestType.SIGN_MESSAGE,
8283
RequestType.MIGRATE,
8384
RequestType.CHOOSE_ADDRESS,

src/router.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,8 @@ const AddAddressLedger = () => import(/*webpackChunkName: "add-ledger"*/
4444
const OnboardingSelector = () => import(/*webpackChunkName: "onboarding"*/ './views/OnboardingSelector.vue');
4545

4646
const Rename = () => import(/*webpackChunkName: "rename"*/ './views/Rename.vue');
47+
const AddVestingContract = () => import(/*webpackChunkName: "add-vesting-contract"*/
48+
'./views/AddVestingContract.vue');
4749

4850
const Migrate = () => import(/*webpackChunkName: "migrate"*/ './views/Migrate.vue');
4951

@@ -247,6 +249,11 @@ export default new Router({
247249
component: Rename,
248250
name: RequestType.RENAME,
249251
},
252+
{
253+
path: `/${RequestType.ADD_VESTING_CONTRACT}`,
254+
component: AddVestingContract,
255+
name: RequestType.ADD_VESTING_CONTRACT,
256+
},
250257
{
251258
path: `/${RequestType.MIGRATE}`,
252259
component: Migrate,

0 commit comments

Comments
 (0)