nexheal-lib 0.0.57 → 0.0.59

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/index.d.ts CHANGED
@@ -79,10 +79,10 @@ interface CalendarCell {
79
79
  disabled: boolean;
80
80
  selected: boolean;
81
81
  today: boolean;
82
- }
83
- interface DateRange {
84
- start: Date;
85
- end: Date;
82
+ isRangeStart?: boolean;
83
+ isRangeEnd?: boolean;
84
+ isInRange?: boolean;
85
+ isInHoverRange?: boolean;
86
86
  }
87
87
  declare class CalendarControl implements ControlValueAccessor, OnInit, OnDestroy {
88
88
  datePipe: DatePipe;
@@ -115,8 +115,11 @@ declare class CalendarControl implements ControlValueAccessor, OnInit, OnDestroy
115
115
  start: Date;
116
116
  end: Date;
117
117
  } | null>;
118
- /** Emitted in `selectionMode="range"` with the selected start/end (or null when cleared). */
119
- rangeSelected: EventEmitter<DateRange | null>;
118
+ /** Emitted in `selectionMode="range"` with the selected range's start/end (or null when cleared). */
119
+ rangeSelected: EventEmitter<{
120
+ start: Date;
121
+ end: Date;
122
+ } | null>;
120
123
  private _defaultDate?;
121
124
  get defaultDate(): string | undefined;
122
125
  set defaultDate(value: string | undefined);
@@ -145,9 +148,9 @@ declare class CalendarControl implements ControlValueAccessor, OnInit, OnDestroy
145
148
  private hoverWeekEnd;
146
149
  rangeStart: Date | null;
147
150
  rangeEnd: Date | null;
148
- private hoverDate;
149
- private committedRangeStart;
150
- private committedRangeEnd;
151
+ private rangeHoverEnd;
152
+ /** Tracks whether the user is picking the end date (true) or the start date (false). */
153
+ private rangePicking;
151
154
  today: Date;
152
155
  todayYear: number;
153
156
  todayMonth: number;
@@ -187,25 +190,24 @@ declare class CalendarControl implements ControlValueAccessor, OnInit, OnDestroy
187
190
  onDayLeave(): void;
188
191
  /** Stable identity for day cells so they aren't re-created every change-detection. */
189
192
  trackByDate: (_: number, cell: CalendarCell) => number;
190
- private isCellSelected;
191
- isRangeStart(date: Date): boolean;
192
- isRangeEnd(date: Date): boolean;
193
- isInSelectedRange(date: Date): boolean;
194
- isInHoverRange(date: Date): boolean;
195
- private selectRangeDay;
196
- private onRangeBlur;
197
- private applyDateRange;
198
- private formatInProgressRange;
199
- private formatCommittedRangeInput;
200
- private parseIncomingRange;
201
- private orderDateRange;
202
- private startOfDay;
203
- private toDayKey;
193
+ /** Handle day click in range mode. First click = start, second click = end. */
194
+ private selectDayRange;
195
+ /** Hover handler for range mode — shows preview band while picking end date. */
196
+ private onDayHoverRange;
197
+ /** Format a range as "start - end" using the configured dateFormat. */
198
+ private formatRange;
199
+ /** writeValue delegate for range mode. */
200
+ private writeValueRange;
201
+ /** onBlur delegate for range mode. */
202
+ private onBlurRange;
203
+ /** True when `date` matches either rangeStart or rangeEnd (day-level). */
204
+ private isRangeEdge;
205
+ /** True when `date` falls strictly between the finalised rangeStart and rangeEnd. */
206
+ private isInFinalRange;
207
+ /** True during the "pick end" phase, for hover preview highlighting. */
208
+ private isInHoverRange;
209
+ /** Day-level equality check (ignores time). */
204
210
  private isSameDay;
205
- private isWithinDayRange;
206
- private rangeCoversMonth;
207
- private rangeCoversYear;
208
- private restoreIncompleteRange;
209
211
  goToMonthView(): void;
210
212
  months: string[];
211
213
  selectMonth(index: number): void;
@@ -880,4 +882,4 @@ declare class TextareaControl {
880
882
  }
881
883
 
882
884
  export { AutocompleteControl, CalendarControl, CheckboxControl, ColorPicker, InputControl, MultiselectControl, PaginatedAutocompleteControl, RICH_TEXT_EDITOR_DEFAULT_FEATURES, RadioControl, RichTextEditor, SelectControl, SwitchControl, TextareaControl };
883
- export type { DateRange, PageChangeEvent, RichTextEditorFeature, RichTextEditorFeatures };
885
+ export type { PageChangeEvent, RichTextEditorFeature, RichTextEditorFeatures };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nexheal-lib",
3
- "version": "0.0.57",
3
+ "version": "0.0.59",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^20.1.0",
6
6
  "@angular/core": "^20.1.0"