@wlcm/angular 19.1.4 → 19.1.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.
@@ -1,10 +1,13 @@
1
1
  export { WlcmDateRangePickerInputComponent } from './lib/components/range/date-range-picker-input/date-range-picker-input.component';
2
+ export { DoubleCalendarRangePickerComponent } from './lib/components/range/double-calendar-range-picker/double-calendar-range-picker.component';
3
+ export { SingleCalendarRangePickerComponent } from './lib/components/range/single-calendar-range-picker/single-calendar-range-picker.component';
2
4
  export { WlcmDatepickerInputContainerComponent } from './lib/components/single/datepicker-input-container/datepicker-input-container.component';
3
5
  export { DateRangePickerInputEndDirective } from './lib/directives/ragne/date-range-picker-input-end.directive';
4
6
  export { DateRangePickerInputStartDirective } from './lib/directives/ragne/date-range-picker-input-start.directive';
5
7
  export { WlcmDatepickerInputDirective } from './lib/directives/single/datepicker-input.directive';
6
- export { WlcmDateRangeValidation } from './lib/models/range/date-range-validation.models';
7
8
  export { WlcmDateRangeInputValidator } from './lib/utils/range/date-range-input.validators';
9
+ export { WlcmDateRangeValidation } from './lib/models/range/date-range-validation.models';
10
+ export { WlcmDateRangePicker } from './lib/models/range/date-range-picker.models';
8
11
  export { WlcmDateValidation } from './lib/models/date-picker.models';
9
12
  export { WlcmDatepickerModule } from './lib/datepicker.module';
10
13
  export { WLCM_DATEPICKER_CONFIG } from './lib/constants/datepicker.constants';
@@ -1,8 +1,8 @@
1
- import { WlcmDateRangePickerComponent } from '../date-range-picker/date-range-picker.component';
1
+ import { WlcmDateRangePicker } from '../../../models/range/date-range-picker.models';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class WlcmDateRangePickerBottomPanelComponent {
4
- protected picker: WlcmDateRangePickerComponent;
5
- constructor(picker: WlcmDateRangePickerComponent);
4
+ protected picker: WlcmDateRangePicker;
5
+ constructor(picker: WlcmDateRangePicker);
6
6
  static ɵfac: i0.ɵɵFactoryDeclaration<WlcmDateRangePickerBottomPanelComponent, never>;
7
7
  static ɵcmp: i0.ɵɵComponentDeclaration<WlcmDateRangePickerBottomPanelComponent, "wlcm-date-range-picker-bottom-panel", never, {}, {}, never, never, true, never>;
8
8
  }
@@ -2,12 +2,12 @@ import { AfterContentInit, AfterViewInit, ElementRef, Type, ViewContainerRef } f
2
2
  import { DateRange, MatDateSelectionModel } from '@angular/material/datepicker';
3
3
  import { WlcmFormField, WlcmFormFieldInput } from '@wlcm/angular/forms';
4
4
  import { Observable } from 'rxjs';
5
- import { Overlay } from '@angular/cdk/overlay';
6
- import { WlcmDateRangePickerComponent } from '../date-range-picker/date-range-picker.component';
7
5
  import { ControlContainer } from '@angular/forms';
6
+ import { WlcmDateRangePicker } from '../../../models/range/date-range-picker.models';
8
7
  import { WlcmDatepickerTrigger } from '../../../directives/datepicker-trigger.base';
8
+ import { Overlay } from '@angular/cdk/overlay';
9
9
  import * as i0 from "@angular/core";
10
- export declare class WlcmDateRangePickerInputComponent extends WlcmDatepickerTrigger<WlcmDateRangePickerComponent, DateRange<Date>> implements WlcmFormFieldInput, AfterContentInit, AfterViewInit {
10
+ export declare class WlcmDateRangePickerInputComponent extends WlcmDatepickerTrigger<WlcmDateRangePicker, DateRange<Date>> implements WlcmFormFieldInput, AfterContentInit, AfterViewInit {
11
11
  protected overlay: Overlay;
12
12
  protected viewContainerRef: ViewContainerRef;
13
13
  protected selectionModel: MatDateSelectionModel<DateRange<Date>>;
@@ -17,9 +17,9 @@ export declare class WlcmDateRangePickerInputComponent extends WlcmDatepickerTri
17
17
  private readonly _blurStream$;
18
18
  focus$: Observable<unknown>;
19
19
  blur$: Observable<unknown>;
20
+ componentType: Type<WlcmDateRangePicker>;
20
21
  private startInput;
21
22
  private endInput;
22
- componentType: Type<WlcmDateRangePickerComponent>;
23
23
  protected connectedTo: ElementRef<HTMLElement>;
24
24
  constructor(overlay: Overlay, viewContainerRef: ViewContainerRef, selectionModel: MatDateSelectionModel<DateRange<Date>>, formField: WlcmFormField, controlContainer: ControlContainer);
25
25
  ngAfterContentInit(): void;
@@ -32,5 +32,5 @@ export declare class WlcmDateRangePickerInputComponent extends WlcmDatepickerTri
32
32
  private checkInputs;
33
33
  private attachFocusBlurListeners;
34
34
  static ɵfac: i0.ɵɵFactoryDeclaration<WlcmDateRangePickerInputComponent, [null, null, null, { host: true; }, { host: true; }]>;
35
- static ɵcmp: i0.ɵɵComponentDeclaration<WlcmDateRangePickerInputComponent, "wlcm-date-range-picker-input", ["wlcmDateRangePickerInput"], {}, {}, ["startInput", "endInput"], ["[wlcmDateRangePickerInputStart]", "[wlcmDateRangePickerInputEnd]"], true, never>;
35
+ static ɵcmp: i0.ɵɵComponentDeclaration<WlcmDateRangePickerInputComponent, "wlcm-date-range-picker-input", ["wlcmDateRangePickerInput"], { "componentType": { "alias": "componentType"; "required": false; }; }, {}, ["startInput", "endInput"], ["[wlcmDateRangePickerInputStart]", "[wlcmDateRangePickerInputEnd]"], true, never>;
36
36
  }
@@ -1,39 +1,33 @@
1
- import { ElementRef, Signal, Type, WritableSignal } from '@angular/core';
2
- import { DateRange, MatCalendar, MatCalendarUserEvent, MatDateRangeSelectionStrategy, MatDateSelectionModel, MatMonthView } from '@angular/material/datepicker';
1
+ import { ElementRef, Type, WritableSignal } from '@angular/core';
2
+ import { WlcmDateRangePicker, WlcmDateRangePickerConfig } from '../../../models/range/date-range-picker.models';
3
3
  import { DateAdapter } from '@angular/material/core';
4
- import { WlcmDateRangePickerConfig } from '../../../models/range/date-range-picker.models';
4
+ import { MatDateRangeSelectionStrategy, MatDateSelectionModel, DateRange, MatCalendar, MatMonthView } from '@angular/material/datepicker';
5
5
  import { WlcmDatepickerTrigger } from '../../../directives/datepicker-trigger.base';
6
6
  import { WlcmDatepickerConfig } from '../../../models/date-picker.models';
7
7
  import * as i0 from "@angular/core";
8
- export declare class WlcmDateRangePickerComponent {
8
+ export declare class DoubleCalendarRangePickerComponent extends WlcmDateRangePicker {
9
9
  private rangeConfig;
10
- private rangeSelectionStrategy;
10
+ protected rangeSelectionStrategy: MatDateRangeSelectionStrategy<Date>;
11
11
  protected localSelectionModel: MatDateSelectionModel<DateRange<Date>>;
12
12
  protected triggerSelectionModel: MatDateSelectionModel<DateRange<Date>>;
13
- protected trigger: WlcmDatepickerTrigger<WlcmDateRangePickerComponent>;
13
+ protected trigger: WlcmDatepickerTrigger<DoubleCalendarRangePickerComponent>;
14
14
  protected datepickerConfig: WlcmDatepickerConfig;
15
15
  protected dateAdapter: DateAdapter<Date>;
16
16
  protected headerComponent: Type<unknown>;
17
17
  private _isViewInitialized;
18
- private _isComplete;
19
- readonly isComplete: Signal<boolean>;
20
- constructor(rangeConfig: WlcmDateRangePickerConfig, rangeSelectionStrategy: MatDateRangeSelectionStrategy<Date>, localSelectionModel: MatDateSelectionModel<DateRange<Date>>, triggerSelectionModel: MatDateSelectionModel<DateRange<Date>>, trigger: WlcmDatepickerTrigger<WlcmDateRangePickerComponent>, datepickerConfig: WlcmDatepickerConfig, dateAdapter: DateAdapter<Date>);
18
+ constructor(rangeConfig: WlcmDateRangePickerConfig, rangeSelectionStrategy: MatDateRangeSelectionStrategy<Date>, localSelectionModel: MatDateSelectionModel<DateRange<Date>>, triggerSelectionModel: MatDateSelectionModel<DateRange<Date>>, trigger: WlcmDatepickerTrigger<DoubleCalendarRangePickerComponent>, datepickerConfig: WlcmDatepickerConfig, dateAdapter: DateAdapter<Date>);
21
19
  leftCalendar: MatCalendar<Date>;
22
20
  rightCalendar: MatCalendar<Date>;
23
21
  leftCalendarElement: ElementRef<HTMLElement>;
24
- monthView: MatMonthView<any>;
22
+ monthView: MatMonthView<Date>;
25
23
  startDate: WritableSignal<Date>;
26
24
  leftCalendarYearViewActivated: WritableSignal<boolean>;
27
25
  rightCalendarYearViewActivated: WritableSignal<boolean>;
28
26
  ngAfterViewInit(): void;
29
- calendarSelection(event: MatCalendarUserEvent<Date | null>): void;
30
- calendarDragDrop(event: MatCalendarUserEvent<DateRange<Date>>): void;
31
27
  apply(): void;
32
28
  reset(): void;
33
- get selected(): DateRange<Date>;
34
29
  private get leftCalendarActiveCell();
35
- private handleSelectionChanged;
36
30
  private handleRightCalendarPreviewChange;
37
- static ɵfac: i0.ɵɵFactoryDeclaration<WlcmDateRangePickerComponent, [{ optional: true; }, null, null, null, null, null, null]>;
38
- static ɵcmp: i0.ɵɵComponentDeclaration<WlcmDateRangePickerComponent, "wlcm-date-range-picker", never, {}, {}, never, never, true, never>;
31
+ static ɵfac: i0.ɵɵFactoryDeclaration<DoubleCalendarRangePickerComponent, [{ optional: true; }, null, null, null, null, null, null]>;
32
+ static ɵcmp: i0.ɵɵComponentDeclaration<DoubleCalendarRangePickerComponent, "wlcm-double-calendar-range-picker", never, {}, {}, never, never, true, never>;
39
33
  }
@@ -0,0 +1,25 @@
1
+ import { Type } from '@angular/core';
2
+ import { DateAdapter } from '@angular/material/core';
3
+ import { MatDateRangeSelectionStrategy, MatDateSelectionModel, DateRange } from '@angular/material/datepicker';
4
+ import { WlcmDateRangePicker, WlcmDateRangePickerConfig } from '../../../models/range/date-range-picker.models';
5
+ import { WlcmCalendarHeaderComponent } from '../../calendar-header/calendar-header.component';
6
+ import { WlcmDatepickerTrigger } from '../../../directives/datepicker-trigger.base';
7
+ import { WlcmDatepickerConfig } from '../../../models/date-picker.models';
8
+ import * as i0 from "@angular/core";
9
+ export declare class SingleCalendarRangePickerComponent extends WlcmDateRangePicker {
10
+ private rangeConfig;
11
+ protected rangeSelectionStrategy: MatDateRangeSelectionStrategy<Date>;
12
+ protected localSelectionModel: MatDateSelectionModel<DateRange<Date>>;
13
+ protected triggerSelectionModel: MatDateSelectionModel<DateRange<Date>>;
14
+ protected trigger: WlcmDatepickerTrigger<SingleCalendarRangePickerComponent>;
15
+ protected datepickerConfig: WlcmDatepickerConfig;
16
+ protected dateAdapter: DateAdapter<Date>;
17
+ protected headerComponent: Type<WlcmCalendarHeaderComponent>;
18
+ constructor(rangeConfig: WlcmDateRangePickerConfig, rangeSelectionStrategy: MatDateRangeSelectionStrategy<Date>, localSelectionModel: MatDateSelectionModel<DateRange<Date>>, triggerSelectionModel: MatDateSelectionModel<DateRange<Date>>, trigger: WlcmDatepickerTrigger<SingleCalendarRangePickerComponent>, datepickerConfig: WlcmDatepickerConfig, dateAdapter: DateAdapter<Date>);
19
+ get minDate(): Date | undefined;
20
+ get maxDate(): Date | undefined;
21
+ apply(): void;
22
+ reset(): void;
23
+ static ɵfac: i0.ɵɵFactoryDeclaration<SingleCalendarRangePickerComponent, [{ optional: true; }, null, null, null, null, null, null]>;
24
+ static ɵcmp: i0.ɵɵComponentDeclaration<SingleCalendarRangePickerComponent, "wlcm-single-calendar-range-picker", never, {}, {}, never, never, true, never>;
25
+ }
@@ -25,7 +25,6 @@ export declare abstract class WlcmDatepickerTrigger<T, D = Date> {
25
25
  get datepickerInjector(): Injector;
26
26
  get defaultDatepickerConfig(): WlcmDatepickerConfig;
27
27
  get datepickerConfig(): WlcmDatepickerConfig;
28
- private get overlayOrigin();
29
28
  private handleBackdropClick;
30
29
  private updatePositionStrategy;
31
30
  private createOverlayConfig;
@@ -1,4 +1,18 @@
1
- import { Type } from '@angular/core';
1
+ import { Signal, Type, WritableSignal } from '@angular/core';
2
+ import { MatDateSelectionModel, DateRange, MatCalendarUserEvent, MatDateRangeSelectionStrategy } from '@angular/material/datepicker';
3
+ export declare abstract class WlcmDateRangePicker {
4
+ protected localSelectionModel: MatDateSelectionModel<DateRange<Date>>;
5
+ protected rangeSelectionStrategy: MatDateRangeSelectionStrategy<Date>;
6
+ protected _isComplete: WritableSignal<boolean>;
7
+ readonly isComplete: Signal<boolean>;
8
+ constructor(localSelectionModel: MatDateSelectionModel<DateRange<Date>>, rangeSelectionStrategy: MatDateRangeSelectionStrategy<Date>);
9
+ abstract apply(): void;
10
+ abstract reset(): void;
11
+ calendarSelection(event: MatCalendarUserEvent<Date | null>): void;
12
+ calendarDragDrop(event: MatCalendarUserEvent<DateRange<Date>>): void;
13
+ get selected(): DateRange<Date>;
14
+ private handleSelectionChanged;
15
+ }
2
16
  export interface WlcmDateRangePickerConfig {
3
17
  headerComponent?: Type<unknown>;
4
18
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wlcm/angular",
3
- "version": "19.1.4",
3
+ "version": "19.1.5",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "module": "./index.mjs",
@@ -4,7 +4,7 @@
4
4
  @mixin theme($theme-config) {
5
5
  $theme: utils.using-theme($theme_config);
6
6
 
7
- .wlcm-date-range-picker-body {
7
+ .double-calendar-range-picker-body {
8
8
  display: grid;
9
9
  align-items: flex-start;
10
10
  grid-auto-flow: column;