@masterteam/timeline 0.0.9 → 0.0.11

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,24 +1,24 @@
1
1
  {
2
2
  "name": "@masterteam/timeline",
3
- "version": "0.0.9",
3
+ "version": "0.0.11",
4
4
  "publishConfig": {
5
5
  "directory": "../../../dist/masterteam/timeline",
6
6
  "linkDirectory": false,
7
7
  "access": "public"
8
8
  },
9
9
  "peerDependencies": {
10
- "@angular/common": "^21.0.3",
11
- "@angular/core": "^21.0.3",
12
- "@angular/forms": "^21.0.3",
13
- "@primeuix/themes": "^2.0.2",
14
- "@tailwindcss/postcss": "^4.1.17",
15
- "postcss": "^8.5.6",
16
- "primeng": "21.0.1",
10
+ "@angular/common": "^21.2.8",
11
+ "@angular/core": "^21.2.8",
12
+ "@angular/forms": "^21.2.8",
13
+ "@primeuix/themes": "^2.0.3",
14
+ "@tailwindcss/postcss": "^4.2.2",
15
+ "postcss": "^8.5.9",
16
+ "primeng": "21.1.5",
17
17
  "rxjs": "^7.8.2",
18
- "tailwindcss": "^4.1.17",
18
+ "tailwindcss": "^4.2.2",
19
19
  "tailwindcss-primeui": "^0.6.1",
20
- "@masterteam/components": "^0.0.124",
21
- "@masterteam/icons": "^0.0.14"
20
+ "@masterteam/icons": "^0.0.14",
21
+ "@masterteam/components": "^0.0.143"
22
22
  },
23
23
  "sideEffects": false,
24
24
  "exports": {
@@ -35,6 +35,7 @@
35
35
  },
36
36
  "module": "fesm2022/masterteam-timeline.mjs",
37
37
  "typings": "types/masterteam-timeline.d.ts",
38
+ "type": "module",
38
39
  "dependencies": {
39
40
  "tslib": "^2.8.1"
40
41
  }
@@ -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 {
@@ -166,6 +169,7 @@ declare class Timeline {
166
169
  private readonly transloco;
167
170
  private readonly destroyRef;
168
171
  private readonly activeLang;
172
+ private readonly timelineViewportWidthPx;
169
173
  readonly title: _angular_core.InputSignal<string>;
170
174
  readonly emptyMessage: _angular_core.InputSignal<string>;
171
175
  readonly isLoading: _angular_core.InputSignal<boolean>;
@@ -182,6 +186,9 @@ declare class Timeline {
182
186
  readonly defaultVisibleColumns: _angular_core.InputSignal<number | null>;
183
187
  readonly columnsPaneMinWidthPx: _angular_core.InputSignal<number>;
184
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>;
185
192
  readonly ganttTitleColumnLabel: _angular_core.InputSignal<string>;
186
193
  readonly ganttStatusColumnLabel: _angular_core.InputSignal<string>;
187
194
  readonly ganttInitiativeColumnWidthPx: _angular_core.InputSignal<number>;
@@ -198,11 +205,17 @@ declare class Timeline {
198
205
  readonly selectedGanttItem: _angular_core.WritableSignal<TimelineResolvedItem | null>;
199
206
  readonly columnTemplatesByKey: _angular_core.Signal<Map<string, TimelineColumnTemplateDirective<unknown, TimelineResolvedItem>>>;
200
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>;
201
214
  readonly orderedGanttSegments: _angular_core.Signal<TimelineResolvedSegment[]>;
202
- readonly canZoomToFit: _angular_core.Signal<boolean>;
215
+ readonly isZoomToFitActive: _angular_core.Signal<boolean>;
203
216
  constructor();
204
217
  onTimelineModeChange(mode: TimelineScaleMode): void;
205
- onZoomToFitToggle(): void;
218
+ onTimelineViewportWidthChange(widthPx: number): void;
206
219
  onGanttProgressClick(item: TimelineResolvedItem, event: MouseEvent): void;
207
220
  onDetailsPopoverHide(): void;
208
221
  hideDetailsPopover(): void;
@@ -211,6 +224,7 @@ declare class Timeline {
211
224
  private mapNode;
212
225
  private resolveDateRange;
213
226
  private buildSegments;
227
+ private resolveZoomToFitMode;
214
228
  private genSegments;
215
229
  private resolveAccessor;
216
230
  private resolveString;
@@ -221,8 +235,8 @@ declare class Timeline {
221
235
  private clampProgress;
222
236
  private positionPopoverClickAnchor;
223
237
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<Timeline, never>;
224
- 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; }; "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>;
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>;
225
239
  }
226
240
 
227
241
  export { Timeline, TimelineColumnTemplateDirective, TimelineGanttTemplateDirective, TimelinePopoverTemplateDirective, TimelineProgressTemplateDirective };
228
- 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 };