@libxai/board 1.4.10 → 1.4.12

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
@@ -596,6 +596,8 @@ interface Card$1 {
596
596
  effortMinutes?: number | null;
597
597
  /** v1.1.0: Total logged time in minutes (aggregated) */
598
598
  timeLoggedMinutes?: number;
599
+ /** v1.2.0: Sold/quoted effort in minutes (client facing - "Tiempo ofertado") */
600
+ soldEffortMinutes?: number | null;
599
601
  /** Manual progress override (0-100%) */
600
602
  progress?: number;
601
603
  /** Cover image URL */
@@ -894,12 +896,16 @@ interface KanbanBoardProps {
894
896
  onLogTime?: (taskId: string, input: TimeLogInput) => Promise<void>;
895
897
  /** Callback to update task estimate */
896
898
  onUpdateEstimate?: (taskId: string, minutes: number | null) => Promise<void>;
899
+ /** Callback to update sold effort (quoted time) */
900
+ onUpdateSoldEffort?: (taskId: string, minutes: number | null) => Promise<void>;
897
901
  /** Callback to start timer */
898
902
  onStartTimer?: (taskId: string) => void;
899
903
  /** Callback to stop timer and save time */
900
904
  onStopTimer?: (taskId: string) => void;
901
905
  /** Callback to discard timer without saving */
902
906
  onDiscardTimer?: (taskId: string) => void;
907
+ /** Blur financial data (tiempo ofertado) for unauthorized users */
908
+ blurFinancials?: boolean;
903
909
  }
904
910
  /**
905
911
  * Drag event data
@@ -1443,7 +1449,7 @@ declare class KanbanViewAdapter extends BaseViewAdapter<ViewBoardData> {
1443
1449
  */
1444
1450
  declare function createKanbanView(config?: KanbanViewConfig): KanbanViewAdapter;
1445
1451
 
1446
- declare function KanbanBoard({ board, callbacks, onCardClick, renderProps, config, availableUsers, className, style, isLoading, error, children, availableTags, onCreateTag, attachmentsByCard, onUploadAttachments, onDeleteAttachment, comments, onAddComment, currentUser, mentionableUsers, onTaskOpen, onUploadCommentAttachments, enableTimeTracking, timeTrackingSummary, timeEntries, timerState, onLogTime, onUpdateEstimate, onStartTimer, onStopTimer, onDiscardTimer, }: KanbanBoardProps & {
1452
+ declare function KanbanBoard({ board, callbacks, onCardClick, renderProps, config, availableUsers, className, style, isLoading, error, children, availableTags, onCreateTag, attachmentsByCard, onUploadAttachments, onDeleteAttachment, comments, onAddComment, currentUser, mentionableUsers, onTaskOpen, onUploadCommentAttachments, enableTimeTracking, timeTrackingSummary, timeEntries, timerState, onLogTime, onUpdateEstimate, onUpdateSoldEffort, onStartTimer, onStopTimer, onDiscardTimer, blurFinancials, }: KanbanBoardProps & {
1447
1453
  children?: React.ReactNode;
1448
1454
  }): react_jsx_runtime.JSX.Element;
1449
1455
 
@@ -2289,11 +2295,16 @@ interface TaskDetailModalProps {
2289
2295
  onTimerStop?: (taskId: string) => void;
2290
2296
  /** Discard timer callback */
2291
2297
  onTimerDiscard?: (taskId: string) => void;
2298
+ /**
2299
+ * v1.4.11: Governance v2.0 - Blur financial data for unauthorized users
2300
+ * When true, "Tiempo ofertado" (Quoted time) field will be blurred
2301
+ */
2302
+ blurFinancials?: boolean;
2292
2303
  }
2293
2304
  /**
2294
2305
  * TaskDetailModal - ClickUp style full-screen task detail
2295
2306
  */
2296
- declare function TaskDetailModal({ task, isOpen, onClose, onTaskUpdate, onCardUpdate, theme, locale, availableUsers, availableTags, onCreateTag, attachments, onUploadAttachments, onDeleteAttachment, availableTasks, comments, onAddComment, currentUser, mentionableUsers, onUploadCommentAttachments, enableTimeTracking, timeTrackingSummary, timeEntries: _timeEntries, isTimerRunning, timerElapsedSeconds, onTimeLog, onEstimateUpdate, onSoldEffortUpdate, onTimerStart, onTimerStop, onTimerDiscard: _onTimerDiscard, }: TaskDetailModalProps): react_jsx_runtime.JSX.Element | null;
2307
+ declare function TaskDetailModal({ task, isOpen, onClose, onTaskUpdate, onCardUpdate, theme, locale, availableUsers, availableTags, onCreateTag, attachments, onUploadAttachments, onDeleteAttachment, availableTasks, comments, onAddComment, currentUser, mentionableUsers, onUploadCommentAttachments, enableTimeTracking, timeTrackingSummary, timeEntries: _timeEntries, isTimerRunning, timerElapsedSeconds, onTimeLog, onEstimateUpdate, onSoldEffortUpdate, onTimerStart, onTimerStop, onTimerDiscard: _onTimerDiscard, blurFinancials, }: TaskDetailModalProps): react_jsx_runtime.JSX.Element | null;
2297
2308
 
2298
2309
  interface TimePillProps {
2299
2310
  /** Time tracking summary data */
@@ -3676,6 +3687,16 @@ interface ListViewConfig {
3676
3687
  onCreateTask?: () => void;
3677
3688
  /** LocalStorage key for persisting filter state, or false to disable */
3678
3689
  persistFilter?: string | false;
3690
+ /**
3691
+ * Configuration for blurring financial data based on user permissions
3692
+ * When enabled, financial columns (soldEffortMinutes, quotedTime) will be blurred
3693
+ */
3694
+ financialBlur?: {
3695
+ /** Whether to blur financial time columns */
3696
+ enabled: boolean;
3697
+ /** Specific columns to blur (defaults to ['soldEffortMinutes', 'quotedTime'] if not specified) */
3698
+ columns?: Array<'soldEffortMinutes' | 'quotedTime' | 'quotedTimeMinutes'>;
3699
+ };
3679
3700
  }
3680
3701
  /**
3681
3702
  * ListView translations
@@ -4199,18 +4220,22 @@ interface CalendarBoardProps {
4199
4220
  onLogTime?: (taskId: string, input: TimeLogInput) => Promise<void>;
4200
4221
  /** Callback to update task estimate */
4201
4222
  onUpdateEstimate?: (taskId: string, minutes: number | null) => Promise<void>;
4223
+ /** Callback to update sold effort (quoted time) */
4224
+ onUpdateSoldEffort?: (taskId: string, minutes: number | null) => Promise<void>;
4202
4225
  /** Callback to start timer */
4203
4226
  onStartTimer?: (taskId: string) => void;
4204
4227
  /** Callback to stop timer and save time */
4205
4228
  onStopTimer?: (taskId: string) => void;
4206
4229
  /** Callback to discard timer without saving */
4207
4230
  onDiscardTimer?: (taskId: string) => void;
4231
+ /** Blur financial data (tiempo ofertado) for unauthorized users */
4232
+ blurFinancials?: boolean;
4208
4233
  }
4209
4234
 
4210
4235
  /**
4211
4236
  * Main CalendarBoard Component
4212
4237
  */
4213
- declare function CalendarBoard({ tasks, config, callbacks, initialDate, isLoading, error, className, style, availableTags, onCreateTag, attachmentsByTask, comments, onAddComment, currentUser, mentionableUsers, onUploadCommentAttachments, onTaskOpen, enableTimeTracking, timeTrackingSummary, timeEntries, timerState, onLogTime, onUpdateEstimate, onStartTimer, onStopTimer, onDiscardTimer, }: CalendarBoardProps): react_jsx_runtime.JSX.Element;
4238
+ declare function CalendarBoard({ tasks, config, callbacks, initialDate, isLoading, error, className, style, availableTags, onCreateTag, attachmentsByTask, comments, onAddComment, currentUser, mentionableUsers, onUploadCommentAttachments, onTaskOpen, enableTimeTracking, timeTrackingSummary, timeEntries, timerState, onLogTime, onUpdateEstimate, onUpdateSoldEffort, onStartTimer, onStopTimer, onDiscardTimer, blurFinancials, }: CalendarBoardProps): react_jsx_runtime.JSX.Element;
4214
4239
 
4215
4240
  /**
4216
4241
  * CalendarBoard Themes
package/dist/index.d.ts CHANGED
@@ -596,6 +596,8 @@ interface Card$1 {
596
596
  effortMinutes?: number | null;
597
597
  /** v1.1.0: Total logged time in minutes (aggregated) */
598
598
  timeLoggedMinutes?: number;
599
+ /** v1.2.0: Sold/quoted effort in minutes (client facing - "Tiempo ofertado") */
600
+ soldEffortMinutes?: number | null;
599
601
  /** Manual progress override (0-100%) */
600
602
  progress?: number;
601
603
  /** Cover image URL */
@@ -894,12 +896,16 @@ interface KanbanBoardProps {
894
896
  onLogTime?: (taskId: string, input: TimeLogInput) => Promise<void>;
895
897
  /** Callback to update task estimate */
896
898
  onUpdateEstimate?: (taskId: string, minutes: number | null) => Promise<void>;
899
+ /** Callback to update sold effort (quoted time) */
900
+ onUpdateSoldEffort?: (taskId: string, minutes: number | null) => Promise<void>;
897
901
  /** Callback to start timer */
898
902
  onStartTimer?: (taskId: string) => void;
899
903
  /** Callback to stop timer and save time */
900
904
  onStopTimer?: (taskId: string) => void;
901
905
  /** Callback to discard timer without saving */
902
906
  onDiscardTimer?: (taskId: string) => void;
907
+ /** Blur financial data (tiempo ofertado) for unauthorized users */
908
+ blurFinancials?: boolean;
903
909
  }
904
910
  /**
905
911
  * Drag event data
@@ -1443,7 +1449,7 @@ declare class KanbanViewAdapter extends BaseViewAdapter<ViewBoardData> {
1443
1449
  */
1444
1450
  declare function createKanbanView(config?: KanbanViewConfig): KanbanViewAdapter;
1445
1451
 
1446
- declare function KanbanBoard({ board, callbacks, onCardClick, renderProps, config, availableUsers, className, style, isLoading, error, children, availableTags, onCreateTag, attachmentsByCard, onUploadAttachments, onDeleteAttachment, comments, onAddComment, currentUser, mentionableUsers, onTaskOpen, onUploadCommentAttachments, enableTimeTracking, timeTrackingSummary, timeEntries, timerState, onLogTime, onUpdateEstimate, onStartTimer, onStopTimer, onDiscardTimer, }: KanbanBoardProps & {
1452
+ declare function KanbanBoard({ board, callbacks, onCardClick, renderProps, config, availableUsers, className, style, isLoading, error, children, availableTags, onCreateTag, attachmentsByCard, onUploadAttachments, onDeleteAttachment, comments, onAddComment, currentUser, mentionableUsers, onTaskOpen, onUploadCommentAttachments, enableTimeTracking, timeTrackingSummary, timeEntries, timerState, onLogTime, onUpdateEstimate, onUpdateSoldEffort, onStartTimer, onStopTimer, onDiscardTimer, blurFinancials, }: KanbanBoardProps & {
1447
1453
  children?: React.ReactNode;
1448
1454
  }): react_jsx_runtime.JSX.Element;
1449
1455
 
@@ -2289,11 +2295,16 @@ interface TaskDetailModalProps {
2289
2295
  onTimerStop?: (taskId: string) => void;
2290
2296
  /** Discard timer callback */
2291
2297
  onTimerDiscard?: (taskId: string) => void;
2298
+ /**
2299
+ * v1.4.11: Governance v2.0 - Blur financial data for unauthorized users
2300
+ * When true, "Tiempo ofertado" (Quoted time) field will be blurred
2301
+ */
2302
+ blurFinancials?: boolean;
2292
2303
  }
2293
2304
  /**
2294
2305
  * TaskDetailModal - ClickUp style full-screen task detail
2295
2306
  */
2296
- declare function TaskDetailModal({ task, isOpen, onClose, onTaskUpdate, onCardUpdate, theme, locale, availableUsers, availableTags, onCreateTag, attachments, onUploadAttachments, onDeleteAttachment, availableTasks, comments, onAddComment, currentUser, mentionableUsers, onUploadCommentAttachments, enableTimeTracking, timeTrackingSummary, timeEntries: _timeEntries, isTimerRunning, timerElapsedSeconds, onTimeLog, onEstimateUpdate, onSoldEffortUpdate, onTimerStart, onTimerStop, onTimerDiscard: _onTimerDiscard, }: TaskDetailModalProps): react_jsx_runtime.JSX.Element | null;
2307
+ declare function TaskDetailModal({ task, isOpen, onClose, onTaskUpdate, onCardUpdate, theme, locale, availableUsers, availableTags, onCreateTag, attachments, onUploadAttachments, onDeleteAttachment, availableTasks, comments, onAddComment, currentUser, mentionableUsers, onUploadCommentAttachments, enableTimeTracking, timeTrackingSummary, timeEntries: _timeEntries, isTimerRunning, timerElapsedSeconds, onTimeLog, onEstimateUpdate, onSoldEffortUpdate, onTimerStart, onTimerStop, onTimerDiscard: _onTimerDiscard, blurFinancials, }: TaskDetailModalProps): react_jsx_runtime.JSX.Element | null;
2297
2308
 
2298
2309
  interface TimePillProps {
2299
2310
  /** Time tracking summary data */
@@ -3676,6 +3687,16 @@ interface ListViewConfig {
3676
3687
  onCreateTask?: () => void;
3677
3688
  /** LocalStorage key for persisting filter state, or false to disable */
3678
3689
  persistFilter?: string | false;
3690
+ /**
3691
+ * Configuration for blurring financial data based on user permissions
3692
+ * When enabled, financial columns (soldEffortMinutes, quotedTime) will be blurred
3693
+ */
3694
+ financialBlur?: {
3695
+ /** Whether to blur financial time columns */
3696
+ enabled: boolean;
3697
+ /** Specific columns to blur (defaults to ['soldEffortMinutes', 'quotedTime'] if not specified) */
3698
+ columns?: Array<'soldEffortMinutes' | 'quotedTime' | 'quotedTimeMinutes'>;
3699
+ };
3679
3700
  }
3680
3701
  /**
3681
3702
  * ListView translations
@@ -4199,18 +4220,22 @@ interface CalendarBoardProps {
4199
4220
  onLogTime?: (taskId: string, input: TimeLogInput) => Promise<void>;
4200
4221
  /** Callback to update task estimate */
4201
4222
  onUpdateEstimate?: (taskId: string, minutes: number | null) => Promise<void>;
4223
+ /** Callback to update sold effort (quoted time) */
4224
+ onUpdateSoldEffort?: (taskId: string, minutes: number | null) => Promise<void>;
4202
4225
  /** Callback to start timer */
4203
4226
  onStartTimer?: (taskId: string) => void;
4204
4227
  /** Callback to stop timer and save time */
4205
4228
  onStopTimer?: (taskId: string) => void;
4206
4229
  /** Callback to discard timer without saving */
4207
4230
  onDiscardTimer?: (taskId: string) => void;
4231
+ /** Blur financial data (tiempo ofertado) for unauthorized users */
4232
+ blurFinancials?: boolean;
4208
4233
  }
4209
4234
 
4210
4235
  /**
4211
4236
  * Main CalendarBoard Component
4212
4237
  */
4213
- declare function CalendarBoard({ tasks, config, callbacks, initialDate, isLoading, error, className, style, availableTags, onCreateTag, attachmentsByTask, comments, onAddComment, currentUser, mentionableUsers, onUploadCommentAttachments, onTaskOpen, enableTimeTracking, timeTrackingSummary, timeEntries, timerState, onLogTime, onUpdateEstimate, onStartTimer, onStopTimer, onDiscardTimer, }: CalendarBoardProps): react_jsx_runtime.JSX.Element;
4238
+ declare function CalendarBoard({ tasks, config, callbacks, initialDate, isLoading, error, className, style, availableTags, onCreateTag, attachmentsByTask, comments, onAddComment, currentUser, mentionableUsers, onUploadCommentAttachments, onTaskOpen, enableTimeTracking, timeTrackingSummary, timeEntries, timerState, onLogTime, onUpdateEstimate, onUpdateSoldEffort, onStartTimer, onStopTimer, onDiscardTimer, blurFinancials, }: CalendarBoardProps): react_jsx_runtime.JSX.Element;
4214
4239
 
4215
4240
  /**
4216
4241
  * CalendarBoard Themes