ember-power-calendar 1.8.1 → 2.0.1
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/LICENSE.md +1 -1
- package/README.md +34 -15
- package/_index.scss +1 -1
- package/declarations/-private/days-utils.d.ts +5 -7
- package/declarations/-private/days-utils.d.ts.map +1 -1
- package/declarations/components/power-calendar/days.d.ts +12 -10
- package/declarations/components/power-calendar/days.d.ts.map +1 -1
- package/declarations/components/power-calendar/nav.d.ts +4 -4
- package/declarations/components/power-calendar/nav.d.ts.map +1 -1
- package/declarations/components/power-calendar-multiple/days.d.ts +21 -11
- package/declarations/components/power-calendar-multiple/days.d.ts.map +1 -1
- package/declarations/components/power-calendar-multiple/nav.d.ts +21 -0
- package/declarations/components/power-calendar-multiple/nav.d.ts.map +1 -0
- package/declarations/components/power-calendar-multiple.d.ts +33 -20
- package/declarations/components/power-calendar-multiple.d.ts.map +1 -1
- package/declarations/components/power-calendar-range/days.d.ts +19 -8
- package/declarations/components/power-calendar-range/days.d.ts.map +1 -1
- package/declarations/components/power-calendar-range/nav.d.ts +21 -0
- package/declarations/components/power-calendar-range/nav.d.ts.map +1 -0
- package/declarations/components/power-calendar-range.d.ts +36 -21
- package/declarations/components/power-calendar-range.d.ts.map +1 -1
- package/declarations/components/power-calendar.d.ts +22 -22
- package/declarations/components/power-calendar.d.ts.map +1 -1
- package/declarations/helpers/ember-power-calendar-day-classes.d.ts +3 -16
- package/declarations/helpers/ember-power-calendar-day-classes.d.ts.map +1 -1
- package/declarations/helpers/power-calendar-format-date.d.ts +1 -11
- package/declarations/helpers/power-calendar-format-date.d.ts.map +1 -1
- package/declarations/services/power-calendar.d.ts +1 -1
- package/declarations/services/power-calendar.d.ts.map +1 -1
- package/declarations/styles.d.ts +1 -1
- package/declarations/styles.d.ts.map +1 -1
- package/declarations/template-registry.d.ts +18 -6
- package/declarations/template-registry.d.ts.map +1 -1
- package/declarations/test-support/helpers.d.ts +2 -2
- package/declarations/test-support/helpers.d.ts.map +1 -1
- package/declarations/utils.d.ts +19 -0
- package/declarations/utils.d.ts.map +1 -1
- package/declarations/vendor/ember-power-calendar.d.ts +3 -0
- package/declarations/vendor/ember-power-calendar.d.ts.map +1 -0
- package/dist/_app_/components/power-calendar-multiple/nav.js +1 -0
- package/dist/_app_/components/power-calendar-range/nav.js +1 -0
- package/dist/components/power-calendar/days.js +72 -36
- package/dist/components/power-calendar/days.js.map +1 -1
- package/dist/components/power-calendar/nav.js +17 -5
- package/dist/components/power-calendar/nav.js.map +1 -1
- package/dist/components/power-calendar-multiple/days.js +72 -36
- package/dist/components/power-calendar-multiple/days.js.map +1 -1
- package/dist/components/power-calendar-multiple/nav.js +30 -0
- package/dist/components/power-calendar-multiple/nav.js.map +1 -0
- package/dist/components/power-calendar-multiple.js +48 -27
- package/dist/components/power-calendar-multiple.js.map +1 -1
- package/dist/components/power-calendar-range/days.js +72 -36
- package/dist/components/power-calendar-range/days.js.map +1 -1
- package/dist/components/power-calendar-range/nav.js +30 -0
- package/dist/components/power-calendar-range/nav.js.map +1 -0
- package/dist/components/power-calendar-range.js +51 -32
- package/dist/components/power-calendar-range.js.map +1 -1
- package/dist/components/power-calendar.js +48 -20
- package/dist/components/power-calendar.js.map +1 -1
- package/dist/{days-utils-DYG5o-Ye.js → days-utils-BZGAcXYS.js} +8 -7
- package/dist/days-utils-BZGAcXYS.js.map +1 -0
- package/dist/helpers/ember-power-calendar-day-classes.js +2 -5
- package/dist/helpers/ember-power-calendar-day-classes.js.map +1 -1
- package/dist/helpers/power-calendar-format-date.js +2 -4
- package/dist/helpers/power-calendar-format-date.js.map +1 -1
- package/dist/services/power-calendar.js +4 -4
- package/dist/services/power-calendar.js.map +1 -1
- package/dist/styles.js +2 -1
- package/dist/test-support/helpers.js +21 -14
- package/dist/test-support/helpers.js.map +1 -1
- package/dist/utils.js.map +1 -1
- package/{vendor → dist/vendor}/ember-power-calendar.css +18 -22
- package/ember-power-calendar.scss +1 -1
- package/package.json +85 -65
- package/scss/base.scss +0 -168
- package/scss/mixins.scss +169 -0
- package/declarations/-private/service.d.ts +0 -4
- package/declarations/-private/service.d.ts.map +0 -1
- package/declarations/-private/utils.d.ts +0 -7
- package/declarations/-private/utils.d.ts.map +0 -1
- package/dist/_app_/test-support/helpers.js +0 -1
- package/dist/days-utils-DYG5o-Ye.js.map +0 -1
- package/dist/utils-y7Wx9c84.js +0 -22
- package/dist/utils-y7Wx9c84.js.map +0 -1
- 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)
|
|
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
|
-
|
|
1
|
+
[](https://www.npmjs.com/package/ember-power-calendar)
|
|
2
|
+
[](https://emberobserver.com/addons/ember-power-calendar)
|
|
3
|
+

|
|
4
|
+
[](https://discord.com/channels/480462759797063690/486202731766349824)
|
|
5
|
+
[](https://github.com/ember-power-addons/ember-power-calendar)
|
|
2
6
|
|
|
3
|
-
|
|
4
|
-
[](http://emberobserver.com/addons/ember-power-calendar)
|
|
5
|
-
[](https://badge.fury.io/js/ember-power-calendar)
|
|
7
|
+
# ember-power-calendar
|
|
6
8
|
|
|
7
9
|
Customizable Calendar Component for Ember.
|
|
8
10
|
|
|
9
|
-
|
|
11
|
+
### Features
|
|
10
12
|
|
|
11
|
-
|
|
12
|
-
|
|
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
|
-
|
|
25
|
+
### Compatibility
|
|
15
26
|
|
|
16
|
-
|
|
27
|
+
- Embroider or ember-auto-import v2
|
|
28
|
+
- Ember.js v4.12 or above
|
|
17
29
|
|
|
30
|
+
### Installation
|
|
18
31
|
|
|
19
|
-
|
|
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
|
-
```
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
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
|
-
@
|
|
1
|
+
@forward "./ember-power-calendar.scss";
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import type
|
|
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:
|
|
18
|
-
export declare function dayIsDisabled(date: Date, calendar:
|
|
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:
|
|
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,
|
|
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
|
|
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:
|
|
8
|
-
dayClass?:
|
|
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:
|
|
25
|
+
default: [day: PowerCalendarDay, calendar: PowerCalendarAPI, weeks: Week[]];
|
|
25
26
|
};
|
|
26
27
|
}
|
|
27
|
-
export default class
|
|
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:
|
|
52
|
+
Element: HTMLElement;
|
|
51
53
|
}>;
|
|
52
|
-
initialFocus()
|
|
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?:
|
|
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.
|
|
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 {
|
|
2
|
+
import type { PowerCalendarAPI, TPowerCalendarMoveCenterUnit } from '../power-calendar.ts';
|
|
3
3
|
export interface PowerCalendarNavSignature {
|
|
4
4
|
Args: {
|
|
5
|
-
calendar:
|
|
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:
|
|
13
|
+
default: [calendar: PowerCalendarAPI];
|
|
14
14
|
};
|
|
15
15
|
}
|
|
16
|
-
export default class
|
|
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.
|
|
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
|
|
5
|
-
import type
|
|
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
|
|
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
|
|
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
|
|
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:
|
|
50
|
+
Element: HTMLElement;
|
|
41
51
|
}>;
|
|
42
|
-
initialFocus()
|
|
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?:
|
|
54
|
+
dayIsSelected(date: Date, calendar?: PowerCalendarMultipleAPI): boolean;
|
|
45
55
|
_updateFocused(id?: string | null): void;
|
|
46
|
-
dayIsDisabled(date: Date, calendarApi:
|
|
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.
|
|
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
|
|
3
|
-
import
|
|
4
|
-
import { type
|
|
5
|
-
import
|
|
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
|
|
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
|
-
|
|
18
|
+
actions: PowerCalendarMultipleActions;
|
|
12
19
|
}
|
|
13
|
-
export type TPowerCalendarMultipleOnSelect = (day: NormalizeMultipleActionValue, calendar: PowerCalendarMultipleAPI, event
|
|
14
|
-
interface PowerCalendarMultipleArgs extends Omit<PowerCalendarArgs, '
|
|
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<
|
|
22
|
-
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
|
|
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():
|
|
53
|
+
get publicActions(): PowerCalendarMultipleActions;
|
|
47
54
|
get selected(): Date[] | undefined;
|
|
48
55
|
set selected(v: SelectedDays);
|
|
49
56
|
get currentCenter(): Date;
|
|
50
|
-
get publicAPI():
|
|
51
|
-
get tagWithDefault():
|
|
52
|
-
|
|
53
|
-
|
|
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.
|
|
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
|
|
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
|
|
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
|
|
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:
|
|
52
|
+
Element: HTMLElement;
|
|
42
53
|
}>;
|
|
43
|
-
initialFocus()
|
|
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.
|
|
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
|
|
3
|
-
import
|
|
4
|
-
import { type
|
|
5
|
-
import
|
|
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
|
|
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<
|
|
24
|
-
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
|
|
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
|
|
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():
|
|
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():
|
|
67
|
+
get tagWithDefault(): keyof HTMLElementTagNameMap;
|
|
59
68
|
get proximitySelection(): boolean;
|
|
60
69
|
get minRange(): number | null;
|
|
61
70
|
get maxRange(): number | null;
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
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;
|