@addsign/moje-agenda-shared-lib 1.0.10 → 1.0.12

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.
@@ -659,8 +659,8 @@ video {
659
659
  .col-span-12 {
660
660
  grid-column: span 12 / span 12;
661
661
  }
662
- .col-span-2 {
663
- grid-column: span 2 / span 2;
662
+ .col-span-3 {
663
+ grid-column: span 3 / span 3;
664
664
  }
665
665
  .float-right {
666
666
  float: right;
@@ -744,6 +744,9 @@ video {
744
744
  .mt-0\.5 {
745
745
  margin-top: 0.125rem;
746
746
  }
747
+ .mt-1 {
748
+ margin-top: 0.25rem;
749
+ }
747
750
  .mt-2 {
748
751
  margin-top: 0.5rem;
749
752
  }
@@ -1008,9 +1011,6 @@ video {
1008
1011
  -moz-user-select: none;
1009
1012
  user-select: none;
1010
1013
  }
1011
- .grid-cols-12 {
1012
- grid-template-columns: repeat(12, minmax(0, 1fr));
1013
- }
1014
1014
  .grid-cols-2 {
1015
1015
  grid-template-columns: repeat(2, minmax(0, 1fr));
1016
1016
  }
@@ -1020,6 +1020,9 @@ video {
1020
1020
  .grid-cols-7 {
1021
1021
  grid-template-columns: repeat(7, minmax(0, 1fr));
1022
1022
  }
1023
+ .grid-cols-\[repeat\(17\2c minmax\(0\2c 1fr\)\)\] {
1024
+ grid-template-columns: repeat(17,minmax(0,1fr));
1025
+ }
1023
1026
  .flex-row {
1024
1027
  flex-direction: row;
1025
1028
  }
@@ -95,7 +95,7 @@ const Calendar = ({
95
95
  const date = new Date(year, month, day);
96
96
  return items.filter((item) => date >= item.from && date <= item.to);
97
97
  };
98
- return /* @__PURE__ */ jsxs("div", { className: "flex flex-col bg-white shadow-lg flex-grow text-xs rounded-lg border overflow-hidden ", children: [
98
+ return /* @__PURE__ */ jsxs("div", { className: "flex flex-col bg-white flex-grow text-xs border overflow-hidden ", children: [
99
99
  /* @__PURE__ */ jsxs("div", { className: "flex justify-between items-center text-black p-2", children: [
100
100
  /* @__PURE__ */ jsx(
101
101
  "div",
@@ -119,11 +119,11 @@ const Calendar = ({
119
119
  }
120
120
  )
121
121
  ] }),
122
- /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-12 pb-0 ", children: [
122
+ /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-[repeat(17,minmax(0,1fr))] pb-0 ", children: [
123
123
  dayNames.map((day, index) => /* @__PURE__ */ jsx(
124
124
  "div",
125
125
  {
126
- className: "py-1 px-4 text-center font-semibold border-t " + (index > 4 ? " bg-gray-100 col-span-1 " : " col-span-2 "),
126
+ className: "py-1 px-4 text-center font-semibold border-t " + (index > 4 ? " bg-gray-100 col-span-1 " : " col-span-3 "),
127
127
  children: day
128
128
  },
129
129
  index
@@ -141,7 +141,7 @@ const Calendar = ({
141
141
  return /* @__PURE__ */ jsxs(
142
142
  "div",
143
143
  {
144
- className: "p-0 align-middle justify-center text-center border-t cursor-not-allowed " + (dayIndex > 4 ? "bg-gray-100 col-span-1 " : " col-span-2 ") + (isPublicHoliday ? " bg-gray-150 " : "") + (dayIndex !== 0 ? " border-l " : ""),
144
+ className: "p-0 align-middle justify-center text-center border-t cursor-not-allowed " + (dayIndex > 4 ? "bg-gray-100 col-span-1 " : " col-span-3 ") + (isPublicHoliday ? " bg-gray-150 " : "") + (dayIndex !== 0 ? " border-l " : ""),
145
145
  children: [
146
146
  day && /* @__PURE__ */ jsxs("div", { className: "py-1", children: [
147
147
  day,
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.js","sources":["../../lib/components/Calendar.tsx"],"sourcesContent":["import React, { useState, useEffect, useCallback } from \"react\";\r\nimport { FaChevronLeft, FaChevronRight } from \"react-icons/fa\";\r\n\r\nexport interface ICalendarItem {\r\n id: number;\r\n label?: string;\r\n from: Date;\r\n to: Date;\r\n background?: string;\r\n color?: string;\r\n tooltip?: string;\r\n}\r\n\r\ntype ICalendarProps = {\r\n items: ICalendarItem[];\r\n startingDate?: Date;\r\n publicHolidays?: string[];\r\n};\r\n\r\n// Check if a day is within any item's date range\r\n\r\nconst Calendar: React.FunctionComponent<ICalendarProps> = ({\r\n items,\r\n startingDate,\r\n publicHolidays,\r\n}) => {\r\n const [currentMonth, setCurrentMonth] = useState(\r\n startingDate ? startingDate.getMonth() : new Date().getMonth()\r\n );\r\n\r\n const [currentYear, setCurrentYear] = useState(\r\n startingDate ? startingDate.getFullYear() : new Date().getFullYear()\r\n );\r\n\r\n useEffect(() => {\r\n if (startingDate) {\r\n setCurrentMonth(startingDate.getMonth());\r\n setCurrentYear(startingDate.getFullYear());\r\n }\r\n }, [startingDate]);\r\n const [calendarData, setCalendarData] = useState<\r\n (string | number | JSX.Element)[][]\r\n >([]);\r\n\r\n const monthNames: string[] = [\r\n \"Leden\",\r\n \"Únor\",\r\n \"Březen\",\r\n \"Duben\",\r\n \"Květen\",\r\n \"Červen\",\r\n \"Červenec\",\r\n \"Srpen\",\r\n \"Září\",\r\n \"Říjen\",\r\n \"Listopad\",\r\n \"Prosinec\",\r\n ];\r\n const dayNames: string[] = [\r\n \"Pondělí\",\r\n \"Úterý\",\r\n \"Středa\",\r\n \"Čtvrtek\",\r\n \"Pátek\",\r\n \"So\",\r\n \"Ne\",\r\n ];\r\n\r\n // Leap year check\r\n const isLeapYear = (year: number) =>\r\n (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;\r\n\r\n // Days in each month\r\n const daysInMonth = useCallback((month: number, year: number) => {\r\n if (month === 1) {\r\n // February\r\n return isLeapYear(year) ? 29 : 28;\r\n }\r\n if ([0, 2, 4, 6, 7, 9, 11].includes(month)) {\r\n // Months with 31 days\r\n\r\n return 31;\r\n }\r\n\r\n return 30; // Months with 30 days\r\n }, []);\r\n\r\n // Generate days for a month\r\n const generateMonthDays = useCallback(\r\n (month: number, year: number) => {\r\n const days = [];\r\n // const firstDayOfMonth = new Date(year, month, 1).getDay()\r\n\r\n // Adjusted to make week start from Monday\r\n let firstDayOfMonth = new Date(year, month, 1).getDay() - 1;\r\n if (firstDayOfMonth === -1) firstDayOfMonth = 6; // Sunday becomes 6 instead of -1\r\n\r\n let dayCounter = 1;\r\n\r\n for (let week = 0; week < 6; week++) {\r\n const weekDays = [];\r\n for (let day = 0; day < 7; day++) {\r\n if (week === 0 && day < firstDayOfMonth) {\r\n weekDays.push(\"\");\r\n } else if (dayCounter > daysInMonth(month, year)) {\r\n weekDays.push(\"\");\r\n } else {\r\n weekDays.push(dayCounter++);\r\n }\r\n }\r\n days.push(weekDays);\r\n }\r\n return days;\r\n },\r\n [daysInMonth]\r\n );\r\n\r\n useEffect(() => {\r\n setCalendarData(generateMonthDays(currentMonth, currentYear));\r\n }, [currentMonth, currentYear, generateMonthDays]);\r\n\r\n // Navigation handlers\r\n const goToNextMonth = () => {\r\n setCurrentMonth((prev) => (prev === 11 ? 0 : prev + 1));\r\n if (currentMonth === 11) {\r\n setCurrentYear((prev) => prev + 1);\r\n }\r\n };\r\n\r\n const goToPreviousMonth = () => {\r\n setCurrentMonth((prev) => (prev === 0 ? 11 : prev - 1));\r\n if (currentMonth === 0) {\r\n setCurrentYear((prev) => prev - 1);\r\n }\r\n };\r\n const findItemsForDay = (\r\n day: number,\r\n month: number,\r\n year: number\r\n ): ICalendarItem[] => {\r\n const date = new Date(year, month, day);\r\n\r\n return items.filter((item) => date >= item.from && date <= item.to);\r\n };\r\n return (\r\n <div className=\"flex flex-col bg-white shadow-lg flex-grow text-xs rounded-lg border overflow-hidden \">\r\n <div className=\"flex justify-between items-center text-black p-2\">\r\n <div\r\n onClick={goToPreviousMonth}\r\n className=\"mr-5 px-10 py-4 cursor-pointer hover:bg-gray-150 rounded-lg text-sm\"\r\n >\r\n <FaChevronLeft />\r\n </div>\r\n <h2 className=\"font-semibold text-base\">\r\n {monthNames[currentMonth]} {currentYear}\r\n </h2>\r\n\r\n <div\r\n onClick={goToNextMonth}\r\n className=\"px-10 py-4 cursor-pointer hover:bg-gray-150 rounded-lg text-sm\"\r\n >\r\n <FaChevronRight />\r\n </div>\r\n </div>\r\n <div className=\"grid grid-cols-12 pb-0 \">\r\n {dayNames.map((day, index) => (\r\n <div\r\n key={index}\r\n className={\r\n \"py-1 px-4 text-center font-semibold border-t \" +\r\n (index > 4 ? \" bg-gray-100 col-span-1 \" : \" col-span-2 \")\r\n }\r\n >\r\n {day}\r\n </div>\r\n ))}\r\n {calendarData.map((week, weekIndex) => (\r\n <React.Fragment key={weekIndex}>\r\n {week.map((day, dayIndex) => {\r\n const itemsForDay = day\r\n ? findItemsForDay(day as number, currentMonth, currentYear)\r\n : [];\r\n\r\n const date = new Date(\r\n currentYear,\r\n currentMonth,\r\n (day as number) + 1\r\n );\r\n const isPublicHoliday = publicHolidays?.includes(\r\n date.toISOString().split(\"T\")[0]\r\n );\r\n\r\n return (\r\n <div\r\n key={dayIndex}\r\n className={\r\n \"p-0 align-middle justify-center text-center border-t cursor-not-allowed \" +\r\n (dayIndex > 4\r\n ? \"bg-gray-100 col-span-1 \"\r\n : \" col-span-2 \") +\r\n (isPublicHoliday ? \" bg-gray-150 \" : \"\") +\r\n (dayIndex !== 0 ? \" border-l \" : \"\")\r\n }\r\n >\r\n {day && <div className=\"py-1\">{day} </div>}\r\n {itemsForDay.map((item, itemIndex) => (\r\n <div\r\n key={itemIndex}\r\n className={\r\n \"dataItem w-full py-1 text-white text-center mt-0 -pr-1 \"\r\n }\r\n style={{\r\n backgroundColor:\r\n isPublicHoliday || dayIndex > 4\r\n ? \"#c1c1c1\"\r\n : item.background,\r\n color:\r\n isPublicHoliday || dayIndex > 4\r\n ? \"white\"\r\n : item.color,\r\n }}\r\n data-tooltip-target={\"tooltip-\" + item.id}\r\n title={item.tooltip}\r\n >\r\n {!isPublicHoliday && dayIndex < 5 ? (\r\n item.label\r\n ) : (\r\n <>&nbsp;</>\r\n )}\r\n </div>\r\n ))}\r\n </div>\r\n );\r\n })}\r\n </React.Fragment>\r\n ))}\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Calendar;\r\n"],"names":["React"],"mappings":"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"}
1
+ {"version":3,"file":"Calendar.js","sources":["../../lib/components/Calendar.tsx"],"sourcesContent":["import React, { useState, useEffect, useCallback } from \"react\";\r\nimport { FaChevronLeft, FaChevronRight } from \"react-icons/fa\";\r\n\r\nexport interface ICalendarItem {\r\n id: number;\r\n label?: string;\r\n from: Date;\r\n to: Date;\r\n background?: string;\r\n color?: string;\r\n tooltip?: string;\r\n}\r\n\r\ntype ICalendarProps = {\r\n items: ICalendarItem[];\r\n startingDate?: Date;\r\n publicHolidays?: string[];\r\n};\r\n\r\n// Check if a day is within any item's date range\r\n\r\nconst Calendar: React.FunctionComponent<ICalendarProps> = ({\r\n items,\r\n startingDate,\r\n publicHolidays,\r\n}) => {\r\n const [currentMonth, setCurrentMonth] = useState(\r\n startingDate ? startingDate.getMonth() : new Date().getMonth()\r\n );\r\n\r\n const [currentYear, setCurrentYear] = useState(\r\n startingDate ? startingDate.getFullYear() : new Date().getFullYear()\r\n );\r\n\r\n useEffect(() => {\r\n if (startingDate) {\r\n setCurrentMonth(startingDate.getMonth());\r\n setCurrentYear(startingDate.getFullYear());\r\n }\r\n }, [startingDate]);\r\n const [calendarData, setCalendarData] = useState<\r\n (string | number | JSX.Element)[][]\r\n >([]);\r\n\r\n const monthNames: string[] = [\r\n \"Leden\",\r\n \"Únor\",\r\n \"Březen\",\r\n \"Duben\",\r\n \"Květen\",\r\n \"Červen\",\r\n \"Červenec\",\r\n \"Srpen\",\r\n \"Září\",\r\n \"Říjen\",\r\n \"Listopad\",\r\n \"Prosinec\",\r\n ];\r\n const dayNames: string[] = [\r\n \"Pondělí\",\r\n \"Úterý\",\r\n \"Středa\",\r\n \"Čtvrtek\",\r\n \"Pátek\",\r\n \"So\",\r\n \"Ne\",\r\n ];\r\n\r\n // Leap year check\r\n const isLeapYear = (year: number) =>\r\n (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;\r\n\r\n // Days in each month\r\n const daysInMonth = useCallback((month: number, year: number) => {\r\n if (month === 1) {\r\n // February\r\n return isLeapYear(year) ? 29 : 28;\r\n }\r\n if ([0, 2, 4, 6, 7, 9, 11].includes(month)) {\r\n // Months with 31 days\r\n\r\n return 31;\r\n }\r\n\r\n return 30; // Months with 30 days\r\n }, []);\r\n\r\n // Generate days for a month\r\n const generateMonthDays = useCallback(\r\n (month: number, year: number) => {\r\n const days = [];\r\n // const firstDayOfMonth = new Date(year, month, 1).getDay()\r\n\r\n // Adjusted to make week start from Monday\r\n let firstDayOfMonth = new Date(year, month, 1).getDay() - 1;\r\n if (firstDayOfMonth === -1) firstDayOfMonth = 6; // Sunday becomes 6 instead of -1\r\n\r\n let dayCounter = 1;\r\n\r\n for (let week = 0; week < 6; week++) {\r\n const weekDays = [];\r\n for (let day = 0; day < 7; day++) {\r\n if (week === 0 && day < firstDayOfMonth) {\r\n weekDays.push(\"\");\r\n } else if (dayCounter > daysInMonth(month, year)) {\r\n weekDays.push(\"\");\r\n } else {\r\n weekDays.push(dayCounter++);\r\n }\r\n }\r\n days.push(weekDays);\r\n }\r\n return days;\r\n },\r\n [daysInMonth]\r\n );\r\n\r\n useEffect(() => {\r\n setCalendarData(generateMonthDays(currentMonth, currentYear));\r\n }, [currentMonth, currentYear, generateMonthDays]);\r\n\r\n // Navigation handlers\r\n const goToNextMonth = () => {\r\n setCurrentMonth((prev) => (prev === 11 ? 0 : prev + 1));\r\n if (currentMonth === 11) {\r\n setCurrentYear((prev) => prev + 1);\r\n }\r\n };\r\n\r\n const goToPreviousMonth = () => {\r\n setCurrentMonth((prev) => (prev === 0 ? 11 : prev - 1));\r\n if (currentMonth === 0) {\r\n setCurrentYear((prev) => prev - 1);\r\n }\r\n };\r\n const findItemsForDay = (\r\n day: number,\r\n month: number,\r\n year: number\r\n ): ICalendarItem[] => {\r\n const date = new Date(year, month, day);\r\n\r\n return items.filter((item) => date >= item.from && date <= item.to);\r\n };\r\n return (\r\n <div className=\"flex flex-col bg-white flex-grow text-xs border overflow-hidden \">\r\n <div className=\"flex justify-between items-center text-black p-2\">\r\n <div\r\n onClick={goToPreviousMonth}\r\n className=\"mr-5 px-10 py-4 cursor-pointer hover:bg-gray-150 rounded-lg text-sm\"\r\n >\r\n <FaChevronLeft />\r\n </div>\r\n <h2 className=\"font-semibold text-base\">\r\n {monthNames[currentMonth]} {currentYear}\r\n </h2>\r\n\r\n <div\r\n onClick={goToNextMonth}\r\n className=\"px-10 py-4 cursor-pointer hover:bg-gray-150 rounded-lg text-sm\"\r\n >\r\n <FaChevronRight />\r\n </div>\r\n </div>\r\n <div className=\"grid grid-cols-[repeat(17,minmax(0,1fr))] pb-0 \">\r\n {dayNames.map((day, index) => (\r\n <div\r\n key={index}\r\n className={\r\n \"py-1 px-4 text-center font-semibold border-t \" +\r\n (index > 4 ? \" bg-gray-100 col-span-1 \" : \" col-span-3 \")\r\n }\r\n >\r\n {day}\r\n </div>\r\n ))}\r\n {calendarData.map((week, weekIndex) => (\r\n <React.Fragment key={weekIndex}>\r\n {week.map((day, dayIndex) => {\r\n const itemsForDay = day\r\n ? findItemsForDay(day as number, currentMonth, currentYear)\r\n : [];\r\n\r\n const date = new Date(\r\n currentYear,\r\n currentMonth,\r\n (day as number) + 1\r\n );\r\n const isPublicHoliday = publicHolidays?.includes(\r\n date.toISOString().split(\"T\")[0]\r\n );\r\n\r\n return (\r\n <div\r\n key={dayIndex}\r\n className={\r\n \"p-0 align-middle justify-center text-center border-t cursor-not-allowed \" +\r\n (dayIndex > 4\r\n ? \"bg-gray-100 col-span-1 \"\r\n : \" col-span-3 \") +\r\n (isPublicHoliday ? \" bg-gray-150 \" : \"\") +\r\n (dayIndex !== 0 ? \" border-l \" : \"\")\r\n }\r\n >\r\n {day && <div className=\"py-1\">{day} </div>}\r\n {itemsForDay.map((item, itemIndex) => (\r\n <div\r\n key={itemIndex}\r\n className={\r\n \"dataItem w-full py-1 text-white text-center mt-0 -pr-1 \"\r\n }\r\n style={{\r\n backgroundColor:\r\n isPublicHoliday || dayIndex > 4\r\n ? \"#c1c1c1\"\r\n : item.background,\r\n color:\r\n isPublicHoliday || dayIndex > 4\r\n ? \"white\"\r\n : item.color,\r\n }}\r\n data-tooltip-target={\"tooltip-\" + item.id}\r\n title={item.tooltip}\r\n >\r\n {!isPublicHoliday && dayIndex < 5 ? (\r\n item.label\r\n ) : (\r\n <>&nbsp;</>\r\n )}\r\n </div>\r\n ))}\r\n </div>\r\n );\r\n })}\r\n </React.Fragment>\r\n ))}\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Calendar;\r\n"],"names":["React"],"mappings":"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"}
@@ -22144,10 +22144,7 @@ function DataTableServer({
22144
22144
  e.target.value
22145
22145
  ),
22146
22146
  type: filterType,
22147
- value: {
22148
- startDate: (mergedFilters == null ? void 0 : mergedFilters[String(filterParam)]) || "",
22149
- endDate: (mergedFilters == null ? void 0 : mergedFilters[String(filterParam)]) || ""
22150
- },
22147
+ value: (mergedFilters == null ? void 0 : mergedFilters[String(filterParam)]) || "",
22151
22148
  clearable: true,
22152
22149
  className: " px-0 py-0 ",
22153
22150
  placeholder: "Zadejte filtr",