@tedi-design-system/angular 9.0.0-rc.3 → 9.0.0-rc.5

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": "@tedi-design-system/angular",
3
- "version": "9.0.0-rc.3",
3
+ "version": "9.0.0-rc.5",
4
4
  "type": "module",
5
5
  "main": "community.mjs",
6
6
  "module": "fesm2022/tedi-design-system-angular.mjs",
@@ -8,6 +8,12 @@
8
8
  "./index.css": {
9
9
  "default": "./index.css"
10
10
  },
11
+ "./index-without-icons.css": {
12
+ "default": "./index-without-icons.css"
13
+ },
14
+ "./icons/*.css": {
15
+ "default": "./icons/*.css"
16
+ },
11
17
  "./package.json": {
12
18
  "default": "./package.json"
13
19
  },
@@ -47,7 +53,7 @@
47
53
  },
48
54
  "dependencies": {
49
55
  "@tanstack/angular-table": "^8.21.4",
50
- "@tedi-design-system/core": "^6.8.1",
56
+ "@tedi-design-system/core": "6.11.2",
51
57
  "tslib": "^2.3.0"
52
58
  },
53
59
  "publishConfig": {
package/tedi/index.d.ts CHANGED
@@ -49,7 +49,8 @@ declare class IconComponent {
49
49
  variant: _angular_core.InputSignal<IconVariant>;
50
50
  /**
51
51
  * Type of Material Symbols icon style.
52
- * It is recommended to only use one type throughout your app.
52
+ * It is recommended to only use one type throughout your app, and to load only that type's font
53
+ * (`icons/<type>.css` with `index-without-icons.css`) instead of all three via `index.css`.
53
54
  * @default outlined
54
55
  */
55
56
  type: _angular_core.InputSignal<IconType>;
@@ -8593,9 +8594,23 @@ declare class TimePickerComponent implements ControlValueAccessor, AfterViewInit
8593
8594
  private onChange;
8594
8595
  private onTouched;
8595
8596
  private initialized;
8597
+ /**
8598
+ * Held until the programmatic scroll has actually settled, not for a fixed
8599
+ * time: `scrollTo` reports its own events plus the scroll-snap adjustment on
8600
+ * top, and the engine decides when those arrive.
8601
+ */
8596
8602
  private readonly isProgrammaticScroll;
8603
+ private readonly isSmoothProgrammaticScroll;
8604
+ /** Only a scroll with a gesture behind it may change the value. */
8605
+ private readonly hasUserGesture;
8606
+ /** Guards against a correction and the engine trading scrolls indefinitely. */
8607
+ private readonly hasCorrectedScroll;
8608
+ private readonly programmaticScrollTarget;
8597
8609
  private readonly scrollLockTimer;
8610
+ /** Latest moment a programmatic scroll may still own its column. */
8611
+ private readonly scrollLockDeadline;
8598
8612
  private readonly scrollDebounceTimer;
8613
+ private readonly gestureTimer;
8599
8614
  private cachedItemHeight;
8600
8615
  private resizeObserver;
8601
8616
  private readonly hourScrollIndex;
@@ -8629,8 +8644,19 @@ declare class TimePickerComponent implements ControlValueAccessor, AfterViewInit
8629
8644
  onRadioChange(slot: string): void;
8630
8645
  constructor();
8631
8646
  ngAfterViewInit(): void;
8647
+ /**
8648
+ * The height a row is actually rendered at, or 0 when it has no box at all
8649
+ * (the picker is hidden, or has not been laid out yet).
8650
+ */
8651
+ private measureItemBox;
8632
8652
  private measureItemHeight;
8633
8653
  private getItemHeight;
8654
+ /**
8655
+ * Column offsets are derived from the item height, so when the height changes
8656
+ * (a breakpoint switch, or the first real measurement after
8657
+ * `DEFAULT_ITEM_HEIGHT` stood in) they no longer land on the highlighted row.
8658
+ */
8659
+ private syncItemHeight;
8634
8660
  ngOnDestroy(): void;
8635
8661
  writeValue(value: string | null): void;
8636
8662
  registerOnChange(fn: (value: string | null) => void): void;
@@ -8644,7 +8670,31 @@ declare class TimePickerComponent implements ControlValueAccessor, AfterViewInit
8644
8670
  onMinuteClick(minute: string): void;
8645
8671
  onColumnKeydown(event: KeyboardEvent, type: WheelType): void;
8646
8672
  private computeWheelMove;
8673
+ private readonly handleUserGesture;
8674
+ /**
8675
+ * Bounds a gesture that never scrolls. Without it one pointer-down on a
8676
+ * column's padding would leave it marked user-driven forever, and the next
8677
+ * offset the engine handed it would be committed as a value.
8678
+ */
8679
+ private armGestureTimer;
8680
+ private clearGestureTimer;
8681
+ /**
8682
+ * Precedence, highest first: a gesture on this column (the offset is the
8683
+ * user's, and it takes over any animation still running), a programmatic
8684
+ * scroll (its own echo, never re-read as a selection), or neither, which
8685
+ * means the engine moved it and the column goes back on the value's row.
8686
+ */
8647
8687
  onColumnScroll(type: WheelType): void;
8688
+ private indexFromScroll;
8689
+ private setScrollIndex;
8690
+ private scheduleScrollSelection;
8691
+ /**
8692
+ * Gecko hands a torn-down scroll container's offset to the one replacing it
8693
+ * in the same position, so a picker can arrive already scrolled to the
8694
+ * previous picker's row. Nothing marks that as not-the-user, which is how
8695
+ * `09:30` came to render and report `14:06`.
8696
+ */
8697
+ private restoreColumnPosition;
8648
8698
  /** Roving-tabindex helper for dropdown items: only the selected item (or the first
8649
8699
  * when nothing is selected yet) is in the tab sequence. */
8650
8700
  getDropdownTabIndex(index: number): number;
@@ -8654,7 +8704,11 @@ declare class TimePickerComponent implements ControlValueAccessor, AfterViewInit
8654
8704
  scrollToSelected(): void;
8655
8705
  private getColumnElement;
8656
8706
  private alignScroll;
8707
+ /** Returns whether a scroll was actually issued. */
8657
8708
  private scrollColumnToIndex;
8709
+ private releaseScrollLockAfter;
8710
+ /** Drops every trace of a programmatic scroll, target offset included. */
8711
+ private clearProgrammaticScroll;
8658
8712
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<TimePickerComponent, never>;
8659
8713
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<TimePickerComponent, "tedi-time-picker", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "timeSlots": { "alias": "timeSlots"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "showSlotIndicator": { "alias": "showSlotIndicator"; "required": false; "isSignal": true; }; "minuteStep": { "alias": "minuteStep"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "border": { "alias": "border"; "required": false; "isSignal": true; }; "trapFocus": { "alias": "trapFocus"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "closeRequested": "closeRequested"; }, never, never, true, never>;
8660
8714
  }