Commit Graph
157 Commits
Author SHA1 Message Date
Michael f8db96084b feat(i18n): Translate analytics to French 2026-01-20 14:27:17 +01:00
Michael e7e9a2fb1b fix(build): Resolve circular dependencies and type errors 2026-01-20 13:56:45 +01:00
Michael f8ddb44e38 feat(analytics): Implement Analytics Dashboard and Token Management 2026-01-20 13:49:24 +01:00
Michael 4e209ac367 feat: implement client-side emoji parsing for display and server-side emoji rendering to canvas. 2025-12-23 11:18:07 +01:00
Claude ad97da0f50 feat: Ajouter versions mobiles complètes pour toutes les pages
Implémentation d'un système responsive robuste avec détection automatique
du type d'appareil et switch transparent entre versions desktop et mobile.

## Nouvelles fonctionnalités

### 1. Hook de détection mobile (useIsMobile)
- Détection via media query (max-width: 768px)
- Validation supplémentaire via user agent
- Support des changements dynamiques de taille d'écran
- Hook useDeviceType pour détection granulaire (mobile/tablet/desktop)

### 2. Composant ResponsiveRoute
- Switch automatique entre versions desktop/mobile
- Lazy loading des composants pour performances optimales
- Factory function createResponsiveRoute pour création facile
- Suspense avec fallback de chargement

### 3. Pages mobiles optimisées (10 pages)
**Pages créées :**
- dashboard.tsx - Tableau de bord
- new-post.tsx - Création de posts (interface tactile optimisée)
- calendar.tsx - Calendrier
- media.tsx - Bibliothèque de médias
- image-editor.tsx - Éditeur d'images
- pages.tsx - Gestion des pages sociales
- ai.tsx - Assistant IA (admin)
- settings.tsx - Paramètres (admin)
- users-admin.tsx - Gestion utilisateurs (admin)
- sql.tsx - Administration SQL (admin)

**Optimisations mobiles appliquées :**
- Layout en colonne unique (au lieu de multi-colonnes)
- Boutons tactiles : min-height 44-52px (Apple guidelines)
- Grilles adaptées (2 colonnes au lieu de 3 pour médias)
- Navigation simplifiée avec menu hamburger
- Dialogs en plein écran (95vw sur mobile)
- Tables converties en cards empilées
- Boutons d'action en colonne au lieu de ligne
- Padding et espacement optimisés pour petits écrans
- Typographie réduite (text-2xl au lieu de 3xl)
- Touch-manipulation sur zones interactives
- Bottom fixed buttons pour actions principales
- Inputs full-width avec min-height 48px

### 4. Routing automatique
- App.tsx modifié pour utiliser createResponsiveRoute
- Détection transparente du device
- Lazy loading de toutes les routes
- Aucun changement d'URL entre versions

## Performances

- Code splitting automatique (lazy loading)
- Seule la version nécessaire est chargée
- Cache des composants chargés
- Réduction de la taille du bundle initial

## Tests à effectuer

1. Rétrécir la fenêtre du navigateur < 768px
2. Utiliser les DevTools mobile
3. Tester sur un vrai appareil mobile
4. Vérifier que toutes les fonctionnalités marchent

Les utilisateurs bénéficient maintenant d'une expérience optimale sur mobile !
2025-11-29 10:59:41 +00:00
michaelschal 2c2e3822f6 Correctly display the Euro symbol with product prices
Fix an issue where the Euro symbol was misplaced when saving product images, ensuring it appears after the price consistently.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: e8c912ba-b86c-4da3-954c-070906550761
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/ltYxoh9
2025-11-22 11:13:41 +00:00
michaelschal f2ba034fc4 Improve story preview by displaying emojis correctly
Integrates Twemoji library into the PreviewModal component to render emojis as images, ensuring accurate visual representation of posts.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: f14eb440-b642-488d-9a57-924557db0bc4
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/JcM96XE
2025-11-21 14:34:29 +00:00
michaelschal 86ac089fb2 Add a component to display emojis correctly in previews
Create a new React component that parses and renders text with emojis as Twemoji images, ensuring consistency between preview and final output.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: e41fe0af-9a57-474c-998a-d509286b7711
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/JcM96XE
2025-11-21 14:33:58 +00:00
michaelschal e596fa298d Add emoji rendering to improve post preview accuracy
Install `twemoji` and implement `emojiUtils.ts` to parse and render emojis correctly in the post preview, ensuring consistency with actual published content.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: 605c7efc-6cfc-498b-bf39-42e925354f36
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/JcM96XE
2025-11-21 14:33:42 +00:00
michaelschal 6898a0fca9 Improve text rendering by handling long words and centering text
Update emoji rendering to correctly handle long words and center text, and adjust the client-side preview to remove hashtags instead of emojis.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: 1a295c79-6a41-4cf1-94cd-94aa3c4f96e6
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/JcM96XE
2025-11-21 06:10:39 +00:00
michaelschal 1bdb7445c3 Improve emoji handling and text display in previews and generated images
Refactor emoji removal logic into a shared utility and update dependencies.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: 59d8c635-691c-42a3-b368-902e8f16eeee
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/Q6FJ7Lw
2025-11-18 13:45:07 +00:00
michaelschal e1c6a0ad2a Improve text rendering by removing emojis and handling long words
Implement emoji removal using regex and add a helper function to break long words for better text wrapping in the preview modal.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: 99b09d4a-a86d-4d0a-bcdb-b8790a95f0e9
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/N0tTJcl
2025-11-18 13:38:16 +00:00
michaelschal c15cc72cd1 Update logo sizing to allow larger logos on images
Modify client-side and server-side logic to adjust logo size constraints, ensuring logos adhere to a maximum percentage of image dimensions and incorporate padding for better placement.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: aee6d999-ad55-471c-8c9a-6033843f313e
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/L05E01m
2025-11-18 09:27:20 +00:00
michaelschal 956c226373 Simplify image selection and update project description
Remove console logs and simplify image selection logic in the image editor. Update the project description in replit.md.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 5c57cf12-84be-4da7-9921-4d0e283a6bd9
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/JgqpaNl
2025-11-18 08:55:55 +00:00
michaelschal 7ee9b74a95 Add console logs for debugging image editor functionality
Adds console logs to the image editor page in the client to aid in debugging issues related to media selection and URL generation.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: cc48d98e-8c7e-4d95-835d-8e33b87c8532
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/JgqpaNl
2025-11-18 08:54:26 +00:00
michaelschal 225e4f2292 Add ability to upload and apply custom logos to social media posts
Implement functionality for uploading, applying, and deleting custom logos as overlays on images, along with backend processing and UI updates.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: 91999614-5187-4902-b7a1-bf9e372de9c8
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/JgqpaNl
2025-11-18 08:47:42 +00:00
michaelschal 90f40d28aa Add access token expiration tracking for social media pages
Add `tokenExpiresAt` to `social_pages` table, calculate expiration dates on page creation, and display status with color-coded indicators and remaining days in the UI.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: 6f8518cc-b567-4aae-b736-3d641f583df0
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/5aomXd9
2025-11-17 15:24:46 +00:00
michaelschal 98a507b030 Adjust minimum font size for adaptive text across the application
Update the minimum font size from 24px to 12px in both client-side preview modal and server-side image processing to improve text adaptability.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 26883c03-a1a8-4dda-9695-f2319b42174c
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/5aomXd9
2025-11-17 15:09:53 +00:00
michaelschal 38a5d644f8 Add ability to preview Facebook stories alongside Instagram
Refactor `renderInstagramStory` to a generic `renderStory` function that accepts a platform type, and add support for rendering Facebook stories.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: ee00a69b-0c5c-4d62-821b-8151fe745045
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/5aomXd9
2025-11-17 15:02:43 +00:00
michaelschal 71dab392a5 Add support for previewing Facebook stories to the application
Update PreviewFormat type in client/src/components/preview-modal.tsx to include 'facebook-story'.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 854cb32d-56d3-4e12-a339-2a0591f05161
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/5aomXd9
2025-11-17 15:01:16 +00:00
michaelschal 2f0ed931fa Add adaptive text rendering to Instagram story previews
Refactors the `PreviewModal` component to include a `calculateAdaptiveFontSize` function and `wrapText` utility, enabling dynamic adjustment of text size and line wrapping within the Instagram story preview to fit the designated area.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: 443db3e2-8ade-4cee-99af-2eef0199807d
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/5aomXd9
2025-11-17 14:54:53 +00:00
michaelschal 54cb7acb64 Update AI chat to use correct API endpoint for fetching models
Change query key and data access for OpenRouter models in AiChat component.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: 30146ff9-f3f2-44ad-aebf-af4a55a7e960
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/f2EnhiB
2025-11-17 14:14:15 +00:00
michaelschal b44f300a8e Display the 12 most recent media items and show video thumbnails
Update the media selection to show only the 12 latest uploaded images and videos, and add video playback support within the media selection interface.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: 9a9f229a-0a7c-4b48-8f35-8a6a6dff12e3
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/YZ4cngz
2025-11-05 16:23:37 +00:00
michaelschal 42d9e863da Add a separator to distinguish past and future scheduled posts
Introduces a visual separator in the calendar list view to differentiate between past and future scheduled posts, enhancing chronological organization.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: 31687f99-9e96-4b22-9fd0-04c5a51141bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/YZ4cngz
2025-11-05 16:08:58 +00:00
michaelschal 417eb08347 Improve calendar display order for mobile and past events
Update the sorting logic in the calendar component to correctly display today's date first, followed by future dates chronologically, and then past dates in reverse chronological order.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: 7337d6ee-ece8-4ec0-961d-63d6b86d3194
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/ofL5rPP
2025-11-05 15:41:41 +00:00
michaelschal 61a3817596 Enable users to upload videos to the platform on all devices
Reset the file input value after a file upload or rejection to prevent issues with subsequent uploads on Android.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: 514638b9-84d2-4a7a-8ec1-ae6513635dd7
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/ofL5rPP
2025-10-31 15:05:12 +00:00
michaelschal 7f031904dd Improve video upload functionality and add diagnostics for Android
Expand accepted video file types and implement debugging logs for camera captures on Android to address upload issues.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: 768a5377-a884-497c-93f6-6ce6c925d1d2
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/cOs6ffF
2025-10-31 15:03:40 +00:00
michaelschal 52c0d46f87 Improve time selection on mobile for new posts
Adjust PopoverContent props in DateTimePicker.tsx for better alignment and collision handling, resolving mobile display issues.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/cOs6ffF
2025-10-29 06:47:59 +00:00
michaelschal 83f3e35443 Fix time selection display on mobile for new posts
Adjust PopoverContent and ScrollArea styling in DateTimePicker.tsx to ensure hours and minutes are visible on mobile view.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/cOs6ffF
2025-10-29 06:39:25 +00:00
michaelschal f5673c8ef5 Improve time selection layout for better user experience
Adjusts the width of scrollable areas within the DateTimePicker component, specifically for hours and minutes, to ensure proper alignment and visibility on various screen sizes.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/sCmMzVy
2025-10-28 16:09:13 +00:00
michaelschal 58ba98a69b Adjust date and time picker window size for better non-mobile display
Constrain the max-width of the PopoverContent component in `DateTimePicker` to 280px to prevent layout issues on non-mobile viewports.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/sCmMzVy
2025-10-28 15:59:22 +00:00
michaelschal 9e58d3be47 Improve date and time selection interface for better user experience
Adjusted DateTimePicker component by reducing scroll area height, button size, and padding for a more compact and touch-friendly interface, optimizing space usage.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/aGnsIb5
2025-10-28 13:18:59 +00:00
michaelschal 5681814957 Add a date and time picker for scheduling posts
Integrates a new DateTimePicker component into the new post page, replacing the old datetime-local input. This component allows for selecting specific dates and times, and also visually indicates dates with pre-existing scheduled posts. The internal state and API request payload have been updated to correctly handle Date objects instead of strings.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/aGnsIb5
2025-10-28 12:59:19 +00:00
michaelschal eec5e397fe Improve calendar view and add scheduling conflict warnings
Enhance the calendar list view to prioritize today's date and introduce visual indicators for optimal posting times and existing scheduled posts on the new post page.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/VJoXNjs
2025-10-28 12:43:14 +00:00
michaelschal b3675a1900 Fix issue with uploading camera photos on Android devices
Correct the file naming convention for camera captures on Android to prevent upload failures by generating a valid filename if the original is missing or invalid.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/fGL9Pd7
2025-10-14 10:08:08 +00:00
michaelschal ed77f30c96 Add camera capture functionality for media uploads
Adds a camera icon button to the media upload component, enabling users to capture photos/videos directly using their device's camera. This involves integrating an input element for camera capture and a handler function to process the captured media, triggering the upload mutation. The existing "Browse" button is now complemented by this new camera functionality, enhancing the media uploading experience.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/fGL9Pd7
2025-10-14 08:00:51 +00:00
michaelschal 21a13a7275 Improve media loading performance and user experience
Add `loading="lazy"` attribute to image elements in MediaUpload component for improved performance.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/fGL9Pd7
2025-10-14 07:57:36 +00:00
michaelschal 9a375a2291 Update media upload to prioritize Facebook feed images
Modify MediaUpload component to use `facebookFeedUrl` if available, otherwise fallback to `originalUrl` for image display.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/F3F3s9V
2025-10-14 07:56:59 +00:00
michaelschal 3c2e0f169b Improve media grid layout for better visibility on smaller screens
Adjust the `NewPost` component's media grid to use a responsive column layout, defaulting to 2 columns on small screens and 3 on larger screens.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/F3F3s9V
2025-10-14 07:56:18 +00:00
michaelschal a2379b2f79 Improve media loading performance for posts by enabling lazy loading
Added 'loading="lazy"' attribute to media elements in the new-post page to optimize image and video loading.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/F3F3s9V
2025-10-14 07:55:51 +00:00
michaelschal db45b98e5d Improve image display by prioritizing Facebook feed URLs
Update image rendering in the new post page to use `facebookFeedUrl` when available, otherwise fallback to `originalUrl`.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/F3F3s9V
2025-10-14 07:55:17 +00:00
michaelschal f5d2249633 Adjust initial media display based on screen size
Initialize `visibleMediaCount` state based on window width to display 6 media items on mobile and 12 on desktop.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/F3F3s9V
2025-10-14 07:54:34 +00:00
michaelschal 68ed5d52d4 Enable video playback in post previews for better visualization
Update `PreviewModal.tsx` to conditionally render either a video element with controls or an image based on the media type, resolving an issue where videos were not displayed in previews.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/nlpElis
2025-10-13 12:03:11 +00:00
michaelschal 942dd25d59 Improve media preview to show videos correctly in the interface
Fix an issue in the MediaUpload component where videos were not being rendered correctly in the preview, ensuring all media types are displayed as expected.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/nlpElis
2025-10-13 12:01:34 +00:00
michaelschal da2a1211d6 Add ability to upload multiple images to the media library at once
Enable multiple file uploads in the media library component, allowing users to upload several images simultaneously. This commit modifies the `useDropzone` configuration to accept multiple files and updates the `onDrop` function to handle parallel uploads. It also introduces UI feedback for ongoing uploads.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/nlpElis
2025-10-13 07:59:24 +00:00
michaelschal 4ec1e3ef33 Adjust image editor ribbon position slightly to the left
Update CSS transform property in `ImageEditor` component to adjust ribbon positioning, shifting it 2px to the left.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/nlpElis
2025-10-13 06:42:10 +00:00
michaelschal 2b36c3fa6a Adjust text position in image editor for better alignment
Update CSS transform properties in `image-editor.tsx` to shift text horizontally by adjusting `translateX` values, improving visual presentation.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/nlpElis
2025-10-13 06:40:48 +00:00
michaelschal 44ebe0dfaa Adjust ribbon position for better image editor display
Modify CSS `transform` property in `image-editor.tsx` to adjust the vertical positioning of the ribbon element.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/nlpElis
2025-10-13 06:39:57 +00:00
michaelschal 91f9f4f9e2 Adjust the position of the text overlay on product images
Update the CSS `transform` property in `image-editor.tsx` to adjust the positioning of the "Stock limité" ribbon text for rotated elements.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/nlpElis
2025-10-13 06:39:06 +00:00
michaelschal 6919ae9873 Adjust text positioning and rotation for product stock limited banners
Update CSS `transform` property in `ImageEditor` component to handle specific translations, rotations, and line heights for "Stock limité" ribbon text based on its position.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: ae4037a0-2a6f-4530-9bac-79b543286bda
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/397bca8c-984f-43ff-841a-10897aeb8140/ae4037a0-2a6f-4530-9bac-79b543286bda/nlpElis
2025-10-13 06:38:10 +00:00