@progressive-development/pd-calendar 0.2.5 → 0.2.7

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
@@ -3,7 +3,7 @@
3
3
  "description": "progressive development calendar web component",
4
4
  "license": "SEE LICENSE IN LICENSE",
5
5
  "author": "PD Progressive Development",
6
- "version": "0.2.5",
6
+ "version": "0.2.7",
7
7
  "main": "index.js",
8
8
  "module": "index.js",
9
9
  "scripts": {
package/src/PdCalendar.js CHANGED
@@ -71,6 +71,16 @@ export class PdCalendar extends LitElement {
71
71
  * @event select-date
72
72
  */
73
73
 
74
+ /**
75
+ * Fired when mouse entered date cell, detail contains date (Date) and dateKey(string).
76
+ * @event mouse-enter-date
77
+ */
78
+
79
+ /**
80
+ * Fired when date leaves date cell
81
+ * @event mouse-leave-date
82
+ */
83
+
74
84
  static get properties() {
75
85
  return {
76
86
  refDate: { type: Object },
@@ -289,6 +299,8 @@ export class PdCalendar extends LitElement {
289
299
  ?special="${special}"
290
300
  numberClass="${this.numberClass}"
291
301
  @select-date="${this._forwardEvent}"
302
+ @mouse-enter-date="${this._forwardEnterEvent}"
303
+ @mouse-leave-date="${this._forwardLeaveEvent}"
292
304
  ?today="${this.selectableDates && isToday(tmpDate)}"
293
305
  ?selected="${this.showSelection && isSelected(this.refDate, tmpDate)}"
294
306
  ></pd-calendar-cell>
@@ -423,7 +435,7 @@ export class PdCalendar extends LitElement {
423
435
 
424
436
  }
425
437
 
426
- // Forward Event from Calendar Cell, could be refactored
438
+ // Forward Event from Calendar Cell, should be refactored (events not bubbles up here)
427
439
  _forwardEvent(e) {
428
440
  this.dispatchEvent(
429
441
  new CustomEvent('select-date', {
@@ -431,4 +443,18 @@ export class PdCalendar extends LitElement {
431
443
  })
432
444
  );
433
445
  }
446
+
447
+ _forwardEnterEvent(e) {
448
+ this.dispatchEvent(
449
+ new CustomEvent('mouse-enter-date', {
450
+ detail: e.detail
451
+ })
452
+ );
453
+ }
454
+
455
+ _forwardLeaveEvent() {
456
+ this.dispatchEvent(
457
+ new CustomEvent('mouse-leave-date')
458
+ );
459
+ }
434
460
  }
@@ -257,32 +257,21 @@ class PdCalendarCell extends LitElement {
257
257
  }
258
258
  }
259
259
 
260
- _mouseEnter(e) {
261
- const dateKey = e.target.dataset.date;
262
- if (dateKey) {
263
- // convert back to date
264
- const userSelectedDate = parse(dateKey, 'YYYY-MM-DD');
265
- this.dispatchEvent(
266
- new CustomEvent('mouse-enter-date', {
267
- detail: {
268
- dateKey,
269
- date: userSelectedDate,
270
- bubbles: true,
271
- composed: true
272
- },
273
- })
274
- );
275
- }
276
- }
277
-
278
- _mouseLeave() {
260
+ _mouseEnter() {
261
+ const userSelectedDate = parse(this.key, 'YYYY-MM-DD');
279
262
  this.dispatchEvent(
280
- new CustomEvent('mouse-leave-date', {
263
+ new CustomEvent('mouse-enter-date', {
281
264
  detail: {
282
- bubbles: true,
283
- composed: true
265
+ dateKey: this.key,
266
+ date: userSelectedDate,
284
267
  },
285
268
  })
269
+ );
270
+ }
271
+
272
+ _mouseLeave() {
273
+ this.dispatchEvent(
274
+ new CustomEvent('mouse-leave-date')
286
275
  );
287
276
  }
288
277
 
@@ -7,7 +7,11 @@ import { format } from 'fecha';
7
7
  export default {
8
8
  title: 'PdCalendar/Calendar',
9
9
  component: 'pd-calendar',
10
+ parameters: {
11
+ actions: { argTypesRegex: '^on.*' },
12
+ },
10
13
  argTypes: {
14
+
11
15
  },
12
16
  };
13
17
 
@@ -41,6 +45,9 @@ function CalendarSmallTemplate({ refDate, hideWeekend, width, cellHeight, prevMo
41
45
  </style>
42
46
  <pd-calendar .refDate="${refDate}" selectableDates showSelection ?hideWeekend="${hideWeekend}" class="calendar-small" prevMonthConstraint="${prevMonthConstraint}"
43
47
  nextMonthConstraint="${nextMonthConstraint}" numberClass="center"
48
+ @mouse-enter-date="${(e) => {
49
+ console.log("Mouse Enter Event: ", e);
50
+ }}"
44
51
  >
45
52
  </pd-calendar>`;
46
53
  }