@code-rhapsodie/react-scheduler 0.4.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.
- package/LICENSE +7 -0
- package/dist/App.d.ts +3 -0
- package/dist/assets/icons/index.d.ts +3 -0
- package/dist/assets/icons/types.d.ts +5 -0
- package/dist/components/Calendar/Calendar.d.ts +4 -0
- package/dist/components/Calendar/Grid/Grid.d.ts +5 -0
- package/dist/components/Calendar/Grid/index.d.ts +1 -0
- package/dist/components/Calendar/Grid/styles.d.ts +6 -0
- package/dist/components/Calendar/Grid/types.d.ts +10 -0
- package/dist/components/Calendar/Header/Header.d.ts +4 -0
- package/dist/components/Calendar/Header/Topbar/Topbar.d.ts +4 -0
- package/dist/components/Calendar/Header/Topbar/index.d.ts +1 -0
- package/dist/components/Calendar/Header/Topbar/styles.d.ts +8 -0
- package/dist/components/Calendar/Header/Topbar/types.d.ts +5 -0
- package/dist/components/Calendar/Header/index.d.ts +1 -0
- package/dist/components/Calendar/Header/styles.d.ts +4 -0
- package/dist/components/Calendar/Header/types.d.ts +6 -0
- package/dist/components/Calendar/index.d.ts +1 -0
- package/dist/components/Calendar/styles.d.ts +4 -0
- package/dist/components/Calendar/types.d.ts +12 -0
- package/dist/components/ConfigPanel/ConfigPanel.d.ts +4 -0
- package/dist/components/ConfigPanel/index.d.ts +1 -0
- package/dist/components/ConfigPanel/styles.d.ts +8 -0
- package/dist/components/ConfigPanel/types.d.ts +5 -0
- package/dist/components/EmptyBox/EmptyBox.d.ts +3 -0
- package/dist/components/EmptyBox/index.d.ts +1 -0
- package/dist/components/EmptyBox/styles.d.ts +3 -0
- package/dist/components/Icon/Icon.d.ts +4 -0
- package/dist/components/Icon/index.d.ts +2 -0
- package/dist/components/Icon/types.d.ts +8 -0
- package/dist/components/IconButton/IconButton.d.ts +4 -0
- package/dist/components/IconButton/index.d.ts +1 -0
- package/dist/components/IconButton/styles.d.ts +2 -0
- package/dist/components/IconButton/types.d.ts +10 -0
- package/dist/components/LeftColumn/LeftColumn.d.ts +4 -0
- package/dist/components/LeftColumn/LeftColumnItem/LeftColumnItem.d.ts +4 -0
- package/dist/components/LeftColumn/LeftColumnItem/index.d.ts +1 -0
- package/dist/components/LeftColumn/LeftColumnItem/styles.d.ts +7 -0
- package/dist/components/LeftColumn/LeftColumnItem/types.d.ts +14 -0
- package/dist/components/LeftColumn/index.d.ts +1 -0
- package/dist/components/LeftColumn/styles.d.ts +5 -0
- package/dist/components/LeftColumn/types.d.ts +15 -0
- package/dist/components/Loader/Loader.d.ts +4 -0
- package/dist/components/Loader/index.d.ts +1 -0
- package/dist/components/Loader/styles.d.ts +3 -0
- package/dist/components/Loader/types.d.ts +6 -0
- package/dist/components/PaginationButton/PaginationButton.d.ts +4 -0
- package/dist/components/PaginationButton/index.d.ts +1 -0
- package/dist/components/PaginationButton/styles.d.ts +5 -0
- package/dist/components/PaginationButton/types.d.ts +11 -0
- package/dist/components/Scheduler/Scheduler.d.ts +4 -0
- package/dist/components/Scheduler/styles.d.ts +3 -0
- package/dist/components/Scheduler/types.d.ts +16 -0
- package/dist/components/Tiles/Tile/Tile.d.ts +4 -0
- package/dist/components/Tiles/Tile/index.d.ts +1 -0
- package/dist/components/Tiles/Tile/styles.d.ts +6 -0
- package/dist/components/Tiles/Tile/types.d.ts +10 -0
- package/dist/components/Tiles/Tiles.d.ts +4 -0
- package/dist/components/Tiles/index.d.ts +1 -0
- package/dist/components/Tiles/types.d.ts +8 -0
- package/dist/components/Toggle/Toggle.d.ts +4 -0
- package/dist/components/Toggle/index.d.ts +1 -0
- package/dist/components/Toggle/styles.d.ts +4 -0
- package/dist/components/Toggle/types.d.ts +3 -0
- package/dist/components/Tooltip/Tooltip.d.ts +4 -0
- package/dist/components/Tooltip/index.d.ts +1 -0
- package/dist/components/Tooltip/styles.d.ts +9 -0
- package/dist/components/Tooltip/types.d.ts +5 -0
- package/dist/components/index.d.ts +16 -0
- package/dist/constants.d.ts +50 -0
- package/dist/context/CalendarProvider/CalendarProvider.d.ts +6 -0
- package/dist/context/CalendarProvider/calendarContext.d.ts +3 -0
- package/dist/context/CalendarProvider/index.d.ts +1 -0
- package/dist/context/CalendarProvider/types.d.ts +38 -0
- package/dist/context/LocaleProvider/LocaleProvider.d.ts +6 -0
- package/dist/context/LocaleProvider/index.d.ts +1 -0
- package/dist/context/LocaleProvider/localeContext.d.ts +3 -0
- package/dist/context/LocaleProvider/locales.d.ts +9 -0
- package/dist/context/LocaleProvider/types.d.ts +34 -0
- package/dist/hooks/types.d.ts +39 -0
- package/dist/hooks/usePagination.d.ts +3 -0
- package/dist/index.cjs +554 -0
- package/dist/index.css +2 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +4875 -0
- package/dist/locales/de.d.ts +17 -0
- package/dist/locales/en.d.ts +17 -0
- package/dist/locales/es.d.ts +17 -0
- package/dist/locales/fr.d.ts +17 -0
- package/dist/locales/he.d.ts +17 -0
- package/dist/locales/index.d.ts +10 -0
- package/dist/locales/it.d.ts +17 -0
- package/dist/locales/lt.d.ts +17 -0
- package/dist/locales/pl.d.ts +17 -0
- package/dist/locales/ptBR.d.ts +17 -0
- package/dist/locales/ro.d.ts +17 -0
- package/dist/main.d.ts +1 -0
- package/dist/mock/appMock.d.ts +5 -0
- package/dist/styles.d.ts +15 -0
- package/dist/types/global.d.ts +172 -0
- package/dist/types/guards.d.ts +2 -0
- package/dist/utils/dates.d.ts +6 -0
- package/dist/utils/drawDashedLine.d.ts +2 -0
- package/dist/utils/drawGrid/drawCell.d.ts +2 -0
- package/dist/utils/drawGrid/drawGrid.d.ts +3 -0
- package/dist/utils/drawGrid/drawHourlyView.d.ts +3 -0
- package/dist/utils/drawGrid/drawMonthlyView.d.ts +3 -0
- package/dist/utils/drawGrid/drawYearlyView.d.ts +3 -0
- package/dist/utils/drawHeader/drawHeader.d.ts +3 -0
- package/dist/utils/drawHeader/drawRows/DrawZoom2MonthsOnTop.d.ts +3 -0
- package/dist/utils/drawHeader/drawRows/drawDaysOnBottom.d.ts +3 -0
- package/dist/utils/drawHeader/drawRows/drawMonthsInMiddle.d.ts +3 -0
- package/dist/utils/drawHeader/drawRows/drawMonthsOnTop.d.ts +3 -0
- package/dist/utils/drawHeader/drawRows/drawWeeksInMiddle.d.ts +3 -0
- package/dist/utils/drawHeader/drawRows/drawWeeksOnBottom.d.ts +3 -0
- package/dist/utils/drawHeader/drawRows/drawYearsOnTop.d.ts +3 -0
- package/dist/utils/drawHeader/drawRows/drawZoom2DaysInMiddle.d.ts +3 -0
- package/dist/utils/drawHeader/drawRows/drawZoom2HoursOnBottom.d.ts +3 -0
- package/dist/utils/drawRow.d.ts +3 -0
- package/dist/utils/getBoxFillStyle.d.ts +3 -0
- package/dist/utils/getCanvasWidth.d.ts +1 -0
- package/dist/utils/getCols.d.ts +2 -0
- package/dist/utils/getDatesRange.d.ts +11 -0
- package/dist/utils/getDayOccupancy.d.ts +3 -0
- package/dist/utils/getDuration.d.ts +2 -0
- package/dist/utils/getHourOccupancy.d.ts +3 -0
- package/dist/utils/getOccupancy.d.ts +3 -0
- package/dist/utils/getProjectsOnGrid.d.ts +5 -0
- package/dist/utils/getTextStyle.d.ts +3 -0
- package/dist/utils/getTileProperties.d.ts +3 -0
- package/dist/utils/getTileTextColor.d.ts +13 -0
- package/dist/utils/getTileXAndWidth.d.ts +5 -0
- package/dist/utils/getTimeOccupancy.d.ts +2 -0
- package/dist/utils/getTooltipData.d.ts +2 -0
- package/dist/utils/getTotalHoursAndMinutes.d.ts +5 -0
- package/dist/utils/getTotalRowsPerPage.d.ts +2 -0
- package/dist/utils/getWeekOccupancy.d.ts +3 -0
- package/dist/utils/resizeCanvas.d.ts +1 -0
- package/dist/utils/setProjectsInRows.d.ts +2 -0
- package/dist/utils/splitToPages.d.ts +2 -0
- package/package.json +98 -0
- package/readme.md +369 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare const de: {
|
|
2
|
+
feelingEmpty: string;
|
|
3
|
+
free: string;
|
|
4
|
+
loadNext: string;
|
|
5
|
+
loadPrevious: string;
|
|
6
|
+
over: string;
|
|
7
|
+
taken: string;
|
|
8
|
+
topbar: {
|
|
9
|
+
filters: string;
|
|
10
|
+
next: string;
|
|
11
|
+
prev: string;
|
|
12
|
+
today: string;
|
|
13
|
+
view: string;
|
|
14
|
+
};
|
|
15
|
+
search: string;
|
|
16
|
+
week: string;
|
|
17
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare const en: {
|
|
2
|
+
feelingEmpty: string;
|
|
3
|
+
free: string;
|
|
4
|
+
loadNext: string;
|
|
5
|
+
loadPrevious: string;
|
|
6
|
+
over: string;
|
|
7
|
+
taken: string;
|
|
8
|
+
topbar: {
|
|
9
|
+
filters: string;
|
|
10
|
+
next: string;
|
|
11
|
+
prev: string;
|
|
12
|
+
today: string;
|
|
13
|
+
view: string;
|
|
14
|
+
};
|
|
15
|
+
search: string;
|
|
16
|
+
week: string;
|
|
17
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare const es: {
|
|
2
|
+
feelingEmpty: string;
|
|
3
|
+
free: string;
|
|
4
|
+
loadNext: string;
|
|
5
|
+
loadPrevious: string;
|
|
6
|
+
over: string;
|
|
7
|
+
taken: string;
|
|
8
|
+
topbar: {
|
|
9
|
+
filters: string;
|
|
10
|
+
next: string;
|
|
11
|
+
prev: string;
|
|
12
|
+
today: string;
|
|
13
|
+
view: string;
|
|
14
|
+
};
|
|
15
|
+
search: string;
|
|
16
|
+
week: string;
|
|
17
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare const fr: {
|
|
2
|
+
feelingEmpty: string;
|
|
3
|
+
free: string;
|
|
4
|
+
loadNext: string;
|
|
5
|
+
loadPrevious: string;
|
|
6
|
+
over: string;
|
|
7
|
+
taken: string;
|
|
8
|
+
topbar: {
|
|
9
|
+
filters: string;
|
|
10
|
+
next: string;
|
|
11
|
+
prev: string;
|
|
12
|
+
today: string;
|
|
13
|
+
view: string;
|
|
14
|
+
};
|
|
15
|
+
search: string;
|
|
16
|
+
week: string;
|
|
17
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare const he: {
|
|
2
|
+
feelingEmpty: string;
|
|
3
|
+
free: string;
|
|
4
|
+
loadNext: string;
|
|
5
|
+
loadPrevious: string;
|
|
6
|
+
over: string;
|
|
7
|
+
taken: string;
|
|
8
|
+
topbar: {
|
|
9
|
+
filters: string;
|
|
10
|
+
next: string;
|
|
11
|
+
prev: string;
|
|
12
|
+
today: string;
|
|
13
|
+
view: string;
|
|
14
|
+
};
|
|
15
|
+
search: string;
|
|
16
|
+
week: string;
|
|
17
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { pl } from "./pl";
|
|
2
|
+
export { en } from "./en";
|
|
3
|
+
export { de } from "./de";
|
|
4
|
+
export { lt } from "./lt";
|
|
5
|
+
export { fr } from "./fr";
|
|
6
|
+
export { it } from "./it";
|
|
7
|
+
export { ptBR } from "./ptBR";
|
|
8
|
+
export { es } from "./es";
|
|
9
|
+
export { he } from "./he";
|
|
10
|
+
export { ro } from "./ro";
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare const it: {
|
|
2
|
+
feelingEmpty: string;
|
|
3
|
+
free: string;
|
|
4
|
+
loadNext: string;
|
|
5
|
+
loadPrevious: string;
|
|
6
|
+
over: string;
|
|
7
|
+
taken: string;
|
|
8
|
+
topbar: {
|
|
9
|
+
filters: string;
|
|
10
|
+
next: string;
|
|
11
|
+
prev: string;
|
|
12
|
+
today: string;
|
|
13
|
+
view: string;
|
|
14
|
+
};
|
|
15
|
+
search: string;
|
|
16
|
+
week: string;
|
|
17
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare const lt: {
|
|
2
|
+
feelingEmpty: string;
|
|
3
|
+
free: string;
|
|
4
|
+
loadNext: string;
|
|
5
|
+
loadPrevious: string;
|
|
6
|
+
over: string;
|
|
7
|
+
taken: string;
|
|
8
|
+
topbar: {
|
|
9
|
+
filters: string;
|
|
10
|
+
next: string;
|
|
11
|
+
prev: string;
|
|
12
|
+
today: string;
|
|
13
|
+
view: string;
|
|
14
|
+
};
|
|
15
|
+
search: string;
|
|
16
|
+
week: string;
|
|
17
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare const pl: {
|
|
2
|
+
feelingEmpty: string;
|
|
3
|
+
free: string;
|
|
4
|
+
loadNext: string;
|
|
5
|
+
loadPrevious: string;
|
|
6
|
+
over: string;
|
|
7
|
+
taken: string;
|
|
8
|
+
topbar: {
|
|
9
|
+
filters: string;
|
|
10
|
+
next: string;
|
|
11
|
+
prev: string;
|
|
12
|
+
today: string;
|
|
13
|
+
view: string;
|
|
14
|
+
};
|
|
15
|
+
search: string;
|
|
16
|
+
week: string;
|
|
17
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare const ptBR: {
|
|
2
|
+
feelingEmpty: string;
|
|
3
|
+
free: string;
|
|
4
|
+
loadNext: string;
|
|
5
|
+
loadPrevious: string;
|
|
6
|
+
over: string;
|
|
7
|
+
taken: string;
|
|
8
|
+
topbar: {
|
|
9
|
+
filters: string;
|
|
10
|
+
next: string;
|
|
11
|
+
prev: string;
|
|
12
|
+
today: string;
|
|
13
|
+
view: string;
|
|
14
|
+
};
|
|
15
|
+
search: string;
|
|
16
|
+
week: string;
|
|
17
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare const ro: {
|
|
2
|
+
feelingEmpty: string;
|
|
3
|
+
free: string;
|
|
4
|
+
loadNext: string;
|
|
5
|
+
loadPrevious: string;
|
|
6
|
+
over: string;
|
|
7
|
+
taken: string;
|
|
8
|
+
topbar: {
|
|
9
|
+
filters: string;
|
|
10
|
+
next: string;
|
|
11
|
+
prev: string;
|
|
12
|
+
today: string;
|
|
13
|
+
view: string;
|
|
14
|
+
};
|
|
15
|
+
search: string;
|
|
16
|
+
week: string;
|
|
17
|
+
};
|
package/dist/main.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { SchedulerData, SchedulerProjectData } from "@/types/global";
|
|
2
|
+
import { ParsedDatesRange } from "@/utils/getDatesRange";
|
|
3
|
+
export declare const mockedOnRangeChange: (range: ParsedDatesRange, data: SchedulerData) => void;
|
|
4
|
+
export declare const generateProjects: (years: number, maxProjectsPerYear: number, amountOfDscWords: number | undefined, title: string) => SchedulerProjectData[];
|
|
5
|
+
export declare const createMockData: (amountOfPeople: number, years: number, maxProjectsPerYear: number, amountOfDscWords?: number) => SchedulerData;
|
package/dist/styles.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type DefaultTheme, IStyledComponent } from "styled-components";
|
|
2
|
+
import { NamedExoticComponent } from "react";
|
|
3
|
+
export declare const prefixId = "reactSchedulerOutsideWrapper";
|
|
4
|
+
export declare const GlobalStyle: NamedExoticComponent;
|
|
5
|
+
export type ColorType = "background" | "gridBackground" | "primary" | "secondary" | "tertiary" | "textPrimary" | "textSecondary" | "accent" | "disabled" | "border" | "placeholder" | "warning" | "button" | "tooltip" | "defaultTile" | "hover";
|
|
6
|
+
export type Theme = {
|
|
7
|
+
colors: Record<ColorType, string>;
|
|
8
|
+
navHeight: string;
|
|
9
|
+
mode: "light" | "dark";
|
|
10
|
+
};
|
|
11
|
+
export declare const theme: DefaultTheme;
|
|
12
|
+
export declare const darkTheme: Theme;
|
|
13
|
+
export declare const marginPaddingReset = "\nmargin: 0;\npadding: 0;\n";
|
|
14
|
+
export declare const truncate = "\noverflow: hidden;\ntext-overflow: ellipsis;\nwhite-space: nowrap;\n";
|
|
15
|
+
export declare const StyledSchedulerFrame: IStyledComponent<any, any>;
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { LocaleType } from "@/context/LocaleProvider/types";
|
|
2
|
+
import { ColorType } from "@/styles";
|
|
3
|
+
export declare const allZoomLevel: readonly [0, 1, 2];
|
|
4
|
+
export type FilterButtonState = -1 | 0 | 1;
|
|
5
|
+
type ZoomLevelTuple = typeof allZoomLevel;
|
|
6
|
+
export type ZoomLevel = ZoomLevelTuple[number];
|
|
7
|
+
export type LangCodes = "en" | "es" | "pl" | "de" | "lt" | "fr" | "it" | "pt-BR" | "he" | "ro";
|
|
8
|
+
export type Config = {
|
|
9
|
+
zoom: ZoomLevel;
|
|
10
|
+
/**
|
|
11
|
+
* Dictates filter button behavior
|
|
12
|
+
* - `< 0` - filter button is hidden
|
|
13
|
+
* - `0` - filter button is visible, no filter had been applied
|
|
14
|
+
* - `> 0` - filter button visible - filters had been applied
|
|
15
|
+
*/
|
|
16
|
+
filterButtonState?: number;
|
|
17
|
+
/**
|
|
18
|
+
* Language code: "en" | "es" | "pl" | "de" | "lt" | "fr" | "it" | "pt-BR" | "he" | "ro"
|
|
19
|
+
*/
|
|
20
|
+
lang?: LangCodes | string;
|
|
21
|
+
isFiltersButtonVisible?: boolean;
|
|
22
|
+
maxRecordsPerPage?: number;
|
|
23
|
+
/**
|
|
24
|
+
* property for changing behavior of showing tooltip hours
|
|
25
|
+
* true - will show taken hours same as business days
|
|
26
|
+
* false - will always show 0 taken hours on weekends in day view
|
|
27
|
+
* @default false
|
|
28
|
+
*/
|
|
29
|
+
includeTakenHoursOnWeekendsInDayView?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* show tooltip when hovering over tiles items
|
|
32
|
+
* @default true
|
|
33
|
+
*/
|
|
34
|
+
showTooltip?: boolean;
|
|
35
|
+
translations?: LocaleType[];
|
|
36
|
+
/**
|
|
37
|
+
* show toggle button for changing theme (light/dark)
|
|
38
|
+
*/
|
|
39
|
+
showThemeToggle?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* default theme (light/dark)
|
|
42
|
+
* when theme toggle is displayed - this is a default value of the toggle
|
|
43
|
+
* @default "light"
|
|
44
|
+
*/
|
|
45
|
+
defaultTheme?: "light" | "dark";
|
|
46
|
+
theme?: Theme;
|
|
47
|
+
};
|
|
48
|
+
export type Theme = {
|
|
49
|
+
light?: Partial<Record<ColorType, string>>;
|
|
50
|
+
dark?: Partial<Record<ColorType, string>>;
|
|
51
|
+
};
|
|
52
|
+
export type SchedulerData = SchedulerRow[];
|
|
53
|
+
export type SchedulerRow = {
|
|
54
|
+
id: string;
|
|
55
|
+
label: SchedulerRowLabel;
|
|
56
|
+
data: SchedulerProjectData[];
|
|
57
|
+
};
|
|
58
|
+
export type SchedulerItemClickData = Omit<SchedulerRow, "data">;
|
|
59
|
+
export type PaginatedSchedulerData = PaginatedSchedulerRow[];
|
|
60
|
+
export type PaginatedSchedulerRow = {
|
|
61
|
+
id: string;
|
|
62
|
+
label: SchedulerRowLabel;
|
|
63
|
+
data: SchedulerProjectData[][];
|
|
64
|
+
};
|
|
65
|
+
export type SchedulerRowLabel = {
|
|
66
|
+
icon: string;
|
|
67
|
+
title: string;
|
|
68
|
+
subtitle: string;
|
|
69
|
+
};
|
|
70
|
+
export type SchedulerProjectData = {
|
|
71
|
+
/**
|
|
72
|
+
* Unique Id of item
|
|
73
|
+
*/
|
|
74
|
+
id: string;
|
|
75
|
+
/**
|
|
76
|
+
* Represents start date of from which tile will render
|
|
77
|
+
*/
|
|
78
|
+
startDate: Date;
|
|
79
|
+
/**
|
|
80
|
+
* Represents end date to which tile will render
|
|
81
|
+
*/
|
|
82
|
+
endDate: Date;
|
|
83
|
+
/**
|
|
84
|
+
* Indicates how much time is spent per day. Given in seconds and converted by Scheduler to hours/minutes
|
|
85
|
+
*/
|
|
86
|
+
occupancy: number;
|
|
87
|
+
/**
|
|
88
|
+
* Title of item
|
|
89
|
+
*/
|
|
90
|
+
title: string;
|
|
91
|
+
/**
|
|
92
|
+
* Subtitle of item. Optional
|
|
93
|
+
*/
|
|
94
|
+
subtitle?: string;
|
|
95
|
+
/**
|
|
96
|
+
* Short description displayed on tile. Optional
|
|
97
|
+
*/
|
|
98
|
+
description?: string;
|
|
99
|
+
/**
|
|
100
|
+
* Background color of the tile, given in rgb color model. If not given, default color (rgb(114, 141,226 )) is set. Optional
|
|
101
|
+
*/
|
|
102
|
+
bgColor?: string;
|
|
103
|
+
};
|
|
104
|
+
export type Day = {
|
|
105
|
+
hour: number;
|
|
106
|
+
dayName: string;
|
|
107
|
+
dayOfMonth: number;
|
|
108
|
+
weekOfYear: number;
|
|
109
|
+
month: number;
|
|
110
|
+
monthName: string;
|
|
111
|
+
isBusinessDay: boolean;
|
|
112
|
+
isCurrentDay: boolean;
|
|
113
|
+
year: number;
|
|
114
|
+
};
|
|
115
|
+
export type TextAndBoxStyleConfig = {
|
|
116
|
+
isCurrent: boolean;
|
|
117
|
+
isBusinessDay?: boolean;
|
|
118
|
+
variant?: "yearView" | "bottomRow";
|
|
119
|
+
};
|
|
120
|
+
type BottomRowText = {
|
|
121
|
+
y: number;
|
|
122
|
+
label: string;
|
|
123
|
+
font: string;
|
|
124
|
+
color: string;
|
|
125
|
+
};
|
|
126
|
+
export type DrawRowConfig = {
|
|
127
|
+
ctx: CanvasRenderingContext2D;
|
|
128
|
+
x: number;
|
|
129
|
+
y: number;
|
|
130
|
+
width: number;
|
|
131
|
+
height: number;
|
|
132
|
+
textYPos?: number;
|
|
133
|
+
label?: string;
|
|
134
|
+
font?: string;
|
|
135
|
+
isBottomRow?: boolean;
|
|
136
|
+
fillStyle?: string;
|
|
137
|
+
topText?: BottomRowText;
|
|
138
|
+
bottomText?: BottomRowText;
|
|
139
|
+
labelBetweenCells?: boolean;
|
|
140
|
+
};
|
|
141
|
+
export type TileProperties = {
|
|
142
|
+
x: number;
|
|
143
|
+
y: number;
|
|
144
|
+
width: number;
|
|
145
|
+
};
|
|
146
|
+
export type ConfigFormValues = {
|
|
147
|
+
peopleCount: number;
|
|
148
|
+
projectsPerYear: number;
|
|
149
|
+
yearsCovered: number;
|
|
150
|
+
maxRecordsPerPage: number;
|
|
151
|
+
isFullscreen: boolean;
|
|
152
|
+
startDate?: string;
|
|
153
|
+
};
|
|
154
|
+
export type Coords = {
|
|
155
|
+
x: number;
|
|
156
|
+
y: number;
|
|
157
|
+
};
|
|
158
|
+
export type TimeUnits = {
|
|
159
|
+
hours: number;
|
|
160
|
+
minutes: number;
|
|
161
|
+
};
|
|
162
|
+
export type OccupancyData = {
|
|
163
|
+
taken: TimeUnits;
|
|
164
|
+
free: TimeUnits;
|
|
165
|
+
overtime: TimeUnits;
|
|
166
|
+
};
|
|
167
|
+
export type TooltipData = {
|
|
168
|
+
coords: Coords;
|
|
169
|
+
resourceIndex: number;
|
|
170
|
+
disposition: OccupancyData;
|
|
171
|
+
};
|
|
172
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import dayjs from "dayjs";
|
|
2
|
+
import { Day } from "@/types/global";
|
|
3
|
+
export declare const daysInYear: (year: number) => 365 | 366;
|
|
4
|
+
export declare const getIsBusinessDay: (date: dayjs.Dayjs) => boolean;
|
|
5
|
+
export declare const getDaysInMonths: (date: Day, iterator: number) => number;
|
|
6
|
+
export declare const parseDay: (data: dayjs.Dayjs) => Day;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getCanvasWidth: () => number;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import dayjs from "dayjs";
|
|
2
|
+
export type DatesRange = {
|
|
3
|
+
startDate: dayjs.Dayjs;
|
|
4
|
+
endDate: dayjs.Dayjs;
|
|
5
|
+
};
|
|
6
|
+
export type ParsedDatesRange = {
|
|
7
|
+
startDate: Date;
|
|
8
|
+
endDate: Date;
|
|
9
|
+
};
|
|
10
|
+
export declare const getDatesRange: (date: dayjs.Dayjs, zoom: number) => DatesRange;
|
|
11
|
+
export declare const getParsedDatesRange: (date: dayjs.Dayjs, zoom: number) => ParsedDatesRange;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import dayjs from "dayjs";
|
|
2
|
+
import { OccupancyData, SchedulerProjectData } from "@/types/global";
|
|
3
|
+
export declare const getDayOccupancy: (occupancy: SchedulerProjectData[], focusedDate: dayjs.Dayjs, zoom: number, includeTakenHoursOnWeekendsInDayView: boolean) => OccupancyData;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import dayjs from "dayjs";
|
|
2
|
+
import { SchedulerProjectData, OccupancyData, ZoomLevel } from "@/types/global";
|
|
3
|
+
export declare const getOccupancy: (resource: SchedulerProjectData[][], resourceIndex: number, focusedDate: dayjs.Dayjs, zoom: ZoomLevel, includeTakenHoursOnWeekendsInDayView?: boolean) => OccupancyData;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* calculates whether or not text on given hex color should be black or white
|
|
3
|
+
* based on WCAG 2.0 recommendations
|
|
4
|
+
* @param hexColor - color of the background on which font will be placed
|
|
5
|
+
* @returns font color that matches contrast recommended by WCAG 2.0 (black or white)
|
|
6
|
+
* @example
|
|
7
|
+
* // returns "black"
|
|
8
|
+
* getTextColor("#FFFFFF")
|
|
9
|
+
* @example
|
|
10
|
+
* // returns "white"
|
|
11
|
+
* getTextColor("#000000");
|
|
12
|
+
*/
|
|
13
|
+
export declare const getTileTextColor: (hexColor: string) => "black" | "white";
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { Day, Coords, SchedulerProjectData, TooltipData, ZoomLevel } from "@/types/global";
|
|
2
|
+
export declare const getTooltipData: (startDate: Day, cursorPosition: Coords, rowsPerPerson: number[], resourcesData: SchedulerProjectData[][][], zoom: ZoomLevel, includeTakenHoursOnWeekendsInDayView?: boolean) => TooltipData;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const resizeCanvas: (ctx: CanvasRenderingContext2D, width: number, height: number) => void;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { PaginatedSchedulerData, SchedulerData, SchedulerProjectData } from "@/types/global";
|
|
2
|
+
export declare const splitToPages: (data: SchedulerData, projectsPerPerson: SchedulerProjectData[][][], rowsPerPerson: number[], recordsThreshold: number) => PaginatedSchedulerData[];
|