Commit Graph

180 Commits

Author SHA1 Message Date
e4636991a7 Fix trailing whitespace in API Key 2026-07-16 15:36:01 -05:00
9993a76f57 fix: enforce universal appwrite instance patch and downgrade sdk to v17 2026-07-10 08:03:24 -05:00
7113ba706b fix: use robust instance-level monkey patch for Appwrite clients to survive Turbopack/Next.js module duplication and npm installs 2026-07-09 23:57:43 -05:00
cd6a91ba9a fix: monkey patch Client.call to return plain objects and avoid nextjs serialization error 2026-07-09 23:37:12 -05:00
ade675e0d8 fix: change postinstall to prebuild for patch_appwrite.js and add monkey patches to appwrite clients 2026-07-09 23:15:56 -05:00
908646637a Fix Appwrite SDK version mismatch and TypeScript errors in user-admin.ts 2026-07-09 22:45:31 -05:00
022f2be5e8 Fix logo url rendering and banner cropping 2026-07-09 20:45:33 -05:00
b637a2e445 Downgrade Appwrite SDK to v18 to match Appwrite Server 1.8.1 and fix Query.equal type errors 2026-07-09 19:10:40 -05:00
8d377b0d7c Fix production build errors, static rendering, and eslint configuration 2026-07-09 15:07:57 -05:00
a17f989ba1 Fix banner visibility, rotation timers, and logo distortion 2026-07-09 09:52:54 -05:00
bf3c472894 Complete web sections implementation, top banner and update live submodule 2026-07-06 21:26:37 -05:00
03d686d443 Fix ingest process detection in Restreamer UI, add dynamic camera orientation support, and implement OpenGL overlay rendering for lower thirds/comments in Almeira Live 2026-07-04 22:13:32 -05:00
d0523e7c02 fix: added Suspense boundary to guest page to prevent Next.js useSearchParams errors 2026-07-03 19:07:19 -05:00
209a0eff25 fix: show pagination controls for all users unconditionally 2026-07-02 08:44:33 -05:00
b0fdf220bc Fix next/headers import and add debug info for requireAuth 2026-07-01 19:54:04 -05:00
970ebe4581 Fix delete session error and inline edit duplication bug 2026-07-01 19:39:09 -05:00
e2c040e178 Add dedicated Video button to RichTextEditor toolbar 2026-07-01 19:14:53 -05:00
b79043ba1a Fix Tiptap video node insertion for media library videos 2026-07-01 19:13:07 -05:00
c90e842cad Update media upload button UI to show an active uploading state 2026-07-01 19:05:17 -05:00
df1df8a681 Fix media upload logic: generate DB document with magic SEO formatting 2026-07-01 18:49:23 -05:00
2b29755d2a fix: restore fileIdToRender variables in MediaGridSelector 2026-07-01 08:34:09 -05:00
92a57d01b8 feat: soporte para videos de biblioteca de medios en publicaciones 2026-07-01 08:31:37 -05:00
74e0563349 fix(forms): enforce string field length limits globally 2026-06-22 14:33:06 -05:00
08b9445eec fix: ensure posts are parsed in all public pages even if media is empty 2026-06-22 13:05:32 -05:00
447569569b fix: resolve RSC plain object leak in AdWrappers 2026-06-22 12:00:46 -05:00
31bf643d3b fix: adjust seo_titulo max length to 60, add banner options to tipo enum, and resolve RSC plain object error 2026-06-22 11:54:51 -05:00
da4fbaa9e8 feat: add edit button to media cards 2026-06-22 10:25:02 -05:00
2b545b28d5 chore: format dates globally in datatable and entity form 2026-06-22 10:01:51 -05:00
f99709cf35 Fix dashboard PostCard fallback URL generation and hide raw IDs 2026-06-21 15:04:02 -05:00
54220a6c7e fix: Restrict month filter to admins only while keeping pagination public 2026-06-21 14:44:49 -05:00
08c5cdbe18 feat: Allow all users to see and use month filter on the news feed 2026-06-21 14:43:11 -05:00
f77523519e feat: Add admin month filter and fix cauca post generation 2026-06-21 12:00:49 -05:00
e00faf1ace feat: Add Evolution API webhook and utilities 2026-06-21 11:54:55 -05:00
1179f0ed54 feat: include pagination in news feed and clean up report scripts 2026-06-21 09:36:39 -05:00
81ccb397f5 Fix PostCard image rendering and ID display, plus image backfill automation 2026-06-21 08:32:13 -05:00
946eae2a25 fix(types): agregar campo 'tipo' a interfaz Post y PostSchema Zod
- Añade PostTipo como union type: 'noticia'|'evento'|'aviso'|'comunicado'|'galeria'
- Incluye 'tipo' como campo requerido en la interfaz Post (types/publications.ts)
- Agrega validación z.enum para 'tipo' en PostSchema (validators/publications.ts)
- Elimina test_action.ts y scripts de diagnóstico que bloqueaban el build
2026-06-20 22:24:48 -05:00
699cfa232d feat: Live Chat en TV + página overlay transparente para streaming
- Añade componente LiveChatBox con Realtime de Appwrite (subscribe)
- Integra chat en vivo junto al player en /tv con layout 2/3 + 1/3
- Nueva ruta /tv/overlay: página transparente para browser source en OBS
  con renderizadores de LOWER_THIRD, TICKER y COMMENT reactivos en Realtime
- Exporta 'account' desde appwrite.ts para autenticación cliente
- Incluye scripts setup_live_chat.js y setup_stream_state.js para provisionar
  colecciones live_chat y stream_state en Appwrite
- Ajusta versiones SDK: appwrite@22.4.1 y node-appwrite@22.0.0 (compatibles con servidor 1.8.1)
2026-06-20 22:18:29 -05:00
155546f90e fix: agregar atributo requerido 'tipo' en posts
- Añade campo 'tipo' al SCHEMA_MAP de posts (whitelist de extractCleanData)
- Agrega selector 'Tipo de Contenido' en PublicationLayout (Noticia/Evento/Aviso/Clasificado/Blog)
- Agrega fallback server-side en entities.ts: si 'tipo' no llega, se asigna 'noticia' por defecto
- Soluciona AppwriteException: Missing required attribute 'tipo' al crear publicaciones
2026-06-20 22:04:46 -05:00
7e41c48dc1 feat(streaming): Native Restreamer Dashboard integration 2026-06-20 09:24:33 -05:00
9680d8788f fix: safe content rendering, media library server-side fetch, robots & sitemap 2026-06-18 14:05:57 -05:00
45da8c1d46 Fix user admin update, logo persistence, and improve error handling 2026-06-11 22:52:58 -05:00
d61729b92e fix(ui): properly parse boolean setting and enforce dynamic server rendering for NewsCard feed 2026-04-22 16:01:16 -05:00
926c704fdd fix(ui): hide NewsCard footer separator when date and footer text are empty 2026-04-22 15:46:14 -05:00
699631c763 fix(build): resolve settings scope error in NewsTicker 2026-04-22 15:32:34 -05:00
32e5450ab1 feat: redesign NewsTicker, remove redundant dashboard search, and integrate Live TV module 2026-04-22 15:21:51 -05:00
41735c5280 feat(media): add filtering by type and sorting by creation date 2026-04-15 17:05:16 -05:00
2ee9bd00df fix(entity): correctly parse checkbox to boolean to prevent appwrite schema validation crash 2026-04-15 17:04:12 -05:00
242ea2f60f fix(styles): allow whitespace rendering in rich text fields and retain inline styles 2026-04-15 16:35:27 -05:00
9812d70c71 fix(forms): resolve publication state enum mismatch and entity form action issues 2026-04-15 10:19:56 -05:00
1f718afec9 feat: fix m3u8 native playback in LivePlayer & add webhooks API 2026-04-14 11:53:09 -05:00
8993ab3293 feat: add tooltips with title to media items in dashboard and selection modals 2026-03-30 10:35:10 -05:00
7bbaccfdb8 feat: universalize global media search across all selection components 2026-03-30 10:21:13 -05:00
25e92d7ccd fix: stabilize infrastructure, bypass account scopes in emergency mode, and sanitize document serialization 2026-03-30 09:18:53 -05:00
20a1695305 fix: media search server-side and data serialization in actions 2026-03-30 09:18:02 -05:00
86b2e704e9 refactor: refine global player visibility and active signal labels 2026-03-30 08:55:51 -05:00
031e8f4523 feat: synchronize live TV/Radio pages with global floating player 2026-03-30 08:26:32 -05:00
a2d5604d38 fix: align media bucket ID with setup script and update env 2026-03-29 22:48:30 -05:00
3a77a12a21 feat: implement live Radio signal and complete live signals integration 2026-03-29 22:41:35 -05:00
1ea7ff359d feat: implement live TV signal using dynamic entity configuration 2026-03-29 22:41:10 -05:00
4892a3d798 fix: media library pagination, preview URLs and dashboard layout optimization 2026-03-29 22:27:07 -05:00
a99355f76e feat(entity): habilitar MediaGridSelector para elegir y subir logotipo corporativo 2026-03-29 01:41:29 -05:00
0b34e772d0 fix(media): corregir formato buffer originando 'Error: File not found in payload' al subir a Appwrite 2026-03-29 01:08:43 -05:00
58b28378fb feat(ui): optimización de UI/UX en CMS y GlobalPlayer, correcciones backend Appwrite 2026-03-29 00:51:47 -05:00
d48d7bc094 fix: satisfy strict TypeScript compiler checks in Next.js build on publication layouts 2026-03-28 17:36:34 -05:00
b063109af6 fix: finalize NewsCard edit button z-index layer and eliminate nested Server Component Links 2026-03-28 17:34:01 -05:00
a39c059ee2 fix: resolve js null evaluations in entity relations and add on-the-fly appwrite schema bootstrapping for entity config 2026-03-28 17:32:14 -05:00
b1f00e9d19 fix: resolve Next.js Server Component hydration crash by removing onClick handler and refactoring Link hierarchy 2026-03-28 17:14:46 -05:00
ae4e242252 refactor: UX enhancements, SEO automation, Entity Singleton and Media URLs 2026-03-28 17:09:35 -05:00
6d83697def fix: explicit double click handler on cards, explicit create button on related fields, and correct RBAC labels parsing 2026-03-28 16:26:09 -05:00
682d6620b9 fix: explicit debugging logic on paginations, filters, Zod xss, and UI constraints 2026-03-28 15:22:05 -05:00
3647602413 feat: complete rx editor, media library grid, UX logic, and XSS protection
- Added @tiptap/extension-youtube and extension-image
- Added MediaGridSelector component with robust grid UI and inline uploads
- Integrated MediaGridSelector into PublicationLayout for featured images
- Integrated inline image module in RichTextEditor linked to MediaGridSelector
- Rendered date conditionally on PostCard and disabled bubble propagation
- Added isomorphic-dompurify to mitigate XSS in the public article viewer
2026-03-28 14:34:04 -05:00
97a3d162e0 feat: implement rich text, media previews, interactions, and fix state sync
- Added RichTextEditor to PublicationLayout's 'contenido'
- Added MediaThumbnail to RelationSelectField for dynamic image previews
- Replaced PostCard edit overlay with single click (view) and double click (edit) mechanics
- Fixed persistence/state bugs by adding revalidatePath to entity server actions
- Replaced hard reload in PublicationsList with router.refresh() for optimistic syncing
2026-03-28 14:06:38 -05:00
b2daaa2108 fix: resolve Google Fonts fetch error during build
- Removed next/font/google from layout.tsx
- Added standard Google Fonts <link> in HTML head
- Defined --font-inter and --font-outfit in globals.css
- This allows the build to pass in environments with restricted internet access.
2026-03-28 12:29:19 -05:00
ac0735381f fix: global serialization hardening for layouts and components
- Sanitized getEntityConfig at the source to prevent Navbar errors.
- Sanitized user object in DashboardLayout to protect Sidebar.
- This ensures all collections and custom routes are immune to 'Only plain objects' errors.
2026-03-28 12:14:28 -05:00
b58a2a59fb fix: resolve 'Only plain objects' serialization errors across dashboard and home
- Applied JSON.parse(JSON.stringify()) sanitization to documents and relationData in EditEntityPage.
- Sanitized relationData and user in NewEntityPage.
- Sanitized posts and settings in Homepage.
- Added missing Query import to dashboard edit page.
- This ensures all data passed to Client Components is in a serializable POJO format.
2026-03-28 12:05:41 -05:00
c6cb9a0265 feat: unify dashboard layout and implement pagination for publications
- Refactored EntityPage to share the same Header, Search, and Pagination UI across all modules.
- Implemented server-side pagination for the specialized Publications view (12/page).
- Added search support for Publications module.
- Ensured 100% design consistency between specialized and generic views.
- Fixed 4062 record display issue by implementing blocks of data fetch.
2026-03-28 11:15:36 -05:00
29c124580e fix: stabilize dashboard and harden appwrite actions against production schema mismatches
- Fix Next.js serialization error by sanitizing Appwrite documents (POJO conversion).
- Harden entity configuration actions to handle 404 (collection not found) gracefully.
- Add fallback for NewsTicker WhatsApp messages if 'status' attribute is missing.
- Prevent 'document_missing_data' error in updateEntityConfig by validating input.
2026-03-28 10:46:53 -05:00
0ebe2b691a fix: refactor zod schemas for zod 4 compatibility
- Use 'message' instead of 'errorMap' or 'invalid_type_error' for enum validation.
- Explicitly pass key type to z.record (required in Zod 4).
2026-03-28 10:25:07 -05:00
2b099f86ba fix: resolve build failure by relaxing submitEditAction type in PublicationsList 2026-03-28 10:15:57 -05:00
5279af2003 refactor: global project hardening and integrity verification
- Add safety checks for direct Appwrite document index access across all root pages.
- Harden NewsTicker and AdWrappers with robust fallback settings and length checks.
- Apply strict typing to dashboard settings page and resolve icon conflicts.
- Final global audit for deprecated Zod .errors usage (0 occurrences remaining).
- Standardize PublicationLayout across creation and edit workflows for posts.
2026-03-28 10:07:32 -05:00
956360a693 fix: resolve build-time type error in dashboard pages by relaxing submitAction return type
- Update PublicationLayoutProps and PublicationDrawerProps to allow 'void' as a valid return type for server actions (supporting redirects).
- Improve error handling in PublicationLayout and PublicationDrawer to safely process both object and void responses.
- Update EditEntityPage to include missing user authentication and use specialized PublicationLayout for 'posts' entity.
2026-03-28 10:03:54 -05:00
339ac0125e refactor: improve project integrity with shared types and strict Appwrite document casting
- Create shared Settings interface in @/types/settings.
- Refactor NewsTicker, AdWrappers, and page components to use shared types.
- Remove risky 'as any' casting from Appwrite document resolution.
- Update Post interface to include resolved_media for consistent data handling.
- Verify Zod error handling consistency across the src directory.
2026-03-28 09:57:42 -05:00
ea551469b7 fix: use zod issues instead of errors for build compatibility 2026-03-28 09:53:10 -05:00
dda9ae0f4a feat: implement robust publications module with real-time validation and state management
- Refactor dashboard entity pages to support dynamic publications management.
- Add Publications Module with Atomic Design components (PostCard, PublicationsList, FormSection).
- Implement Zod-based real-time validation for publication forms.
- Manage state using Zustand for optimistic UI and in-place relations.
- Add RBAC protection with PermissionGuard and server-side API validation.
- Fix: Resolve TypeScript type error in AdWrappers.tsx to ensure successful build.
- Add ToastProvider and ErrorBoundary for improved user experience.
- Update dependencies for publications logic.
2026-03-28 08:47:40 -05:00
7659019ca3 fix: replace client SDK with Admin SDK in radio and tv server pages 2026-03-27 21:23:41 -05:00
cf3e3181cc fix(production): final stabilization of AdWrappers and ClientSidebars robustness 2026-03-27 21:18:16 -05:00
4c7c4d1468 fix(stabilization): resolved media object fragility and refined sidebar error boundaries 2026-03-27 21:17:28 -05:00
5736efc915 fix: resolve server-side render exception by switching to Admin SDK in wrappers and adding robust media validation 2026-03-27 21:03:56 -05:00
0ab9cf1c16 chore: enhance home page robustness and finalized database unification 2026-03-27 19:01:10 -05:00
949811297a fix: resolve production 500 error by unifying DATABASE_ID to 'almeira' and centralized logic in src/lib/appwrite.ts 2026-03-27 19:00:19 -05:00
44947d0d29 fix: resolve production UnrecognizedActionError by externalizing entity server actions into stable top-level exports 2026-03-27 18:42:07 -05:00
64c6568a99 feat: implement advanced publications UX with 12-column grid, sections and on-the-fly creation 2026-03-27 18:29:33 -05:00
cc9a599aad fix: login secure cookie and add diagnostic logging 2026-03-27 18:13:22 -05:00
0ecfa29bf0 feat: finalize Almeira Multimedia Ecosystem integration and UI refinements 2026-03-27 16:29:10 -05:00
3ee7b28d3d fix: remove duplicate HTML entity keys in utils 2026-03-27 10:16:18 -05:00
76436ac1a2 fix: deleteDocumentServer signature compatibility 2026-03-27 10:11:02 -05:00
3abaa7602f fix: standardized server action return types and fixed media upload types 2026-03-27 10:07:23 -05:00
8a6db9df86 fix: build errors, missing deps, and restored server actions 2026-03-27 09:54:28 -05:00
bda5ab2c82 fix: final auth reset v1.1.0-RESET and force docker rebuild 2026-03-27 09:39:46 -05:00
42777abf6d fix: force rebuild and enable insecure cookies for HTTP access v1.1.0 2026-03-27 09:37:59 -05:00