feat: ajout de la gestion des sources de contenu avec création de composants, formulaires et API pour l'importation, l'exportation et la configuration des sources de scraping.

This commit is contained in:
ext.jeremy.guillot@maxicoffee.domains
2025-06-27 16:40:48 +02:00
parent 32b4e4fbb2
commit dac2f91998
15 changed files with 1364 additions and 15 deletions

View File

@@ -0,0 +1,55 @@
/**
* Types de scraping disponibles
*/
export const SCRAPING_TYPES = {
HTML: 'html',
JAVASCRIPT: 'javascript'
};
/**
* Orientations de lecture
*/
export const READING_ORIENTATIONS = {
VERTICAL: 'vertical',
HORIZONTAL: 'horizontal'
};
/**
* États des sources
*/
export const SOURCE_STATUS = {
ACTIVE: 'active',
INACTIVE: 'inactive',
ERROR: 'error'
};
/**
* Configuration par défaut pour une nouvelle source
*/
export const DEFAULT_SOURCE_CONFIG = {
baseUrl: '',
chapterUrlFormat: '',
scrapingType: SCRAPING_TYPES.HTML,
imageSelector: '',
nextPageSelector: '',
chapterSelector: '',
token: ''
};
/**
* Validateurs pour les champs
*/
export const VALIDATORS = {
URL_PATTERN: /^https?:\/\/.+/,
SELECTOR_PATTERN: /^[.#]?[\w\-\s.#\[\]=\"':()>+~,]+$/
};
/**
* Messages d'erreur
*/
export const ERROR_MESSAGES = {
INVALID_URL: 'L\'URL doit commencer par http:// ou https://',
INVALID_SELECTOR: 'Le sélecteur CSS n\'est pas valide',
REQUIRED_FIELD: 'Ce champ est obligatoire',
CHAPTER_URL_FORMAT_REQUIRED: 'Le format d\'URL des chapitres est obligatoire'
};