summaryrefslogtreecommitdiff
path: root/src/client/utils.ts
AgeCommit message (Collapse)Author
2025-04-10refactor: improve layout and spacing across all viewsPawel Zelawski
- Remove extra space at the top of the page by adjusting body and root styles - Add consistent 20px top padding to all views through app-container - Simplify layout structure by removing unnecessary flex containers - Adjust spacing between elements for better visual hierarchy: - Reduce gaps between elements from 1.5rem to 1rem - Reduce bottom margin of h1 from 1.5rem to 1rem - Remove negative margins and extra padding - Maintain consistent box dimensions (390px width, 560px height) for all views - Ensure proper spacing for QR code and other content within views
2025-04-10feat(client): implement react frontend applicationPawel Zelawski
- Created main entry point `src/client/main.tsx`. - Created main `App` component `src/client/App.tsx`. - Implemented state management (`initial`, `waiting`, `success`, `failed`) using `useState`. - Implemented `handleStart` to call backend `/api/digiid/start` and transition to `waiting` state. - Implemented `useEffect` hook for polling backend `/api/digiid/status/:sessionId` in `waiting` state. - Updates UI state based on polling response (`success`/`failed`). - Handles polling errors and cleanup. - Implemented `handleReset` to return to `initial` state. - Implemented views for each state: - `initial`: Welcome message, Start button. - `waiting`: QR code display, status message, Cancel button. - `success`: Success message, verified address, address type, Start Over button. - `failed`: Failure message, error details, Try Again button. - Added client-side address type helper `getDigiByteAddressType` in `src/client/utils.ts`. - Added basic CSS styling in `src/client/index.css` with light/dark mode support. - Added frontend-related scripts (`dev:frontend`, `dev`, `build`, `lint`, `preview`) to `package.json`. - Fixed linter type issue with `setInterval` return value.