@masterteam/timeline 0.0.8 → 0.0.10

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@masterteam/timeline",
3
- "version": "0.0.8",
3
+ "version": "0.0.10",
4
4
  "publishConfig": {
5
5
  "directory": "../../../dist/masterteam/timeline",
6
6
  "linkDirectory": false,
@@ -17,8 +17,8 @@
17
17
  "rxjs": "^7.8.2",
18
18
  "tailwindcss": "^4.1.17",
19
19
  "tailwindcss-primeui": "^0.6.1",
20
- "@masterteam/components": "^0.0.116",
21
- "@masterteam/icons": "^0.0.14"
20
+ "@masterteam/icons": "^0.0.14",
21
+ "@masterteam/components": "^0.0.134"
22
22
  },
23
23
  "sideEffects": false,
24
24
  "exports": {
@@ -2,10 +2,13 @@ import * as _angular_core from '@angular/core';
2
2
  import { TemplateRef, ElementRef } from '@angular/core';
3
3
  import { Popover } from 'primeng/popover';
4
4
 
5
- type TimelineScaleMode = 'monthly' | 'quarterly' | 'biannually' | 'annually';
5
+ type TimelinePresetScaleMode = 'monthly' | 'quarterly' | 'biannually' | 'annually';
6
+ type TimelineScaleMode = TimelinePresetScaleMode | 'zoom-to-fit';
6
7
  interface TimelineScaleOption {
7
8
  label: string;
8
9
  value: TimelineScaleMode;
10
+ icon?: string;
11
+ color?: string;
9
12
  }
10
13
  type TimelineAccessor<TItem = unknown, TValue = unknown> = string | ((item: TItem) => TValue);
11
14
  interface TimelineProgressValue {
@@ -163,12 +166,19 @@ declare class TimelineProgressTemplateDirective<TItem = unknown, TResolved = unk
163
166
  declare class Timeline {
164
167
  detailsPopover?: Popover;
165
168
  detailsPopoverClickAnchor?: ElementRef<HTMLElement>;
169
+ private readonly transloco;
170
+ private readonly destroyRef;
171
+ private readonly activeLang;
172
+ private readonly timelineViewportWidthPx;
166
173
  readonly title: _angular_core.InputSignal<string>;
167
174
  readonly emptyMessage: _angular_core.InputSignal<string>;
168
175
  readonly isLoading: _angular_core.InputSignal<boolean>;
169
176
  readonly showHeader: _angular_core.InputSignal<boolean>;
177
+ readonly showZoomToFitControl: _angular_core.InputSignal<boolean>;
170
178
  readonly timelineMode: _angular_core.ModelSignal<TimelineScaleMode>;
171
179
  readonly timelineModeOptions: _angular_core.InputSignal<TimelineScaleOption[]>;
180
+ readonly resolvedTimelineModeOptions: _angular_core.Signal<TimelineScaleOption[]>;
181
+ readonly zoomToFit: _angular_core.ModelSignal<boolean>;
172
182
  readonly ganttData: _angular_core.InputSignal<unknown[]>;
173
183
  readonly ganttMapping: _angular_core.InputSignal<TimelineGanttMapping<unknown> | null>;
174
184
  readonly columns: _angular_core.InputSignal<TimelineColumnConfig<unknown, TimelineResolvedItem>[] | null>;
@@ -176,6 +186,9 @@ declare class Timeline {
176
186
  readonly defaultVisibleColumns: _angular_core.InputSignal<number | null>;
177
187
  readonly columnsPaneMinWidthPx: _angular_core.InputSignal<number>;
178
188
  readonly columnsPaneMaxWidthPx: _angular_core.InputSignal<number | null>;
189
+ readonly enableVirtualScroll: _angular_core.InputSignal<boolean>;
190
+ readonly virtualScrollThreshold: _angular_core.InputSignal<number>;
191
+ readonly virtualScrollBodyHeightPx: _angular_core.InputSignal<number>;
179
192
  readonly ganttTitleColumnLabel: _angular_core.InputSignal<string>;
180
193
  readonly ganttStatusColumnLabel: _angular_core.InputSignal<string>;
181
194
  readonly ganttInitiativeColumnWidthPx: _angular_core.InputSignal<number>;
@@ -192,8 +205,17 @@ declare class Timeline {
192
205
  readonly selectedGanttItem: _angular_core.WritableSignal<TimelineResolvedItem | null>;
193
206
  readonly columnTemplatesByKey: _angular_core.Signal<Map<string, TimelineColumnTemplateDirective<unknown, TimelineResolvedItem>>>;
194
207
  readonly mappedGanttNodes: _angular_core.Signal<TimelineMappedNode[]>;
208
+ readonly selectedTimelineView: _angular_core.Signal<TimelineScaleMode>;
209
+ readonly resolvedTimelineRange: _angular_core.Signal<{
210
+ startAt: number;
211
+ endAt: number;
212
+ } | null>;
213
+ readonly resolvedRenderTimelineMode: _angular_core.Signal<TimelinePresetScaleMode>;
195
214
  readonly orderedGanttSegments: _angular_core.Signal<TimelineResolvedSegment[]>;
215
+ readonly isZoomToFitActive: _angular_core.Signal<boolean>;
216
+ constructor();
196
217
  onTimelineModeChange(mode: TimelineScaleMode): void;
218
+ onTimelineViewportWidthChange(widthPx: number): void;
197
219
  onGanttProgressClick(item: TimelineResolvedItem, event: MouseEvent): void;
198
220
  onDetailsPopoverHide(): void;
199
221
  hideDetailsPopover(): void;
@@ -202,6 +224,7 @@ declare class Timeline {
202
224
  private mapNode;
203
225
  private resolveDateRange;
204
226
  private buildSegments;
227
+ private resolveZoomToFitMode;
205
228
  private genSegments;
206
229
  private resolveAccessor;
207
230
  private resolveString;
@@ -212,8 +235,8 @@ declare class Timeline {
212
235
  private clampProgress;
213
236
  private positionPopoverClickAnchor;
214
237
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<Timeline, never>;
215
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<Timeline, "mt-timeline", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "showHeader": { "alias": "showHeader"; "required": false; "isSignal": true; }; "timelineMode": { "alias": "timelineMode"; "required": false; "isSignal": true; }; "timelineModeOptions": { "alias": "timelineModeOptions"; "required": false; "isSignal": true; }; "ganttData": { "alias": "ganttData"; "required": false; "isSignal": true; }; "ganttMapping": { "alias": "ganttMapping"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "ganttSegmentWidthPx": { "alias": "ganttSegmentWidthPx"; "required": false; "isSignal": true; }; "defaultVisibleColumns": { "alias": "defaultVisibleColumns"; "required": false; "isSignal": true; }; "columnsPaneMinWidthPx": { "alias": "columnsPaneMinWidthPx"; "required": false; "isSignal": true; }; "columnsPaneMaxWidthPx": { "alias": "columnsPaneMaxWidthPx"; "required": false; "isSignal": true; }; "ganttTitleColumnLabel": { "alias": "ganttTitleColumnLabel"; "required": false; "isSignal": true; }; "ganttStatusColumnLabel": { "alias": "ganttStatusColumnLabel"; "required": false; "isSignal": true; }; "ganttInitiativeColumnWidthPx": { "alias": "ganttInitiativeColumnWidthPx"; "required": false; "isSignal": true; }; "ganttStatusColumnWidthPx": { "alias": "ganttStatusColumnWidthPx"; "required": false; "isSignal": true; }; "showGanttStatusColumn": { "alias": "showGanttStatusColumn"; "required": false; "isSignal": true; }; "showGanttDetailsPopup": { "alias": "showGanttDetailsPopup"; "required": false; "isSignal": true; }; }, { "timelineMode": "timelineModeChange"; "timelineModeChangeEvent": "timelineModeChangeEvent"; "ganttItemClick": "ganttItemClick"; }, ["ganttTemplate", "columnTemplates", "popoverTemplate", "progressTemplate"], never, true, never>;
238
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<Timeline, "mt-timeline", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "showHeader": { "alias": "showHeader"; "required": false; "isSignal": true; }; "showZoomToFitControl": { "alias": "showZoomToFitControl"; "required": false; "isSignal": true; }; "timelineMode": { "alias": "timelineMode"; "required": false; "isSignal": true; }; "timelineModeOptions": { "alias": "timelineModeOptions"; "required": false; "isSignal": true; }; "zoomToFit": { "alias": "zoomToFit"; "required": false; "isSignal": true; }; "ganttData": { "alias": "ganttData"; "required": false; "isSignal": true; }; "ganttMapping": { "alias": "ganttMapping"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "ganttSegmentWidthPx": { "alias": "ganttSegmentWidthPx"; "required": false; "isSignal": true; }; "defaultVisibleColumns": { "alias": "defaultVisibleColumns"; "required": false; "isSignal": true; }; "columnsPaneMinWidthPx": { "alias": "columnsPaneMinWidthPx"; "required": false; "isSignal": true; }; "columnsPaneMaxWidthPx": { "alias": "columnsPaneMaxWidthPx"; "required": false; "isSignal": true; }; "enableVirtualScroll": { "alias": "enableVirtualScroll"; "required": false; "isSignal": true; }; "virtualScrollThreshold": { "alias": "virtualScrollThreshold"; "required": false; "isSignal": true; }; "virtualScrollBodyHeightPx": { "alias": "virtualScrollBodyHeightPx"; "required": false; "isSignal": true; }; "ganttTitleColumnLabel": { "alias": "ganttTitleColumnLabel"; "required": false; "isSignal": true; }; "ganttStatusColumnLabel": { "alias": "ganttStatusColumnLabel"; "required": false; "isSignal": true; }; "ganttInitiativeColumnWidthPx": { "alias": "ganttInitiativeColumnWidthPx"; "required": false; "isSignal": true; }; "ganttStatusColumnWidthPx": { "alias": "ganttStatusColumnWidthPx"; "required": false; "isSignal": true; }; "showGanttStatusColumn": { "alias": "showGanttStatusColumn"; "required": false; "isSignal": true; }; "showGanttDetailsPopup": { "alias": "showGanttDetailsPopup"; "required": false; "isSignal": true; }; }, { "timelineMode": "timelineModeChange"; "zoomToFit": "zoomToFitChange"; "timelineModeChangeEvent": "timelineModeChangeEvent"; "ganttItemClick": "ganttItemClick"; }, ["ganttTemplate", "columnTemplates", "popoverTemplate", "progressTemplate"], never, true, never>;
216
239
  }
217
240
 
218
241
  export { Timeline, TimelineColumnTemplateDirective, TimelineGanttTemplateDirective, TimelinePopoverTemplateDirective, TimelineProgressTemplateDirective };
219
- export type { TimelineAccessor, TimelineColumnConfig, TimelineColumnPosition, TimelineColumnTemplateContext, TimelineColumnValueAccessor, TimelineGanttMapping, TimelinePopoverTemplateContext, TimelineProgressAccessorValue, TimelineProgressTemplateContext, TimelineProgressValue, TimelineScaleMode, TimelineScaleOption };
242
+ export type { TimelineAccessor, TimelineColumnConfig, TimelineColumnPosition, TimelineColumnTemplateContext, TimelineColumnValueAccessor, TimelineGanttMapping, TimelinePopoverTemplateContext, TimelinePresetScaleMode, TimelineProgressAccessorValue, TimelineProgressTemplateContext, TimelineProgressValue, TimelineScaleMode, TimelineScaleOption };