Files
marketing-app/server/config.js
fahed 42a5f17d0b
All checks were successful
Deploy / deploy (push) Successful in 11s
feat: bulk delete, team dispatch, calendar views, timeline colors
- Multi-select bulk delete in all 5 list views (Artefacts, Posts, Tasks,
  Issues, Assets) with cascade deletes and confirmation modals
- Team-based issue dispatch: team picker on public issue form, team filter
  on Issues page, copy public link from Team page and Issues header,
  team assignment in IssueDetailPanel
- Month/Week toggle on PostCalendar and TaskCalendarView
- Month/Week/Day zoom on project and campaign timelines (InteractiveTimeline)
  and ProjectDetail GanttView, with Month as default
- Custom timeline bar colors: clickable color dot with 12-color palette
  popover on project, campaign, and task timeline bars
- Artefacts default view changed to list
- BulkSelectBar reusable component
- i18n keys for all new features (en + ar)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 14:55:36 +03:00

31 lines
875 B
JavaScript

// server/config.js
const path = require('path');
const PORT = 3001;
const UPLOADS_DIR = path.join(__dirname, 'uploads');
const SETTINGS_PATH = path.join(__dirname, 'app-settings.json');
const DEFAULTS = {
uploadMaxSizeMB: 50,
cacheTTLMs: 60000,
sessionMaxAge: 7 * 24 * 60 * 60 * 1000,
tokenExpiryDays: 7,
};
const QUERY_LIMITS = {
small: 200,
medium: 500,
large: 1000,
max: 5000,
};
const ALL_MODULES = ['marketing', 'projects', 'finance'];
// NocoDB table name mapping for ownership checks
const TABLE_NAME_MAP = { posts: 'Posts', tasks: 'Tasks', campaigns: 'Campaigns', projects: 'Projects' };
// Entity types allowed for comments
const COMMENT_ENTITY_TYPES = new Set(['post', 'task', 'project', 'campaign', 'asset']);
module.exports = { PORT, UPLOADS_DIR, SETTINGS_PATH, DEFAULTS, QUERY_LIMITS, ALL_MODULES, TABLE_NAME_MAP, COMMENT_ENTITY_TYPES };