ember-power-calendar 1.8.0 → 2.0.0

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.
Files changed (126) hide show
  1. package/LICENSE.md +1 -1
  2. package/README.md +34 -15
  3. package/_index.scss +1 -1
  4. package/declarations/-private/days-utils.d.ts +5 -7
  5. package/declarations/-private/days-utils.d.ts.map +1 -1
  6. package/declarations/components/power-calendar/days.d.ts +12 -10
  7. package/declarations/components/power-calendar/days.d.ts.map +1 -1
  8. package/declarations/components/power-calendar/nav.d.ts +4 -4
  9. package/declarations/components/power-calendar/nav.d.ts.map +1 -1
  10. package/declarations/components/power-calendar-multiple/days.d.ts +21 -11
  11. package/declarations/components/power-calendar-multiple/days.d.ts.map +1 -1
  12. package/declarations/components/power-calendar-multiple/nav.d.ts +21 -0
  13. package/declarations/components/power-calendar-multiple/nav.d.ts.map +1 -0
  14. package/declarations/components/power-calendar-multiple.d.ts +33 -20
  15. package/declarations/components/power-calendar-multiple.d.ts.map +1 -1
  16. package/declarations/components/power-calendar-range/days.d.ts +19 -8
  17. package/declarations/components/power-calendar-range/days.d.ts.map +1 -1
  18. package/declarations/components/power-calendar-range/nav.d.ts +21 -0
  19. package/declarations/components/power-calendar-range/nav.d.ts.map +1 -0
  20. package/declarations/components/power-calendar-range.d.ts +36 -21
  21. package/declarations/components/power-calendar-range.d.ts.map +1 -1
  22. package/declarations/components/power-calendar.d.ts +22 -22
  23. package/declarations/components/power-calendar.d.ts.map +1 -1
  24. package/declarations/helpers/ember-power-calendar-day-classes.d.ts +3 -16
  25. package/declarations/helpers/ember-power-calendar-day-classes.d.ts.map +1 -1
  26. package/declarations/helpers/power-calendar-format-date.d.ts +1 -11
  27. package/declarations/helpers/power-calendar-format-date.d.ts.map +1 -1
  28. package/declarations/services/power-calendar.d.ts +1 -1
  29. package/declarations/services/power-calendar.d.ts.map +1 -1
  30. package/declarations/styles.d.ts +1 -1
  31. package/declarations/styles.d.ts.map +1 -1
  32. package/declarations/template-registry.d.ts +18 -6
  33. package/declarations/template-registry.d.ts.map +1 -1
  34. package/declarations/test-support/helpers.d.ts +2 -2
  35. package/declarations/test-support/helpers.d.ts.map +1 -1
  36. package/declarations/utils.d.ts +19 -0
  37. package/declarations/utils.d.ts.map +1 -1
  38. package/declarations/vendor/ember-power-calendar.d.ts +3 -0
  39. package/declarations/vendor/ember-power-calendar.d.ts.map +1 -0
  40. package/dist/_app_/components/power-calendar-multiple/nav.js +1 -0
  41. package/dist/_app_/components/power-calendar-range/nav.js +1 -0
  42. package/dist/components/power-calendar/days.js +72 -36
  43. package/dist/components/power-calendar/days.js.map +1 -1
  44. package/dist/components/power-calendar/nav.js +17 -5
  45. package/dist/components/power-calendar/nav.js.map +1 -1
  46. package/dist/components/power-calendar-multiple/days.js +72 -36
  47. package/dist/components/power-calendar-multiple/days.js.map +1 -1
  48. package/dist/components/power-calendar-multiple/nav.js +30 -0
  49. package/dist/components/power-calendar-multiple/nav.js.map +1 -0
  50. package/dist/components/power-calendar-multiple.js +48 -27
  51. package/dist/components/power-calendar-multiple.js.map +1 -1
  52. package/dist/components/power-calendar-range/days.js +72 -36
  53. package/dist/components/power-calendar-range/days.js.map +1 -1
  54. package/dist/components/power-calendar-range/nav.js +30 -0
  55. package/dist/components/power-calendar-range/nav.js.map +1 -0
  56. package/dist/components/power-calendar-range.js +51 -32
  57. package/dist/components/power-calendar-range.js.map +1 -1
  58. package/dist/components/power-calendar.js +48 -20
  59. package/dist/components/power-calendar.js.map +1 -1
  60. package/dist/{days-utils-DYG5o-Ye.js → days-utils-BZGAcXYS.js} +8 -7
  61. package/dist/days-utils-BZGAcXYS.js.map +1 -0
  62. package/dist/helpers/ember-power-calendar-day-classes.js +2 -5
  63. package/dist/helpers/ember-power-calendar-day-classes.js.map +1 -1
  64. package/dist/helpers/power-calendar-format-date.js +2 -4
  65. package/dist/helpers/power-calendar-format-date.js.map +1 -1
  66. package/dist/services/power-calendar.js +4 -4
  67. package/dist/services/power-calendar.js.map +1 -1
  68. package/dist/styles.js +2 -1
  69. package/dist/test-support/helpers.js +21 -14
  70. package/dist/test-support/helpers.js.map +1 -1
  71. package/dist/utils.js.map +1 -1
  72. package/{vendor → dist/vendor}/ember-power-calendar.css +18 -22
  73. package/ember-power-calendar.scss +1 -1
  74. package/package.json +99 -76
  75. package/scss/base.scss +0 -168
  76. package/scss/mixins.scss +169 -0
  77. package/declarations/-private/service.d.ts +0 -4
  78. package/declarations/-private/service.d.ts.map +0 -1
  79. package/declarations/-private/utils.d.ts +0 -7
  80. package/declarations/-private/utils.d.ts.map +0 -1
  81. package/dist/days-utils-9ZHdudOZ.js +0 -167
  82. package/dist/days-utils-9ZHdudOZ.js.map +0 -1
  83. package/dist/days-utils-B18Yv-dd.js +0 -168
  84. package/dist/days-utils-B18Yv-dd.js.map +0 -1
  85. package/dist/days-utils-B9NerfuG.js +0 -167
  86. package/dist/days-utils-B9NerfuG.js.map +0 -1
  87. package/dist/days-utils-BPuOmlHd.js +0 -168
  88. package/dist/days-utils-BPuOmlHd.js.map +0 -1
  89. package/dist/days-utils-BW4J6t_T.js +0 -166
  90. package/dist/days-utils-BW4J6t_T.js.map +0 -1
  91. package/dist/days-utils-BqkRi8g4.js +0 -166
  92. package/dist/days-utils-BqkRi8g4.js.map +0 -1
  93. package/dist/days-utils-BvQTa2u0.js +0 -167
  94. package/dist/days-utils-BvQTa2u0.js.map +0 -1
  95. package/dist/days-utils-C4fpdyiI.js +0 -168
  96. package/dist/days-utils-C4fpdyiI.js.map +0 -1
  97. package/dist/days-utils-D13uOiMt.js +0 -163
  98. package/dist/days-utils-D13uOiMt.js.map +0 -1
  99. package/dist/days-utils-D17Wjt5c.js +0 -166
  100. package/dist/days-utils-D17Wjt5c.js.map +0 -1
  101. package/dist/days-utils-D1aF6ZU9.js +0 -168
  102. package/dist/days-utils-D1aF6ZU9.js.map +0 -1
  103. package/dist/days-utils-DN7aFB6t.js +0 -168
  104. package/dist/days-utils-DN7aFB6t.js.map +0 -1
  105. package/dist/days-utils-DTP-IwuT.js +0 -166
  106. package/dist/days-utils-DTP-IwuT.js.map +0 -1
  107. package/dist/days-utils-DX3xRN_X.js +0 -168
  108. package/dist/days-utils-DX3xRN_X.js.map +0 -1
  109. package/dist/days-utils-DYG5o-Ye.js.map +0 -1
  110. package/dist/days-utils-DufXScU2.js +0 -168
  111. package/dist/days-utils-DufXScU2.js.map +0 -1
  112. package/dist/days-utils-b4HePqhp.js +0 -168
  113. package/dist/days-utils-b4HePqhp.js.map +0 -1
  114. package/dist/days-utils-dWtkrnT8.js +0 -168
  115. package/dist/days-utils-dWtkrnT8.js.map +0 -1
  116. package/dist/days-utils-wZXeSi0W.js +0 -166
  117. package/dist/days-utils-wZXeSi0W.js.map +0 -1
  118. package/dist/days-utils-yUufVLwW.js +0 -166
  119. package/dist/days-utils-yUufVLwW.js.map +0 -1
  120. package/dist/utils-CNYv9_pR.js +0 -23
  121. package/dist/utils-CNYv9_pR.js.map +0 -1
  122. package/dist/utils-D-RRxMcK.js +0 -22
  123. package/dist/utils-D-RRxMcK.js.map +0 -1
  124. package/dist/utils-y7Wx9c84.js +0 -22
  125. package/dist/utils-y7Wx9c84.js.map +0 -1
  126. package/vendor/ember-power-calendar.js +0 -3
package/LICENSE.md CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2024
3
+ Copyright (c) 2026
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
6
 
package/README.md CHANGED
@@ -1,30 +1,49 @@
1
- # Ember Power Calendar
1
+ [![NPM](https://badge.fury.io/js/ember-power-calendar.svg)](https://www.npmjs.com/package/ember-power-calendar)
2
+ [![Ember Observer Score](https://emberobserver.com/badges/ember-power-calendar.svg)](https://emberobserver.com/addons/ember-power-calendar)
3
+ ![Ember Version](https://img.shields.io/badge/ember-%3E%3D4.12-brightgreen?logo=emberdotjs&logoColor=white)
4
+ [![Discord](https://img.shields.io/badge/chat-discord-blue?style=flat&logo=discord)](https://discord.com/channels/480462759797063690/486202731766349824)
5
+ [![Build Status](https://github.com/ember-power-addons/ember-power-calendar/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/ember-power-addons/ember-power-calendar)
2
6
 
3
- [![CI](https://github.com/cibernox/ember-power-calendar/actions/workflows/ci.yml/badge.svg)](https://github.com/cibernox/ember-power-calendar/actions/workflows/ci.yml)
4
- [![Ember Observer Score](http://emberobserver.com/badges/ember-power-calendar.svg)](http://emberobserver.com/addons/ember-power-calendar)
5
- [![npm version](https://badge.fury.io/js/ember-power-calendar.svg)](https://badge.fury.io/js/ember-power-calendar)
7
+ # ember-power-calendar
6
8
 
7
9
  Customizable Calendar Component for Ember.
8
10
 
9
- ## Compatibility
11
+ ### Features
10
12
 
11
- * Ember.js v3.28 or above
12
- * Ember CLI v3.28 or above
13
+ - 🖊 **TypeScript support** – ships with type definitions for smooth TypeScript integration.
14
+ - ✨ **Glint support** – template type-checking out of the box for safer templates.
15
+ - 🚀 **FastBoot compatible** – works in server-rendered Ember apps.
16
+ - 🕶 **Shadow DOM support** – can be rendered inside shadow roots without breaking positioning or events.
17
+ - 🛠 **Addon v2 ready** – modern Ember Addon v2 format.
18
+ - 🧱 **Headless & flexible** – build any calendar or date-picker UI without being constrained by markup or styles.
19
+ - 🎯 **Powerful selection modes** – choose between single, range, or multiple date selection
20
+ - 🔧 **Flexible calendar API** – plug in your preferred date library (e.g., momentjs, date-fns, Luxon)
21
+ - 🧩 **Composable** – assemble calendars using yielded subcomponents like days and navigation.
22
+ - ♿ **Accessible by default** – full keyboard navigation, ARIA attributes, and focus management built-in.
23
+ - 🎨 **Fully customizable rendering** – control how days, headers, and disabled states are displayed.
13
24
 
14
- ## Installation
25
+ ### Compatibility
15
26
 
16
- `ember install ember-power-calendar`
27
+ - Embroider or ember-auto-import v2
28
+ - Ember.js v4.12 or above
17
29
 
30
+ ### Installation
18
31
 
19
- ## Usage
32
+ `pnpm install ember-power-calendar`
33
+
34
+ ### Usage
20
35
 
21
36
  There are many possible ways to use it, for giving you just a taste of the API:
22
37
 
23
- ```hbs
24
- <PowerCalendar @selected={{this.arrival}} @onSelect={{this.onChange}} as |calendar|>
25
- <calendar.Nav/>
26
- <calendar.Days/>
27
- </PowerCalendar>
38
+ ```glimmer-ts
39
+ import PowerCalendar from "ember-power-calendar/components/power-calendar";
40
+
41
+ <template>
42
+ <PowerCalendar @selected={{this.arrival}} @onSelect={{this.onChange}} as |calendar|>
43
+ <calendar.Nav/>
44
+ <calendar.Days/>
45
+ </PowerCalendar>
46
+ </template>
28
47
  ```
29
48
 
30
49
  Check the full documentation at www.ember-power-calendar.com
package/_index.scss CHANGED
@@ -1 +1 @@
1
- @import "./ember-power-calendar.scss";
1
+ @forward "./ember-power-calendar.scss";
@@ -1,8 +1,6 @@
1
- import type { CalendarAPI } from '../components/power-calendar.ts';
2
- import { type PowerCalendarDay } from '../utils.ts';
1
+ import { type BaseCalendarAPI, type PowerCalendarDay, type TWeekdayFormat } from '../utils.ts';
3
2
  export declare const DAY_IN_MS = 86400000;
4
3
  export declare const WEEK_DAYS: string[];
5
- export type TWeekdayFormat = 'min' | 'short' | 'long';
6
4
  export interface Week {
7
5
  id: string;
8
6
  days: PowerCalendarDay[];
@@ -13,9 +11,9 @@ export declare function weekdaysNames(localeStartOfWeek: number, weekdayFormat:
13
11
  export declare function firstDay(currentCenter: Date, localeStartOfWeek: number): Date;
14
12
  export declare function weeks(days: PowerCalendarDay[], showDaysAround: boolean): Week[];
15
13
  export declare function handleDayKeyDown(e: KeyboardEvent, focusedId: string | null, days: PowerCalendarDay[]): PowerCalendarDay | undefined;
16
- export declare function focusDate(uniqueId: string, id: string): void;
17
- export declare function buildDay(date: Date, today: Date, calendar: CalendarAPI, focusedId: string | null, currentCenter: Date, dayIsSelected: (date: Date, calendar: CalendarAPI) => boolean, minDate?: Date, maxDate?: Date, disabledDates?: Array<Date | string>, dayIsDisabledExtended?: (date: Date, calendar: CalendarAPI, minDate?: Date, maxDate?: Date, disabledDates?: Array<Date | string>) => boolean): PowerCalendarDay;
18
- export declare function dayIsDisabled(date: Date, calendar: CalendarAPI, minDate?: Date, maxDate?: Date, disabledDates?: Array<Date | string>): boolean;
14
+ export declare function focusDate(uniqueId: string, id: string, element?: HTMLElement): void;
15
+ export declare function buildDay<T extends BaseCalendarAPI<T>>(date: Date, today: Date, calendar: T, focusedId: string | null, currentCenter: Date, dayIsSelected: (date: Date, calendar: T) => boolean, minDate?: Date, maxDate?: Date, disabledDates?: Array<Date | string>, dayIsDisabledExtended?: (date: Date, calendar: T, minDate?: Date, maxDate?: Date, disabledDates?: Array<Date | string>) => boolean): PowerCalendarDay;
16
+ export declare function dayIsDisabled<T extends BaseCalendarAPI<T>>(date: Date, calendar: T, minDate?: Date, maxDate?: Date, disabledDates?: Array<Date | string>): boolean;
19
17
  export declare function lastDay(localeStartOfWeek: number, currentCenter: Date): Date;
20
- export declare function handleClick(e: MouseEvent, days: PowerCalendarDay[], calendar: CalendarAPI): PowerCalendarDay | undefined;
18
+ export declare function handleClick<T extends BaseCalendarAPI<T>>(e: MouseEvent, days: PowerCalendarDay[], calendar: T): PowerCalendarDay | undefined;
21
19
  //# sourceMappingURL=days-utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"days-utils.d.ts","sourceRoot":"","sources":["../../src/-private/days-utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAWL,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AAErB,eAAO,MAAM,SAAS,WAAW,CAAC;AAClC,eAAO,MAAM,SAAS,UAAoD,CAAC;AAC3E,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;AAEtD,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,MAAM,EAAE,MAAM,GACb,MAAM,CAKR;AAED,wBAAgB,aAAa,CAC3B,iBAAiB,EAAE,MAAM,EACzB,aAAa,EAAE,cAAc,EAC7B,QAAQ,EAAE,MAAM,EAAE,EAClB,WAAW,EAAE,MAAM,EAAE,EACrB,aAAa,EAAE,MAAM,EAAE,GACtB,MAAM,EAAE,CAYV;AAED,wBAAgB,QAAQ,CAAC,aAAa,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAG7E;AAED,wBAAgB,KAAK,CACnB,IAAI,EAAE,gBAAgB,EAAE,EACxB,cAAc,EAAE,OAAO,GACtB,IAAI,EAAE,CAgBR;AAED,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,aAAa,EAChB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,IAAI,EAAE,gBAAgB,EAAE,GACvB,gBAAgB,GAAG,SAAS,CAuD9B;AAED,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAO5D;AAED,wBAAgB,QAAQ,CACtB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,WAAW,EACrB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,aAAa,EAAE,IAAI,EACnB,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,KAAK,OAAO,EAC7D,OAAO,CAAC,EAAE,IAAI,EACd,OAAO,CAAC,EAAE,IAAI,EACd,aAAa,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,EACpC,qBAAqB,CAAC,EAAE,CACtB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,WAAW,EACrB,OAAO,CAAC,EAAE,IAAI,EACd,OAAO,CAAC,EAAE,IAAI,EACd,aAAa,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,KACjC,OAAO,GACX,gBAAgB,CA0BlB;AAED,wBAAgB,aAAa,CAC3B,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,WAAW,EACrB,OAAO,CAAC,EAAE,IAAI,EACd,OAAO,CAAC,EAAE,IAAI,EACd,aAAa,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,GACnC,OAAO,CA4BT;AAED,wBAAgB,OAAO,CAAC,iBAAiB,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,GAAG,IAAI,CAO5E;AAED,wBAAgB,WAAW,CACzB,CAAC,EAAE,UAAU,EACb,IAAI,EAAE,gBAAgB,EAAE,EACxB,QAAQ,EAAE,WAAW,GACpB,gBAAgB,GAAG,SAAS,CAe9B"}
1
+ {"version":3,"file":"days-utils.d.ts","sourceRoot":"","sources":["../../src/-private/days-utils.ts"],"names":[],"mappings":"AACA,OAAO,EAWL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AAErB,eAAO,MAAM,SAAS,WAAW,CAAC;AAClC,eAAO,MAAM,SAAS,UAAoD,CAAC;AAE3E,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,MAAM,EAAE,MAAM,GACb,MAAM,CAKR;AAED,wBAAgB,aAAa,CAC3B,iBAAiB,EAAE,MAAM,EACzB,aAAa,EAAE,cAAc,EAC7B,QAAQ,EAAE,MAAM,EAAE,EAClB,WAAW,EAAE,MAAM,EAAE,EACrB,aAAa,EAAE,MAAM,EAAE,GACtB,MAAM,EAAE,CAYV;AAED,wBAAgB,QAAQ,CAAC,aAAa,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAG7E;AAED,wBAAgB,KAAK,CACnB,IAAI,EAAE,gBAAgB,EAAE,EACxB,cAAc,EAAE,OAAO,GACtB,IAAI,EAAE,CAgBR;AAED,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,aAAa,EAChB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,IAAI,EAAE,gBAAgB,EAAE,GACvB,gBAAgB,GAAG,SAAS,CAuD9B;AAED,wBAAgB,SAAS,CACvB,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,WAAW,GACpB,IAAI,CAWN;AAED,wBAAgB,QAAQ,CAAC,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC,EACnD,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,CAAC,EACX,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,aAAa,EAAE,IAAI,EACnB,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,KAAK,OAAO,EACnD,OAAO,CAAC,EAAE,IAAI,EACd,OAAO,CAAC,EAAE,IAAI,EACd,aAAa,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,EACpC,qBAAqB,CAAC,EAAE,CACtB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,CAAC,EACX,OAAO,CAAC,EAAE,IAAI,EACd,OAAO,CAAC,EAAE,IAAI,EACd,aAAa,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,KACjC,OAAO,GACX,gBAAgB,CA0BlB;AAED,wBAAgB,aAAa,CAAC,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC,EACxD,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,CAAC,EACX,OAAO,CAAC,EAAE,IAAI,EACd,OAAO,CAAC,EAAE,IAAI,EACd,aAAa,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,GACnC,OAAO,CA4BT;AAED,wBAAgB,OAAO,CAAC,iBAAiB,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,GAAG,IAAI,CAO5E;AAED,wBAAgB,WAAW,CAAC,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC,EACtD,CAAC,EAAE,UAAU,EACb,IAAI,EAAE,gBAAgB,EAAE,EACxB,QAAQ,EAAE,CAAC,GACV,gBAAgB,GAAG,SAAS,CAe9B"}
@@ -1,11 +1,12 @@
1
1
  import Component from '@glimmer/component';
2
- import { type PowerCalendarDay } from '../../utils.ts';
3
- import type { CalendarAPI } from '../power-calendar.ts';
2
+ import { type PowerCalendarDay, type TWeekdayFormat } from '../../utils.ts';
3
+ import { type Week } from '../../-private/days-utils.ts';
4
+ import { type TDayClass } from '../../helpers/ember-power-calendar-day-classes.ts';
5
+ import type { PowerCalendarAPI } from '../power-calendar.ts';
4
6
  import type PowerCalendarService from '../../services/power-calendar.ts';
5
- import { type TWeekdayFormat, type Week } from '../../-private/days-utils.ts';
6
7
  export interface PowerCalendarDaysArgs {
7
- calendar: CalendarAPI;
8
- dayClass?: string;
8
+ calendar: PowerCalendarAPI;
9
+ dayClass?: TDayClass<PowerCalendarAPI>;
9
10
  disabledDates?: Array<Date | string>;
10
11
  maxDate?: Date;
11
12
  minDate?: Date;
@@ -21,13 +22,14 @@ export interface PowerCalendarDaysSignature {
21
22
  Element: HTMLElement;
22
23
  Args: PowerCalendarDaysArgs;
23
24
  Blocks: {
24
- default: [day: PowerCalendarDay, calendar: CalendarAPI, weeks: Week[]];
25
+ default: [day: PowerCalendarDay, calendar: PowerCalendarAPI, weeks: Week[]];
25
26
  };
26
27
  }
27
- export default class PowerCalendarDaysComponent extends Component<PowerCalendarDaysSignature> {
28
+ export default class PowerCalendarDays extends Component<PowerCalendarDaysSignature> {
28
29
  powerCalendar: PowerCalendarService;
29
30
  focusedId: string | null;
30
31
  didSetup: boolean;
32
+ element: HTMLElement | undefined;
31
33
  get weekdayFormat(): TWeekdayFormat;
32
34
  get showDaysAround(): boolean;
33
35
  get weekdaysMin(): string[];
@@ -47,11 +49,11 @@ export default class PowerCalendarDaysComponent extends Component<PowerCalendarD
47
49
  Positional: unknown[];
48
50
  Named: import("ember-modifier/-private/signature").EmptyObject;
49
51
  };
50
- Element: Element;
52
+ Element: HTMLElement;
51
53
  }>;
52
- initialFocus(): void;
54
+ initialFocus: import("ember-concurrency").TaskForAsyncTaskFunction<unknown, () => Promise<void>>;
53
55
  focusDay(e: MouseEvent | KeyboardEvent, date: Date, step?: number): Promise<void>;
54
- dayIsSelected(date: Date, calendar?: CalendarAPI): boolean;
56
+ dayIsSelected(date: Date, calendar?: PowerCalendarAPI): boolean;
55
57
  _updateFocused(id?: string | null): void;
56
58
  }
57
59
  //# sourceMappingURL=days.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"days.d.ts","sourceRoot":"","sources":["../../../src/components/power-calendar/days.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAM3C,OAAO,EAUL,KAAK,gBAAgB,EACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,oBAAoB,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAUL,KAAK,cAAc,EACnB,KAAK,IAAI,EAEV,MAAM,8BAA8B,CAAC;AAEtC,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,WAAW,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,aAAa,CAAC,EAAE,cAAc,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,qBAAqB,CAAC;IAC5B,MAAM,EAAE;QACN,OAAO,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;KACxE,CAAC;CACH;AAED,MAAM,CAAC,OAAO,OAAO,0BAA2B,SAAQ,SAAS,CAAC,0BAA0B,CAAC;IAC1E,aAAa,EAAE,oBAAoB,CAAC;IAE5C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEzC,QAAQ,UAAS;IAEjB,IAAI,aAAa,IAAI,cAAc,CAElC;IAED,IAAI,cAAc,IAAI,OAAO,CAI5B;IAED,IAAI,WAAW,IAAI,MAAM,EAAE,CAE1B;IAED,IAAI,aAAa,IAAI,MAAM,EAAE,CAE5B;IAED,IAAI,QAAQ,IAAI,MAAM,EAAE,CAEvB;IAED,IAAI,iBAAiB,IAAI,MAAM,CAK9B;IAED,IAAI,aAAa,IAAI,MAAM,EAAE,CAQ5B;IAED,IAAI,IAAI,IAAI,gBAAgB,EAAE,CAsB7B;IAED,IAAI,KAAK,IAAI,IAAI,EAAE,CAElB;IAED,IAAI,aAAa,IAAI,IAAI,CAMxB;IAID,cAAc,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAUnC,aAAa,IAAI,IAAI;IAKf,aAAa,CAAC,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAqDpD,WAAW,CAAC,CAAC,EAAE,UAAU;IAIzB,KAAK;;;;;;OAeH;IAEF,YAAY;IAsBN,QAAQ,CAAC,CAAC,EAAE,UAAU,GAAG,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAE,MAAU;IAsC1E,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,GAAE,WAAgC;IAMpE,cAAc,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;CA0FlC"}
1
+ {"version":3,"file":"days.d.ts","sourceRoot":"","sources":["../../../src/components/power-calendar/days.gts"],"names":[],"mappings":"AAiZA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAK3C,OAAO,EAUL,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAWL,KAAK,IAAI,EACV,MAAM,8BAA8B,CAAC;AAGtC,OAAqC,EACnC,KAAK,SAAS,EACf,MAAM,mDAAmD,CAAC;AAE3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,oBAAoB,MAAM,kCAAkC,CAAC;AAEzE,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,QAAQ,CAAC,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAC;IACvC,aAAa,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,aAAa,CAAC,EAAE,cAAc,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,qBAAqB,CAAC;IAC5B,MAAM,EAAE;QACN,OAAO,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;KAC7E,CAAC;CACH;AAED,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,SAAS,CAAC,0BAA0B,CAAC;IACjE,aAAa,EAAE,oBAAoB,CAAC;IAE5C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEzC,QAAQ,UAAS;IACjB,OAAO,EAAE,WAAW,GAAG,SAAS,CAAC;IAEjC,IAAI,aAAa,IAAI,cAAc,CAElC;IAED,IAAI,cAAc,IAAI,OAAO,CAI5B;IAED,IAAI,WAAW,IAAI,MAAM,EAAE,CAE1B;IAED,IAAI,aAAa,IAAI,MAAM,EAAE,CAE5B;IAED,IAAI,QAAQ,IAAI,MAAM,EAAE,CAEvB;IAED,IAAI,iBAAiB,IAAI,MAAM,CAK9B;IAED,IAAI,aAAa,IAAI,MAAM,EAAE,CAQ5B;IAED,IAAI,IAAI,IAAI,gBAAgB,EAAE,CAsB7B;IAED,IAAI,KAAK,IAAI,IAAI,EAAE,CAElB;IAED,IAAI,aAAa,IAAI,IAAI,CAMxB;IAID,cAAc,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAYnC,aAAa,IAAI,IAAI;IA0Bf,aAAa,CAAC,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAqDpD,WAAW,CAAC,CAAC,EAAE,UAAU;IAIzB,KAAK;;;;;;OAcF;IAEH,YAAY,qFAsBT;IAEG,QAAQ,CAAC,CAAC,EAAE,UAAU,GAAG,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAE,MAAU;IA0C1E,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,GAAE,gBAAqC;IAMzE,cAAc,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;CAoHlC"}
@@ -1,8 +1,8 @@
1
1
  import Component from '@glimmer/component';
2
- import type { CalendarAPI, TPowerCalendarMoveCenterUnit } from '../power-calendar.ts';
2
+ import type { PowerCalendarAPI, TPowerCalendarMoveCenterUnit } from '../power-calendar.ts';
3
3
  export interface PowerCalendarNavSignature {
4
4
  Args: {
5
- calendar: CalendarAPI;
5
+ calendar: PowerCalendarAPI;
6
6
  format?: string;
7
7
  unit?: TPowerCalendarMoveCenterUnit;
8
8
  isDatePicker?: boolean;
@@ -10,10 +10,10 @@ export interface PowerCalendarNavSignature {
10
10
  ariaLabelNextMonth?: string;
11
11
  };
12
12
  Blocks: {
13
- default: [calendar: CalendarAPI];
13
+ default: [calendar: PowerCalendarAPI];
14
14
  };
15
15
  }
16
- export default class PowerCalendarNavComponent extends Component<PowerCalendarNavSignature> {
16
+ export default class PowerCalendarNav extends Component<PowerCalendarNavSignature> {
17
17
  get unit(): TPowerCalendarMoveCenterUnit;
18
18
  get format(): string;
19
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"nav.d.ts","sourceRoot":"","sources":["../../../src/components/power-calendar/nav.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAC3C,OAAO,KAAK,EACV,WAAW,EACX,4BAA4B,EAC7B,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE;QACJ,QAAQ,EAAE,WAAW,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,4BAA4B,CAAC;QACpC,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,sBAAsB,CAAC,EAAE,MAAM,CAAC;QAChC,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,MAAM,EAAE;QACN,OAAO,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;KAClC,CAAC;CACH;AAED,MAAM,CAAC,OAAO,OAAO,yBAA0B,SAAQ,SAAS,CAAC,yBAAyB,CAAC;IACzF,IAAI,IAAI,IAAI,4BAA4B,CAEvC;IAED,IAAI,MAAM,WAET;CA8CF"}
1
+ {"version":3,"file":"nav.d.ts","sourceRoot":"","sources":["../../../src/components/power-calendar/nav.gts"],"names":[],"mappings":"AAwEA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAK3C,OAAO,KAAK,EACV,gBAAgB,EAChB,4BAA4B,EAC7B,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE;QACJ,QAAQ,EAAE,gBAAgB,CAAC;QAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,4BAA4B,CAAC;QACpC,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,sBAAsB,CAAC,EAAE,MAAM,CAAC;QAChC,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,MAAM,EAAE;QACN,OAAO,EAAE,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;KACvC,CAAC;CACH;AAED,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,SAAS,CAAC,yBAAyB,CAAC;IAChF,IAAI,IAAI,IAAI,4BAA4B,CAEvC;IAED,IAAI,MAAM,WAET;CA4DF"}
@@ -1,22 +1,32 @@
1
1
  import Component from '@glimmer/component';
2
- import { type PowerCalendarDay } from '../../utils.ts';
2
+ import { type PowerCalendarDay, type TWeekdayFormat } from '../../utils.ts';
3
3
  import type { PowerCalendarMultipleAPI } from '../power-calendar-multiple.ts';
4
- import { type TWeekdayFormat, type Week } from '../../-private/days-utils.ts';
5
- import type { CalendarAPI } from '../power-calendar.ts';
4
+ import { type Week } from '../../-private/days-utils.ts';
5
+ import { type TDayClass } from '../../helpers/ember-power-calendar-day-classes.ts';
6
6
  import type PowerCalendarService from '../../services/power-calendar.ts';
7
- import type { PowerCalendarDaysArgs, PowerCalendarDaysSignature } from '../power-calendar/days.ts';
8
- interface PowerCalendarMultipleDaysArgs extends Omit<PowerCalendarDaysArgs, 'calendar' | 'selected'> {
7
+ import type { PowerCalendarDaysArgs } from '../power-calendar/days.ts';
8
+ interface PowerCalendarMultipleDaysArgs extends Omit<PowerCalendarDaysArgs, 'calendar' | 'dayClass' | 'selected'> {
9
9
  calendar: PowerCalendarMultipleAPI;
10
+ dayClass?: TDayClass<PowerCalendarMultipleAPI>;
10
11
  selected?: Date[];
11
12
  maxLength?: number;
12
13
  }
13
- export interface PowerCalendarMultipleDaysSignature extends Omit<PowerCalendarDaysSignature, 'Args'> {
14
+ export interface PowerCalendarMultipleDaysSignature {
15
+ Element: HTMLElement;
14
16
  Args: PowerCalendarMultipleDaysArgs;
17
+ Blocks: {
18
+ default: [
19
+ day: PowerCalendarDay,
20
+ calendar: PowerCalendarMultipleAPI,
21
+ weeks: Week[]
22
+ ];
23
+ };
15
24
  }
16
- export default class PowerCalendarMultipleDaysComponent extends Component<PowerCalendarMultipleDaysSignature> {
25
+ export default class PowerCalendarMultipleDays extends Component<PowerCalendarMultipleDaysSignature> {
17
26
  powerCalendar: PowerCalendarService;
18
27
  focusedId: string | null;
19
28
  didSetup: boolean;
29
+ element: HTMLElement | undefined;
20
30
  get weekdayFormat(): TWeekdayFormat;
21
31
  get showDaysAround(): boolean;
22
32
  get weekdaysMin(): string[];
@@ -37,13 +47,13 @@ export default class PowerCalendarMultipleDaysComponent extends Component<PowerC
37
47
  Positional: unknown[];
38
48
  Named: import("ember-modifier/-private/signature").EmptyObject;
39
49
  };
40
- Element: Element;
50
+ Element: HTMLElement;
41
51
  }>;
42
- initialFocus(): void;
52
+ initialFocus: import("ember-concurrency").TaskForAsyncTaskFunction<unknown, () => Promise<void>>;
43
53
  focusDay(e: MouseEvent | KeyboardEvent, date: Date, step?: number): Promise<void>;
44
- dayIsSelected(date: Date, calendar?: CalendarAPI): boolean;
54
+ dayIsSelected(date: Date, calendar?: PowerCalendarMultipleAPI): boolean;
45
55
  _updateFocused(id?: string | null): void;
46
- dayIsDisabled(date: Date, calendarApi: CalendarAPI, minDate?: Date, maxDate?: Date, disabledDates?: Array<Date | string>): boolean;
56
+ dayIsDisabled(date: Date, calendarApi: PowerCalendarMultipleAPI, minDate?: Date, maxDate?: Date, disabledDates?: Array<Date | string>): boolean;
47
57
  }
48
58
  export {};
49
59
  //# sourceMappingURL=days.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"days.d.ts","sourceRoot":"","sources":["../../../src/components/power-calendar-multiple/days.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAK3C,OAAO,EAUL,KAAK,gBAAgB,EACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAWL,KAAK,cAAc,EACnB,KAAK,IAAI,EACV,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,oBAAoB,MAAM,kCAAkC,CAAC;AACzE,OAAO,KAAK,EACV,qBAAqB,EACrB,0BAA0B,EAC3B,MAAM,2BAA2B,CAAC;AAGnC,UAAU,6BACR,SAAQ,IAAI,CAAC,qBAAqB,EAAE,UAAU,GAAG,UAAU,CAAC;IAC5D,QAAQ,EAAE,wBAAwB,CAAC;IACnC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kCACf,SAAQ,IAAI,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAChD,IAAI,EAAE,6BAA6B,CAAC;CACrC;AAED,MAAM,CAAC,OAAO,OAAO,kCAAmC,SAAQ,SAAS,CAAC,kCAAkC,CAAC;IAC1F,aAAa,EAAE,oBAAoB,CAAC;IAE5C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEzC,QAAQ,UAAS;IAEjB,IAAI,aAAa,IAAI,cAAc,CAElC;IAED,IAAI,cAAc,IAAI,OAAO,CAI5B;IAED,IAAI,WAAW,IAAI,MAAM,EAAE,CAE1B;IAED,IAAI,aAAa,IAAI,MAAM,EAAE,CAE5B;IAED,IAAI,QAAQ,IAAI,MAAM,EAAE,CAEvB;IAED,IAAI,iBAAiB,IAAI,MAAM,CAK9B;IAED,IAAI,aAAa,IAAI,MAAM,EAAE,CAQ5B;IAED,IAAI,IAAI,IAAI,gBAAgB,EAAE,CAuB7B;IAED,IAAI,KAAK,IAAI,IAAI,EAAE,CAElB;IAED,IAAI,aAAa,IAAI,IAAI,CAQxB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAID,cAAc,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAUnC,aAAa,IAAI,IAAI;IAKf,aAAa,CAAC,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAqDpD,WAAW,CAAC,CAAC,EAAE,UAAU;IAIzB,KAAK;;;;;;OAeH;IAEF,YAAY;IAsBN,QAAQ,CAAC,CAAC,EAAE,UAAU,GAAG,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAE,MAAU;IAsC1E,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,GAAE,WAAgC;IAKpE,cAAc,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAIjC,aAAa,CACX,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,WAAW,EACxB,OAAO,CAAC,EAAE,IAAI,EACd,OAAO,CAAC,EAAE,IAAI,EACd,aAAa,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC;CAiGvC"}
1
+ {"version":3,"file":"days.d.ts","sourceRoot":"","sources":["../../../src/components/power-calendar-multiple/days.gts"],"names":[],"mappings":"AAyaA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAI3C,OAAO,EAUL,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAWL,KAAK,IAAI,EACV,MAAM,8BAA8B,CAAC;AAItC,OAAqC,EACnC,KAAK,SAAS,EACf,MAAM,mDAAmD,CAAC;AAE3D,OAAO,KAAK,oBAAoB,MAAM,kCAAkC,CAAC;AACzE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAEvE,UAAU,6BAA8B,SAAQ,IAAI,CAClD,qBAAqB,EACrB,UAAU,GAAG,UAAU,GAAG,UAAU,CACrC;IACC,QAAQ,EAAE,wBAAwB,CAAC;IACnC,QAAQ,CAAC,EAAE,SAAS,CAAC,wBAAwB,CAAC,CAAC;IAC/C,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kCAAkC;IACjD,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,6BAA6B,CAAC;IACpC,MAAM,EAAE;QACN,OAAO,EAAE;YACP,GAAG,EAAE,gBAAgB;YACrB,QAAQ,EAAE,wBAAwB;YAClC,KAAK,EAAE,IAAI,EAAE;SACd,CAAC;KACH,CAAC;CACH;AAED,MAAM,CAAC,OAAO,OAAO,yBAA0B,SAAQ,SAAS,CAAC,kCAAkC,CAAC;IACjF,aAAa,EAAE,oBAAoB,CAAC;IAE5C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEzC,QAAQ,UAAS;IACjB,OAAO,EAAE,WAAW,GAAG,SAAS,CAAC;IAEjC,IAAI,aAAa,IAAI,cAAc,CAElC;IAED,IAAI,cAAc,IAAI,OAAO,CAI5B;IAED,IAAI,WAAW,IAAI,MAAM,EAAE,CAE1B;IAED,IAAI,aAAa,IAAI,MAAM,EAAE,CAE5B;IAED,IAAI,QAAQ,IAAI,MAAM,EAAE,CAEvB;IAED,IAAI,iBAAiB,IAAI,MAAM,CAK9B;IAED,IAAI,aAAa,IAAI,MAAM,EAAE,CAQ5B;IAED,IAAI,IAAI,IAAI,gBAAgB,EAAE,CAuB7B;IAED,IAAI,KAAK,IAAI,IAAI,EAAE,CAElB;IAED,IAAI,aAAa,IAAI,IAAI,CAQxB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAID,cAAc,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAYnC,aAAa,IAAI,IAAI;IA0Bf,aAAa,CAAC,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAqDpD,WAAW,CAAC,CAAC,EAAE,UAAU;IAIzB,KAAK;;;;;;OAcF;IAEH,YAAY,qFAqBT;IAEG,QAAQ,CAAC,CAAC,EAAE,UAAU,GAAG,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAE,MAAU;IA0C1E,aAAa,CACX,IAAI,EAAE,IAAI,EACV,QAAQ,GAAE,wBAA6C;IAMzD,cAAc,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAIjC,aAAa,CACX,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,wBAAwB,EACrC,OAAO,CAAC,EAAE,IAAI,EACd,OAAO,CAAC,EAAE,IAAI,EACd,aAAa,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC;CA2HvC"}
@@ -0,0 +1,21 @@
1
+ import Component from '@glimmer/component';
2
+ import type { TPowerCalendarMoveCenterUnit } from '../power-calendar.ts';
3
+ import type { PowerCalendarMultipleAPI } from '../power-calendar-multiple.ts';
4
+ export interface PowerCalendarMultipleNavSignature {
5
+ Args: {
6
+ calendar: PowerCalendarMultipleAPI;
7
+ format?: string;
8
+ unit?: TPowerCalendarMoveCenterUnit;
9
+ isDatePicker?: boolean;
10
+ ariaLabelPreviousMonth?: string;
11
+ ariaLabelNextMonth?: string;
12
+ };
13
+ Blocks: {
14
+ default: [calendar: PowerCalendarMultipleAPI];
15
+ };
16
+ }
17
+ export default class PowerCalendarMultipleNav extends Component<PowerCalendarMultipleNavSignature> {
18
+ get unit(): TPowerCalendarMoveCenterUnit;
19
+ get format(): string;
20
+ }
21
+ //# sourceMappingURL=nav.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nav.d.ts","sourceRoot":"","sources":["../../../src/components/power-calendar-multiple/nav.gts"],"names":[],"mappings":"AAsEA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAK3C,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAE9E,MAAM,WAAW,iCAAiC;IAChD,IAAI,EAAE;QACJ,QAAQ,EAAE,wBAAwB,CAAC;QACnC,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,4BAA4B,CAAC;QACpC,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,sBAAsB,CAAC,EAAE,MAAM,CAAC;QAChC,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,MAAM,EAAE;QACN,OAAO,EAAE,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC;KAC/C,CAAC;CACH;AAED,MAAM,CAAC,OAAO,OAAO,wBAAyB,SAAQ,SAAS,CAAC,iCAAiC,CAAC;IAChG,IAAI,IAAI,IAAI,4BAA4B,CAEvC;IAED,IAAI,MAAM,WAET;CA4DF"}
@@ -1,25 +1,35 @@
1
1
  import Component from '@glimmer/component';
2
- import PowerCalendarMultipleDaysComponent, { type PowerCalendarMultipleDaysSignature } from './power-calendar-multiple/days.ts';
3
- import PowerCalendarNavComponent, { type PowerCalendarNavSignature } from './power-calendar/nav.ts';
4
- import { type NormalizeMultipleActionValue, type PowerCalendarDay } from '../utils.ts';
5
- import type { CalendarAPI, CalendarDay, PowerCalendarAPI, PowerCalendarActions, PowerCalendarArgs, SelectedDays, TCalendarType } from './power-calendar.ts';
2
+ import { type TaskInstance } from 'ember-concurrency';
3
+ import { type PowerCalendarMultipleDaysSignature } from './power-calendar-multiple/days';
4
+ import { type PowerCalendarMultipleNavSignature } from './power-calendar-multiple/nav';
5
+ import { type NormalizeMultipleActionValue, type PowerCalendarDay, type NormalizeCalendarValue } from '../utils.ts';
6
+ import type { PowerCalendarAPI, PowerCalendarArgs, SelectedDays, TPowerCalendarMoveCenterUnit } from './power-calendar.ts';
6
7
  import type Owner from '@ember/owner';
7
8
  import type { ComponentLike } from '@glint/template';
8
9
  import type PowerCalendarService from '../services/power-calendar.ts';
9
- export interface PowerCalendarMultipleAPI extends Omit<PowerCalendarAPI, 'selected' | 'DaysComponent'> {
10
+ export interface PowerCalendarMultipleActions {
11
+ changeCenter?: (newCenter: Date, calendar: PowerCalendarMultipleAPI, event: Event) => TaskInstance<void>;
12
+ moveCenter?: (step: number, unit: TPowerCalendarMoveCenterUnit, calendar: PowerCalendarMultipleAPI, event: Event) => Promise<void>;
13
+ select?: (day: PowerCalendarDay | PowerCalendarDay[], calendar: PowerCalendarMultipleAPI, event: Event) => void;
14
+ }
15
+ export interface PowerCalendarMultipleAPI extends Omit<PowerCalendarAPI, 'type' | 'selected' | 'actions'> {
16
+ type: 'multiple';
10
17
  selected?: Date[];
11
- DaysComponent: ComponentLike<PowerCalendarMultipleDaysSignature>;
18
+ actions: PowerCalendarMultipleActions;
12
19
  }
13
- export type TPowerCalendarMultipleOnSelect = (day: NormalizeMultipleActionValue, calendar: PowerCalendarMultipleAPI, event: MouseEvent) => void;
14
- interface PowerCalendarMultipleArgs extends Omit<PowerCalendarArgs, 'selected' | 'daysComponent' | 'onSelect'> {
20
+ export type TPowerCalendarMultipleOnSelect = (day: NormalizeMultipleActionValue, calendar: PowerCalendarMultipleAPI, event?: Event) => void;
21
+ interface PowerCalendarMultipleArgs extends Omit<PowerCalendarArgs, 'navComponent' | 'daysComponent' | 'selected' | 'onSelect' | 'onCenterChange' | 'onInit'> {
22
+ navComponent?: ComponentLike<PowerCalendarMultipleNavSignature>;
23
+ daysComponent?: ComponentLike<PowerCalendarMultipleDaysSignature>;
15
24
  selected?: Date[];
16
- daysComponent?: string | ComponentLike<PowerCalendarMultipleDaysSignature>;
17
25
  onSelect?: TPowerCalendarMultipleOnSelect;
26
+ onInit?: (calendar: PowerCalendarMultipleAPI) => void;
27
+ onCenterChange?: (newCenter: NormalizeCalendarValue, calendar: PowerCalendarMultipleAPI, event: Event) => Promise<void> | void;
18
28
  }
19
29
  interface PowerCalendarMultipleDefaultBlock extends PowerCalendarMultipleAPI {
20
30
  Nav: ComponentLike<{
21
- Args: Omit<PowerCalendarNavSignature['Args'], 'calendar'>;
22
- Blocks: PowerCalendarNavSignature['Blocks'];
31
+ Args: Omit<PowerCalendarMultipleNavSignature['Args'], 'calendar'>;
32
+ Blocks: PowerCalendarMultipleNavSignature['Blocks'];
23
33
  }>;
24
34
  Days: ComponentLike<{
25
35
  Element: PowerCalendarMultipleDaysSignature['Element'];
@@ -34,23 +44,26 @@ interface PowerCalendarMultipleSignature {
34
44
  default: [PowerCalendarMultipleDefaultBlock];
35
45
  };
36
46
  }
37
- export default class PowerCalendarMultipleComponent extends Component<PowerCalendarMultipleSignature> {
47
+ export default class PowerCalendarMultiple extends Component<PowerCalendarMultipleSignature> {
38
48
  powerCalendar: PowerCalendarService;
39
49
  center: null;
40
- _calendarType: TCalendarType;
41
50
  _selected?: SelectedDays;
42
- navComponent: typeof PowerCalendarNavComponent;
43
- daysComponent: typeof PowerCalendarMultipleDaysComponent;
44
51
  constructor(owner: Owner, args: PowerCalendarMultipleArgs);
45
52
  willDestroy(): void;
46
- get publicActions(): PowerCalendarActions;
53
+ get publicActions(): PowerCalendarMultipleActions;
47
54
  get selected(): Date[] | undefined;
48
55
  set selected(v: SelectedDays);
49
56
  get currentCenter(): Date;
50
- get publicAPI(): PowerCalendarAPI;
51
- get tagWithDefault(): string;
52
- changeCenterTask: import("ember-concurrency").TaskForAsyncTaskFunction<unknown, (newCenter: Date, calendar: PowerCalendarAPI, e: MouseEvent) => Promise<void>>;
53
- select(dayOrDays: CalendarDay, calendar: CalendarAPI, e: MouseEvent): void;
57
+ get publicAPI(): PowerCalendarMultipleAPI;
58
+ get tagWithDefault(): keyof HTMLElementTagNameMap;
59
+ get navComponent(): ComponentLike<PowerCalendarMultipleNavSignature>;
60
+ get daysComponent(): ComponentLike<PowerCalendarMultipleDaysSignature>;
61
+ calendarAPI(publicAPI: PowerCalendarMultipleAPI, components: {
62
+ Nav: ComponentLike<PowerCalendarMultipleNavSignature>;
63
+ Days: ComponentLike<PowerCalendarMultipleDaysSignature>;
64
+ }): PowerCalendarMultipleDefaultBlock;
65
+ changeCenterTask: import("ember-concurrency").TaskForAsyncTaskFunction<unknown, (newCenter: Date, calendar: PowerCalendarMultipleAPI, e: Event) => Promise<void>>;
66
+ select(dayOrDays: PowerCalendarDay | PowerCalendarDay[], calendar: PowerCalendarMultipleAPI, e?: Event): void;
54
67
  _buildCollection(days: PowerCalendarDay[]): NormalizeMultipleActionValue;
55
68
  registerCalendar(): void;
56
69
  unregisterCalendar(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"power-calendar-multiple.d.ts","sourceRoot":"","sources":["../../src/components/power-calendar-multiple.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"power-calendar-multiple.d.ts","sourceRoot":"","sources":["../../src/components/power-calendar-multiple.gts"],"names":[],"mappings":"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"}
@@ -1,23 +1,34 @@
1
1
  import Component from '@glimmer/component';
2
- import type { PowerCalendarDaysArgs, PowerCalendarDaysSignature } from '../power-calendar/days.ts';
3
- import { type PowerCalendarDay } from '../../utils.ts';
2
+ import { type TDayClass } from '../../helpers/ember-power-calendar-day-classes.ts';
3
+ import { type PowerCalendarDay, type TWeekdayFormat } from '../../utils.ts';
4
+ import { type Week } from '../../-private/days-utils.ts';
5
+ import type { PowerCalendarDaysArgs } from '../power-calendar/days.ts';
4
6
  import type { PowerCalendarRangeAPI } from '../power-calendar-range.ts';
5
- import { type TWeekdayFormat, type Week } from '../../-private/days-utils.ts';
6
7
  import type PowerCalendarService from '../../services/power-calendar.ts';
7
- interface PowerCalendarMultipleDaysArgs extends Omit<PowerCalendarDaysArgs, 'calendar' | 'selected'> {
8
+ interface PowerCalendarMultipleDaysArgs extends Omit<PowerCalendarDaysArgs, 'calendar' | 'dayClass' | 'selected'> {
8
9
  calendar: PowerCalendarRangeAPI;
10
+ dayClass?: TDayClass<PowerCalendarRangeAPI>;
9
11
  selected?: {
10
12
  start: Date | null;
11
13
  end: Date | null;
12
14
  };
13
15
  }
14
- export interface PowerCalendarRangeDaysSignature extends Omit<PowerCalendarDaysSignature, 'Args'> {
16
+ export interface PowerCalendarRangeDaysSignature {
17
+ Element: HTMLElement;
15
18
  Args: PowerCalendarMultipleDaysArgs;
19
+ Blocks: {
20
+ default: [
21
+ day: PowerCalendarDay,
22
+ calendar: PowerCalendarRangeAPI,
23
+ weeks: Week[]
24
+ ];
25
+ };
16
26
  }
17
- export default class PowerCalendarRangeDaysComponent extends Component<PowerCalendarRangeDaysSignature> {
27
+ export default class PowerCalendarRangeDays extends Component<PowerCalendarRangeDaysSignature> {
18
28
  powerCalendar: PowerCalendarService;
19
29
  focusedId: string | null;
20
30
  didSetup: boolean;
31
+ element: HTMLElement | undefined;
21
32
  lastKeyDownWasSpace: boolean;
22
33
  get weekdayFormat(): TWeekdayFormat;
23
34
  get showDaysAround(): boolean;
@@ -38,9 +49,9 @@ export default class PowerCalendarRangeDaysComponent extends Component<PowerCale
38
49
  Positional: unknown[];
39
50
  Named: import("ember-modifier/-private/signature").EmptyObject;
40
51
  };
41
- Element: Element;
52
+ Element: HTMLElement;
42
53
  }>;
43
- initialFocus(): void;
54
+ initialFocus: import("ember-concurrency").TaskForAsyncTaskFunction<unknown, () => Promise<void>>;
44
55
  focusDay(e: MouseEvent | KeyboardEvent, date: Date, step?: number): Promise<void>;
45
56
  buildDay(date: Date, today: Date, calendar: PowerCalendarRangeAPI): PowerCalendarDay;
46
57
  dayIsSelected(): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"days.d.ts","sourceRoot":"","sources":["../../../src/components/power-calendar-range/days.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAK3C,OAAO,KAAK,EACV,qBAAqB,EACrB,0BAA0B,EAC3B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAWL,KAAK,gBAAgB,EAEtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAUL,KAAK,cAAc,EACnB,KAAK,IAAI,EAGV,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,oBAAoB,MAAM,kCAAkC,CAAC;AAEzE,UAAU,6BACR,SAAQ,IAAI,CAAC,qBAAqB,EAAE,UAAU,GAAG,UAAU,CAAC;IAC5D,QAAQ,EAAE,qBAAqB,CAAC;IAChC,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;QACnB,GAAG,EAAE,IAAI,GAAG,IAAI,CAAC;KAClB,CAAC;CACH;AAED,MAAM,WAAW,+BACf,SAAQ,IAAI,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAChD,IAAI,EAAE,6BAA6B,CAAC;CACrC;AAED,MAAM,CAAC,OAAO,OAAO,+BAAgC,SAAQ,SAAS,CAAC,+BAA+B,CAAC;IACpF,aAAa,EAAE,oBAAoB,CAAC;IAE5C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEzC,QAAQ,UAAS;IACjB,mBAAmB,UAAS;IAE5B,IAAI,aAAa,IAAI,cAAc,CAElC;IAED,IAAI,cAAc,IAAI,OAAO,CAI5B;IAED,IAAI,WAAW,IAAI,MAAM,EAAE,CAE1B;IAED,IAAI,aAAa,IAAI,MAAM,EAAE,CAE5B;IAED,IAAI,QAAQ,IAAI,MAAM,EAAE,CAEvB;IAED,IAAI,iBAAiB,IAAI,MAAM,CAK9B;IAED,IAAI,aAAa,IAAI,MAAM,EAAE,CAQ5B;IAED,IAAI,IAAI,IAAI,gBAAgB,EAAE,CAU7B;IAED,IAAI,KAAK,IAAI,IAAI,EAAE,CAElB;IAED,IAAI,aAAa,IAAI,IAAI,CAOxB;IAID,cAAc,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAUnC,aAAa,IAAI,IAAI;IAKf,aAAa,CAAC,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAuD9C,WAAW,CAAC,CAAC,EAAE,UAAU;IAwB/B,KAAK;;;;;;OAeH;IAEF,YAAY;IAsBN,QAAQ,CAAC,CAAC,EAAE,UAAU,GAAG,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAE,MAAU;IAsC1E,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,qBAAqB;IAuCjE,aAAa;IAIb,cAAc,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;CA0FlC"}
1
+ {"version":3,"file":"days.d.ts","sourceRoot":"","sources":["../../../src/components/power-calendar-range/days.gts"],"names":[],"mappings":"AAscA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAI3C,OAAqC,EACnC,KAAK,SAAS,EACf,MAAM,mDAAmD,CAAC;AAE3D,OAAO,EAWL,KAAK,gBAAgB,EAErB,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAYL,KAAK,IAAI,EACV,MAAM,8BAA8B,CAAC;AAItC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,oBAAoB,MAAM,kCAAkC,CAAC;AAEzE,UAAU,6BAA8B,SAAQ,IAAI,CAClD,qBAAqB,EACrB,UAAU,GAAG,UAAU,GAAG,UAAU,CACrC;IACC,QAAQ,EAAE,qBAAqB,CAAC;IAChC,QAAQ,CAAC,EAAE,SAAS,CAAC,qBAAqB,CAAC,CAAC;IAC5C,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;QACnB,GAAG,EAAE,IAAI,GAAG,IAAI,CAAC;KAClB,CAAC;CACH;AAED,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,6BAA6B,CAAC;IACpC,MAAM,EAAE;QACN,OAAO,EAAE;YACP,GAAG,EAAE,gBAAgB;YACrB,QAAQ,EAAE,qBAAqB;YAC/B,KAAK,EAAE,IAAI,EAAE;SACd,CAAC;KACH,CAAC;CACH;AAED,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,SAAS,CAAC,+BAA+B,CAAC;IAC3E,aAAa,EAAE,oBAAoB,CAAC;IAE5C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEzC,QAAQ,UAAS;IACjB,OAAO,EAAE,WAAW,GAAG,SAAS,CAAC;IACjC,mBAAmB,UAAS;IAE5B,IAAI,aAAa,IAAI,cAAc,CAElC;IAED,IAAI,cAAc,IAAI,OAAO,CAI5B;IAED,IAAI,WAAW,IAAI,MAAM,EAAE,CAE1B;IAED,IAAI,aAAa,IAAI,MAAM,EAAE,CAE5B;IAED,IAAI,QAAQ,IAAI,MAAM,EAAE,CAEvB;IAED,IAAI,iBAAiB,IAAI,MAAM,CAK9B;IAED,IAAI,aAAa,IAAI,MAAM,EAAE,CAQ5B;IAED,IAAI,IAAI,IAAI,gBAAgB,EAAE,CAU7B;IAED,IAAI,KAAK,IAAI,IAAI,EAAE,CAElB;IAED,IAAI,aAAa,IAAI,IAAI,CAOxB;IAID,cAAc,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAYnC,aAAa,IAAI,IAAI;IA0Bf,aAAa,CAAC,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAuD9C,WAAW,CAAC,CAAC,EAAE,UAAU;IAwB/B,KAAK;;;;;;OAcF;IAEH,YAAY,qFAqBT;IAEG,QAAQ,CAAC,CAAC,EAAE,UAAU,GAAG,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAE,MAAU;IA0C1E,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,qBAAqB;IAuCjE,aAAa;IAIb,cAAc,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;CAoHlC"}
@@ -0,0 +1,21 @@
1
+ import Component from '@glimmer/component';
2
+ import type { TPowerCalendarMoveCenterUnit } from '../power-calendar.ts';
3
+ import type { PowerCalendarRangeAPI } from '../power-calendar-range.ts';
4
+ export interface PowerCalendarRangeNavSignature {
5
+ Args: {
6
+ calendar: PowerCalendarRangeAPI;
7
+ format?: string;
8
+ unit?: TPowerCalendarMoveCenterUnit;
9
+ isDatePicker?: boolean;
10
+ ariaLabelPreviousMonth?: string;
11
+ ariaLabelNextMonth?: string;
12
+ };
13
+ Blocks: {
14
+ default: [calendar: PowerCalendarRangeAPI];
15
+ };
16
+ }
17
+ export default class PowerCalendarRangeNav extends Component<PowerCalendarRangeNavSignature> {
18
+ get unit(): TPowerCalendarMoveCenterUnit;
19
+ get format(): string;
20
+ }
21
+ //# sourceMappingURL=nav.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nav.d.ts","sourceRoot":"","sources":["../../../src/components/power-calendar-range/nav.gts"],"names":[],"mappings":"AAsEA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAK3C,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAExE,MAAM,WAAW,8BAA8B;IAC7C,IAAI,EAAE;QACJ,QAAQ,EAAE,qBAAqB,CAAC;QAChC,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,4BAA4B,CAAC;QACpC,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,sBAAsB,CAAC,EAAE,MAAM,CAAC;QAChC,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,MAAM,EAAE;QACN,OAAO,EAAE,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;KAC5C,CAAC;CACH;AAED,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,SAAS,CAAC,8BAA8B,CAAC;IAC1F,IAAI,IAAI,IAAI,4BAA4B,CAEvC;IAED,IAAI,MAAM,WAET;CA4DF"}
@@ -1,27 +1,32 @@
1
1
  import Component from '@glimmer/component';
2
- import PowerCalendarRangeDaysComponent, { type PowerCalendarRangeDaysSignature } from './power-calendar-range/days.ts';
3
- import PowerCalendarNavComponent, { type PowerCalendarNavSignature } from './power-calendar/nav.ts';
4
- import { type NormalizeRangeActionValue, type PowerCalendarDay, type SelectedPowerCalendarRange } from '../utils.ts';
5
- import type { PowerCalendarAPI, PowerCalendarArgs, TCalendarType, SelectedDays, PowerCalendarActions, CalendarDay, CalendarAPI } from './power-calendar.ts';
2
+ import { type TaskInstance } from 'ember-concurrency';
3
+ import { type PowerCalendarRangeDaysSignature } from './power-calendar-range/days';
4
+ import { type PowerCalendarRangeNavSignature } from './power-calendar-range/nav';
5
+ import { type NormalizeRangeActionValue, type PowerCalendarDay, type SelectedPowerCalendarRange, type NormalizeCalendarValue } from '../utils.ts';
6
+ import type { PowerCalendarAPI, PowerCalendarArgs, SelectedDays, TPowerCalendarMoveCenterUnit } from './power-calendar.ts';
6
7
  import type Owner from '@ember/owner';
7
8
  import type { ComponentLike } from '@glint/template';
8
9
  import type PowerCalendarService from '../services/power-calendar.ts';
9
10
  export interface PowerCalendarRangeDay extends Omit<PowerCalendarDay, 'date'> {
10
- date: SelectedPowerCalendarRange;
11
+ date: SelectedPowerCalendarRange | Date;
11
12
  }
12
13
  export declare const DAY_IN_MS = 86400000;
13
- export type TPowerCalendarRangeOnSelect = (day: NormalizeRangeActionValue, calendar: PowerCalendarRangeAPI, event: MouseEvent) => void;
14
- interface PowerCalendarRangeArgs extends Omit<PowerCalendarArgs, 'selected' | 'onSelect'> {
14
+ export type TPowerCalendarRangeOnSelect = (day: NormalizeRangeActionValue, calendar: PowerCalendarRangeAPI, event?: Event) => void;
15
+ interface PowerCalendarRangeArgs extends Omit<PowerCalendarArgs, 'daysComponent' | 'navComponent' | 'selected' | 'onSelect' | 'onCenterChange' | 'onInit'> {
16
+ navComponent?: ComponentLike<PowerCalendarRangeNavSignature>;
17
+ daysComponent?: ComponentLike<PowerCalendarRangeDaysSignature>;
15
18
  selected?: SelectedPowerCalendarRange;
16
- minRange?: number;
17
- maxRange?: number;
19
+ minRange?: string | number;
20
+ maxRange?: string | number;
18
21
  proximitySelection?: boolean;
19
22
  onSelect?: TPowerCalendarRangeOnSelect;
23
+ onInit?: (calendar: PowerCalendarRangeAPI) => void;
24
+ onCenterChange?: (newCenter: NormalizeCalendarValue, calendar: PowerCalendarRangeAPI, event: Event) => Promise<void> | void;
20
25
  }
21
26
  export interface PowerCalendarRangeDefaultBlock extends PowerCalendarRangeAPI {
22
27
  Nav: ComponentLike<{
23
- Args: Omit<PowerCalendarNavSignature['Args'], 'calendar'>;
24
- Blocks: PowerCalendarNavSignature['Blocks'];
28
+ Args: Omit<PowerCalendarRangeNavSignature['Args'], 'calendar'>;
29
+ Blocks: PowerCalendarRangeNavSignature['Blocks'];
25
30
  }>;
26
31
  Days: ComponentLike<{
27
32
  Element: PowerCalendarRangeDaysSignature['Element'];
@@ -36,32 +41,42 @@ interface PowerCalendarRangeSignature {
36
41
  default: [PowerCalendarRangeDefaultBlock];
37
42
  };
38
43
  }
39
- export interface PowerCalendarRangeAPI extends Omit<PowerCalendarAPI, 'selected'> {
44
+ export interface PowerCalendarRangeActions {
45
+ changeCenter?: (newCenter: Date, calendar: PowerCalendarRangeAPI, event: Event) => TaskInstance<void>;
46
+ moveCenter?: (step: number, unit: TPowerCalendarMoveCenterUnit, calendar: PowerCalendarRangeAPI, event: Event | KeyboardEvent) => Promise<void>;
47
+ select?: (day: PowerCalendarRangeDay, calendar: PowerCalendarRangeAPI, event?: Event) => void;
48
+ }
49
+ export interface PowerCalendarRangeAPI extends Omit<PowerCalendarAPI, 'type' | 'selected' | 'actions'> {
50
+ type: 'range';
40
51
  selected?: SelectedPowerCalendarRange;
41
52
  minRange?: number | null;
42
53
  maxRange?: number | null;
54
+ actions: PowerCalendarRangeActions;
43
55
  }
44
- export default class PowerCalendarRangeComponent extends Component<PowerCalendarRangeSignature> {
56
+ export default class PowerCalendarRange extends Component<PowerCalendarRangeSignature> {
45
57
  powerCalendar: PowerCalendarService;
46
58
  center: null;
47
- _calendarType: TCalendarType;
48
59
  _selected?: SelectedDays;
49
- navComponent: typeof PowerCalendarNavComponent;
50
- daysComponent: typeof PowerCalendarRangeDaysComponent;
51
60
  constructor(owner: Owner, args: PowerCalendarRangeArgs);
52
61
  willDestroy(): void;
53
- get publicActions(): PowerCalendarActions;
62
+ get publicActions(): PowerCalendarRangeActions;
54
63
  get selected(): SelectedPowerCalendarRange;
55
64
  set selected(v: SelectedPowerCalendarRange);
56
65
  get currentCenter(): Date;
57
66
  get publicAPI(): PowerCalendarRangeAPI;
58
- get tagWithDefault(): string;
67
+ get tagWithDefault(): keyof HTMLElementTagNameMap;
59
68
  get proximitySelection(): boolean;
60
69
  get minRange(): number | null;
61
70
  get maxRange(): number | null;
62
- changeCenterTask: import("ember-concurrency").TaskForAsyncTaskFunction<unknown, (newCenter: Date, calendar: PowerCalendarRangeAPI, e: MouseEvent) => Promise<void>>;
63
- select(day: CalendarDay, calendar: CalendarAPI, e: MouseEvent): void;
64
- _formatRange(v: number | undefined): number | null | undefined;
71
+ get navComponent(): ComponentLike<PowerCalendarRangeNavSignature>;
72
+ get daysComponent(): ComponentLike<PowerCalendarRangeDaysSignature>;
73
+ calendarAPI(publicAPI: PowerCalendarRangeAPI, components: {
74
+ Nav: ComponentLike<PowerCalendarRangeNavSignature>;
75
+ Days: ComponentLike<PowerCalendarRangeDaysSignature>;
76
+ }): PowerCalendarRangeDefaultBlock;
77
+ changeCenterTask: import("ember-concurrency").TaskForAsyncTaskFunction<unknown, (newCenter: Date, calendar: PowerCalendarRangeAPI, e: Event) => Promise<void>>;
78
+ select(day: PowerCalendarRangeDay, calendar: PowerCalendarRangeAPI, e?: Event): void;
79
+ _formatRange(v: string | number | undefined): number | null | undefined;
65
80
  _buildRange(day: {
66
81
  date: Date;
67
82
  }): NormalizeRangeActionValue;