Skip to content

Commit 24f2955

Browse files
committed
refactor code
1 parent b5dfd35 commit 24f2955

File tree

5 files changed

+18
-24
lines changed

5 files changed

+18
-24
lines changed

demo/vue-app-new/src/MainView.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ const walletPlugins = computed(() => {
4040
const plugins = [];
4141
if (formData.nftCheckoutPlugin.enable) {
4242
const nftCheckoutPlugin = new NFTCheckoutPlugin({
43-
web3AuthClientId: NFT_CHECKOUT_CLIENT_ID,
43+
clientId: NFT_CHECKOUT_CLIENT_ID,
4444
});
4545
plugins.push(nftCheckoutPlugin);
4646
}

packages/base/src/plugin/IPlugin.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ export interface IPlugin extends SafeEventEmitter {
5050
SUPPORTED_ADAPTERS: WALLET_ADAPTER_TYPE[];
5151
pluginNamespace: PluginNamespace;
5252
initWithWeb3Auth(web3auth: IWeb3AuthCore, whiteLabel?: WhiteLabelData): Promise<void>;
53-
connect(params: PluginConnectParams): Promise<void>;
53+
connect(params?: PluginConnectParams): Promise<void>;
5454
disconnect(): Promise<void>;
5555
cleanup(): Promise<void>;
5656
}

packages/plugins/nft-checkout-plugin/src/embed.ts

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,7 @@ import { randomId } from "@toruslabs/base-controllers";
22
import { THEME_MODES, WhiteLabelData } from "@web3auth/auth";
33
import log from "loglevel";
44

5-
import {
6-
MESSAGE_HIDE_NFT_CHECKOUT,
7-
MESSAGE_INIT,
8-
MESSAGE_SETUP_COMPLETE,
9-
MESSAGE_SHOW_NFT_CHECKOUT,
10-
NFT_CHECKOUT_BUILD_ENV,
11-
NFT_CHECKOUT_BUILD_ENV_TYPE,
12-
NFT_CHECKOUT_URLS,
13-
} from "./enums";
5+
import { NFT_CHECKOUT_BUILD_ENV, NFT_CHECKOUT_BUILD_ENV_TYPE, NFT_CHECKOUT_EMBED_MESSAGE_TYPES, NFT_CHECKOUT_URLS } from "./enums";
146
import { getTheme, htmlToElement } from "./utils";
157

168
// preload for iframe doesn't work https://bugs.chromium.org/p/chromium/issues/detail?id=593267
@@ -34,7 +26,7 @@ import { getTheme, htmlToElement } from "./utils";
3426
})();
3527

3628
export class NFTCheckoutEmbed {
37-
web3AuthClientId: string;
29+
clientId: string;
3830

3931
isInitialized: boolean;
4032

@@ -44,10 +36,10 @@ export class NFTCheckoutEmbed {
4436

4537
private readonly embedNonce = randomId();
4638

47-
constructor({ modalZIndex = 99999, web3AuthClientId }: { modalZIndex?: number; web3AuthClientId: string }) {
39+
constructor({ modalZIndex = 99999, clientId }: { modalZIndex?: number; clientId: string }) {
4840
this.isInitialized = false;
4941
this.modalZIndex = modalZIndex;
50-
this.web3AuthClientId = web3AuthClientId;
42+
this.clientId = clientId;
5143
}
5244

5345
public async init(params?: { buildEnv?: NFT_CHECKOUT_BUILD_ENV_TYPE; whiteLabel?: WhiteLabelData }): Promise<void> {
@@ -85,19 +77,19 @@ export class NFTCheckoutEmbed {
8577
window.document.body.appendChild(nftCheckoutIframe);
8678
const handleMessage = async (ev: MessageEvent) => {
8779
if (ev.origin !== nftCheckoutIframeUrl.origin) return;
88-
if (ev.data.type === MESSAGE_SETUP_COMPLETE) {
80+
if (ev.data.type === NFT_CHECKOUT_EMBED_MESSAGE_TYPES.SETUP_COMPLETE) {
8981
// send init params here
9082
nftCheckoutIframe.contentWindow.postMessage(
9183
{
92-
type: MESSAGE_INIT,
93-
web3AuthClientId: this.web3AuthClientId,
84+
type: NFT_CHECKOUT_EMBED_MESSAGE_TYPES.INIT,
85+
clientId: this.clientId,
9486
whiteLabel,
9587
},
9688
nftCheckoutIframeUrl.origin
9789
);
9890
this.isInitialized = true;
9991
resolve();
100-
} else if (ev.data.type === MESSAGE_HIDE_NFT_CHECKOUT) {
92+
} else if (ev.data.type === NFT_CHECKOUT_EMBED_MESSAGE_TYPES.HIDE_NFT_CHECKOUT) {
10193
this.hide();
10294
}
10395
};
@@ -117,7 +109,7 @@ export class NFTCheckoutEmbed {
117109
const nftCheckoutOrigin = new URL(NFT_CHECKOUT_URLS[this.buildEnv]).origin;
118110
nftCheckoutIframe.contentWindow.postMessage(
119111
{
120-
type: MESSAGE_SHOW_NFT_CHECKOUT,
112+
type: NFT_CHECKOUT_EMBED_MESSAGE_TYPES.SHOW_NFT_CHECKOUT,
121113
contractId,
122114
receiverAddress,
123115
},

packages/plugins/nft-checkout-plugin/src/enums.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@ export const NFT_CHECKOUT_URLS: Record<NFT_CHECKOUT_BUILD_ENV_TYPE, string> = {
1414
[NFT_CHECKOUT_BUILD_ENV.PRODUCTION]: "https://nft-checkout.web3auth.io",
1515
};
1616

17-
export const MESSAGE_SETUP_COMPLETE = "setup_complete";
18-
export const MESSAGE_INIT = "init";
19-
export const MESSAGE_SHOW_NFT_CHECKOUT = "show_nft_checkout";
20-
export const MESSAGE_HIDE_NFT_CHECKOUT = "hide_nft_checkout";
17+
export const NFT_CHECKOUT_EMBED_MESSAGE_TYPES = {
18+
INIT: "init",
19+
SETUP_COMPLETE: "setup_complete",
20+
SHOW_NFT_CHECKOUT: "show_nft_checkout",
21+
HIDE_NFT_CHECKOUT: "hide_nft_checkout",
22+
} as const;

packages/plugins/nft-checkout-plugin/src/plugin.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ export class NFTCheckoutPlugin extends SafeEventEmitter implements IPlugin {
3030

3131
private receiverAddress: string | null = null;
3232

33-
constructor(params: { modalZIndex?: number; web3AuthClientId: string }) {
33+
constructor(params: { modalZIndex?: number; clientId: string }) {
3434
super();
3535
this.nftCheckoutEmbedInstance = new NFTCheckoutEmbed(params);
3636
}

0 commit comments

Comments
 (0)