@cwellt_software/cwellt-reactjs-lib 1.4.9 → 1.4.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/dist/index.cjs.js +93 -81
  2. package/dist/index.css +1 -1
  3. package/dist/index.d.ts +15 -4
  4. package/dist/index.es.js +93 -81
  5. package/dist/src/components/custom/scheduler-new/presentation/NewScheduler.d.ts +3 -1
  6. package/dist/src/components/custom/scheduler-new/presentation/NewScheduler.d.ts.map +1 -1
  7. package/dist/src/components/custom/scheduler-new/presentation/components/header/HeaderTitle.d.ts +1 -1
  8. package/dist/src/components/custom/scheduler-new/presentation/components/header/HeaderTitle.d.ts.map +1 -1
  9. package/dist/src/components/custom/scheduler-new/presentation/components/header/SchedulerHeaderState.d.ts +1 -1
  10. package/dist/src/components/custom/scheduler-new/presentation/components/header/SchedulerHeaderState.d.ts.map +1 -1
  11. package/dist/src/components/custom/scheduler-new/presentation/components/row/BackgroundEvent.d.ts +1 -1
  12. package/dist/src/components/custom/scheduler-new/presentation/components/row/BackgroundEvent.d.ts.map +1 -1
  13. package/dist/src/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.d.ts +1 -1
  14. package/dist/src/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.d.ts.map +1 -1
  15. package/dist/src/components/custom/scheduler-new/presentation/components/row/Event.d.ts +4 -0
  16. package/dist/src/components/custom/scheduler-new/presentation/components/row/Event.d.ts.map +1 -1
  17. package/dist/src/components/custom/scheduler-new/presentation/components/row/SchedulerRow.d.ts +1 -0
  18. package/dist/src/components/custom/scheduler-new/presentation/components/row/SchedulerRow.d.ts.map +1 -1
  19. package/dist/src/components/custom/super-scheduler/PinRowHeader.d.ts.map +1 -1
  20. package/dist/src/components/custom/super-scheduler/SuperScheduler.d.ts +6 -2
  21. package/dist/src/components/custom/super-scheduler/SuperScheduler.d.ts.map +1 -1
  22. package/dist/src/playground/PlaygroundApp.d.ts.map +1 -1
  23. package/dist/src/playground/pages/SchedulerPage.d.ts +3 -0
  24. package/dist/src/playground/pages/SchedulerPage.d.ts.map +1 -0
  25. package/package.json +1 -1
package/dist/index.es.js CHANGED
@@ -8399,7 +8399,7 @@ const BackgroundEvent = ({ value, heightRem }) => {
8399
8399
  position: "absolute",
8400
8400
  height: `${heightRem}rem`,
8401
8401
  pointerEvents: "auto",
8402
- }, children: jsx(CwGenericTooltip, { content: value.tooltip, position: "bottom", dissapearsWhenHover: true, showDelay: 200, children: jsx("div", { style: {
8402
+ }, children: jsx(CwTooltipNew, { content: value.tooltip, position: "bottom", dissapearsWhenHover: true, showDelay: 200, children: jsx("div", { style: {
8403
8403
  overflow: "hidden",
8404
8404
  backgroundColor: backColor,
8405
8405
  height: `${heightRem}rem`,
@@ -8559,6 +8559,7 @@ var styles$1 = {"scheduler-row-header":"scheduler-row-module__scheduler-row-head
8559
8559
  const DefaultRowHeader = ({ value, width, onEvent }) => {
8560
8560
  return (jsxs("div", { style: {
8561
8561
  width: width,
8562
+ flexShrink: 0,
8562
8563
  // background: color,
8563
8564
  }, onClick: (_) => {
8564
8565
  onEvent(new OnClickRowHeader(value.rowId));
@@ -8577,10 +8578,10 @@ const EventSideDrag = ({ left = false, heightRem, onStartEvent }) => {
8577
8578
  };
8578
8579
 
8579
8580
  const MAX_EVENT_HEIGHT_REM = 1.5;
8580
- const SchedulerEvent = ({ value, heightRem, onEvent }) => {
8581
+ const SchedulerEvent = ({ value, heightRem, onEvent, maxEventHeightRem }) => {
8581
8582
  const [isOnDrag, setIsOnDrag] = useState(false);
8582
8583
  const [isContextMenuOpen, setIsContextMenuOpen] = useState(false);
8583
- const effectiveHeight = Math.min(heightRem, MAX_EVENT_HEIGHT_REM);
8584
+ const effectiveHeight = Math.min(heightRem, maxEventHeightRem ?? MAX_EVENT_HEIGHT_REM);
8584
8585
  const topOffsetRem = (heightRem - effectiveHeight) / 2;
8585
8586
  const topOffsetPx = Math.round(topOffsetRem * 16) + 1;
8586
8587
  // Calculate colors of the event
@@ -8612,78 +8613,86 @@ const SchedulerEvent = ({ value, heightRem, onEvent }) => {
8612
8613
  e.preventDefault();
8613
8614
  onEvent(new OnDoubleClickEvent(value.id));
8614
8615
  });
8615
- return (jsx(CwAnchoredMenu, { open: isContextMenuOpen, onOpenChange: setIsContextMenuOpen, onContextMenu: (e) => {
8616
- e.stopPropagation();
8617
- // onEvent(new OnRightClickEvent(value.id));
8618
- }, placement: "bottom", options: value.contextMenuItems ?? [], onSelect: (key) => {
8619
- onEvent(new OnClickContextMenu(value.id, key));
8620
- }, children: jsx("div", { style: {
8621
- top: `${topOffsetPx}px`,
8622
- left: `${value.left}%`,
8623
- width: `${value.width}%`,
8624
- minWidth: "5px",
8625
- position: "absolute",
8626
- zIndex: isOnDrag ? 999 : undefined,
8627
- contentVisibility: "auto",
8628
- pointerEvents: "auto",
8629
- }, onClick: handleClick, onDoubleClick: handleDoubleClick, draggable: value.isDraggable, onMouseDown: (_) => {
8630
- if (value.isDraggable)
8631
- setIsOnDrag(true);
8632
- }, onMouseLeave: (_) => {
8633
- if (value.isDraggable)
8634
- setIsOnDrag(false);
8635
- }, onDragStart: (_) => {
8636
- if (value.isDraggable)
8637
- onEvent(new OnDragEvent(value.id, value.rowId));
8638
- }, onDragEnd: (_) => {
8639
- if (value.isDraggable)
8640
- setIsOnDrag(false);
8641
- }, children: jsx(CwTooltipNew, { content: value.tooltip, position: "bottom", hide: isOnDrag, showDelay: 200, children: jsxs("div", { style: {
8642
- border: value.selected ? "2px solid black" : "none",
8643
- backgroundColor: backColor,
8644
- height: `calc(${effectiveHeight}rem - 4px)`,
8645
- opacity: eventTransparent ? 0.5 : 1,
8646
- ...value.style,
8647
- }, className: styles$2["scheduler-event"], children: [jsxs("div", { style: {
8648
- display: "flex",
8649
- flexDirection: "row",
8650
- alignItems: "stretch",
8651
- width: "100%",
8652
- padding: "0 2px",
8653
- cursor: value.isDraggable ? "pointer" : "default",
8654
- // height: `calc(${effectiveHeight}rem - 8px)`,
8655
- height: "100%",
8656
- }, children: [value.isResizable && (jsx(EventSideDrag, { left: true, heightRem: effectiveHeight * 0.7, onStartEvent: () => {
8657
- onEvent(new OnLeftDragStart(value.id));
8658
- } })), jsxs("div", { className: styles$2["scheduler-event-container"], children: [jsx("div", { style: {
8659
- display: "flex",
8660
- flexDirection: "row",
8661
- alignItems: "center",
8662
- whiteSpace: "nowrap",
8663
- color: textColor,
8664
- }, children: value.icons }), jsx("span", { style: {
8665
- padding: "0.1rem",
8666
- color: textColor,
8667
- display: "flex",
8668
- flex: 1,
8669
- alignItems: "center",
8670
- width: "100%",
8671
- }, children: value.rectangleColors && value.rectangleColors.length > 0 ? (jsx("div", { style: {
8672
- display: "flex",
8673
- width: "100%",
8674
- }, children: value.rectangleColors.map((item, i) => (jsx("div", { className: "cwellt_rectangle_indicator", style: {
8675
- backgroundColor: item,
8616
+ return (jsxs(Fragment, { children: [value.topLabel && (jsx("div", { style: {
8617
+ position: "absolute",
8618
+ top: 0,
8619
+ left: `${value.left}%`,
8620
+ width: `${value.width}%`,
8621
+ height: `${topOffsetPx}px`,
8622
+ pointerEvents: "none",
8623
+ contentVisibility: "auto",
8624
+ }, children: value.topLabel })), jsx(CwAnchoredMenu, { open: isContextMenuOpen, onOpenChange: setIsContextMenuOpen, onContextMenu: (e) => {
8625
+ e.stopPropagation();
8626
+ // onEvent(new OnRightClickEvent(value.id));
8627
+ }, placement: "bottom", options: value.contextMenuItems ?? [], onSelect: (key) => {
8628
+ onEvent(new OnClickContextMenu(value.id, key));
8629
+ }, children: jsx("div", { style: {
8630
+ top: `${topOffsetPx}px`,
8631
+ left: `${value.left}%`,
8632
+ width: `${value.width}%`,
8633
+ minWidth: "5px",
8634
+ position: "absolute",
8635
+ zIndex: isOnDrag ? 999 : undefined,
8636
+ contentVisibility: "auto",
8637
+ pointerEvents: "auto",
8638
+ }, onClick: handleClick, onDoubleClick: handleDoubleClick, draggable: value.isDraggable, onMouseDown: (_) => {
8639
+ if (value.isDraggable)
8640
+ setIsOnDrag(true);
8641
+ }, onMouseLeave: (_) => {
8642
+ if (value.isDraggable)
8643
+ setIsOnDrag(false);
8644
+ }, onDragStart: (_) => {
8645
+ if (value.isDraggable)
8646
+ onEvent(new OnDragEvent(value.id, value.rowId));
8647
+ }, onDragEnd: (_) => {
8648
+ if (value.isDraggable)
8649
+ setIsOnDrag(false);
8650
+ }, children: jsx(CwTooltipNew, { content: value.tooltip, position: "bottom", hide: isOnDrag, showDelay: 200, children: jsxs("div", { style: {
8651
+ border: value.selected ? "2px solid black" : "none",
8652
+ backgroundColor: backColor,
8653
+ height: `calc(${effectiveHeight}rem - 4px)`,
8654
+ opacity: eventTransparent ? 0.5 : 1,
8655
+ ...value.style,
8656
+ }, className: styles$2["scheduler-event"], children: [jsxs("div", { style: {
8657
+ display: "flex",
8658
+ flexDirection: "row",
8659
+ alignItems: "stretch",
8660
+ width: "100%",
8661
+ padding: "0 2px",
8662
+ cursor: value.isDraggable ? "pointer" : "default",
8663
+ // height: `calc(${effectiveHeight}rem - 8px)`,
8664
+ height: "100%",
8665
+ }, children: [value.isResizable && (jsx(EventSideDrag, { left: true, heightRem: effectiveHeight * 0.7, onStartEvent: () => {
8666
+ onEvent(new OnLeftDragStart(value.id));
8667
+ } })), jsxs("div", { className: styles$2["scheduler-event-container"], children: [jsx("div", { style: {
8668
+ display: "flex",
8669
+ flexDirection: "row",
8670
+ alignItems: "center",
8671
+ whiteSpace: "nowrap",
8672
+ color: textColor,
8673
+ }, children: value.icons }), jsx("span", { style: {
8674
+ padding: "0.1rem",
8675
+ color: textColor,
8676
+ display: "flex",
8676
8677
  flex: 1,
8677
- height: "8px",
8678
- margin: 0,
8679
- padding: 0,
8680
- } }, value.id + "_" + i))) })) : (value.name) })] }), value.isResizable && (jsx(EventSideDrag, { heightRem: effectiveHeight * 0.7, onStartEvent: () => {
8681
- onEvent(new OnRightDragStart(value.id));
8682
- } }))] }), value.primaryTimeMarkerColor && (jsx("div", { className: styles$2["time-marker"], style: {
8683
- backgroundColor: value.primaryTimeMarkerColor,
8684
- } })), value.secondaryTimeMarkerColor && (jsx("div", { className: styles$2["time-marker"], style: {
8685
- backgroundColor: value.secondaryTimeMarkerColor,
8686
- } }))] }) }) }, value.id) }));
8678
+ alignItems: "center",
8679
+ width: "100%",
8680
+ }, children: value.rectangleColors && value.rectangleColors.length > 0 ? (jsx("div", { style: {
8681
+ display: "flex",
8682
+ width: "100%",
8683
+ }, children: value.rectangleColors.map((item, i) => (jsx("div", { className: "cwellt_rectangle_indicator", style: {
8684
+ backgroundColor: item,
8685
+ flex: 1,
8686
+ height: "8px",
8687
+ margin: 0,
8688
+ padding: 0,
8689
+ } }, value.id + "_" + i))) })) : (value.name) })] }), value.isResizable && (jsx(EventSideDrag, { heightRem: effectiveHeight * 0.7, onStartEvent: () => {
8690
+ onEvent(new OnRightDragStart(value.id));
8691
+ } }))] }), value.primaryTimeMarkerColor && (jsx("div", { className: styles$2["time-marker"], style: {
8692
+ backgroundColor: value.primaryTimeMarkerColor,
8693
+ } })), value.secondaryTimeMarkerColor && (jsx("div", { className: styles$2["time-marker"], style: {
8694
+ backgroundColor: value.secondaryTimeMarkerColor,
8695
+ } }))] }) }) }, value.id) })] }));
8687
8696
  };
8688
8697
 
8689
8698
  const SchedulerRow = memo((props) => {
@@ -8745,7 +8754,7 @@ const SchedulerRow = memo((props) => {
8745
8754
  position: "relative",
8746
8755
  height: props.rowHeightInRem + "rem",
8747
8756
  pointerEvents: "none"
8748
- }, children: internalRow.map((event) => (jsx(EventComp, { value: event, heightRem: props.rowHeightInRem, onEvent: onEvent }, event.id))) }, index));
8757
+ }, children: internalRow.map((event) => (jsx(EventComp, { value: event, heightRem: props.rowHeightInRem, onEvent: onEvent, maxEventHeightRem: props.maxEventHeightRem }, event.id))) }, index));
8749
8758
  }), indicatorRows.length > 0 && (jsx(IndicatorRow, { indicators: indicatorRows, selectedDate: selectedDate, visibleDays: visibleDays })), !(timeLinePercentage < 0 || timeLinePercentage > 100) && (jsx(TimeLine, { color: "red", left: `${timeLinePercentage}%`, top: "0px", height: `100%` }))] }) })] }));
8750
8759
  }, (prevProps, nextProps) => {
8751
8760
  // This memo is necessary to prevent re-render all the rows when a user makes drag and drop
@@ -9032,7 +9041,7 @@ const RowContent = React__default.memo(function RowContent(props) {
9032
9041
  return (jsx("div", { style: {
9033
9042
  ...props.style,
9034
9043
  backgroundColor: props.rowColor
9035
- }, children: jsx(SchedulerRow, { events: props.events, backgroundEvents: props.backgroundEvents, indicatorRows: props.indicatorRows, rowHeader: header, EventComp: props.EventComp, BackgroundEventComp: props.BackgroundEventComp, RowTitleComp: props.RowTitleComp, weekendLines: props.weekendLines, divisionLines: props.divisionLines, timeLinePercentage: props.timeLinePercentage, rowHeightInRem: props.rowHeightRem, onEvent: props.onEvent, contextMenuItems: props.contextMenuItems, visibleDays: props.visibleDays, selectedDate: props.selectedDate }) }, props.row.rowId));
9044
+ }, children: jsx(SchedulerRow, { events: props.events, backgroundEvents: props.backgroundEvents, indicatorRows: props.indicatorRows, rowHeader: header, EventComp: props.EventComp, BackgroundEventComp: props.BackgroundEventComp, RowTitleComp: props.RowTitleComp, weekendLines: props.weekendLines, divisionLines: props.divisionLines, timeLinePercentage: props.timeLinePercentage, rowHeightInRem: props.rowHeightRem, maxEventHeightRem: props.maxEventHeightRem, onEvent: props.onEvent, contextMenuItems: props.contextMenuItems, visibleDays: props.visibleDays, selectedDate: props.selectedDate }) }, props.row.rowId));
9036
9045
  });
9037
9046
  // Outer (unmemoised) row: looks up per-row buckets from the shared `data`
9038
9047
  // object and forwards them as flat props to `RowContent`. Because the
@@ -9043,7 +9052,7 @@ const Row = ({ index, style, data }) => {
9043
9052
  const rowColor = data.groupRowColors
9044
9053
  ? Math.floor(index / 2) % 2 === 0 ? data.evenColor : data.oddColor
9045
9054
  : index % 2 === 0 ? data.evenColor : data.oddColor;
9046
- return (jsx(RowContent, { style: style, row: row, rowColor: rowColor, events: data.eventsByRow.get(row.rowId) ?? EMPTY_EVENTS, backgroundEvents: data.backgroundEventsByRow.get(row.rowId) ?? EMPTY_BG_EVENTS, indicatorRows: data.indicatorRowsByRow.get(row.rowId) ?? EMPTY_INDICATORS, EventComp: data.EventComp, BackgroundEventComp: data.BackgroundEventComp, RowTitleComp: data.RowTitleComp, rowHeaderWidth: data.rowHeaderWidth, rowHeightRem: row.rowHeightRem ?? data.rowHeightRem, weekendLines: data.weekendLines, divisionLines: data.divisionLines, timeLinePercentage: data.timeLinePercentage, selectedDate: data.selectedDate, visibleDays: data.visibleDays, contextMenuItems: data.contextMenuItems, onEvent: data.onEvent }));
9055
+ return (jsx(RowContent, { style: style, row: row, rowColor: rowColor, events: data.eventsByRow.get(row.rowId) ?? EMPTY_EVENTS, backgroundEvents: data.backgroundEventsByRow.get(row.rowId) ?? EMPTY_BG_EVENTS, indicatorRows: data.indicatorRowsByRow.get(row.rowId) ?? EMPTY_INDICATORS, EventComp: data.EventComp, BackgroundEventComp: data.BackgroundEventComp, RowTitleComp: data.RowTitleComp, rowHeaderWidth: data.rowHeaderWidth, rowHeightRem: row.rowHeightRem ?? data.rowHeightRem, maxEventHeightRem: data.maxEventHeightRem, weekendLines: data.weekendLines, divisionLines: data.divisionLines, timeLinePercentage: data.timeLinePercentage, selectedDate: data.selectedDate, visibleDays: data.visibleDays, contextMenuItems: data.contextMenuItems, onEvent: data.onEvent }));
9047
9056
  };
9048
9057
  // Bucket items by rowId, but reuse previous bucket arrays whenever a row's
9049
9058
  // contents have not changed. Keeping bucket references stable is essential
@@ -9073,7 +9082,7 @@ const groupByRowIdStable = (items, prev) => {
9073
9082
  return next;
9074
9083
  };
9075
9084
  const Scheduler = (props) => {
9076
- const { header: headerContent, id, events: eventsState, backgroundEvents, indicatorRows: allIndicatorRows = [], contextMenuItems, EventComp, RowTitleComp, orderCategories = ["title"], useOrderCategory, onEvent, groupRowColors, rowHeaderWidth = 180, rowHeightRem = 1.75, } = props;
9085
+ const { header: headerContent, id, events: eventsState, backgroundEvents, indicatorRows: allIndicatorRows = [], contextMenuItems, EventComp, RowTitleComp, orderCategories = ["title"], useOrderCategory, onEvent, groupRowColors, rowHeaderWidth = 180, rowHeightRem = 1.75, maxEventHeightRem, } = props;
9077
9086
  const BackgroundEventComp = props.BackgroundEventComp ?? BackgroundEvent;
9078
9087
  const [constraintElement, setConstraintElement] = useState(null);
9079
9088
  const rows = useOrderCategory === false
@@ -9157,6 +9166,7 @@ const Scheduler = (props) => {
9157
9166
  RowTitleComp: RowTitleComp,
9158
9167
  rowHeaderWidth,
9159
9168
  rowHeightRem,
9169
+ maxEventHeightRem,
9160
9170
  weekendLines: weekendsLines,
9161
9171
  divisionLines,
9162
9172
  timeLinePercentage,
@@ -9177,6 +9187,7 @@ const Scheduler = (props) => {
9177
9187
  RowTitleComp,
9178
9188
  rowHeaderWidth,
9179
9189
  rowHeightRem,
9190
+ maxEventHeightRem,
9180
9191
  weekendsLines,
9181
9192
  divisionLines,
9182
9193
  timeLinePercentage,
@@ -9557,6 +9568,7 @@ const PinRowHeader = ({ value, width, onEvent }) => {
9557
9568
  onEvent(new OnClickContextMenu(value.rowId, key));
9558
9569
  }, children: jsx(CwTooltipNew, { content: value.tooltip, position: "right", dissapearsWhenHover: true, children: jsxs("div", { style: {
9559
9570
  width: width,
9571
+ flexShrink: 0,
9560
9572
  height: "100%",
9561
9573
  background: highlightColor
9562
9574
  }, className: styles["super-scheduler-row-header"], children: [jsx("button", { className: "cw-button-icon cwi-pin", "data-pinned": value.isPinned, onClick: (_) => {
@@ -9570,13 +9582,13 @@ const PinRowHeader = ({ value, width, onEvent }) => {
9570
9582
  jsxs("span", { className: styles["scheduler-crewmember-functions"], children: ["(", value.title3, ")"] }), value.subtitle2 && jsxs("span", { children: ["-", value.subtitle2] })] })] }), isLoading ? jsx("span", { className: "cwi-icons cwi-spinner" }) : undefined] }) }, value.rowId) }, value.rowId);
9571
9583
  };
9572
9584
 
9573
- const SuperScheduler = ({ id, state, header, rows, events, headerColumnComp, pinnedOrderCategory, unPinnedOrderCategory, backgroundEvents, indicatorRows = [], contextMenuItems, onEvent, rowHeightRem = 1.75 }) => {
9585
+ const SuperScheduler = ({ id, state, header, rows, events, headerColumnComp, pinnedOrderCategory, unPinnedOrderCategory, backgroundEvents, indicatorRows = [], contextMenuItems, onEvent, rowHeightRem = 1.75, rowHeaderWidth, maxEventHeightRem, EventComp = SchedulerEvent, }) => {
9574
9586
  const pinnedRows = rows.filter((it) => it.isPinned);
9575
9587
  const notPinnedRows = rows.filter((it) => !it.isPinned);
9576
9588
  const isFirstVisible = pinnedRows.length > 0;
9577
- return (jsxs(Fragment, { children: [isFirstVisible && (jsxs(Fragment, { children: [jsx(Scheduler, { id: `${id}-pinned`, state: state, header: header, rows: pinnedRows, events: events, backgroundEvents: backgroundEvents, indicatorRows: indicatorRows, contextMenuItems: contextMenuItems, orderCategories: pinnedOrderCategory, onEvent: onEvent, EventComp: SchedulerEvent, RowTitleComp: headerColumnComp, rowHeightRem: rowHeightRem }), jsx("div", { children: jsx(CwButton, { onClick: () => {
9589
+ return (jsxs(Fragment, { children: [isFirstVisible && (jsxs(Fragment, { children: [jsx(Scheduler, { id: `${id}-pinned`, state: state, header: header, rows: pinnedRows, events: events, backgroundEvents: backgroundEvents, indicatorRows: indicatorRows, contextMenuItems: contextMenuItems, orderCategories: pinnedOrderCategory, onEvent: onEvent, EventComp: EventComp, RowTitleComp: headerColumnComp, rowHeightRem: rowHeightRem, rowHeaderWidth: rowHeaderWidth, maxEventHeightRem: maxEventHeightRem }), jsx("div", { children: jsx(CwButton, { onClick: () => {
9578
9590
  onEvent(new OnClearPinned());
9579
- }, children: "Clear pinned" }) })] })), jsx(Scheduler, { id: `${id}-notPinned`, state: { ...state, isHeaderVisible: !isFirstVisible }, header: header, rows: notPinnedRows, events: events, backgroundEvents: backgroundEvents, indicatorRows: indicatorRows, contextMenuItems: contextMenuItems, orderCategories: unPinnedOrderCategory, onEvent: onEvent, EventComp: SchedulerEvent, RowTitleComp: headerColumnComp, rowHeightRem: rowHeightRem })] }));
9591
+ }, children: "Clear pinned" }) })] })), jsx(Scheduler, { id: `${id}-notPinned`, state: { ...state, isHeaderVisible: !isFirstVisible }, header: header, rows: notPinnedRows, events: events, backgroundEvents: backgroundEvents, indicatorRows: indicatorRows, contextMenuItems: contextMenuItems, orderCategories: unPinnedOrderCategory, onEvent: onEvent, EventComp: EventComp, RowTitleComp: headerColumnComp, rowHeightRem: rowHeightRem, rowHeaderWidth: rowHeaderWidth, maxEventHeightRem: maxEventHeightRem })] }));
9580
9592
  };
9581
9593
 
9582
9594
  /**
@@ -24,8 +24,10 @@ interface SchedulerProps<T extends RowHeaderDm, P extends SchedulerEventDm> {
24
24
  BackgroundEventComp?: React.ComponentType<SchedulerEventState<BackgroundEventDm>>;
25
25
  onEvent: OnEvent;
26
26
  groupRowColors?: boolean;
27
- rowHeaderWidth?: number;
27
+ rowHeaderWidth?: number | string;
28
28
  rowHeightRem?: number;
29
+ /** Caps the visible event box height (rem). Passed to EventComp; defaults to 1.5. */
30
+ maxEventHeightRem?: number;
29
31
  }
30
32
  export declare const Scheduler: <T extends RowHeaderDm, P extends SchedulerEventDm>(props: SchedulerProps<T, P>) => import("react/jsx-runtime").JSX.Element;
31
33
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"NewScheduler.d.ts","sourceRoot":"","sources":["../../../../../../src/components/custom/scheduler-new/presentation/NewScheduler.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0D,MAAM,OAAO,CAAC;AAE/E,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,6CAA6C,CAAC;AACzE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,oDAAoD,CAAC;AAGnF,OAAO,EAAC,sBAAsB,EAAuB,MAAM,0CAA0C,CAAC;AACtG,OAAO,EAAkB,iBAAiB,EAAC,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAC,WAAW,EAAE,cAAc,EAAC,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAC,gBAAgB,EAAE,mBAAmB,EAAC,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EAAuB,KAAK,cAAc,EAAC,MAAM,+BAA+B,CAAC;AASxF,OAAO,KAAK,EAAY,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAGzE,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM,CAAC;AAEhD,UAAU,cAAc,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,gBAAgB;IACzE,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,cAAc,CAAC;IACtB,MAAM,EAAE,sBAAsB,CAAC;IAC/B,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,MAAM,EAAE,CAAC,EAAE,CAAC;IACZ,gBAAgB,EAAE,iBAAiB,EAAE,CAAC;IACtC,aAAa,CAAC,EAAE,cAAc,EAAE,CAAC;IACjC,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,gBAAgB,EAAE,UAAU,EAAE,CAAC;IAC/B,eAAe,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IACrC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,mBAAmB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAClF,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAoKD,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,gBAAgB,EAAE,OAAO,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,4CAkNvG,CAAC"}
1
+ {"version":3,"file":"NewScheduler.d.ts","sourceRoot":"","sources":["../../../../../../src/components/custom/scheduler-new/presentation/NewScheduler.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0D,MAAM,OAAO,CAAC;AAE/E,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,6CAA6C,CAAC;AACzE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,oDAAoD,CAAC;AAGnF,OAAO,EAAC,sBAAsB,EAAuB,MAAM,0CAA0C,CAAC;AACtG,OAAO,EAAkB,iBAAiB,EAAC,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAC,WAAW,EAAE,cAAc,EAAC,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAC,gBAAgB,EAAE,mBAAmB,EAAC,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EAAuB,KAAK,cAAc,EAAC,MAAM,+BAA+B,CAAC;AASxF,OAAO,KAAK,EAAY,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAGzE,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM,CAAC;AAEhD,UAAU,cAAc,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,gBAAgB;IACzE,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,cAAc,CAAC;IACtB,MAAM,EAAE,sBAAsB,CAAC;IAC/B,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,MAAM,EAAE,CAAC,EAAE,CAAC;IACZ,gBAAgB,EAAE,iBAAiB,EAAE,CAAC;IACtC,aAAa,CAAC,EAAE,cAAc,EAAE,CAAC;IACjC,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,gBAAgB,EAAE,UAAU,EAAE,CAAC;IAC/B,eAAe,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IACrC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,mBAAmB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAClF,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qFAAqF;IACrF,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAwKD,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,gBAAgB,EAAE,OAAO,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,4CAqNvG,CAAC"}
@@ -2,7 +2,7 @@ import type { FC } from "react";
2
2
  interface HeaderTitleProps {
3
3
  title: string;
4
4
  dividerText: string;
5
- width: number;
5
+ width: number | string;
6
6
  }
7
7
  export declare const HeaderTitle: FC<HeaderTitleProps>;
8
8
  export declare const _preview: () => import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderTitle.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/custom/scheduler-new/presentation/components/header/HeaderTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAGhC,UAAU,gBAAgB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAW5C,CAAC;AAEF,eAAO,MAAM,QAAQ,+CAEpB,CAAC"}
1
+ {"version":3,"file":"HeaderTitle.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/custom/scheduler-new/presentation/components/header/HeaderTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAGhC,UAAU,gBAAgB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAW5C,CAAC;AAEF,eAAO,MAAM,QAAQ,+CAEpB,CAAC"}
@@ -5,7 +5,7 @@ export interface SchedulerHeaderState {
5
5
  divisions: HeaderDivision[];
6
6
  visibleDays: number;
7
7
  selectedDate: Date;
8
- width: number;
8
+ width: number | string;
9
9
  onEvent: OnEvent;
10
10
  timeLinePercentage: number;
11
11
  isUtc: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"SchedulerHeaderState.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/custom/scheduler-new/presentation/components/header/SchedulerHeaderState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mDAAmD,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,WAAW,oBAAoB;IACpC,OAAO,EAAE,sBAAsB,CAAC;IAChC,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,sBAAsB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACvB"}
1
+ {"version":3,"file":"SchedulerHeaderState.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/custom/scheduler-new/presentation/components/header/SchedulerHeaderState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mDAAmD,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,WAAW,oBAAoB;IACpC,OAAO,EAAE,sBAAsB,CAAC;IAChC,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,sBAAsB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACvB"}
@@ -2,7 +2,7 @@ import type { FC } from "react";
2
2
  import type { SchedulerEventDm, SchedulerEventState } from "./Event";
3
3
  export interface BackgroundEventDm extends SchedulerEventDm {
4
4
  isVisible: boolean;
5
- contentAlign?: "center" | "flex-end";
5
+ contentAlign?: "flex-start" | "center" | "flex-end";
6
6
  }
7
7
  export declare const BackgroundEvent: FC<SchedulerEventState<BackgroundEventDm>>;
8
8
  export declare const BackgroundEventPreview: () => import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"BackgroundEvent.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/custom/scheduler-new/presentation/components/row/BackgroundEvent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAIhC,OAAO,KAAK,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAErE,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IAC1D,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;CACrC;AAED,eAAO,MAAM,eAAe,EAAE,EAAE,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAiEtE,CAAC;AAEF,eAAO,MAAM,sBAAsB,+CAuBlC,CAAC"}
1
+ {"version":3,"file":"BackgroundEvent.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/custom/scheduler-new/presentation/components/row/BackgroundEvent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAIhC,OAAO,KAAK,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAErE,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IAC1D,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,YAAY,GAAG,QAAQ,GAAG,UAAU,CAAC;CACpD;AAED,eAAO,MAAM,eAAe,EAAE,EAAE,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAiEtE,CAAC;AAEF,eAAO,MAAM,sBAAsB,+CAuBlC,CAAC"}
@@ -11,7 +11,7 @@ export interface RowHeaderDm {
11
11
  }
12
12
  export interface RowHeaderProps<T extends RowHeaderDm> {
13
13
  value: T;
14
- width: number;
14
+ width: number | string;
15
15
  onEvent: OnEvent;
16
16
  }
17
17
  export declare const DefaultRowHeader: FC<RowHeaderProps<RowHeaderDm>>;
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultRowHeader.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mDAAmD,CAAC;AAIjF,MAAM,WAAW,WAAW;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,WAAW;IACpD,KAAK,EAAE,CAAC,CAAC;IAET,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;CACjB;AAED,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,CA0B5D,CAAC"}
1
+ {"version":3,"file":"DefaultRowHeader.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mDAAmD,CAAC;AAIjF,MAAM,WAAW,WAAW;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,WAAW;IACpD,KAAK,EAAE,CAAC,CAAC;IAET,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;CACjB;AAED,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,CA2B5D,CAAC"}
@@ -18,6 +18,8 @@ export interface SchedulerEventDm {
18
18
  icons?: ReactElement;
19
19
  rectangleColors?: string[];
20
20
  tooltip?: ReactNode;
21
+ /** Optional content rendered in the strip above the (centered) event box, within the event's lane. */
22
+ topLabel?: ReactNode;
21
23
  contextMenuItems?: MenuOption[];
22
24
  primaryTimeMarkerColor?: string;
23
25
  secondaryTimeMarkerColor?: string;
@@ -30,6 +32,8 @@ export interface SchedulerEventState<T extends SchedulerEventDm> {
30
32
  value: T;
31
33
  heightRem: number;
32
34
  onEvent: OnEvent;
35
+ /** Caps the visible event box height (rem). Defaults to MAX_EVENT_HEIGHT_REM (1.5). */
36
+ maxEventHeightRem?: number;
33
37
  }
34
38
  export declare const SchedulerEvent: FC<SchedulerEventState<SchedulerEventDm>>;
35
39
  export declare const _preview: () => import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"Event.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/custom/scheduler-new/presentation/components/row/Event.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,EAAE,EAAE,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE7E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mDAAmD,CAAC;AAEjF,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,0DAA0D,CAAC;AAe3G,MAAM,WAAW,gBAAgB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC;IAChC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6FAA6F;IAC7F,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,gBAAgB;IAC9D,KAAK,EAAE,CAAC,CAAC;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CACjB;AAID,eAAO,MAAM,cAAc,EAAE,EAAE,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CA0MpE,CAAC;AAEF,eAAO,MAAM,QAAQ,+CA8BpB,CAAC"}
1
+ {"version":3,"file":"Event.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/custom/scheduler-new/presentation/components/row/Event.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,EAAE,EAAE,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE7E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mDAAmD,CAAC;AAEjF,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,0DAA0D,CAAC;AAe3G,MAAM,WAAW,gBAAgB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,sGAAsG;IACtG,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC;IAChC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6FAA6F;IAC7F,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,gBAAgB;IAC9D,KAAK,EAAE,CAAC,CAAC;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,uFAAuF;IACvF,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAID,eAAO,MAAM,cAAc,EAAE,EAAE,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CA0NpE,CAAC;AAEF,eAAO,MAAM,QAAQ,+CA8BpB,CAAC"}
@@ -17,6 +17,7 @@ export interface SchedulerRowProps<T extends RowHeaderDm, P extends SchedulerEve
17
17
  BackgroundEventComp: ComponentType<SchedulerEventState<BackgroundEventDm>>;
18
18
  onEvent: OnEvent;
19
19
  rowHeightInRem: number;
20
+ maxEventHeightRem?: number;
20
21
  weekendLines: LineState[];
21
22
  divisionLines: LineState[];
22
23
  timeLinePercentage: number;
@@ -1 +1 @@
1
- {"version":3,"file":"SchedulerRow.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/custom/scheduler-new/presentation/components/row/SchedulerRow.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,aAAa,EAAQ,YAAY,EAAmB,MAAM,OAAO,CAAC;AAC/E,OAAO,EAAC,OAAO,EAAC,MAAM,mDAAmD,CAAC;AAE1E,OAAO,EAAiB,KAAK,UAAU,EAAC,MAAM,0DAA0D,CAAC;AAYzG,OAAO,EAAC,SAAS,EAAC,MAAM,+BAA+B,CAAC;AAIxD,OAAO,EAAkB,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAmB,WAAW,EAAE,KAAK,cAAc,EAAC,MAAM,oBAAoB,CAAC;AACtF,OAAO,EAAiB,gBAAgB,EAAE,mBAAmB,EAAC,MAAM,SAAS,CAAC;AAC9E,OAAO,EAAqC,KAAK,cAAc,EAAC,MAAM,gBAAgB,CAAC;AAGvF,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,gBAAgB;IACnF,MAAM,EAAE,CAAC,EAAE,CAAC;IACZ,gBAAgB,EAAE,iBAAiB,EAAE,CAAC;IACtC,aAAa,EAAE,cAAc,EAAE,CAAC;IAChC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAC7B,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC;IAChC,SAAS,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,YAAY,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,mBAAmB,EAAE,aAAa,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC3E,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,aAAa,EAAE,SAAS,EAAE,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,IAAI,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,YAAY,EAqMpB,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,KACrF,YAAY,CAAC;AAEf,eAAO,MAAM,mBAAmB,+CA6E/B,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"SchedulerRow.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/custom/scheduler-new/presentation/components/row/SchedulerRow.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,aAAa,EAAQ,YAAY,EAAmB,MAAM,OAAO,CAAC;AAC/E,OAAO,EAAC,OAAO,EAAC,MAAM,mDAAmD,CAAC;AAE1E,OAAO,EAAiB,KAAK,UAAU,EAAC,MAAM,0DAA0D,CAAC;AAYzG,OAAO,EAAC,SAAS,EAAC,MAAM,+BAA+B,CAAC;AAIxD,OAAO,EAAkB,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAmB,WAAW,EAAE,KAAK,cAAc,EAAC,MAAM,oBAAoB,CAAC;AACtF,OAAO,EAAiB,gBAAgB,EAAE,mBAAmB,EAAC,MAAM,SAAS,CAAC;AAC9E,OAAO,EAAqC,KAAK,cAAc,EAAC,MAAM,gBAAgB,CAAC;AAGvF,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,gBAAgB;IACnF,MAAM,EAAE,CAAC,EAAE,CAAC;IACZ,gBAAgB,EAAE,iBAAiB,EAAE,CAAC;IACtC,aAAa,EAAE,cAAc,EAAE,CAAC;IAChC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAC7B,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC;IAChC,SAAS,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,YAAY,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,mBAAmB,EAAE,aAAa,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC3E,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,aAAa,EAAE,SAAS,EAAE,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,IAAI,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,YAAY,EAsMpB,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,KACrF,YAAY,CAAC;AAEf,eAAO,MAAM,mBAAmB,+CA6E/B,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PinRowHeader.d.ts","sourceRoot":"","sources":["../../../../../src/components/custom/super-scheduler/PinRowHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,EAAE,KAAK,SAAS,EAAW,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAiB,KAAK,UAAU,EAAC,MAAM,iDAAiD,CAAC;AAEhG,OAAO,EAAC,WAAW,EAAE,cAAc,EAAC,MAAM,+DAA+D,CAAC;AAK1G,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACrD,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,UAAU,EAAE,CAAC;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,UAAU,CAAC,EAAE,SAAS,CAAC;CACvB;AAGD,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,cAAc,CAAC,iBAAiB,CAAC,CA8D9D,CAAC;AAGF,eAAO,MAAM,QAAQ,+CAkBpB,CAAC"}
1
+ {"version":3,"file":"PinRowHeader.d.ts","sourceRoot":"","sources":["../../../../../src/components/custom/super-scheduler/PinRowHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,EAAE,KAAK,SAAS,EAAW,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAiB,KAAK,UAAU,EAAC,MAAM,iDAAiD,CAAC;AAEhG,OAAO,EAAC,WAAW,EAAE,cAAc,EAAC,MAAM,+DAA+D,CAAC;AAK1G,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACrD,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,UAAU,EAAE,CAAC;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,UAAU,CAAC,EAAE,SAAS,CAAC;CACvB;AAGD,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,cAAc,CAAC,iBAAiB,CAAC,CA+D9D,CAAC;AAGF,eAAO,MAAM,QAAQ,+CAkBpB,CAAC"}
@@ -2,7 +2,7 @@ import { OnEvent } from "../../../common/functions/dsl/UiEventDSL";
2
2
  import type { MenuOption } from "../../control/action/contextmenu/CwAnchoredMenu";
3
3
  import { SchedulerHeaderContent } from "../scheduler-new/presentation/components/header/SchedulerHeaderState";
4
4
  import { BackgroundEventDm } from "../scheduler-new/presentation/components/row/BackgroundEvent";
5
- import { SchedulerEventDm } from "../scheduler-new/presentation/components/row/Event";
5
+ import { SchedulerEventDm, SchedulerEventState } from "../scheduler-new/presentation/components/row/Event";
6
6
  import type { IndicatorRowDm } from "../scheduler-new/presentation/components/row/IndicatorRow";
7
7
  import { OrderCategory } from "../scheduler-new/presentation/NewScheduler";
8
8
  import { SchedulerState } from "../scheduler-new/presentation/state/ui/SchedulerState";
@@ -15,6 +15,8 @@ export interface SuperSchedulerProps<T extends PinRowHeaderProps> {
15
15
  rows: T[];
16
16
  headerColumnComp: React.ComponentType<RowHeaderProps<T>>;
17
17
  events: SchedulerEventDm[];
18
+ /** Custom event renderer, mirroring the base Scheduler's EventComp. Defaults to SchedulerEvent. */
19
+ EventComp?: React.ComponentType<SchedulerEventState<SchedulerEventDm>>;
18
20
  backgroundEvents: BackgroundEventDm[];
19
21
  indicatorRows?: IndicatorRowDm[];
20
22
  contextMenuItems: MenuOption[];
@@ -22,7 +24,9 @@ export interface SuperSchedulerProps<T extends PinRowHeaderProps> {
22
24
  unPinnedOrderCategory?: OrderCategory<T>[];
23
25
  onEvent: OnEvent;
24
26
  rowHeightRem?: number;
27
+ rowHeaderWidth?: number | string;
28
+ maxEventHeightRem?: number;
25
29
  }
26
- export declare const SuperScheduler: <T extends PinRowHeaderProps>({ id, state, header, rows, events, headerColumnComp, pinnedOrderCategory, unPinnedOrderCategory, backgroundEvents, indicatorRows, contextMenuItems, onEvent, rowHeightRem }: SuperSchedulerProps<T>) => import("react/jsx-runtime").JSX.Element;
30
+ export declare const SuperScheduler: <T extends PinRowHeaderProps>({ id, state, header, rows, events, headerColumnComp, pinnedOrderCategory, unPinnedOrderCategory, backgroundEvents, indicatorRows, contextMenuItems, onEvent, rowHeightRem, rowHeaderWidth, maxEventHeightRem, EventComp, }: SuperSchedulerProps<T>) => import("react/jsx-runtime").JSX.Element;
27
31
  export declare const _preview: () => import("react/jsx-runtime").JSX.Element;
28
32
  //# sourceMappingURL=SuperScheduler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SuperScheduler.d.ts","sourceRoot":"","sources":["../../../../../src/components/custom/super-scheduler/SuperScheduler.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,0CAA0C,CAAC;AAEjE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,iDAAiD,CAAC;AAChF,OAAO,EAAC,sBAAsB,EAAC,MAAM,sEAAsE,CAAC;AAC5G,OAAO,EAAC,iBAAiB,EAAC,MAAM,8DAA8D,CAAC;AAC/F,OAAO,EAAiB,gBAAgB,EAAC,MAAM,oDAAoD,CAAC;AACpG,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2DAA2D,CAAC;AAC9F,OAAO,EAAC,aAAa,EAAY,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAC,cAAc,EAAC,MAAM,uDAAuD,CAAC;AACrF,OAAO,EAAe,iBAAiB,EAAC,MAAM,gBAAgB,CAAC;AAG/D,OAAO,EAAC,cAAc,EAAC,MAAM,+DAA+D,CAAC;AAE7F,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,iBAAiB;IAC/D,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,cAAc,CAAC;IACtB,MAAM,EAAE,sBAAsB,CAAC;IAC/B,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,gBAAgB,EAAE,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAA;IACxD,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,gBAAgB,EAAE,iBAAiB,EAAE,CAAC;IACtC,aAAa,CAAC,EAAE,cAAc,EAAE,CAAC;IACjC,gBAAgB,EAAE,UAAU,EAAE,CAAC;IAC/B,mBAAmB,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IACzC,qBAAqB,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,iBAAiB,EAAG,6KAc3D,mBAAmB,CAAC,CAAC,CAAC,4CAsDvB,CAAC;AAEF,eAAO,MAAM,QAAQ,+CA0BpB,CAAC"}
1
+ {"version":3,"file":"SuperScheduler.d.ts","sourceRoot":"","sources":["../../../../../src/components/custom/super-scheduler/SuperScheduler.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,0CAA0C,CAAC;AAEjE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,iDAAiD,CAAC;AAChF,OAAO,EAAC,sBAAsB,EAAC,MAAM,sEAAsE,CAAC;AAC5G,OAAO,EAAC,iBAAiB,EAAC,MAAM,8DAA8D,CAAC;AAC/F,OAAO,EAAiB,gBAAgB,EAAE,mBAAmB,EAAC,MAAM,oDAAoD,CAAC;AACzH,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2DAA2D,CAAC;AAC9F,OAAO,EAAC,aAAa,EAAY,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAC,cAAc,EAAC,MAAM,uDAAuD,CAAC;AACrF,OAAO,EAAe,iBAAiB,EAAC,MAAM,gBAAgB,CAAC;AAG/D,OAAO,EAAC,cAAc,EAAC,MAAM,+DAA+D,CAAC;AAE7F,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,iBAAiB;IAC/D,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,cAAc,CAAC;IACtB,MAAM,EAAE,sBAAsB,CAAC;IAC/B,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,gBAAgB,EAAE,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAA;IACxD,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,mGAAmG;IACnG,SAAS,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACvE,gBAAgB,EAAE,iBAAiB,EAAE,CAAC;IACtC,aAAa,CAAC,EAAE,cAAc,EAAE,CAAC;IACjC,gBAAgB,EAAE,UAAU,EAAE,CAAC;IAC/B,mBAAmB,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IACzC,qBAAqB,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,iBAAiB,EAAG,4NAiB3D,mBAAmB,CAAC,CAAC,CAAC,4CA0DvB,CAAC;AAEF,eAAO,MAAM,QAAQ,+CA0BpB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PlaygroundApp.d.ts","sourceRoot":"","sources":["../../../src/playground/PlaygroundApp.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAWjD,OAAO,kBAAkB,CAAC;AAwC1B,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAiCjC,CAAC"}
1
+ {"version":3,"file":"PlaygroundApp.d.ts","sourceRoot":"","sources":["../../../src/playground/PlaygroundApp.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAYjD,OAAO,kBAAkB,CAAC;AAoB1B,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAiCjC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type FC } from "react";
2
+ export declare const SchedulerPage: FC;
3
+ //# sourceMappingURL=SchedulerPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SchedulerPage.d.ts","sourceRoot":"","sources":["../../../../src/playground/pages/SchedulerPage.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,EAA2B,MAAM,OAAO,CAAC;AAyCxD,eAAO,MAAM,aAAa,EAAE,EAsJ3B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cwellt_software/cwellt-reactjs-lib",
3
- "version": "1.4.9",
3
+ "version": "1.4.11",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist"