feat(release): beelloo v0.1
This commit is contained in:
258
testdata/sample.html
vendored
Normal file
258
testdata/sample.html
vendored
Normal file
@ -0,0 +1,258 @@
|
||||
<!doctype html>
|
||||
<html lang="fr">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Facture 20250407</title>
|
||||
|
||||
<style>
|
||||
@page {
|
||||
size: A4;
|
||||
margin: 2cm 1cm;
|
||||
}
|
||||
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
@media print {
|
||||
body {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.page {
|
||||
padding: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen {
|
||||
body {
|
||||
margin: 0 auto;
|
||||
width: 21cm;
|
||||
}
|
||||
.page {
|
||||
padding: 20mm;
|
||||
}
|
||||
}
|
||||
|
||||
@media all {
|
||||
|
||||
body {
|
||||
font-family: "TeX Gyre Pagella", "Palatino Linotype", "Book Antiqua", Palatino, serif;
|
||||
font-size: 12pt;
|
||||
color: #111;
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
.page {
|
||||
min-height: calc(297mm - 4cm);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.header {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: flex-start;
|
||||
margin-bottom: 12mm;
|
||||
}
|
||||
|
||||
.seller-name,
|
||||
.buyer-name {
|
||||
font-weight: bold;
|
||||
font-size: 12.5pt;
|
||||
margin-bottom: 3mm;
|
||||
}
|
||||
|
||||
.seller-line,
|
||||
.buyer-line {
|
||||
margin-bottom: 2mm;
|
||||
}
|
||||
|
||||
.buyer {
|
||||
text-align: left;
|
||||
max-width: 42%;
|
||||
}
|
||||
|
||||
.meta {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: baseline;
|
||||
margin-bottom: 12mm;
|
||||
}
|
||||
|
||||
.invoice-number {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.object {
|
||||
margin-bottom: 20mm;
|
||||
}
|
||||
|
||||
.object-title {
|
||||
font-weight: bold;
|
||||
margin-bottom: 3mm;
|
||||
}
|
||||
|
||||
.object-desc p {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.table-section {
|
||||
margin-bottom: 15mm;
|
||||
}
|
||||
|
||||
.items {
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
font-size: 11pt;
|
||||
}
|
||||
|
||||
.items th {
|
||||
padding: 3mm 2mm 2mm 2mm;
|
||||
border-bottom: 1px solid #666;
|
||||
}
|
||||
|
||||
.items td {
|
||||
padding: 3mm 2mm;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.col-price,
|
||||
.col-qty,
|
||||
.col-amount {
|
||||
text-align: right;
|
||||
width: 18%;
|
||||
}
|
||||
|
||||
.col-designation {
|
||||
width: 46%;
|
||||
}
|
||||
|
||||
.col-designation p {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.total-row td {
|
||||
border-top: 1px solid #666;
|
||||
padding-top: 4mm;
|
||||
}
|
||||
|
||||
.total-label {
|
||||
text-align: right;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.total-value {
|
||||
text-align: right;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.vat-note {
|
||||
padding-top: 2mm;
|
||||
font-size: 10.5pt;
|
||||
}
|
||||
|
||||
.footer {
|
||||
margin-top: auto;
|
||||
padding-top: 12mm;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.payment-title {
|
||||
text-align: left;
|
||||
margin-bottom: 6mm;
|
||||
}
|
||||
|
||||
.payment-detail {
|
||||
margin-bottom: 2mm;
|
||||
}
|
||||
|
||||
.seller-contact {
|
||||
font-size: 10.5pt;
|
||||
margin-top: 12mm;
|
||||
}
|
||||
|
||||
.contact-item + .contact-item::before {
|
||||
content: " — ";
|
||||
}
|
||||
|
||||
.payment-detail {
|
||||
margin-bottom: 2mm;
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div class="page">
|
||||
<header class="header">
|
||||
<div class="seller">
|
||||
<div class="seller-name">Alice Example</div>
|
||||
<div class="seller-line">10 Rue de Test</div><div class="seller-line">75000 Paris</div>
|
||||
</div>
|
||||
<div class="buyer">
|
||||
<div class="buyer-name">Example Corp</div>
|
||||
<div class="buyer-line">Example Corp SAS</div><div class="buyer-line">99 Avenue Exemple</div><div class="buyer-line">69000 Lyon</div>
|
||||
<div class="buyer-line">SIRET : 98765432100034</div>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<section class="meta">
|
||||
<div class="invoice-number">Facture n° 20250407</div>
|
||||
<div class="invoice-date">Paris, le 10/02/2026</div>
|
||||
</section>
|
||||
|
||||
<section class="object">
|
||||
<div class="object-title">Objet : Facture pour prestations de service</div>
|
||||
<div class="object-desc"><p>Prestations informatiques</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="table-section">
|
||||
<table class="items">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="col-designation">Désignation</th>
|
||||
<th class="col-price">Prix unitaire</th>
|
||||
<th class="col-qty">Quantité</th>
|
||||
<th class="col-amount">Montant (EUR)</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<tr>
|
||||
<td class="col-designation"><p>Forfait IT<br>- Audit technique<br>- Mise a jour dependances<br>- Correction bugs</p>
|
||||
</td>
|
||||
<td class="col-price">1175.00</td>
|
||||
<td class="col-qty">1</td>
|
||||
<td class="col-amount">1175.00</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
<tfoot>
|
||||
<tr class="total-row">
|
||||
<td colspan="3" class="total-label">Total HT</td>
|
||||
<td class="total-value">1175.00</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="4" class="vat-note">TVA non applicable, art 293 B du CGI</td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
</table>
|
||||
</section>
|
||||
|
||||
<footer class="footer">
|
||||
<div class="payment-title">Paiement souhaité par virement bancaire :</div>
|
||||
<div class="payment-detail"><strong>Nom associé au compte bancaire</strong> : Alice Example</div>
|
||||
<div class="payment-detail"><strong>IBAN N°</strong> : FR00 0000 0000 0000 0000 0000 000</div>
|
||||
<div class="seller-contact">
|
||||
<span class="contact-item">Alice Example</span>
|
||||
<span class="contact-item">E-mail : alice@example.com</span>
|
||||
<span class="contact-item">Téléphone : 01 02 03 04 05</span>
|
||||
<span class="contact-item">SIRET : 12345678900012</span>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user