@amsom-habitat/nest-document
v2.0.0
Published
Client de l’API Document : publipostage d’un modèle Word en PDF ou base64.
Readme
@amsom-habitat/nest-document
Client de l'API Document : publipostage d'un modèle Word, rendu en PDF ou en Word base64. Les appels
passent par @amsom-habitat/nest-http-client (à installer aussi).
@Module({ imports: [DocumentModule.forRoot()] }) // URL lue dans API_DOCUMENT_URL
@Module({ imports: [DocumentModule.forRoot({ baseUrl: 'http://api-document', timeoutMs: 60_000 })] })
@Module({ imports: [DocumentModule.forRootAsync({ isGlobal: true, inject: [ConfigService], useFactory: (c) => ({ baseUrl: c.get('URL_DOC') }) })] })
constructor(private readonly documents: DocumentService) {}
const pdf = await this.documents.wordToPdf('quittance.docx', donnees); // Buffer
const b64 = await this.documents.wordToBase64('attestation.docx', donnees); // string| Option | Défaut | Rôle |
|---|---|---|
| baseUrl | API_DOCUMENT_URL | URL de l'API Document, obligatoire (vérifiée au démarrage), / final retiré |
| timeoutMs | 30000 | délai maximal d'un appel |
Erreurs : API Document injoignable → 503, délai dépassé → 504, réponse en erreur → 502. Le corps amont est journalisé, jamais exposé.
Migration depuis 1.x
| 1.x | 2.0 |
|---|---|
| imports: [DocumentModule] | imports: [DocumentModule.forRoot()] |
| DocumentModule.forRoot({ urlApiDocument }) | DocumentModule.forRoot({ baseUrl }) |
| OptionsDocument, OPTIONS_DOCUMENT | DocumentOptions (jeton supprimé) |
| erreur amont → même statut | 502 ; injoignable 503 ; délai 504 |
