@forcecalendar/interface 1.0.4 → 1.0.6

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forcecalendar/interface",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "type": "module",
5
5
  "description": "Official interface layer for forceCalendar Core - Enterprise calendar components",
6
6
  "main": "dist/force-calendar-interface.umd.js",
@@ -414,6 +414,6 @@ export class EventForm extends BaseComponent {
414
414
  }
415
415
  }
416
416
 
417
- if (!customElements.get('fc-calendar-event-form')) {
418
- customElements.define('fc-calendar-event-form', EventForm);
417
+ if (!customElements.get('forcecal-event-form')) {
418
+ customElements.define('forcecal-event-form', EventForm);
419
419
  }
@@ -17,14 +17,14 @@ import { DayView } from './views/DayView.js';
17
17
  import { EventForm } from './EventForm.js'; // Import EventForm
18
18
 
19
19
  // Register view components
20
- if (!customElements.get('fc-calendar-month')) {
21
- customElements.define('fc-calendar-month', MonthView);
20
+ if (!customElements.get('forcecal-month')) {
21
+ customElements.define('forcecal-month', MonthView);
22
22
  }
23
- if (!customElements.get('fc-calendar-week')) {
24
- customElements.define('fc-calendar-week', WeekView);
23
+ if (!customElements.get('forcecal-week')) {
24
+ customElements.define('forcecal-week', WeekView);
25
25
  }
26
- if (!customElements.get('fc-calendar-day')) {
27
- customElements.define('fc-calendar-day', DayView);
26
+ if (!customElements.get('forcecal-day')) {
27
+ customElements.define('forcecal-day', DayView);
28
28
  }
29
29
  // EventForm is self-registering in its file
30
30
 
@@ -273,9 +273,9 @@ export class ForceCalendar extends BaseComponent {
273
273
  }
274
274
 
275
275
  /* Ensure view components have proper dimensions */
276
- fc-calendar-month,
277
- fc-calendar-week,
278
- fc-calendar-day {
276
+ forcecal-month,
277
+ forcecal-week,
278
+ forcecal-day {
279
279
  display: block;
280
280
  width: 100%;
281
281
  height: 100%;
@@ -415,7 +415,7 @@ export class ForceCalendar extends BaseComponent {
415
415
  `}
416
416
  </div>
417
417
 
418
- <fc-calendar-event-form id="event-modal"></fc-calendar-event-form>
418
+ <forcecal-event-form id="event-modal"></forcecal-event-form>
419
419
  </div>
420
420
  `;
421
421
  }
@@ -425,15 +425,27 @@ export class ForceCalendar extends BaseComponent {
425
425
  return '<div>Loading view...</div>';
426
426
  }
427
427
 
428
- const tagName = `fc-calendar-${this.currentView}`;
428
+ const tagName = `forcecal-${this.currentView}`;
429
429
  return `<${tagName} id="calendar-view"></${tagName}>`;
430
430
  }
431
431
 
432
432
  afterRender() {
433
433
  // Set up view component
434
434
  const viewElement = this.$('#calendar-view');
435
+ console.log('[ForceCalendar] afterRender - viewElement:', viewElement);
436
+ console.log('[ForceCalendar] afterRender - stateManager:', !!this.stateManager);
435
437
  if (viewElement && this.stateManager) {
436
- viewElement.stateManager = this.stateManager;
438
+ // Use method call for Salesforce Locker Service compatibility
439
+ // Property setters may not work through Locker Service proxies
440
+ if (typeof viewElement.setStateManager === 'function') {
441
+ console.log('[ForceCalendar] Using setStateManager method');
442
+ viewElement.setStateManager(this.stateManager);
443
+ } else {
444
+ console.log('[ForceCalendar] Using stateManager property setter');
445
+ viewElement.stateManager = this.stateManager;
446
+ }
447
+ } else {
448
+ console.log('[ForceCalendar] Could not set stateManager - viewElement:', !!viewElement, 'stateManager:', !!this.stateManager);
437
449
  }
438
450
 
439
451
  // Add event listeners for buttons using tracked addListener
@@ -585,6 +597,6 @@ export class ForceCalendar extends BaseComponent {
585
597
  }
586
598
 
587
599
  // Register component
588
- if (!customElements.get('fc-calendar')) {
589
- customElements.define('fc-calendar', ForceCalendar);
600
+ if (!customElements.get('forcecal-main')) {
601
+ customElements.define('forcecal-main', ForceCalendar);
590
602
  }
@@ -18,6 +18,12 @@ export class DayView extends BaseComponent {
18
18
  }
19
19
 
20
20
  set stateManager(manager) {
21
+ this.setStateManager(manager);
22
+ }
23
+
24
+ // Method alternative for Salesforce Locker Service compatibility
25
+ setStateManager(manager) {
26
+ if (this._stateManager === manager) return;
21
27
  this._stateManager = manager;
22
28
  if (manager) {
23
29
  this.unsubscribe = manager.subscribe(this.handleStateUpdate.bind(this));
@@ -20,8 +20,21 @@ export class MonthView extends BaseComponent {
20
20
  }
21
21
 
22
22
  set stateManager(manager) {
23
+ console.log('[MonthView] stateManager setter called with:', !!manager);
24
+ this.setStateManager(manager);
25
+ }
26
+
27
+ // Method alternative for Salesforce Locker Service compatibility
28
+ setStateManager(manager) {
29
+ console.log('[MonthView] setStateManager method called with:', !!manager);
30
+ // Prevent re-initialization if same manager
31
+ if (this._stateManager === manager) {
32
+ console.log('[MonthView] stateManager already set, skipping');
33
+ return;
34
+ }
23
35
  this._stateManager = manager;
24
36
  if (manager) {
37
+ console.log('[MonthView] Subscribing to state changes and loading view data');
25
38
  // Subscribe to state changes
26
39
  this.unsubscribe = manager.subscribe(this.handleStateUpdate.bind(this));
27
40
  this.loadViewData();
@@ -67,11 +80,15 @@ export class MonthView extends BaseComponent {
67
80
  }
68
81
 
69
82
  loadViewData() {
83
+ console.log('[MonthView] loadViewData called, stateManager:', !!this.stateManager);
70
84
  if (!this.stateManager) return;
71
85
 
72
86
  const viewData = this.stateManager.getViewData();
87
+ console.log('[MonthView] viewData from stateManager:', viewData);
73
88
  this.viewData = this.processViewData(viewData);
89
+ console.log('[MonthView] processed viewData:', this.viewData);
74
90
  this.render();
91
+ console.log('[MonthView] render completed');
75
92
  }
76
93
 
77
94
  processViewData(viewData) {
@@ -18,6 +18,12 @@ export class WeekView extends BaseComponent {
18
18
  }
19
19
 
20
20
  set stateManager(manager) {
21
+ this.setStateManager(manager);
22
+ }
23
+
24
+ // Method alternative for Salesforce Locker Service compatibility
25
+ setStateManager(manager) {
26
+ if (this._stateManager === manager) return;
21
27
  this._stateManager = manager;
22
28
  if (manager) {
23
29
  this.unsubscribe = manager.subscribe(this.handleStateUpdate.bind(this));