<feed xmlns='http://www.w3.org/2005/Atom'>
<title>digiid-ts-demo/src/client, branch main</title>
<subtitle>[MIRROR] Digi-ID TypeScript Integration Demo</subtitle>
<id>https://git.zelu.dev/digiid-ts-demo/atom?h=main</id>
<link rel='self' href='https://git.zelu.dev/digiid-ts-demo/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.zelu.dev/digiid-ts-demo/'/>
<updated>2025-04-10T12:35:56Z</updated>
<entry>
<title>refactor: improve layout and spacing across all views</title>
<updated>2025-04-10T12:35:56Z</updated>
<author>
<name>Pawel Zelawski</name>
<email>pawel.zelawski@outlook.com</email>
</author>
<published>2025-04-10T12:35:56Z</published>
<link rel='alternate' type='text/html' href='https://git.zelu.dev/digiid-ts-demo/commit/?id=d858bd4e0fc7aaba15509a17b35138e843667bc1'/>
<id>urn:sha1:d858bd4e0fc7aaba15509a17b35138e843667bc1</id>
<content type='text'>
- 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
</content>
</entry>
<entry>
<title>feat(client): implement react frontend application</title>
<updated>2025-04-10T08:55:22Z</updated>
<author>
<name>Pawel Zelawski</name>
<email>pawel.zelawski@outlook.com</email>
</author>
<published>2025-04-10T08:55:22Z</published>
<link rel='alternate' type='text/html' href='https://git.zelu.dev/digiid-ts-demo/commit/?id=c852aa92f84d0c18b1bd7361163498a542461d45'/>
<id>urn:sha1:c852aa92f84d0c18b1bd7361163498a542461d45</id>
<content type='text'>
- 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.
</content>
</entry>
</feed>
