Skip to content

Commit

Permalink
migrate to parcel 2
Browse files Browse the repository at this point in the history
  • Loading branch information
Lykhoyda committed Jan 29, 2025
1 parent 710f200 commit e487d05
Show file tree
Hide file tree
Showing 30 changed files with 118 additions and 235 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/deploy-demo.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:
run: yarn install --immutable

- name: Build
run: yarn build
run: yarn demo-wallet:build

- name: Deploy to Netlify
uses: nwtgck/[email protected]
Expand Down
11 changes: 7 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,16 @@
},
"packageManager": "[email protected]",
"scripts": {
"serve": "yarn workspace @webzjs/demo-wallet run serve",
"dev": "yarn run just:build-keys && yarn run snap:start & yarn run demo-wallet:dev",
"build": "yarn workspace @webzjs/demo-wallet run build",
"demo-wallet:dev": "yarn workspace @webzjs/demo-wallet run dev",
"dev": "yarn workspace @webzjs/web-wallet run dev & yarn run snap:start",
"demo-wallet:serve": "yarn workspace @webzjs/demo-wallet run serve",
"demo-wallet:dev": "yarn run just:build-keys && yarn run snap:start & yarn run web-wallet:dev",
"demo-wallet:build": "yarn workspace @webzjs/demo-wallet run build",
"web-wallet:dev": "yarn workspace @webzjs/web-wallet run dev",
"web-wallet:build": "yarn workspace @webzjs/web-wallet run build",
"test:e2e": "yarn workspace @webzjs/e2e-tests test",
"snap:start": "yarn workspace @webzjs/zcash-snap run start",
"snap:build": "yarn workspace @webzjs/zcash-snap run build",
"just:build": "just build",
"just:build-keys": "just build-keys"
},
"dependencies": {
Expand Down
3 changes: 3 additions & 0 deletions packages/web-wallet/dist/_headers
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
/*
Cross-Origin-Opener-Policy: same-origin
Cross-Origin-Embedder-Policy: require-corp
3 changes: 1 addition & 2 deletions packages/web-wallet/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,7 @@
],
"scripts": {
"dev": "node server.js",
"build": "parcel build index.html --dist-dir dist",
"lint": "eslint ."
"build": "parcel build index.html --dist-dir dist"
},
"dependencies": {
"@metamask/providers": "^18.2.0",
Expand Down
2 changes: 0 additions & 2 deletions packages/web-wallet/server.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,6 @@ const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);

async function run() {
console.log('Starting server...', process.env.SNAP_ORIGIN);

const bundler = new Parcel({
entries: 'index.html',
defaultConfig: '@parcel/config-default',
Expand Down
2 changes: 0 additions & 2 deletions packages/web-wallet/src/App.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import React from 'react';
import { useInterval } from 'usehooks-ts';
import { Outlet, useLocation } from 'react-router-dom';
import { RESCAN_INTERVAL } from './config/constants';
Expand All @@ -7,7 +6,6 @@ import { useWebZjsActions } from './hooks';
import Layout from './components/Layout/Layout';

function App() {
console.log('SNAP_ORIGIN', process.env.SNAP_ORIGIN);
const { triggerRescan } = useWebZjsActions();
const location = useLocation();

Expand Down
Binary file added packages/web-wallet/src/assets/chainsafe.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 0 additions & 9 deletions packages/web-wallet/src/assets/chainsafe.svg

This file was deleted.

Binary file added packages/web-wallet/src/assets/form-transfer.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
20 changes: 10 additions & 10 deletions packages/web-wallet/src/assets/index.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import ChainsafeSvg from './chainsafe.svg';
import ChainsafePNG from './chainsafe.png';
import FormTransferSvg from './form-transfer.svg';
import MetaMaskLogoSvg from './metaMask-logo.svg';
import MetaMaskSnapsLogoSvg from './metamask-snaps-logo.png';
import ZcashSvg from './zcash.svg';
import ZcashYellowSvg from './zcash-yellow.svg';
import MetaMaskLogoPNG from './metaMask-logo.png';
import MetaMaskSnapsLogoPNG from './metamask-snaps-logo.png';
import ZcashPNG from './zcash.png';
import ZcashYellowPNG from './zcash-yellow.png';

// Icons
import ArrowReceiveSvg from './icons/arrow-receive.svg';
Expand All @@ -22,11 +22,11 @@ import CircleSvg from './icons/circle.svg';
import CircleDashedSvg from './icons/circle-dashed.svg';

export {
ChainsafeSvg,
MetaMaskLogoSvg,
MetaMaskSnapsLogoSvg,
ZcashSvg,
ZcashYellowSvg,
ChainsafePNG,
MetaMaskLogoPNG,
MetaMaskSnapsLogoPNG,
ZcashPNG,
ZcashYellowPNG,
FormTransferSvg,
ArrowReceiveSvg,
ArrowTransferSvg,
Expand Down
Binary file added packages/web-wallet/src/assets/metaMask-logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 0 additions & 9 deletions packages/web-wallet/src/assets/metaMask-logo.svg

This file was deleted.

58 changes: 0 additions & 58 deletions packages/web-wallet/src/assets/metamask-snaps-logo.svg

This file was deleted.

Binary file added packages/web-wallet/src/assets/zcash-yellow.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 0 additions & 9 deletions packages/web-wallet/src/assets/zcash-yellow.svg

This file was deleted.

Binary file added packages/web-wallet/src/assets/zcash.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 0 additions & 9 deletions packages/web-wallet/src/assets/zcash.svg

This file was deleted.

8 changes: 6 additions & 2 deletions packages/web-wallet/src/components/Footer/Footer.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import React from 'react';
import { ChainsafeSvg } from '../../assets';
import { ChainsafePNG } from '../../assets';

const Footer = (): React.JSX.Element => {
return (
Expand All @@ -12,7 +12,11 @@ const Footer = (): React.JSX.Element => {
target="_blank"
>
<div className="inline-block w-6 h-6 mr-1">
<ChainsafeSvg />
<img
src={ChainsafePNG}
className="w-5 h-[20px]"
alt="Chainsafe logo"
/>
</div>
ChainSafe
</a>
Expand Down
35 changes: 15 additions & 20 deletions packages/web-wallet/src/components/Header/Header.tsx
Original file line number Diff line number Diff line change
@@ -1,29 +1,34 @@
import React from 'react';
import { Link, useLocation } from 'react-router-dom';
import { MetaMaskLogoSvg, MetaMaskSnapsLogoSvg, ZcashSvg } from '../../assets';
import Button from '../../components/Button/Button';
import { MetaMaskLogoPNG, MetaMaskSnapsLogoPNG, ZcashPNG } from '../../assets';

const Header = (): React.JSX.Element => {
const location = useLocation();
const isHomePage = location.pathname === '/';

return (
<header className="font-inter h-[60px] fixed top-0 left-0 w-full px-16 flex flex-grow items-center justify-between bg-transparent py-3 border-b border-neutral-200">
<header className="font-inter h-[60px] fixed top-0 left-0 w-full px-16 flex grow items-center justify-between bg-transparent py-3 border-b border-neutral-200">
<Link to={'/'}>
<div className="flex items-center">
<div className="h-6 w-6 mr-3">
<ZcashSvg className="w-[25px] h-[25px]" />
</div>
<div className="h-6 w-full max-w-[200px]">
<img
src={ZcashPNG}
className="w-[25px] h-[25px] mr-3"
alt="Zcash logo"
/>
<div className="w-full max-w-[200px]">
{isHomePage ? (
<img src={MetaMaskSnapsLogoSvg} alt={'MetaMaskSnapsLogoSvg'} />
<img src={MetaMaskSnapsLogoPNG} alt={'MetaMaskSnapsLogoSvg'} />
) : (
<MetaMaskLogoSvg className="w-[25px] h-[25px]" />
<img
src={MetaMaskLogoPNG}
className="w-[32px] h-[25px]"
alt="MetaMask logo"
/>
)}
</div>
</div>
</Link>
{isHomePage ? (
{isHomePage ?? (
<nav className="flex">
<a
target="_blank"
Expand All @@ -47,16 +52,6 @@ const Header = (): React.JSX.Element => {
Snap Registry
</a>
</nav>
) : (
<Button
variant={'secondary'}
classNames={'min-w-max '}
onClick={() => {
// TODO: Clarify sign out functionality
console.log('Sign out');
}}
label={'Sign out'}
/>
)}
</header>
);
Expand Down
2 changes: 1 addition & 1 deletion packages/web-wallet/src/components/Input/Input.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ const Input: React.FC<InputProps> = ({
<input
{...props}
id={id}
className={`flex-grow bg-transparent focus:outline-none text-[#0e0e0e] text-base font-semibold font-inter ${inputClassName}`}
className={`grow bg-transparent focus:outline-hidden text-[#0e0e0e] text-base font-semibold font-inter ${inputClassName}`}
aria-describedby={`${id}-suffix`}
/>
<span
Expand Down
2 changes: 1 addition & 1 deletion packages/web-wallet/src/components/Layout/Layout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ const Layout = ({ children }: React.PropsWithChildren): React.JSX.Element => {
return (
<div className="container mx-auto flex flex-col min-h-screen">
<Header />
<main className="flex-grow flex justify-center py-3 self-stretch mt-[60px] w-full">
<main className="grow flex justify-center py-3 self-stretch mt-[60px] w-full">
{children ? children : <Outlet />}
</main>
<Footer />
Expand Down
2 changes: 1 addition & 1 deletion packages/web-wallet/src/components/Select/Select.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ const Select: React.FC<SelectProps> = ({
className="relative h-full flex items-center bg-neutral-50 rounded-xl border border-[#afafaf] p-3 cursor-pointer"
onClick={() => setIsOpen(!isOpen)}
>
<span className="flex-grow bg-transparent focus:outline-none text-[#0e0e0e] text-base font-semibold font-inter">
<span className="grow bg-transparent focus:outline-hidden text-[#0e0e0e] text-base font-semibold font-inter">
{selected ? (
selected.label
) : (
Expand Down
1 change: 0 additions & 1 deletion packages/web-wallet/src/context/MetamaskContext.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import React from 'react';
import type { MetaMaskInpageProvider } from '@metamask/providers';
import type { ReactNode } from 'react';
import { createContext, useContext, useEffect, useState } from 'react';
Expand Down
1 change: 0 additions & 1 deletion packages/web-wallet/src/main.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import React from 'react';
import { createRoot } from 'react-dom/client';

import { RouterProvider } from 'react-router-dom';
Expand Down
16 changes: 10 additions & 6 deletions packages/web-wallet/src/pages/Home.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import React, { useEffect, useState } from 'react';
import { MetaMaskLogoSvg, ZcashYellowSvg, FormTransferSvg } from '../assets';
import { ZcashYellowPNG, FormTransferSvg, MetaMaskLogoPNG } from '../assets';
import { useNavigate } from 'react-router-dom';
import { useWebZjsContext } from '../context/WebzjsContext';
import {
Expand Down Expand Up @@ -52,23 +52,27 @@ const Home: React.FC = () => {
<FormTransferSvg />
</div>
<div className="flex flex-col items-start space-y-8">
<ZcashYellowSvg />
<img src={ZcashYellowPNG} alt="Zcash Logo" />
<h1 className="font-inter font-semibold text-[5rem] leading-[5rem] we">
Zcash <br />
Web Wallet
</h1>
<p className="font-inter">
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua.
Access the Zcash network from your web browser with the Zcash
MetaMask Snap
</p>
<button
disabled={!isFlask}
onClick={handleRequestSnapAndGetViewingKey}
className="flex items-center bg-buttonBlackGradient hover:bg-buttonBlackGradientHover text-white px-6 py-3 rounded-[2rem]"
className="flex items-center bg-button-black-gradient hover:bg-button-black-gradient-hover text-white px-6 py-3 rounded-[2rem] cursor-pointer"
>
<span>Connect MetaMask Snap</span>
<div className="ml-3">
<MetaMaskLogoSvg />
<img
src={MetaMaskLogoPNG}
className="w-[21px] h-[20px]"
alt="MetaMask Logo"
/>
</div>
</button>
<div className="text-sm">
Expand Down
6 changes: 3 additions & 3 deletions packages/web-wallet/src/pages/Receive/QrCode.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -20,18 +20,18 @@ function QrCode({ address }: QrCodeProps) {
{exposeAddress ? (
<span className="break-words">{address}</span>
) : (
<span className="overflow-ellipsis overflow-hidden block">
<span className="text-ellipsis overflow-hidden block">
{address}
</span>
)}
</div>
<div
className="flex-grow-0"
className="grow-0"
onClick={() => setExposeAddress(!exposeAddress)}
>
{exposeAddress ? <EyeSlashSvg /> : <EyeSvg />}
</div>
<div className="justify-start flex-grow-0">
<div className="justify-start grow-0">
<CopyButton textToCopy={address} />
</div>
</div>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import React from 'react';
import { ZcashYellowSvg } from '../../assets';
import { ZcashYellowPNG } from '../../assets';
import useTransferBalanceForm from './useTransferBalanceForm';
import PageHeading from '../../components/PageHeading/PageHeading';
import useBalance from '../../hooks/useBalance';
Expand All @@ -21,7 +21,11 @@ function TransferBalance(): React.JSX.Element {
Available:
</span>
<div className="px-4 py-2 bg-[#e8e8e8] rounded-3xl flex items-center gap-2.5">
<ZcashYellowSvg className="w-5 h-5" />
<img
src={ZcashYellowPNG}
alt="Zcash Yellow"
className="w-5 h-5"
/>
<span className="text-[#434343] text-base font-semibold font-inter leading-tight">
{totalBalance} ZEC
</span>
Expand Down
1 change: 0 additions & 1 deletion packages/web-wallet/src/router/index.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import React from 'react';
import { createBrowserRouter } from 'react-router-dom';
import App from '../App';
import ProtectedRoute from '../components/ProtectedRoute/ProtectedRoute';
Expand Down
Loading

0 comments on commit e487d05

Please sign in to comment.