Metadata-Version: 2.1
Name: inpython-package
Version: 1.1.112
Summary: # Infodata's IN-Tools U2Python Package
Home-page: https://bitbucket.org/infodata-dev/inpython
Author: infodata
Author-email: jcd@infodata.lu
License: MIT
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: msal>=1.22
Requires-Dist: requests
Requires-Dist: qrcode[pil]
Requires-Dist: python-dotenv
Requires-Dist: lxml
Requires-Dist: openpyxl
Requires-Dist: latlon3
Requires-Dist: geopy
Requires-Dist: python-docx
Requires-Dist: docxcompose
Requires-Dist: docxtpl
Requires-Dist: pandas
Requires-Dist: cron-converter
Requires-Dist: cryptography
Requires-Dist: PyJWT
Requires-Dist: html2text
Requires-Dist: pywin32; platform_system == "Windows"

# README Production – inpython-package

Ce document explique comment installer et utiliser le package **inpython-package** en production.

## Présentation

**inpython-package** regroupe des modules Python pour l'intégration MS-Graph, la génération de QR code pour les paiements via ayden, la gestion de fichiers, la manipulation de documents, etc., utilisés par Integrix.

## Installation

Installer le package depuis PyPI :

```bash
pip install inpython-package
```

## Structure du package

- `inpython.aotools` : outils avancés (géolocalisation, etc.)
- `inpython.ingraph` : gestion de l'authentification et des accès MS-Graph (utilise MSAL)
- `inpython.inqrcode` : génération de QR codes, gestion des liens de paiement, intégration de logos
- `inpython.inrest` : outils pour l'authentification JWT et REST
- `inpython.intools` : outils divers (conversion de fichiers, gestion de projets, cron, etc.)
- `inpython.inxml` : validation et manipulation de fichiers XML

## Utilisation

Importer les modules nécessaires dans vos scripts Python :
```python
from inpython.ingraph import ...
from inpython.inqrcode import ...
# etc.
```

### Conversion HTML vers texte (`inpython.intools.in_html`)

```python
from inpython.intools import in_html

texte = in_html.convert_html_to_text("<p>Bonjour <b>monde</b></p>")
```

Aucun prérequis système particulier : la dépendance `html2text` est installée automatiquement avec le package.

### Conversion RTF vers PDF (`inpython.intools.in_rtf`)

```python
from inpython.intools import in_rtf

in_rtf.convert_rtf_to_pdf("fichier.rtf", "fichier.pdf")
```

**Prérequis système** — la conversion s'appuie sur un moteur bureautique externe, qu'il faut installer sur la machine qui exécute le code :

- **LibreOffice** (utilisé en priorité, toutes plateformes) : le binaire `soffice` doit être accessible dans le `PATH`, ou son chemin fourni via la variable d'environnement `SOFFICE_BIN` (ou l'argument `soffice_bin` de la fonction).
- **Microsoft Word** (repli automatique, Windows uniquement) : utilisé si LibreOffice n'est pas trouvé et que la machine est sous Windows. Nécessite Word installé ainsi que le package `pywin32` (déjà listé comme dépendance conditionnelle pour Windows).

Si aucune des deux options n'est disponible sur la machine, la fonction lève une `RuntimeError` explicite.

## Configuration

Certains modules nécessitent un fichier `.env` pour les clés API et paramètres sensibles. Placez ce fichier à la racine de votre projet ou fournissez son chemin lors de l'appel des fonctions (pour inqrcode par exemple).

## Support

Pour toute question ou problème en production, contactez le support Integrix ou consultez la documentation officielle sur PyPI.
