add source code

This commit is contained in:
Michał Chudy
2025-11-14 15:51:00 +01:00
parent df0ef23857
commit b9972746aa
223 changed files with 24651 additions and 46774 deletions

View File

@@ -4,14 +4,15 @@ Biblioteka do generowania wizualizacji PDF faktur oraz UPO na podstawie plików
---
### Informacje wstępne
## 1. Główne ustalenia
Niniejsza wersja Biblioteki stanowi wydanie wstępne, zawierające zbudowaną paczkę JavaScript oraz aplikacje służące do
testowania rozwiązania.
Wersja pełna, obejmująca kompletny kod źródłowy w TypeScript, możliwość budowania biblioteki oraz generowania typów TS,
zostanie udostępniona w dniu 14 listopada 2025 r.
Biblioteka zawiera następujące funkcjonalności:
- Generowanie wizualizacji PDF faktur
- Generowanie wizualizacji PDF UPO
## 1. Jak uruchomić aplikację
---
## 2. Jak uruchomić aplikację pokazową
1. Zainstaluj Node.js w wersji **22.14.0**
Możesz pobrać Node.js z oficjalnej strony: [https://nodejs.org](https://nodejs.org)
@@ -29,14 +30,19 @@ zostanie udostępniona w dniu 14 listopada 2025 r.
4. Uruchom aplikację:
```bash
npm run start
npm run dev
```
Aplikacja uruchomi się domyślnie pod adresem: [http://localhost:5173/](http://localhost:5173/)
---
## 2.1 Budowanie bibliotki
## 2. Jak wygenerować fakturę
1. Jak zbudować bibliotekę produkcyjnie:
```bash
npm run build
```
## 3. Jak wygenerować fakturę
1. Po uruchomieniu aplikacji przejdź do **Wygeneruj wizualizacje faktury PDF**.
2. Wybierz plik XML zgodny ze schemą **FA(1), FA(2) lub FA(3)**.
@@ -48,7 +54,7 @@ Aplikacja uruchomi się domyślnie pod adresem: [http://localhost:5173/](http://
---
## 3. Jak wygenerować UPO
## 4. Jak wygenerować UPO
1. Po uruchomieniu aplikacji przejdź do **Wygeneruj wizualizacje UPO PDF**.
2. Wybierz plik XML zgodny ze schemą **UPO v4_2**.
@@ -60,6 +66,61 @@ Aplikacja uruchomi się domyślnie pod adresem: [http://localhost:5173/](http://
---
## 5. Testy jednostkowe
Aplikacja zawiera zestaw testów napisanych w **TypeScript**, które weryfikują poprawność działania aplikacji.
Projekt wykorzystuje **Vite** do bundlowania i **Vitest** jako framework testowy.
### Uruchamianie testów
1. Uruchom wszystkie testy:
```bash
npm run test
```
2. Uruchom testy z interfejsem graficznym:
```bash
npm run test:ui
```
3. Uruchom testy w trybie CI z raportem pokrycia:
```bash
npm run test:ci
```
---
Raport: /coverage/index.html
---
### 1. Nazewnictwo zmiennych i metod
- **Polsko-angielskie nazwy** stosowane w zmiennych, typach i metodach wynikają bezpośrednio ze struktury pliku schemy
faktury.
Takie podejście zapewnia spójność i ujednolicenie nazewnictwa z definicją danych zawartą w schemie XML.
### 2. Struktura danych
- Struktura danych interfejsu FA odzwierciedla strukturę danych źródłowych pliku XML, zachowując ich logiczne powiązania
i hierarchię
w bardziej czytelnej formie.
### 3. Typy i interfejsy
- Typy odzwierciedlają strukturę danych pobieranych z XML faktur oraz ułatwiają generowanie PDF
- Typy i interfejsy są definiowane w folderze types oraz plikach z rozszerzeniem types.ts.
---
## Dokumentacja używanych narzędzi
- Vitest Docs — https://vitest.dev/guide/
- Vite Docs — https://vitejs.dev/guide/
- TypeScript Handbook — https://www.typescriptlang.org/docs/
---
## Uwagi
- Upewnij się, że pliki XML są poprawnie sformatowane zgodnie z odpowiednią schemą.