@libxai/board 1.9.33 → 1.9.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -471,6 +471,15 @@ interface GanttConfig {
471
471
  onTaskFilterChange?: (filter: TaskFilterType) => void;
472
472
  /** Render custom content on the right side of toolbar (e.g. lens toggle) */
473
473
  toolbarRightContent?: ReactNode;
474
+ /**
475
+ * 1.9.34 · Pinta la barra de herramientas DENTRO de este elemento (por
476
+ * portal) y en versión compacta: escala, filtro, contenido propio, vista y
477
+ * compartir; el modo de vista y el nivel WBS van a «⋯». Para cabeceras de
478
+ * una sola fila. Sin él, la barra de siempre.
479
+ */
480
+ toolbarContainer?: HTMLElement | null;
481
+ /** 1.9.35 · oculta el selector de nivel WBS (All / L1 / L2…) de la barra. */
482
+ hideWbsLevel?: boolean;
474
483
  templates?: GanttTemplates;
475
484
  permissions?: GanttPermissions;
476
485
  disableScrollSync?: boolean;
@@ -2783,6 +2792,17 @@ interface GanttBoardRef {
2783
2792
  * the project's date range.
2784
2793
  */
2785
2794
  scrollToToday: () => void;
2795
+ /**
2796
+ * 1.9.35 · Desplaza la línea de tiempo a una fecha. `align` 'start' la deja
2797
+ * cerca del borde izquierdo (con un pequeño margen); 'center', centrada.
2798
+ * Para abrir el Timeline encuadrado en las fechas del proyecto.
2799
+ */
2800
+ scrollToDate: (date: Date, align?: 'start' | 'center') => void;
2801
+ /**
2802
+ * 1.9.35 · Encuadra un rango: elige la escala (≤3 semanas día, ≤4 meses semana,
2803
+ * si no mes) y desplaza al inicio del rango.
2804
+ */
2805
+ fitToDates: (start: Date, end: Date) => void;
2786
2806
  }
2787
2807
 
2788
2808
  interface GanttBoardProps {
@@ -2793,6 +2813,8 @@ interface GanttBoardProps {
2793
2813
  declare const GanttBoard: React$1.ForwardRefExoticComponent<GanttBoardProps & React$1.RefAttributes<GanttBoardRef>>;
2794
2814
 
2795
2815
  interface GanttToolbarProps {
2816
+ /** 1.9.34 · versión compacta para una cabecera de una fila (ver `toolbarContainer`). */
2817
+ enCabecera?: boolean;
2796
2818
  theme: any;
2797
2819
  timeScale: TimeScale;
2798
2820
  onTimeScaleChange: (scale: TimeScale) => void;
@@ -2845,7 +2867,7 @@ interface ExportDropdownProps {
2845
2867
  onExportMSProject?: () => void;
2846
2868
  }
2847
2869
  declare function ExportDropdown({ theme, onExportPNG, onExportPDF, onExportExcel, onExportCSV, onExportJSON, onExportMSProject }: ExportDropdownProps): react_jsx_runtime.JSX.Element | null;
2848
- declare function GanttToolbar({ theme, timeScale, onTimeScaleChange, zoom, onZoomChange, currentTheme, onThemeChange, rowDensity, onRowDensityChange, showThemeSelector, // v0.17.29: Default to false - themes should be in app settings
2870
+ declare function GanttToolbar({ enCabecera, theme, timeScale, onTimeScaleChange, zoom, onZoomChange, currentTheme, onThemeChange, rowDensity, onRowDensityChange, showThemeSelector, // v0.17.29: Default to false - themes should be in app settings
2849
2871
  showCreateTaskButton, createTaskLabel, // v0.15.0: Will use translations if not provided
2850
2872
  onCreateTask, taskFilter, // v0.17.300: Task filter
2851
2873
  onTaskFilterChange, hideCompleted, // v0.18.0: Hide completed toggle
@@ -4141,6 +4163,12 @@ interface ListViewConfig {
4141
4163
  };
4142
4164
  /** v2.5.0: Render content just before the Create Task button (e.g., share/export dropdown) */
4143
4165
  toolbarEndContent?: ReactNode;
4166
+ /**
4167
+ * 1.9.34 · Pinta la barra de herramientas DENTRO de este elemento (por
4168
+ * portal) y en versión compacta: sin buscador (lo hace el de la app) ni
4169
+ * botón de crear. Para cabeceras de una sola fila.
4170
+ */
4171
+ toolbarContainer?: HTMLElement | null;
4144
4172
  }
4145
4173
  /**
4146
4174
  * ListView translations
@@ -4341,6 +4369,12 @@ interface ListViewProps {
4341
4369
  toolbarRightContent?: ReactNode;
4342
4370
  /** v2.5.0: Render content just before the Create Task button (e.g., share/export dropdown) */
4343
4371
  toolbarEndContent?: ReactNode;
4372
+ /**
4373
+ * 1.9.34 · Pinta la barra de herramientas DENTRO de este elemento (por
4374
+ * portal) y en versión compacta: sin buscador (lo hace el de la app) ni
4375
+ * botón de crear. Para cabeceras de una sola fila.
4376
+ */
4377
+ toolbarContainer?: HTMLElement | null;
4344
4378
  /**
4345
4379
  * Fires when the user clicks anywhere on a column header. The consumer
4346
4380
  * renders its own dropdown (Sort + Filter + Hide) anchored to `anchorRect`.
@@ -4529,6 +4563,10 @@ interface MonthGrid {
4529
4563
  /** Modo del valor mostrado en el extremo de la barra. */
4530
4564
  type MoneyMode = '$' | 'Hrs';
4531
4565
 
4566
+ type CalView = 'mes' | 'semana' | 'lookahead' | 'agenda';
4567
+ type CalMoney = 'hrs' | '$';
4568
+ type CalLayerId = 'tareas' | 'cpm' | 'hitos' | 'ext' | 'festivos' | 'aus';
4569
+
4532
4570
  interface DailyLog {
4533
4571
  date: string;
4534
4572
  hours: number;
@@ -4541,6 +4579,10 @@ interface TeamMember {
4541
4579
  }
4542
4580
 
4543
4581
  interface Props {
4582
+ /** 1.9.34 · las vistas (Month/Week/Agenda) se pintan dentro de este elemento: cabeceras de una fila. */
4583
+ toolbarContainer?: HTMLElement | null;
4584
+ /** 1.9.34 · vistas que no se ofrecen en el selector (p. ej. ['lookahead']). */
4585
+ hiddenViews?: CalView[];
4544
4586
  tasks: Task[];
4545
4587
  projectName: string;
4546
4588
  projectId: string;
@@ -4600,7 +4642,7 @@ interface Props {
4600
4642
  end: string;
4601
4643
  }) => void;
4602
4644
  }
4603
- declare function CalendarView({ tasks, projectName, projectId, projectColor, locale, themeMode, hourlyRate, money, onMoneyChange, onTaskOpen, mostrarFiltroDeFases, mostrarConmutadorDeDinero, onCreateTask, canReschedule, onReschedule, members, holidayDates, timesheetSettings, onVisibleRangeChange, }: Props): react_jsx_runtime.JSX.Element;
4645
+ declare function CalendarView({ tasks, projectName, projectId, projectColor, locale, themeMode, hourlyRate, money, onMoneyChange, onTaskOpen, toolbarContainer, hiddenViews, mostrarFiltroDeFases, mostrarConmutadorDeDinero, onCreateTask, canReschedule, onReschedule, members, holidayDates, timesheetSettings, onVisibleRangeChange, }: Props): react_jsx_runtime.JSX.Element;
4604
4646
 
4605
4647
  /**
4606
4648
  * Simulación de reprogramación con CPM (Calendario, Sprint 3, regla C5).
@@ -4643,10 +4685,6 @@ interface RescheduleSimulation {
4643
4685
  */
4644
4686
  declare function simulateReschedule(tasks: Task[], taskId: string, newStart: Date, newEnd: Date): RescheduleSimulation | null;
4645
4687
 
4646
- type CalView = 'mes' | 'semana' | 'lookahead' | 'agenda';
4647
- type CalMoney = 'hrs' | '$';
4648
- type CalLayerId = 'tareas' | 'cpm' | 'hitos' | 'ext' | 'festivos' | 'aus';
4649
-
4650
4688
  /**
4651
4689
  * Mapeo de datos reales del Gantt → estructuras del Calendario (Sprint 1).
4652
4690
  *
package/dist/index.d.ts CHANGED
@@ -471,6 +471,15 @@ interface GanttConfig {
471
471
  onTaskFilterChange?: (filter: TaskFilterType) => void;
472
472
  /** Render custom content on the right side of toolbar (e.g. lens toggle) */
473
473
  toolbarRightContent?: ReactNode;
474
+ /**
475
+ * 1.9.34 · Pinta la barra de herramientas DENTRO de este elemento (por
476
+ * portal) y en versión compacta: escala, filtro, contenido propio, vista y
477
+ * compartir; el modo de vista y el nivel WBS van a «⋯». Para cabeceras de
478
+ * una sola fila. Sin él, la barra de siempre.
479
+ */
480
+ toolbarContainer?: HTMLElement | null;
481
+ /** 1.9.35 · oculta el selector de nivel WBS (All / L1 / L2…) de la barra. */
482
+ hideWbsLevel?: boolean;
474
483
  templates?: GanttTemplates;
475
484
  permissions?: GanttPermissions;
476
485
  disableScrollSync?: boolean;
@@ -2783,6 +2792,17 @@ interface GanttBoardRef {
2783
2792
  * the project's date range.
2784
2793
  */
2785
2794
  scrollToToday: () => void;
2795
+ /**
2796
+ * 1.9.35 · Desplaza la línea de tiempo a una fecha. `align` 'start' la deja
2797
+ * cerca del borde izquierdo (con un pequeño margen); 'center', centrada.
2798
+ * Para abrir el Timeline encuadrado en las fechas del proyecto.
2799
+ */
2800
+ scrollToDate: (date: Date, align?: 'start' | 'center') => void;
2801
+ /**
2802
+ * 1.9.35 · Encuadra un rango: elige la escala (≤3 semanas día, ≤4 meses semana,
2803
+ * si no mes) y desplaza al inicio del rango.
2804
+ */
2805
+ fitToDates: (start: Date, end: Date) => void;
2786
2806
  }
2787
2807
 
2788
2808
  interface GanttBoardProps {
@@ -2793,6 +2813,8 @@ interface GanttBoardProps {
2793
2813
  declare const GanttBoard: React$1.ForwardRefExoticComponent<GanttBoardProps & React$1.RefAttributes<GanttBoardRef>>;
2794
2814
 
2795
2815
  interface GanttToolbarProps {
2816
+ /** 1.9.34 · versión compacta para una cabecera de una fila (ver `toolbarContainer`). */
2817
+ enCabecera?: boolean;
2796
2818
  theme: any;
2797
2819
  timeScale: TimeScale;
2798
2820
  onTimeScaleChange: (scale: TimeScale) => void;
@@ -2845,7 +2867,7 @@ interface ExportDropdownProps {
2845
2867
  onExportMSProject?: () => void;
2846
2868
  }
2847
2869
  declare function ExportDropdown({ theme, onExportPNG, onExportPDF, onExportExcel, onExportCSV, onExportJSON, onExportMSProject }: ExportDropdownProps): react_jsx_runtime.JSX.Element | null;
2848
- declare function GanttToolbar({ theme, timeScale, onTimeScaleChange, zoom, onZoomChange, currentTheme, onThemeChange, rowDensity, onRowDensityChange, showThemeSelector, // v0.17.29: Default to false - themes should be in app settings
2870
+ declare function GanttToolbar({ enCabecera, theme, timeScale, onTimeScaleChange, zoom, onZoomChange, currentTheme, onThemeChange, rowDensity, onRowDensityChange, showThemeSelector, // v0.17.29: Default to false - themes should be in app settings
2849
2871
  showCreateTaskButton, createTaskLabel, // v0.15.0: Will use translations if not provided
2850
2872
  onCreateTask, taskFilter, // v0.17.300: Task filter
2851
2873
  onTaskFilterChange, hideCompleted, // v0.18.0: Hide completed toggle
@@ -4141,6 +4163,12 @@ interface ListViewConfig {
4141
4163
  };
4142
4164
  /** v2.5.0: Render content just before the Create Task button (e.g., share/export dropdown) */
4143
4165
  toolbarEndContent?: ReactNode;
4166
+ /**
4167
+ * 1.9.34 · Pinta la barra de herramientas DENTRO de este elemento (por
4168
+ * portal) y en versión compacta: sin buscador (lo hace el de la app) ni
4169
+ * botón de crear. Para cabeceras de una sola fila.
4170
+ */
4171
+ toolbarContainer?: HTMLElement | null;
4144
4172
  }
4145
4173
  /**
4146
4174
  * ListView translations
@@ -4341,6 +4369,12 @@ interface ListViewProps {
4341
4369
  toolbarRightContent?: ReactNode;
4342
4370
  /** v2.5.0: Render content just before the Create Task button (e.g., share/export dropdown) */
4343
4371
  toolbarEndContent?: ReactNode;
4372
+ /**
4373
+ * 1.9.34 · Pinta la barra de herramientas DENTRO de este elemento (por
4374
+ * portal) y en versión compacta: sin buscador (lo hace el de la app) ni
4375
+ * botón de crear. Para cabeceras de una sola fila.
4376
+ */
4377
+ toolbarContainer?: HTMLElement | null;
4344
4378
  /**
4345
4379
  * Fires when the user clicks anywhere on a column header. The consumer
4346
4380
  * renders its own dropdown (Sort + Filter + Hide) anchored to `anchorRect`.
@@ -4529,6 +4563,10 @@ interface MonthGrid {
4529
4563
  /** Modo del valor mostrado en el extremo de la barra. */
4530
4564
  type MoneyMode = '$' | 'Hrs';
4531
4565
 
4566
+ type CalView = 'mes' | 'semana' | 'lookahead' | 'agenda';
4567
+ type CalMoney = 'hrs' | '$';
4568
+ type CalLayerId = 'tareas' | 'cpm' | 'hitos' | 'ext' | 'festivos' | 'aus';
4569
+
4532
4570
  interface DailyLog {
4533
4571
  date: string;
4534
4572
  hours: number;
@@ -4541,6 +4579,10 @@ interface TeamMember {
4541
4579
  }
4542
4580
 
4543
4581
  interface Props {
4582
+ /** 1.9.34 · las vistas (Month/Week/Agenda) se pintan dentro de este elemento: cabeceras de una fila. */
4583
+ toolbarContainer?: HTMLElement | null;
4584
+ /** 1.9.34 · vistas que no se ofrecen en el selector (p. ej. ['lookahead']). */
4585
+ hiddenViews?: CalView[];
4544
4586
  tasks: Task[];
4545
4587
  projectName: string;
4546
4588
  projectId: string;
@@ -4600,7 +4642,7 @@ interface Props {
4600
4642
  end: string;
4601
4643
  }) => void;
4602
4644
  }
4603
- declare function CalendarView({ tasks, projectName, projectId, projectColor, locale, themeMode, hourlyRate, money, onMoneyChange, onTaskOpen, mostrarFiltroDeFases, mostrarConmutadorDeDinero, onCreateTask, canReschedule, onReschedule, members, holidayDates, timesheetSettings, onVisibleRangeChange, }: Props): react_jsx_runtime.JSX.Element;
4645
+ declare function CalendarView({ tasks, projectName, projectId, projectColor, locale, themeMode, hourlyRate, money, onMoneyChange, onTaskOpen, toolbarContainer, hiddenViews, mostrarFiltroDeFases, mostrarConmutadorDeDinero, onCreateTask, canReschedule, onReschedule, members, holidayDates, timesheetSettings, onVisibleRangeChange, }: Props): react_jsx_runtime.JSX.Element;
4604
4646
 
4605
4647
  /**
4606
4648
  * Simulación de reprogramación con CPM (Calendario, Sprint 3, regla C5).
@@ -4643,10 +4685,6 @@ interface RescheduleSimulation {
4643
4685
  */
4644
4686
  declare function simulateReschedule(tasks: Task[], taskId: string, newStart: Date, newEnd: Date): RescheduleSimulation | null;
4645
4687
 
4646
- type CalView = 'mes' | 'semana' | 'lookahead' | 'agenda';
4647
- type CalMoney = 'hrs' | '$';
4648
- type CalLayerId = 'tareas' | 'cpm' | 'hitos' | 'ext' | 'festivos' | 'aus';
4649
-
4650
4688
  /**
4651
4689
  * Mapeo de datos reales del Gantt → estructuras del Calendario (Sprint 1).
4652
4690
  *