intelliwaketssveltekitv25 0.2.10 → 0.2.13
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/dist/Calendar.svelte
CHANGED
|
@@ -24,7 +24,8 @@
|
|
|
24
24
|
selectRange = 'Single',
|
|
25
25
|
minYear = 1970,
|
|
26
26
|
maxYear = new Date().getUTCFullYear() + 1,
|
|
27
|
-
maxWidth = '25em'
|
|
27
|
+
maxWidth = '25em',
|
|
28
|
+
fyMonthsAdjust
|
|
28
29
|
}: {
|
|
29
30
|
baseDate?: string
|
|
30
31
|
dateRangeString?: TDateRangeString | null
|
|
@@ -33,7 +34,8 @@
|
|
|
33
34
|
selectRange?: 'None' | 'Single' | 'Range' | 'Month' | 'Week'
|
|
34
35
|
minYear?: number
|
|
35
36
|
maxYear?: number
|
|
36
|
-
maxWidth?: string
|
|
37
|
+
maxWidth?: string,
|
|
38
|
+
fyMonthsAdjust?: number | null
|
|
37
39
|
} = $props()
|
|
38
40
|
|
|
39
41
|
let largeDateParameters: IDateParameters = $derived(GetMonthWeeks(baseDate, dateRangeString?.start, dateRangeString?.end))
|
|
@@ -55,20 +57,20 @@
|
|
|
55
57
|
function getDateRangeStringFromDate(date: string) {
|
|
56
58
|
switch (selectRange) {
|
|
57
59
|
case 'Week':
|
|
58
|
-
return CreateCustomDateRange(DateOnly(date, { week: 'StartOf' }), DateOnly(date, { week: 'EndOf' }))
|
|
60
|
+
return CreateCustomDateRange(DateOnly(date, { week: 'StartOf' }), DateOnly(date, { week: 'EndOf' }), fyMonthsAdjust)
|
|
59
61
|
case 'Month':
|
|
60
|
-
return CreateCustomDateRange(DateOnly(date, { month: 'StartOf' }), DateOnly(date, { month: 'EndOf' }))
|
|
62
|
+
return CreateCustomDateRange(DateOnly(date, { month: 'StartOf' }), DateOnly(date, { month: 'EndOf' }), fyMonthsAdjust)
|
|
61
63
|
case 'Range':
|
|
62
64
|
if (!applyRangeToSecondDate) {
|
|
63
65
|
applyRangeToSecondDate = true
|
|
64
66
|
let days = !!dateRangeString?.start && !!dateRangeString?.end ? DateDiff(dateRangeString.start, dateRangeString.end, 'day') ?? 0 : 0
|
|
65
|
-
return CreateCustomDateRange(date, DateOnly(date, { days: days }))
|
|
67
|
+
return CreateCustomDateRange(date, DateOnly(date, { days: days }), fyMonthsAdjust)
|
|
66
68
|
} else {
|
|
67
69
|
applyRangeToSecondDate = false
|
|
68
|
-
return CreateCustomDateRange(dateRangeString?.start ?? date, date)
|
|
70
|
+
return CreateCustomDateRange(dateRangeString?.start ?? date, date, fyMonthsAdjust)
|
|
69
71
|
}
|
|
70
72
|
default:
|
|
71
|
-
return CreateCustomDateRange(date, date)
|
|
73
|
+
return CreateCustomDateRange(date, date, fyMonthsAdjust)
|
|
72
74
|
}
|
|
73
75
|
}
|
|
74
76
|
|
|
@@ -8,6 +8,7 @@ type $$ComponentProps = {
|
|
|
8
8
|
minYear?: number;
|
|
9
9
|
maxYear?: number;
|
|
10
10
|
maxWidth?: string;
|
|
11
|
+
fyMonthsAdjust?: number | null;
|
|
11
12
|
};
|
|
12
13
|
declare const Calendar: import("svelte").Component<$$ComponentProps, {}, "baseDate" | "dateRangeString" | "applyRangeToSecondDate">;
|
|
13
14
|
type Calendar = ReturnType<typeof Calendar>;
|
|
@@ -14,7 +14,7 @@ export type TDateRangeString = {
|
|
|
14
14
|
start: string;
|
|
15
15
|
end: string;
|
|
16
16
|
};
|
|
17
|
-
export declare function CreateCustomDateRange(dateStart: TDateAny, dateEnd: TDateAny): TDateRangeString;
|
|
17
|
+
export declare function CreateCustomDateRange(dateStart: TDateAny, dateEnd: TDateAny, fyMonthsAdjust?: number | null): TDateRangeString;
|
|
18
18
|
export declare function DefaultRangeStringsReport(fyMonthsAdjust?: number | null | undefined): TDateRangeString[];
|
|
19
19
|
export declare function DefaultRangeStringsReportMonthly(fyMonthsAdjust?: number | null | undefined): TDateRangeString[];
|
|
20
20
|
export declare function DefaultRangeStringsReportQuarterly(fyMonthsAdjust?: number | null | undefined): TDateRangeString[];
|
|
@@ -22,6 +22,7 @@ export declare function DefaultDateRangeStringThisMonth(): TDateRangeString;
|
|
|
22
22
|
export declare function DefaultDateRangeStringLastMonth(): TDateRangeString;
|
|
23
23
|
export declare function DefaultDateRangeStringToday(): TDateRangeString;
|
|
24
24
|
export declare function DefaultDateRangeStringYesterday(): TDateRangeString;
|
|
25
|
+
export declare function DefaultDateRangeStringPrevious7Days(): TDateRangeString;
|
|
25
26
|
export declare function DefaultDateRangeStringThisWeek(): TDateRangeString;
|
|
26
27
|
export declare function DefaultDateRangeStringLastWeek(): TDateRangeString;
|
|
27
28
|
export declare function DefaultDateRangeStringLast4Weeks(): TDateRangeString;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DateCompare, DateComponent, DateDayOfWeek, DateDoWSundayZero, DateFormat, DateOnly } from '@solidbasisventures/intelliwaketsfoundation';
|
|
2
2
|
export const CustomRangeName = 'Custom Range';
|
|
3
|
-
export function CreateCustomDateRange(dateStart, dateEnd) {
|
|
3
|
+
export function CreateCustomDateRange(dateStart, dateEnd, fyMonthsAdjust) {
|
|
4
4
|
const useDateStart = DateOnly(dateStart);
|
|
5
5
|
let useDateEnd = DateOnly(dateEnd);
|
|
6
6
|
if (DateCompare(useDateEnd, 'IsBefore', useDateStart, 'day')) {
|
|
@@ -9,8 +9,15 @@ export function CreateCustomDateRange(dateStart, dateEnd) {
|
|
|
9
9
|
const checks = [
|
|
10
10
|
DefaultDateRangeStringToday(),
|
|
11
11
|
DefaultDateRangeStringYesterday(),
|
|
12
|
+
DefaultDateRangeStringPrevious7Days(),
|
|
12
13
|
DefaultDateRangeStringThisWeek(),
|
|
13
14
|
DefaultDateRangeStringLastWeek(),
|
|
15
|
+
...(!fyMonthsAdjust
|
|
16
|
+
? []
|
|
17
|
+
: [
|
|
18
|
+
DefaultDateRangeStringThisFiscalYear(fyMonthsAdjust),
|
|
19
|
+
DefaultDateRangeStringLastFiscalYear(fyMonthsAdjust)
|
|
20
|
+
]),
|
|
14
21
|
DefaultDateRangeStringThisMonth(),
|
|
15
22
|
DefaultDateRangeStringLastMonth(),
|
|
16
23
|
DefaultDateRangeStringThisYear(),
|
|
@@ -123,6 +130,13 @@ export function DefaultDateRangeStringYesterday() {
|
|
|
123
130
|
end: DateOnly('now', { days: -1 })
|
|
124
131
|
};
|
|
125
132
|
}
|
|
133
|
+
export function DefaultDateRangeStringPrevious7Days() {
|
|
134
|
+
return {
|
|
135
|
+
name: 'Previous 7 Days',
|
|
136
|
+
start: DateOnly('now', { weeks: -1 }),
|
|
137
|
+
end: DateOnly('now')
|
|
138
|
+
};
|
|
139
|
+
}
|
|
126
140
|
export function DefaultDateRangeStringThisWeek() {
|
|
127
141
|
return {
|
|
128
142
|
name: 'This Week',
|
|
@@ -7,14 +7,15 @@
|
|
|
7
7
|
|
|
8
8
|
let {
|
|
9
9
|
dateRange = $bindable(),
|
|
10
|
-
dateRanges
|
|
10
|
+
dateRanges,
|
|
11
11
|
controlClass,
|
|
12
12
|
toggleClass,
|
|
13
13
|
bodyClass,
|
|
14
14
|
setCookieName,
|
|
15
15
|
invalidate,
|
|
16
16
|
allowCustom = true,
|
|
17
|
-
show = $bindable(false)
|
|
17
|
+
show = $bindable(false),
|
|
18
|
+
fyMonthsAdjust
|
|
18
19
|
}: {
|
|
19
20
|
dateRange: TDateRangeString
|
|
20
21
|
dateRanges?: TDateRangeString[]
|
|
@@ -24,14 +25,15 @@
|
|
|
24
25
|
setCookieName?: string
|
|
25
26
|
invalidate?: string | string[] | 'All' | 'app:All' | null
|
|
26
27
|
allowCustom?: boolean
|
|
27
|
-
show?: boolean
|
|
28
|
+
show?: boolean,
|
|
29
|
+
fyMonthsAdjust?: number | null
|
|
28
30
|
} = $props()
|
|
29
31
|
|
|
30
32
|
let customDateRange = $state<TDateRangeString | null>(null)
|
|
31
33
|
let applyRangeToSecondDate = $state(false)
|
|
32
34
|
|
|
33
35
|
let listItems = $derived<TListGroupItem[]>([
|
|
34
|
-
...dateRanges.map(dr => ({
|
|
36
|
+
...(dateRanges ?? DefaultRangeStringsReport(fyMonthsAdjust)).map(dr => ({
|
|
35
37
|
title: dr.name,
|
|
36
38
|
selected: dr.name === dateRange.name && !customDateRange,
|
|
37
39
|
linkClick: () => {
|
|
@@ -92,7 +94,7 @@
|
|
|
92
94
|
{#snippet body()}
|
|
93
95
|
<div class="grid grid-cols-[auto_auto]"
|
|
94
96
|
role="button">
|
|
95
|
-
<ListGroupItems {listItems} borders={false}/>
|
|
97
|
+
<ListGroupItems {listItems} borders={false} />
|
|
96
98
|
{#if !!customDateRange}
|
|
97
99
|
<div class="overflow-hidden ml-4 mr-2">
|
|
98
100
|
<div class="grid grid-cols-[1fr_auto_1fr] gap-1 my-2 overflow-hidden">
|
|
@@ -105,6 +107,7 @@
|
|
|
105
107
|
<Calendar baseDate={baseDateNearToday}
|
|
106
108
|
bind:dateRangeString={customDateRange}
|
|
107
109
|
bind:applyRangeToSecondDate={applyRangeToSecondDate}
|
|
110
|
+
{fyMonthsAdjust}
|
|
108
111
|
selectRange="Range" />
|
|
109
112
|
<div class="grid grid-cols-2 mt-2">
|
|
110
113
|
<div class="text-center">
|
|
@@ -9,6 +9,7 @@ type $$ComponentProps = {
|
|
|
9
9
|
invalidate?: string | string[] | 'All' | 'app:All' | null;
|
|
10
10
|
allowCustom?: boolean;
|
|
11
11
|
show?: boolean;
|
|
12
|
+
fyMonthsAdjust?: number | null;
|
|
12
13
|
};
|
|
13
14
|
declare const DateRangePicker: import("svelte").Component<$$ComponentProps, {}, "show" | "dateRange">;
|
|
14
15
|
type DateRangePicker = ReturnType<typeof DateRangePicker>;
|