Skip to content

Commit cf08dd7

Browse files
chore: integrate CipherProvider in invoice forms (#245)
1 parent f6c3f8c commit cf08dd7

File tree

4 files changed

+29
-23
lines changed

4 files changed

+29
-23
lines changed

package-lock.json

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/create-invoice-form/src/lib/create-invoice-form.svelte

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,13 @@
2323
import Button from "@requestnetwork/shared-components/button.svelte";
2424
import Status from "@requestnetwork/shared-components/status.svelte";
2525
import Modal from "@requestnetwork/shared-components/modal.svelte";
26-
import { EncryptionTypes } from '@requestnetwork/types';
26+
import { EncryptionTypes, CipherProviderTypes } from '@requestnetwork/types';
2727
2828
export let config: IConfig;
2929
export let wagmiConfig: WagmiConfig;
3030
export let requestNetwork: RequestNetwork | null | undefined;
3131
export let currencies: CurrencyTypes.CurrencyInput[] = [];
32+
let cipherProvider: CipherProviderTypes.ICipherProvider | undefined = requestNetwork?.getCipherProvider();
3233
3334
let account: GetAccountReturnType;
3435
let isTimeout = false;
@@ -185,7 +186,7 @@
185186
try {
186187
addToStatus(APP_STATUS.PERSISTING_TO_IPFS);
187188
let request;
188-
if(formData.isEncrypted) {
189+
if(cipherProvider && formData.isEncrypted) {
189190
const payeeEncryptionParams = {
190191
key: requestCreateParameters.requestInfo.payee?.value!,
191192
method: EncryptionTypes.METHOD.KMS,
@@ -247,6 +248,7 @@
247248
{networks}
248249
{currencyManager}
249250
{invoiceCurrency}
251+
{cipherProvider}
250252
/>
251253
<div class="invoice-view-wrapper">
252254
<InvoiceView

packages/create-invoice-form/src/lib/invoice/form.svelte

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
import { checkAddress } from "@requestnetwork/shared-utils/checkEthAddress";
2020
import { inputDateFormat } from "@requestnetwork/shared-utils/formatDate";
2121
import { Types } from "@requestnetwork/request-client.js";
22-
import { CurrencyTypes } from "@requestnetwork/types";
22+
import { CurrencyTypes, CipherProviderTypes } from "@requestnetwork/types";
2323
import isEmail from "validator/es/lib/isEmail";
2424
2525
export let config: IConfig;
@@ -37,6 +37,7 @@
3737
| CurrencyTypes.NativeCurrency
3838
| undefined;
3939
export let network: any;
40+
export let cipherProvider: CipherProviderTypes.ICipherProvider | undefined;
4041
4142
let validationErrors = {
4243
payeeAddress: false,
@@ -453,13 +454,14 @@
453454
}))}
454455
onchange={handleCurrencyChange}
455456
/>
456-
457-
<Input
458-
type="checkbox"
459-
id="isEncrypted"
460-
label="Encrypt invoice"
461-
bind:checked={formData.isEncrypted}
462-
/>
457+
{#if cipherProvider}
458+
<Input
459+
type="checkbox"
460+
id="isEncrypted"
461+
label="Encrypt invoice"
462+
bind:checked={formData.isEncrypted}
463+
/>
464+
{/if}
463465
</div>
464466
</div>
465467
<div class="invoice-form-dates">

packages/invoice-dashboard/src/lib/view-requests.svelte

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -44,17 +44,17 @@
4444
import { debounce, formatAddress } from "../utils";
4545
import { Drawer, InvoiceView } from "./dashboard";
4646
import { getPaymentNetworkExtension } from "@requestnetwork/payment-detection";
47-
import { CurrencyTypes } from "@requestnetwork/types";
47+
import { CipherProviderTypes, CurrencyTypes } from "@requestnetwork/types";
4848
import { checkStatus } from "@requestnetwork/shared-utils/checkStatus";
4949
5050
export let config: IConfig;
5151
export let wagmiConfig: WagmiConfig;
5252
export let requestNetwork: RequestNetwork | null | undefined;
5353
export let currencies: CurrencyTypes.CurrencyInput[] = [];
54-
export let isDecryptionEnabled: boolean;
55-
export let enableDecryption: (option: boolean) => void | undefined;
5654
57-
let sliderValueForDecryption = isDecryptionEnabled ? "on" : "off";
55+
let cipherProvider: CipherProviderTypes.ICipherProvider | undefined = requestNetwork?.getCipherProvider();
56+
57+
let sliderValueForDecryption = cipherProvider?.isDecryptionEnabled() ? "on" : "off";
5858
5959
let signer: `0x${string}` | undefined;
6060
let activeConfig = config ? config : defaultConfig;
@@ -395,9 +395,9 @@
395395
396396
$: {
397397
if(sliderValueForDecryption === 'on') {
398-
enableDecryption(true);
398+
cipherProvider?.enableDecryption(true);
399399
} else {
400-
enableDecryption(false);
400+
cipherProvider?.enableDecryption(false);
401401
}
402402
}
403403
@@ -441,9 +441,11 @@
441441
<Search />
442442
</div>
443443
</Input>
444-
<div class="width: fit-content;">
445-
<Switch bind:value={sliderValueForDecryption} label="Show encrypted requests" fontSize={14} design="slider" />
446-
</div>
444+
{#if cipherProvider}
445+
<div class="width: fit-content;">
446+
<Switch bind:value={sliderValueForDecryption} label="Show encrypted requests" fontSize={14} design="slider" />
447+
</div>
448+
{/if}
447449
</div>
448450

449451
<Dropdown

0 commit comments

Comments
 (0)