@mintplayer/scheduler-wc 1.2.0 → 2.0.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.
@@ -1,6 +1,7 @@
1
1
  import { normalizeMouseEvent, normalizeTouchEvent, getPointerDistance, } from './pointer-event';
2
- const DEFAULT_TOUCH_HOLD_DURATION = 500;
2
+ const DEFAULT_TOUCH_HOLD_DURATION = 600;
3
3
  const DEFAULT_TOUCH_MOVE_THRESHOLD = 10;
4
+ const DEFAULT_MOUSE_PAN_TIMEOUT = 600;
4
5
  /**
5
6
  * Unified input handler for mouse and touch events.
6
7
  * Normalizes events and handles touch-specific behaviors (hold-to-drag).
@@ -13,6 +14,17 @@ export class InputHandler {
13
14
  this.isTouchDragMode = false;
14
15
  this.touchHoldTarget = null;
15
16
  this.touchHoldPointer = null;
17
+ // Pan mode state (for panning when touch/mouse starts on event and moves quickly)
18
+ this.isPanMode = false;
19
+ this.panStartPosition = null;
20
+ this.panStartScroll = null;
21
+ this.panStartedOnEvent = false;
22
+ // Mouse pan state (for panning when mousedown on event and move within timeout)
23
+ this.mousePanTimer = null;
24
+ this.mouseStartPosition = null;
25
+ this.isMousePanCandidate = false;
26
+ // Scroll blocking state (saved styles for restoration)
27
+ this.savedBodyStyles = null;
16
28
  this.config = config;
17
29
  this.callbacks = callbacks;
18
30
  // Bind handlers
@@ -60,6 +72,9 @@ export class InputHandler {
60
72
  root.removeEventListener('touchend', this.boundHandleTouchEnd);
61
73
  root.removeEventListener('touchcancel', this.boundHandleTouchCancel);
62
74
  this.cancelTouchHold();
75
+ this.cleanupMousePanState();
76
+ this.exitPanMode();
77
+ this.removeScrollBlock();
63
78
  }
64
79
  /**
65
80
  * Check if in touch drag mode.
@@ -114,16 +129,70 @@ export class InputHandler {
114
129
  if (target.type === 'slot' && !this.config.isSelectable())
115
130
  return;
116
131
  e.preventDefault();
132
+ // For events/resize handles, set up mouse pan candidate (can pan if moved quickly)
133
+ if (target.type === 'event' || target.type === 'resize-handle') {
134
+ this.mouseStartPosition = { x: pointer.clientX, y: pointer.clientY };
135
+ this.isMousePanCandidate = true;
136
+ // Start timer - after this time, regular drag behavior takes over
137
+ this.mousePanTimer = setTimeout(() => {
138
+ // Timer expired without entering pan mode, so this is a drag operation
139
+ this.isMousePanCandidate = false;
140
+ this.mousePanTimer = null;
141
+ }, DEFAULT_MOUSE_PAN_TIMEOUT);
142
+ }
117
143
  this.callbacks.onPointerDown(pointer, target);
118
144
  }
119
145
  handleMouseMove(e) {
146
+ var _a;
120
147
  const pointer = normalizeMouseEvent(e);
148
+ // If in pan mode, continue panning
149
+ if (this.isPanMode) {
150
+ e.preventDefault();
151
+ this.performPan(pointer.clientX, pointer.clientY);
152
+ return;
153
+ }
154
+ // Check if we should enter pan mode (mouse on event + moved > threshold within timeout)
155
+ if (this.isMousePanCandidate && this.mouseStartPosition) {
156
+ const threshold = (_a = this.config.touchMoveThreshold) !== null && _a !== void 0 ? _a : DEFAULT_TOUCH_MOVE_THRESHOLD;
157
+ const distance = getPointerDistance(this.mouseStartPosition, {
158
+ x: pointer.clientX,
159
+ y: pointer.clientY,
160
+ });
161
+ if (distance > threshold) {
162
+ // Cancel the pan timer
163
+ if (this.mousePanTimer) {
164
+ clearTimeout(this.mousePanTimer);
165
+ this.mousePanTimer = null;
166
+ }
167
+ this.isMousePanCandidate = false;
168
+ // Enter pan mode
169
+ this.enterPanMode(pointer.clientX, pointer.clientY);
170
+ e.preventDefault();
171
+ return;
172
+ }
173
+ }
121
174
  this.callbacks.onPointerMove(pointer);
122
175
  }
123
176
  handleMouseUp(e) {
124
177
  const pointer = normalizeMouseEvent(e);
178
+ // If in pan mode, exit it
179
+ if (this.isPanMode) {
180
+ this.exitPanMode();
181
+ this.cleanupMousePanState();
182
+ return;
183
+ }
184
+ // Clean up mouse pan candidate state
185
+ this.cleanupMousePanState();
125
186
  this.callbacks.onPointerUp(pointer);
126
187
  }
188
+ cleanupMousePanState() {
189
+ if (this.mousePanTimer) {
190
+ clearTimeout(this.mousePanTimer);
191
+ this.mousePanTimer = null;
192
+ }
193
+ this.mouseStartPosition = null;
194
+ this.isMousePanCandidate = false;
195
+ }
127
196
  handleClick(e) {
128
197
  const pointer = normalizeMouseEvent(e);
129
198
  const target = this.analyzeTarget(pointer.target);
@@ -160,6 +229,8 @@ export class InputHandler {
160
229
  this.touchStartPosition = { x: pointer.clientX, y: pointer.clientY };
161
230
  this.touchHoldTarget = pointer.target;
162
231
  this.touchHoldPointer = pointer;
232
+ // Track if touch started on an event (for pan support)
233
+ this.panStartedOnEvent = target.type === 'event' || target.type === 'resize-handle';
163
234
  // Add element-level listeners IMMEDIATELY for ALL drag-initiating touches
164
235
  // CRITICAL: Use e.target (the actual touched element) not pointer.target
165
236
  // In shadow DOM, touch.target and e.target can differ due to event retargeting.
@@ -190,11 +261,18 @@ export class InputHandler {
190
261
  var _a;
191
262
  if (e.touches.length !== 1) {
192
263
  this.cancelTouchHold();
264
+ this.exitPanMode();
193
265
  return;
194
266
  }
195
267
  const pointer = normalizeTouchEvent(e);
196
268
  if (!pointer)
197
269
  return;
270
+ // If in pan mode, continue panning
271
+ if (this.isPanMode) {
272
+ e.preventDefault();
273
+ this.performPan(pointer.clientX, pointer.clientY);
274
+ return;
275
+ }
198
276
  // If we have a pending touch hold, check if user moved too much
199
277
  if (this.touchHoldTimer && this.touchStartPosition) {
200
278
  const threshold = (_a = this.config.touchMoveThreshold) !== null && _a !== void 0 ? _a : DEFAULT_TOUCH_MOVE_THRESHOLD;
@@ -203,8 +281,14 @@ export class InputHandler {
203
281
  y: pointer.clientY,
204
282
  });
205
283
  if (distance > threshold) {
206
- // User moved too much, cancel hold and allow scroll
284
+ // User moved too much during hold period
207
285
  this.cancelTouchHold();
286
+ // If touch started on an event, enter pan mode instead of allowing native scroll
287
+ if (this.panStartedOnEvent) {
288
+ this.enterPanMode(pointer.clientX, pointer.clientY);
289
+ e.preventDefault();
290
+ }
291
+ // Otherwise, allow native scroll (no preventDefault)
208
292
  return;
209
293
  }
210
294
  // Still waiting for hold - prevent scroll while waiting
@@ -222,6 +306,11 @@ export class InputHandler {
222
306
  }
223
307
  handleTouchEnd(e) {
224
308
  const pointer = normalizeTouchEvent(e);
309
+ // If in pan mode, exit it
310
+ if (this.isPanMode) {
311
+ this.exitPanMode();
312
+ return;
313
+ }
225
314
  // If we had a pending hold that never activated, treat as tap
226
315
  if (this.touchHoldTimer) {
227
316
  this.cancelTouchHold();
@@ -242,6 +331,7 @@ export class InputHandler {
242
331
  handleTouchCancel(_e) {
243
332
  var _a;
244
333
  this.cancelTouchHold();
334
+ this.exitPanMode();
245
335
  if (this.isTouchDragMode) {
246
336
  // Notify pointer up to cancel the drag
247
337
  if (this.touchStartPosition) {
@@ -282,6 +372,8 @@ export class InputHandler {
282
372
  // Add container class
283
373
  const container = this.config.shadowRoot.querySelector('.scheduler-container');
284
374
  container === null || container === void 0 ? void 0 : container.classList.add('touch-drag-mode');
375
+ // Apply scroll blocking to document body and scheduler-content
376
+ this.applyScrollBlock();
285
377
  // Notify callback
286
378
  (_c = (_b = this.callbacks).onTouchDragActivated) === null || _c === void 0 ? void 0 : _c.call(_b);
287
379
  // Start the drag immediately (skip pending threshold for touch)
@@ -301,7 +393,8 @@ export class InputHandler {
301
393
  this.removeTouchFeedback(this.touchHoldTarget, 'pending');
302
394
  this.removeTouchFeedback(this.touchHoldTarget, 'active');
303
395
  }
304
- this.touchStartPosition = null;
396
+ // Note: Don't reset touchStartPosition here as it may be needed for pan mode
397
+ // Also don't reset panStartedOnEvent - it's needed after cancelTouchHold
305
398
  }
306
399
  exitTouchDragMode() {
307
400
  var _a, _b;
@@ -316,6 +409,8 @@ export class InputHandler {
316
409
  // Remove container class
317
410
  const container = this.config.shadowRoot.querySelector('.scheduler-container');
318
411
  container === null || container === void 0 ? void 0 : container.classList.remove('touch-drag-mode');
412
+ // Remove scroll blocking
413
+ this.removeScrollBlock();
319
414
  // Remove all feedback classes
320
415
  this.config.shadowRoot
321
416
  .querySelectorAll('.touch-hold-active, .touch-hold-pending')
@@ -336,5 +431,81 @@ export class InputHandler {
336
431
  triggerHapticFeedback() {
337
432
  // Vibration API removed - can cause issues on some devices
338
433
  }
434
+ // Pan helpers
435
+ enterPanMode(clientX, clientY) {
436
+ var _a, _b;
437
+ const container = (_b = (_a = this.callbacks).getScrollContainer) === null || _b === void 0 ? void 0 : _b.call(_a);
438
+ if (!container)
439
+ return;
440
+ this.isPanMode = true;
441
+ this.panStartPosition = { x: clientX, y: clientY };
442
+ this.panStartScroll = { left: container.scrollLeft, top: container.scrollTop };
443
+ // Add visual feedback for pan mode
444
+ container.classList.add('pan-mode');
445
+ // Remove hold feedback if any
446
+ if (this.touchHoldTarget) {
447
+ this.removeTouchFeedback(this.touchHoldTarget, 'pending');
448
+ this.removeTouchFeedback(this.touchHoldTarget, 'active');
449
+ }
450
+ }
451
+ exitPanMode() {
452
+ var _a, _b;
453
+ if (!this.isPanMode)
454
+ return;
455
+ this.isPanMode = false;
456
+ this.panStartPosition = null;
457
+ this.panStartScroll = null;
458
+ this.panStartedOnEvent = false;
459
+ this.touchStartPosition = null;
460
+ this.touchHoldTarget = null;
461
+ // Remove visual feedback
462
+ const container = (_b = (_a = this.callbacks).getScrollContainer) === null || _b === void 0 ? void 0 : _b.call(_a);
463
+ container === null || container === void 0 ? void 0 : container.classList.remove('pan-mode');
464
+ }
465
+ performPan(clientX, clientY) {
466
+ var _a, _b;
467
+ if (!this.isPanMode || !this.panStartPosition || !this.panStartScroll)
468
+ return;
469
+ const container = (_b = (_a = this.callbacks).getScrollContainer) === null || _b === void 0 ? void 0 : _b.call(_a);
470
+ if (!container)
471
+ return;
472
+ // Calculate delta from start position
473
+ const deltaX = this.panStartPosition.x - clientX;
474
+ const deltaY = this.panStartPosition.y - clientY;
475
+ // Apply scroll
476
+ container.scrollLeft = this.panStartScroll.left + deltaX;
477
+ container.scrollTop = this.panStartScroll.top + deltaY;
478
+ }
479
+ // Scroll blocking helpers
480
+ applyScrollBlock() {
481
+ var _a, _b;
482
+ // Save current body styles for restoration
483
+ this.savedBodyStyles = {
484
+ overflow: document.body.style.overflow,
485
+ touchAction: document.body.style.touchAction,
486
+ };
487
+ // Block scrolling on document body
488
+ document.body.style.overflow = 'hidden';
489
+ document.body.style.touchAction = 'none';
490
+ // Block scrolling on scheduler-content
491
+ const scrollContainer = (_b = (_a = this.callbacks).getScrollContainer) === null || _b === void 0 ? void 0 : _b.call(_a);
492
+ if (scrollContainer) {
493
+ scrollContainer.classList.add('scroll-blocked');
494
+ }
495
+ }
496
+ removeScrollBlock() {
497
+ var _a, _b;
498
+ // Restore body styles
499
+ if (this.savedBodyStyles) {
500
+ document.body.style.overflow = this.savedBodyStyles.overflow;
501
+ document.body.style.touchAction = this.savedBodyStyles.touchAction;
502
+ this.savedBodyStyles = null;
503
+ }
504
+ // Remove scroll blocking from scheduler-content
505
+ const scrollContainer = (_b = (_a = this.callbacks).getScrollContainer) === null || _b === void 0 ? void 0 : _b.call(_a);
506
+ if (scrollContainer) {
507
+ scrollContainer.classList.remove('scroll-blocked');
508
+ }
509
+ }
339
510
  }
340
511
  //# sourceMappingURL=input-handler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-handler.js","sourceRoot":"","sources":["../../../../../libs/mp-scheduler-wc/src/input/input-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"input-handler.js","sourceRoot":"","sources":["../../../../../libs/mp-scheduler-wc/src/input/input-handler.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,2 @@
1
- /**
2
- * Scheduler CSS styles as a template literal
3
- */
4
- export declare const schedulerStyles = "\n :host {\n display: block;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;\n font-size: 14px;\n --scheduler-border-color: #ddd;\n --scheduler-header-bg: #f8f9fa;\n --scheduler-today-bg: #fff3cd;\n --scheduler-slot-height: 40px;\n --scheduler-time-gutter-width: 80px;\n --scheduler-event-border-radius: 4px;\n --scheduler-now-indicator-color: #dc3545;\n --scheduler-preview-bg: rgba(0, 123, 255, 0.3);\n --scheduler-greyed-slot-bg: rgba(0, 0, 0, 0.1);\n --scheduler-column-min-width: 120px;\n --scheduler-touch-hold-duration: 500ms;\n }\n\n * {\n box-sizing: border-box;\n }\n\n .scheduler-container {\n display: flex;\n flex-direction: column;\n height: 100%;\n border: 1px solid var(--scheduler-border-color);\n border-radius: 4px;\n overflow: hidden;\n background: #fff;\n }\n\n /* Header */\n .scheduler-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 12px;\n background: var(--scheduler-header-bg);\n border-bottom: 1px solid var(--scheduler-border-color);\n flex-shrink: 0;\n }\n\n .scheduler-nav {\n display: flex;\n align-items: center;\n gap: 8px;\n }\n\n .scheduler-nav button {\n padding: 6px 12px;\n border: 1px solid var(--scheduler-border-color);\n border-radius: 4px;\n background: #fff;\n cursor: pointer;\n font-size: 14px;\n }\n\n .scheduler-nav button:hover {\n background: #e9ecef;\n }\n\n .scheduler-title {\n font-size: 18px;\n font-weight: 600;\n }\n\n .scheduler-view-switcher {\n display: flex;\n gap: 4px;\n }\n\n .scheduler-view-switcher button {\n padding: 6px 12px;\n border: 1px solid var(--scheduler-border-color);\n border-radius: 4px;\n background: #fff;\n cursor: pointer;\n font-size: 13px;\n }\n\n .scheduler-view-switcher button:hover {\n background: #e9ecef;\n }\n\n .scheduler-view-switcher button.active {\n background: #0d6efd;\n color: #fff;\n border-color: #0d6efd;\n }\n\n /* Main content area */\n .scheduler-body {\n display: flex;\n flex: 1;\n overflow: hidden;\n }\n\n .scheduler-sidebar {\n width: var(--scheduler-time-gutter-width);\n flex-shrink: 0;\n border-right: 1px solid var(--scheduler-border-color);\n background: var(--scheduler-header-bg);\n }\n\n .scheduler-content {\n flex: 1;\n overflow: auto;\n position: relative;\n }\n\n /* Week/Day View Grid */\n .scheduler-grid {\n display: grid;\n min-width: 100%;\n }\n\n .scheduler-day-headers {\n display: flex;\n border-bottom: 1px solid var(--scheduler-border-color);\n background: var(--scheduler-header-bg);\n position: sticky;\n top: 0;\n z-index: 10;\n min-width: fit-content;\n }\n\n .scheduler-day-header {\n flex: 1 0 var(--scheduler-column-min-width);\n min-width: var(--scheduler-column-min-width);\n text-align: center;\n padding: 8px 4px;\n border-right: 1px solid var(--scheduler-border-color);\n font-weight: 500;\n }\n\n .scheduler-day-header:last-child {\n border-right: none;\n }\n\n .scheduler-day-header.today {\n background: var(--scheduler-today-bg);\n }\n\n .scheduler-day-header .day-name {\n font-size: 12px;\n color: #666;\n text-transform: uppercase;\n }\n\n .scheduler-day-header .day-number {\n font-size: 20px;\n font-weight: 600;\n margin-top: 2px;\n }\n\n .scheduler-time-grid {\n display: flex;\n position: relative;\n min-width: fit-content;\n }\n\n .scheduler-time-gutter {\n width: var(--scheduler-time-gutter-width);\n flex-shrink: 0;\n border-right: 1px solid var(--scheduler-border-color);\n background: var(--scheduler-header-bg);\n }\n\n .scheduler-time-slot-label {\n height: var(--scheduler-slot-height);\n padding: 0 8px;\n font-size: 12px;\n color: #666;\n text-align: right;\n position: relative;\n top: -8px;\n white-space: nowrap;\n }\n\n .scheduler-days-container {\n display: flex;\n flex: 1;\n position: relative;\n min-width: fit-content;\n }\n\n .scheduler-day-column {\n flex: 1 0 var(--scheduler-column-min-width);\n min-width: var(--scheduler-column-min-width);\n position: relative;\n border-right: 1px solid var(--scheduler-border-color);\n }\n\n .scheduler-day-column:last-child {\n border-right: none;\n }\n\n .scheduler-time-slot {\n height: var(--scheduler-slot-height);\n border-bottom: 1px solid #eee;\n position: relative;\n }\n\n .scheduler-time-slot:nth-child(2n) {\n border-bottom-color: var(--scheduler-border-color);\n }\n\n .scheduler-time-slot.greyed {\n background: var(--scheduler-greyed-slot-bg);\n }\n\n /* Events */\n .scheduler-events-container {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n pointer-events: none;\n }\n\n .scheduler-event {\n position: absolute;\n border-radius: var(--scheduler-event-border-radius);\n padding: 2px 4px;\n font-size: 12px;\n overflow: hidden;\n cursor: pointer;\n pointer-events: auto;\n border-left: 3px solid rgba(0, 0, 0, 0.2);\n }\n\n /* Prevent browser from handling touch gestures on events (enables drag) */\n .scheduler-event:not(.preview) {\n touch-action: none;\n -ms-touch-action: none;\n }\n\n .scheduler-event:hover {\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\n }\n\n .scheduler-event.selected {\n box-shadow: 0 0 0 3px #212529;\n }\n\n .scheduler-event .event-title {\n font-weight: 500;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .scheduler-event .event-time {\n font-size: 11px;\n opacity: 0.8;\n }\n\n .scheduler-event.preview {\n background: var(--scheduler-preview-bg);\n border: 2px dashed #0d6efd;\n pointer-events: none;\n }\n\n /* Resize handles */\n .scheduler-event .resize-handle {\n position: absolute;\n left: 0;\n right: 0;\n height: 8px;\n cursor: ns-resize;\n }\n\n .scheduler-event .resize-handle.top {\n top: 0;\n }\n\n .scheduler-event .resize-handle.bottom {\n bottom: 0;\n }\n\n /* Now indicator */\n .scheduler-now-indicator {\n position: absolute;\n left: 0;\n right: 0;\n height: 2px;\n background: var(--scheduler-now-indicator-color);\n z-index: 5;\n pointer-events: none;\n }\n\n .scheduler-now-indicator::before {\n content: '';\n position: absolute;\n left: -4px;\n top: -4px;\n width: 10px;\n height: 10px;\n border-radius: 50%;\n background: var(--scheduler-now-indicator-color);\n }\n\n /* Month View */\n .scheduler-month-grid {\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n grid-auto-rows: minmax(100px, 1fr);\n height: 100%;\n }\n\n .scheduler-month-day {\n border-right: 1px solid var(--scheduler-border-color);\n border-bottom: 1px solid var(--scheduler-border-color);\n padding: 4px;\n overflow: hidden;\n }\n\n .scheduler-month-day:nth-child(7n) {\n border-right: none;\n }\n\n .scheduler-month-day.other-month {\n background: #f8f9fa;\n color: #adb5bd;\n }\n\n .scheduler-month-day.today {\n background: var(--scheduler-today-bg);\n }\n\n .scheduler-month-day .day-number {\n font-weight: 500;\n margin-bottom: 4px;\n }\n\n .scheduler-month-day .month-events {\n display: flex;\n flex-direction: column;\n gap: 2px;\n }\n\n .scheduler-month-event {\n padding: 2px 4px;\n border-radius: 2px;\n font-size: 11px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n cursor: pointer;\n }\n\n .scheduler-more-link {\n font-size: 11px;\n color: #0d6efd;\n cursor: pointer;\n margin-top: 2px;\n }\n\n /* Year View */\n .scheduler-year-grid {\n display: grid;\n grid-template-columns: repeat(4, 1fr);\n gap: 16px;\n padding: 16px;\n }\n\n .scheduler-year-month {\n border: 1px solid var(--scheduler-border-color);\n border-radius: 4px;\n overflow: hidden;\n }\n\n .scheduler-year-month-header {\n padding: 8px;\n background: var(--scheduler-header-bg);\n font-weight: 600;\n text-align: center;\n cursor: pointer;\n }\n\n .scheduler-year-month-header:hover {\n background: #e9ecef;\n }\n\n .scheduler-mini-month {\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n gap: 1px;\n padding: 4px;\n }\n\n .scheduler-mini-day {\n aspect-ratio: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 11px;\n cursor: pointer;\n border-radius: 50%;\n }\n\n .scheduler-mini-day:hover {\n background: #e9ecef;\n }\n\n .scheduler-mini-day.has-events {\n font-weight: 600;\n }\n\n .scheduler-mini-day.has-events::after {\n content: '';\n position: absolute;\n bottom: 2px;\n width: 4px;\n height: 4px;\n border-radius: 50%;\n background: #0d6efd;\n }\n\n .scheduler-mini-day.today {\n background: var(--scheduler-today-bg);\n }\n\n .scheduler-mini-day.other-month {\n color: #adb5bd;\n }\n\n /* Timeline View */\n .scheduler-timeline {\n display: flex;\n flex-direction: column;\n height: 100%;\n }\n\n .scheduler-timeline-header {\n display: flex;\n border-bottom: 1px solid var(--scheduler-border-color);\n background: var(--scheduler-header-bg);\n position: sticky;\n top: 0;\n z-index: 10;\n }\n\n .scheduler-resource-header {\n width: 200px;\n flex-shrink: 0;\n padding: 8px;\n border-right: 1px solid var(--scheduler-border-color);\n font-weight: 600;\n }\n\n .scheduler-timeline-slots-header {\n display: flex;\n flex: 1;\n overflow: hidden;\n }\n\n .scheduler-timeline-slot-header {\n flex-shrink: 0;\n padding: 8px;\n text-align: center;\n border-right: 1px solid var(--scheduler-border-color);\n font-size: 12px;\n }\n\n .scheduler-timeline-body {\n display: flex;\n flex-direction: column;\n flex: 1;\n overflow: auto;\n }\n\n .scheduler-timeline-row {\n display: flex;\n border-bottom: 1px solid var(--scheduler-border-color);\n min-height: 40px;\n }\n\n .scheduler-timeline-row.group {\n background: var(--scheduler-header-bg);\n font-weight: 600;\n }\n\n .scheduler-resource-cell {\n width: 200px;\n flex-shrink: 0;\n padding: 8px;\n border-right: 1px solid var(--scheduler-border-color);\n display: flex;\n align-items: center;\n gap: 8px;\n }\n\n .scheduler-resource-cell .expand-toggle {\n cursor: pointer;\n width: 16px;\n height: 16px;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .scheduler-timeline-slots {\n display: flex;\n flex: 1;\n position: relative;\n }\n\n .scheduler-timeline-slot {\n flex-shrink: 0;\n border-right: 1px solid #eee;\n height: 100%;\n }\n\n .scheduler-timeline-slot.greyed {\n background: var(--scheduler-greyed-slot-bg);\n }\n\n .scheduler-timeline-events {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n pointer-events: none;\n }\n\n .scheduler-timeline-event {\n position: absolute;\n height: calc(100% - 4px);\n top: 2px;\n border-radius: var(--scheduler-event-border-radius);\n padding: 2px 6px;\n font-size: 12px;\n overflow: hidden;\n cursor: pointer;\n pointer-events: auto;\n }\n\n .scheduler-timeline-event.selected {\n box-shadow: 0 0 0 3px #212529;\n }\n\n /* Loading state */\n .scheduler-loading {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 200px;\n color: #666;\n }\n\n /* Empty state */\n .scheduler-empty {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 200px;\n color: #666;\n font-style: italic;\n }\n\n /* Touch drag mode indicator */\n .scheduler-container.touch-drag-mode {\n cursor: grabbing;\n user-select: none;\n -webkit-user-select: none;\n touch-action: none;\n -ms-touch-action: none;\n }\n\n .scheduler-container.touch-drag-mode .scheduler-content {\n overflow: hidden;\n touch-action: none;\n -ms-touch-action: none;\n }\n\n .scheduler-event.touch-hold-pending {\n animation: touch-hold-pulse 0.5s ease-in-out;\n touch-action: none;\n -ms-touch-action: none;\n }\n\n .scheduler-event.touch-hold-active {\n transform: scale(1.02);\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);\n z-index: 100;\n touch-action: none;\n -ms-touch-action: none;\n }\n\n .scheduler-time-slot.touch-hold-pending,\n .scheduler-timeline-slot.touch-hold-pending {\n animation: touch-hold-pulse 0.5s ease-in-out;\n }\n\n .scheduler-time-slot.touch-hold-active,\n .scheduler-timeline-slot.touch-hold-active {\n background: var(--scheduler-preview-bg);\n }\n\n @keyframes touch-hold-pulse {\n 0% { opacity: 1; }\n 50% { opacity: 0.7; }\n 100% { opacity: 1; }\n }\n\n /* Scrollbar styling */\n .scheduler-content::-webkit-scrollbar {\n width: 8px;\n height: 8px;\n }\n\n .scheduler-content::-webkit-scrollbar-track {\n background: #f1f1f1;\n }\n\n .scheduler-content::-webkit-scrollbar-thumb {\n background: #c1c1c1;\n border-radius: 4px;\n }\n\n .scheduler-content::-webkit-scrollbar-thumb:hover {\n background: #a1a1a1;\n }\n";
1
+ export declare const schedulerStyles: import("lit").CSSResult;
5
2
  export default schedulerStyles;