funda-ui 4.3.555 → 4.4.15

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 (63) hide show
  1. package/Date/index.js +104 -0
  2. package/EventCalendar/index.css +7 -0
  3. package/EventCalendar/index.d.ts +2 -0
  4. package/EventCalendar/index.js +228 -89
  5. package/EventCalendarTimeline/index.css +29 -1
  6. package/EventCalendarTimeline/index.d.ts +11 -1
  7. package/EventCalendarTimeline/index.js +796 -298
  8. package/MultipleSelect/index.js +1 -1
  9. package/NativeSelect/index.js +1 -1
  10. package/Select/index.css +17 -0
  11. package/Select/index.d.ts +1 -0
  12. package/Select/index.js +83 -38
  13. package/Table/index.d.ts +4 -4
  14. package/Table/index.js +17 -17
  15. package/Tree/index.js +1 -1
  16. package/Utils/date.d.ts +27 -1
  17. package/Utils/date.js +92 -0
  18. package/lib/cjs/Date/index.js +104 -0
  19. package/lib/cjs/EventCalendar/index.d.ts +2 -0
  20. package/lib/cjs/EventCalendar/index.js +228 -89
  21. package/lib/cjs/EventCalendarTimeline/index.d.ts +11 -1
  22. package/lib/cjs/EventCalendarTimeline/index.js +796 -298
  23. package/lib/cjs/MultipleSelect/index.js +1 -1
  24. package/lib/cjs/NativeSelect/index.js +1 -1
  25. package/lib/cjs/Select/index.d.ts +1 -0
  26. package/lib/cjs/Select/index.js +83 -38
  27. package/lib/cjs/Table/index.d.ts +4 -4
  28. package/lib/cjs/Table/index.js +17 -17
  29. package/lib/cjs/Tree/index.js +1 -1
  30. package/lib/cjs/Utils/date.d.ts +27 -1
  31. package/lib/cjs/Utils/date.js +92 -0
  32. package/lib/css/EventCalendar/index.css +7 -0
  33. package/lib/css/EventCalendarTimeline/index.css +29 -1
  34. package/lib/css/Select/index.css +17 -0
  35. package/lib/esm/EventCalendar/index.scss +9 -0
  36. package/lib/esm/EventCalendar/index.tsx +203 -156
  37. package/lib/esm/EventCalendarTimeline/index.scss +46 -1
  38. package/lib/esm/EventCalendarTimeline/index.tsx +815 -358
  39. package/lib/esm/MultipleSelect/ItemList.tsx +1 -1
  40. package/lib/esm/MultipleSelect/index.tsx +1 -1
  41. package/lib/esm/NativeSelect/index.tsx +1 -1
  42. package/lib/esm/Select/index.scss +36 -1
  43. package/lib/esm/Select/index.tsx +179 -30
  44. package/lib/esm/Table/Table.tsx +2 -2
  45. package/lib/esm/Table/TableCell.tsx +2 -2
  46. package/lib/esm/Table/TableRow.tsx +1 -1
  47. package/lib/esm/Table/index.tsx +4 -4
  48. package/lib/esm/Tree/TreeList.tsx +1 -1
  49. package/lib/esm/Utils/libs/date.ts +101 -1
  50. package/package.json +1 -1
  51. /package/lib/esm/MultipleSelect/{multiple-select-utils → utils}/func.ts +0 -0
  52. /package/lib/esm/NativeSelect/{native-select-utils → utils}/func.ts +0 -0
  53. /package/lib/esm/Select/{select-utils → utils}/func.ts +0 -0
  54. /package/lib/esm/Table/{table-utils → utils}/DragHandleSprite.tsx +0 -0
  55. /package/lib/esm/Table/{table-utils → utils}/SortSprite.tsx +0 -0
  56. /package/lib/esm/Table/{table-utils → utils}/TableFilter.tsx +0 -0
  57. /package/lib/esm/Table/{table-utils → utils}/ToggleSelection.tsx +0 -0
  58. /package/lib/esm/Table/{table-utils → utils}/func.ts +0 -0
  59. /package/lib/esm/Table/{table-utils → utils}/hooks/useTableDraggable.tsx +0 -0
  60. /package/lib/esm/Table/{table-utils → utils}/hooks/useTableKeyPress.tsx +0 -0
  61. /package/lib/esm/Table/{table-utils → utils}/hooks/useTableResponsive.tsx +0 -0
  62. /package/lib/esm/Table/{table-utils → utils}/hooks/useTableSort.tsx +0 -0
  63. /package/lib/esm/Tree/{tree-utils.ts → utils/func.ts} +0 -0
@@ -2148,6 +2148,10 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
2148
2148
  return (/* binding */_getCurrentYear
2149
2149
  );
2150
2150
  },
2151
+ /* harmony export */"getDateDetails": function getDateDetails() {
2152
+ return (/* binding */_getDateDetails
2153
+ );
2154
+ },
2151
2155
  /* harmony export */"getFirstAndLastMonthDay": function getFirstAndLastMonthDay() {
2152
2156
  return (/* binding */_getFirstAndLastMonthDay
2153
2157
  );
@@ -2160,6 +2164,10 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
2160
2164
  return (/* binding */_getLastDayInMonth
2161
2165
  );
2162
2166
  },
2167
+ /* harmony export */"getMonthDates": function getMonthDates() {
2168
+ return (/* binding */_getMonthDates
2169
+ );
2170
+ },
2163
2171
  /* harmony export */"getNextMonthDate": function getNextMonthDate() {
2164
2172
  return (/* binding */_getNextMonthDate
2165
2173
  );
@@ -2192,6 +2200,14 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
2192
2200
  return (/* binding */_getTomorrowDate
2193
2201
  );
2194
2202
  },
2203
+ /* harmony export */"getWeekDatesFromMon": function getWeekDatesFromMon() {
2204
+ return (/* binding */_getWeekDatesFromMon
2205
+ );
2206
+ },
2207
+ /* harmony export */"getWeekDatesFromSun": function getWeekDatesFromSun() {
2208
+ return (/* binding */_getWeekDatesFromSun
2209
+ );
2210
+ },
2195
2211
  /* harmony export */"getYesterdayDate": function getYesterdayDate() {
2196
2212
  return (/* binding */_getYesterdayDate
2197
2213
  );
@@ -2343,6 +2359,31 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
2343
2359
  return date;
2344
2360
  }
2345
2361
 
2362
+ /**
2363
+ * Get date details
2364
+ * @param {Date | String} v
2365
+ * @param {Boolean} padZeroEnabled
2366
+ * @typedef {Object} JSON
2367
+ */
2368
+ function _getDateDetails(v) {
2369
+ var padZeroEnabled = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
2370
+ var date = _dateFormat(v);
2371
+ var year = date.getFullYear();
2372
+ var month = _padZero(date.getMonth() + 1, padZeroEnabled);
2373
+ var day = _padZero(date.getDate(), padZeroEnabled);
2374
+ var hours = _padZero(date.getHours(), padZeroEnabled);
2375
+ var minutes = _padZero(date.getMinutes(), padZeroEnabled);
2376
+ var seconds = _padZero(date.getSeconds(), padZeroEnabled);
2377
+ return {
2378
+ year: String(year),
2379
+ month: month,
2380
+ day: day,
2381
+ hours: hours,
2382
+ minutes: minutes,
2383
+ seconds: seconds
2384
+ };
2385
+ }
2386
+
2346
2387
  /**
2347
2388
  * Get calendar date
2348
2389
  * @param {Date | String} v
@@ -2638,6 +2679,69 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
2638
2679
  return _getFullTime(new Date(v), padZeroEnabled);
2639
2680
  }
2640
2681
 
2682
+ /**
2683
+ * Get the date of the specified month
2684
+ * @param {Number} year
2685
+ * @param {Number} month
2686
+ * @returns {Array<string>}
2687
+ */
2688
+ function _getMonthDates(year, month) {
2689
+ var dates = [];
2690
+
2691
+ // Get the total number of days in the month
2692
+ var daysInMonth = new Date(year, month, 0).getDate();
2693
+ for (var day = 1; day <= daysInMonth; day++) {
2694
+ dates.push("".concat(year, "-").concat(String(month).padStart(2, '0'), "-").concat(String(day).padStart(2, '0'))); // 'YYYY-MM-DD'
2695
+ }
2696
+
2697
+ return dates;
2698
+ }
2699
+
2700
+ /**
2701
+ * Get the date of the specified week (From Sunday)
2702
+ * @param {Number} weekOffset
2703
+ * @returns {Array<Date>}
2704
+ */
2705
+ function _getWeekDatesFromSun(weekOffset) {
2706
+ var dates = [];
2707
+ var currentDate = new Date();
2708
+
2709
+ // Calculate the date of Sunday
2710
+ var dayOfWeek = currentDate.getDay(); // 0 is Sunday
2711
+ currentDate.setDate(currentDate.getDate() - dayOfWeek + weekOffset * 7);
2712
+
2713
+ // Get the date of the week
2714
+ for (var i = 0; i < 7; i++) {
2715
+ var date = new Date(currentDate);
2716
+ date.setDate(currentDate.getDate() + i);
2717
+ dates.push(date);
2718
+ }
2719
+ return dates;
2720
+ }
2721
+
2722
+ /**
2723
+ * Get the date of the specified week (From Monday)
2724
+ * @param {Number} weekOffset
2725
+ * @returns {Array<Date>}
2726
+ */
2727
+ function _getWeekDatesFromMon(weekOffset) {
2728
+ var dates = [];
2729
+ var currentDate = new Date();
2730
+
2731
+ // Set the date to Monday
2732
+ var dayOfWeek = currentDate.getDay();
2733
+ var diffToMonday = dayOfWeek === 0 ? -6 : 1 - dayOfWeek;
2734
+ currentDate.setDate(currentDate.getDate() + diffToMonday + weekOffset * 7);
2735
+
2736
+ // Get the date of the week
2737
+ for (var i = 0; i < 7; i++) {
2738
+ var date = new Date(currentDate);
2739
+ date.setDate(currentDate.getDate() + i);
2740
+ dates.push(date);
2741
+ }
2742
+ return dates;
2743
+ }
2744
+
2641
2745
  /******/
2642
2746
  return __webpack_exports__;
2643
2747
  /******/
@@ -2818,7 +2922,9 @@ var EventCalendar = function EventCalendar(props) {
2818
2922
  onModalDeleteEvent = props.onModalDeleteEvent,
2819
2923
  onCellMouseEnter = props.onCellMouseEnter,
2820
2924
  onCellMouseLeave = props.onCellMouseLeave,
2821
- onCellClick = props.onCellClick;
2925
+ onCellClick = props.onCellClick,
2926
+ onCellMouseUp = props.onCellMouseUp,
2927
+ onKeyPressed = props.onKeyPressed;
2822
2928
  var DAYS = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
2823
2929
  var DAYS_LEAP = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
2824
2930
  var WEEK = langWeek || ['MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN'];
@@ -2987,10 +3093,40 @@ var EventCalendar = function EventCalendar(props) {
2987
3093
  }); // [0,1,..,30,31]
2988
3094
  var rows = Math.ceil(allDays.length / 7); // 5
2989
3095
 
2990
- return Array.from({
3096
+ //
3097
+ var _tempCells = Array.from({
2991
3098
  length: rows
2992
- }).fill(null).map(function (_, i) {
2993
- var _col = allDays.slice(i * 7, (i + 1) * 7);
3099
+ }).fill(null);
3100
+ var _getForwardFill = function _getForwardFill(_year, _month) {
3101
+ // Get the last day of the previous month
3102
+ var lastDayOfLastMonth = new Date(_year, _month - 1, 0);
3103
+ var last7Days = [];
3104
+
3105
+ // Rewind 7 days forward from the last day
3106
+ for (var i = 0; i < 7; i++) {
3107
+ last7Days.unshift(new Date(lastDayOfLastMonth));
3108
+ lastDayOfLastMonth.setDate(lastDayOfLastMonth.getDate() - 1);
3109
+ }
3110
+ return last7Days.map(function (v) {
3111
+ return (0,funda_utils_dist_cjs_date__WEBPACK_IMPORTED_MODULE_1__.getCalendarDate)(v);
3112
+ });
3113
+ };
3114
+ var _getBackFill = function _getBackFill(_year, _month) {
3115
+ // Get the first day of the next month
3116
+ var firstDayOfNextMonth = new Date(_year, _month, 1);
3117
+ var first7Days = [];
3118
+
3119
+ // Rewind 7 days forward from the first day of the next month
3120
+ for (var i = 0; i < 7; i++) {
3121
+ first7Days.push(new Date(firstDayOfNextMonth));
3122
+ firstDayOfNextMonth.setDate(firstDayOfNextMonth.getDate() + 1);
3123
+ }
3124
+ return first7Days.map(function (v) {
3125
+ return (0,funda_utils_dist_cjs_date__WEBPACK_IMPORTED_MODULE_1__.getCalendarDate)(v);
3126
+ });
3127
+ };
3128
+ return _tempCells.map(function (_, j) {
3129
+ var _col = allDays.slice(j * 7, (j + 1) * 7);
2994
3130
 
2995
3131
  // back fill
2996
3132
  var backFillArr = [];
@@ -2998,46 +3134,56 @@ var EventCalendar = function EventCalendar(props) {
2998
3134
  backFillArr.push(null);
2999
3135
  }
3000
3136
  _col.splice.apply(_col, [_col.length, 0].concat(_toConsumableArray(backFillArr)));
3137
+
3138
+ //
3139
+ var isFirstGroup = j === 0;
3140
+ var isLastGroup = j === _tempCells.length - 1;
3141
+
3142
+ // forward fill
3143
+ var __forwardFillDate = _getForwardFill(year, month + 1);
3144
+
3145
+ // back fill
3146
+ var __backFillDate = _getBackFill(year, month + 1);
3147
+ var _getDateShow = function _getDateShow(_dayIndex, _m, _startDay, _month) {
3148
+ var currentDay = typeof _dayIndex === 'number' ? _dayIndex - (_startDay - 2) : 0; // ..., -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, ...
3149
+
3150
+ // date
3151
+ var _dateShow = currentDay > 0 ? "".concat(year, "-").concat(_month + 1, "-").concat(currentDay) : '';
3152
+
3153
+ // forward & back
3154
+ if (isFirstGroup && _dateShow === '') {
3155
+ _dateShow = __forwardFillDate.at(currentDay - 1);
3156
+ }
3157
+ if (isLastGroup && _dateShow === '') {
3158
+ _dateShow = __backFillDate.at(_m);
3159
+ }
3160
+ return {
3161
+ date: (0,funda_utils_dist_cjs_date__WEBPACK_IMPORTED_MODULE_1__.getCalendarDate)(_dateShow),
3162
+ firstGroup: isFirstGroup,
3163
+ lastGroup: isLastGroup,
3164
+ validDisplayDate: currentDay > 0 && currentDay <= days[month]
3165
+ };
3166
+ };
3167
+
3168
+ //
3001
3169
  return {
3002
3170
  month: currentMonth,
3003
3171
  startDay: currentStartDay,
3004
- row: i,
3005
- col: _col
3172
+ row: j,
3173
+ col: _col,
3174
+ dateInfo: _col.map(function (k, m) {
3175
+ var _lastWeekDays = _col.filter(Boolean).length;
3176
+ return _getDateShow(k, m - _lastWeekDays, currentStartDay, currentMonth);
3177
+ }),
3178
+ weekDisplay: _col.map(function (k, m) {
3179
+ return WEEK[m];
3180
+ }),
3181
+ week: _col.map(function (k, m) {
3182
+ return m;
3183
+ })
3006
3184
  };
3007
3185
  });
3008
3186
  };
3009
- var getForwardFill = function getForwardFill() {
3010
- var _getCells$at, _getCells$at2;
3011
- var prevMonthStartDay = (_getCells$at = getCells('forward').at(-1)) === null || _getCells$at === void 0 ? void 0 : _getCells$at.startDay;
3012
- var prevMonthLastRowNums = (_getCells$at2 = getCells('forward').at(-1)) === null || _getCells$at2 === void 0 ? void 0 : _getCells$at2.col.filter(Boolean);
3013
- if (prevMonthLastRowNums) {
3014
- if (prevMonthLastRowNums.length === 7) return []; // no remaining
3015
-
3016
- return prevMonthLastRowNums.map(function (dayIndex) {
3017
- var d = typeof dayIndex === 'number' ? dayIndex - (prevMonthStartDay - 2) : 0;
3018
- return d;
3019
- });
3020
- } else {
3021
- return [];
3022
- }
3023
- };
3024
- var getBackFill = function getBackFill() {
3025
- var _getCells$at3, _getCells$at4;
3026
- var prevMonthStartDay = (_getCells$at3 = getCells('back').at(0)) === null || _getCells$at3 === void 0 ? void 0 : _getCells$at3.startDay;
3027
- var prevMonthLastRowNums = (_getCells$at4 = getCells('back').at(0)) === null || _getCells$at4 === void 0 ? void 0 : _getCells$at4.col.filter(Boolean);
3028
- if (prevMonthLastRowNums) {
3029
- if (prevMonthLastRowNums.length === 7) return []; // no remaining
3030
-
3031
- return prevMonthLastRowNums.map(function (dayIndex) {
3032
- var d = typeof dayIndex === 'number' ? dayIndex - (prevMonthStartDay - 2) : 0;
3033
- return d;
3034
- }).filter(function (n) {
3035
- return n > 0;
3036
- });
3037
- } else {
3038
- return [];
3039
- }
3040
- };
3041
3187
  function setTodayDate(inputDate) {
3042
3188
  setDay(inputDate.getDate());
3043
3189
  setMonth(inputDate.getMonth());
@@ -3173,7 +3319,11 @@ var EventCalendar = function EventCalendar(props) {
3173
3319
  onListRenderComplete === null || onListRenderComplete === void 0 ? void 0 : onListRenderComplete();
3174
3320
  }, [eventsValue, customTodayDate]);
3175
3321
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
3176
- className: (0,funda_utils_dist_cjs_cls__WEBPACK_IMPORTED_MODULE_2__.combinedCls)("e-cal-normal__wrapper", calendarWrapperClassName)
3322
+ className: (0,funda_utils_dist_cjs_cls__WEBPACK_IMPORTED_MODULE_2__.combinedCls)("e-cal-normal__wrapper", calendarWrapperClassName),
3323
+ onKeyDown: function onKeyDown(e) {
3324
+ onKeyPressed === null || onKeyPressed === void 0 ? void 0 : onKeyPressed(e);
3325
+ },
3326
+ tabIndex: -1
3177
3327
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
3178
3328
  className: "e-cal-normal__header bg-body-tertiary"
3179
3329
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
@@ -3244,42 +3394,28 @@ var EventCalendar = function EventCalendar(props) {
3244
3394
  }
3245
3395
  });
3246
3396
  })), getCells().map(function (item, j) {
3247
- var isFirstRow = j === 0;
3248
3397
  var isLastRow = j === getCells().length - 1;
3249
-
3250
- // forward fill
3251
- var __forwardFillNum = getForwardFill();
3252
-
3253
- // back fill
3254
- var __backFillNum = getBackFill();
3255
3398
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
3256
3399
  key: 'row' + item.row,
3257
3400
  className: "e-cal-normal__row"
3258
3401
  }, item.col.map(function (dayIndex, i) {
3259
- var d = typeof dayIndex === 'number' ? dayIndex - (startDay - 2) : 0;
3260
- var _currentData = val.filter(function (item) {
3261
- return (0,funda_utils_dist_cjs_date__WEBPACK_IMPORTED_MODULE_1__.getCalendarDate)(item.date) === (0,funda_utils_dist_cjs_date__WEBPACK_IMPORTED_MODULE_1__.getCalendarDate)("".concat(year, "-").concat(month + 1, "-").concat(d));
3262
- });
3263
- var isLastCol = i === item.col.length - 1;
3402
+ var isLastCell = i === item.col.length - 1;
3264
3403
 
3265
3404
  // date
3266
- var _dateShow = d > 0 ? "".concat(year, "-").concat(month + 1, "-").concat(d) : '';
3267
- var isForward = isFirstRow && __forwardFillNum && typeof __forwardFillNum[i] !== 'undefined';
3268
- var isBack = isLastRow && __backFillNum && typeof __backFillNum[i - item.col.filter(Boolean).length] !== 'undefined';
3269
- if (isForward && _dateShow === '') {
3270
- if (month + 1 === 1) {
3271
- _dateShow = "".concat(year - 1, "-12-").concat(__forwardFillNum[i]);
3272
- } else {
3273
- _dateShow = "".concat(year, "-").concat(month, "-").concat(__forwardFillNum[i]);
3274
- }
3275
- }
3276
- if (isBack && _dateShow === '') {
3277
- if (month + 1 === 12) {
3278
- _dateShow = "".concat(year + 1, "-1-").concat(__backFillNum[i - item.col.filter(Boolean).length]);
3279
- } else {
3280
- _dateShow = "".concat(year, "-").concat(month + 2, "-").concat(__backFillNum[i - item.col.filter(Boolean).length]);
3281
- }
3282
- }
3405
+ var _dateShow = item.dateInfo[i].date;
3406
+ var _dateDayShow = _dateShow.split('-').at(-1);
3407
+
3408
+ // week day
3409
+ var weekDay = item.week[i];
3410
+
3411
+ // helper
3412
+ var d = parseFloat(_dateDayShow);
3413
+ var _currentData = val.filter(function (item) {
3414
+ return (0,funda_utils_dist_cjs_date__WEBPACK_IMPORTED_MODULE_1__.getCalendarDate)(item.date) === _dateShow;
3415
+ });
3416
+ var isInteractive = item.dateInfo[i].validDisplayDate; // The date on which the user interaction can occur, e.g. click, modify
3417
+ var isForward = item.dateInfo[i].firstGroup && !isInteractive;
3418
+ var isBack = item.dateInfo[i].lastGroup && !isInteractive;
3283
3419
  var _eventContent = function _eventContent() {
3284
3420
  if (_currentData.length === 0 || !Array.isArray(_currentData) || typeof _currentData[0].list === 'undefined') {
3285
3421
  return null;
@@ -3294,9 +3430,9 @@ var EventCalendar = function EventCalendar(props) {
3294
3430
  'last': cellItemIndex === _items.length - 1
3295
3431
  }),
3296
3432
  key: "cell-item-".concat(cellItemIndex, "}"),
3297
- "data-date": (0,funda_utils_dist_cjs_date__WEBPACK_IMPORTED_MODULE_1__.getCalendarDate)(_dateShow),
3298
- "data-day": (0,funda_utils_dist_cjs_date__WEBPACK_IMPORTED_MODULE_1__.padZero)(d),
3299
- "data-week": i,
3433
+ "data-date": _dateShow,
3434
+ "data-day": _dateDayShow,
3435
+ "data-week": weekDay,
3300
3436
  onClick: function onClick(e) {
3301
3437
  var _cellItem$callback;
3302
3438
  e.stopPropagation();
@@ -3306,7 +3442,7 @@ var EventCalendar = function EventCalendar(props) {
3306
3442
 
3307
3443
  // Callback
3308
3444
  (_cellItem$callback = cellItem.callback) === null || _cellItem$callback === void 0 ? void 0 : _cellItem$callback.call(cellItem);
3309
- if (d > 0) {
3445
+ if (isInteractive) {
3310
3446
  handleDayChange(e, d); // update current day
3311
3447
 
3312
3448
  onChangeDate === null || onChangeDate === void 0 ? void 0 : onChangeDate(e, cellItem);
@@ -3320,10 +3456,10 @@ var EventCalendar = function EventCalendar(props) {
3320
3456
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
3321
3457
  className: "e-cal-normal__day__event",
3322
3458
  style: typeof cellItem !== 'undefined' && cellItem.eventStyles !== 'undefined' ? cellItem.eventStyles : {},
3323
- dangerouslySetInnerHTML: {
3459
+ dangerouslySetInnerHTML: typeof cellItem.data === 'string' ? {
3324
3460
  __html: cellItem.data
3325
- }
3326
- }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
3461
+ } : undefined
3462
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().isValidElement(cellItem.data) ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, cellItem.data) : null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
3327
3463
  className: "e-cal-normal__day__eventdel ".concat(cellCloseBtnClassName || '')
3328
3464
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
3329
3465
  href: "#",
@@ -3341,7 +3477,7 @@ var EventCalendar = function EventCalendar(props) {
3341
3477
  var _existsContent = cellItem;
3342
3478
 
3343
3479
  //
3344
- if (d > 0) {
3480
+ if (isInteractive) {
3345
3481
  handleDayChange(e, d); // update current day
3346
3482
 
3347
3483
  onChangeDate === null || onChangeDate === void 0 ? void 0 : onChangeDate(e, {
@@ -3360,10 +3496,10 @@ var EventCalendar = function EventCalendar(props) {
3360
3496
  };
3361
3497
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
3362
3498
  className: (0,funda_utils_dist_cjs_cls__WEBPACK_IMPORTED_MODULE_2__.combinedCls)('e-cal-normal__cell e-cal-normal__day', {
3363
- 'empty': d <= 0,
3499
+ 'empty': !isInteractive,
3364
3500
  'today': d === now.getDate(),
3365
3501
  'selected': d === day,
3366
- 'last-cell': isLastCol,
3502
+ 'last-cell': isLastCell,
3367
3503
  'last-row': isLastRow
3368
3504
  }),
3369
3505
  key: "col" + i,
@@ -3373,22 +3509,25 @@ var EventCalendar = function EventCalendar(props) {
3373
3509
  onMouseEnter: function onMouseEnter(e) {
3374
3510
  onCellMouseEnter === null || onCellMouseEnter === void 0 ? void 0 : onCellMouseEnter(e);
3375
3511
  },
3376
- onMouseLeave: function onMouseLeave(e) {
3377
- onCellMouseLeave === null || onCellMouseLeave === void 0 ? void 0 : onCellMouseLeave(e);
3378
- },
3379
- onClick: function onClick(e) {
3512
+ onMouseDown: function onMouseDown(e) {
3380
3513
  //
3381
3514
  onCellClick === null || onCellClick === void 0 ? void 0 : onCellClick(e);
3382
- if (d > 0) {
3515
+ if (isInteractive) {
3383
3516
  handleDayChange(e, d); // update current day
3384
3517
  onChangeDate === null || onChangeDate === void 0 ? void 0 : onChangeDate(e, null);
3385
3518
  }
3519
+ },
3520
+ onMouseLeave: function onMouseLeave(e) {
3521
+ onCellMouseLeave === null || onCellMouseLeave === void 0 ? void 0 : onCellMouseLeave(e);
3522
+ },
3523
+ onMouseUp: function onMouseUp(e) {
3524
+ onCellMouseUp === null || onCellMouseUp === void 0 ? void 0 : onCellMouseUp(e);
3386
3525
  }
3387
- }, isForward ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
3388
- className: "disabled"
3389
- }, __forwardFillNum[i])) : null, d > 0 ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", null, d) : null, isBack ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
3390
- className: "disabled"
3391
- }, __backFillNum[i - item.col.filter(Boolean).length]) : null, _eventContent(), isForward || isBack ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
3526
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
3527
+ className: (0,funda_utils_dist_cjs_cls__WEBPACK_IMPORTED_MODULE_2__.combinedCls)({
3528
+ 'disabled': !isInteractive
3529
+ })
3530
+ }, d), _eventContent(), isForward || isBack ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
3392
3531
  className: "e-cal-normal__day__eventadd ".concat(cellAddBtnClassName || '')
3393
3532
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
3394
3533
  href: "#",
@@ -3405,7 +3544,7 @@ var EventCalendar = function EventCalendar(props) {
3405
3544
  setTableCellId(-1);
3406
3545
 
3407
3546
  //
3408
- if (d > 0) {
3547
+ if (isInteractive) {
3409
3548
  handleDayChange(e, d); // update current day
3410
3549
 
3411
3550
  onChangeDate === null || onChangeDate === void 0 ? void 0 : onChangeDate(e, {
@@ -31,12 +31,18 @@ export declare type EventCalendarTimelineProps = {
31
31
  tableListEndClassName?: string;
32
32
  tableListDividerClassName?: string;
33
33
  customTodayDate?: string;
34
+ multipleCells?: boolean;
35
+ appearance?: 'week' | 'month';
36
+ appearanceToggle?: boolean;
37
+ appearanceWeekTmpl?: (startDate: string, endDate: string) => void;
34
38
  eventsValue?: TimelineRowListConfig[];
35
39
  langWeek?: string[];
36
40
  langWeekFull?: string[];
37
41
  langMonths?: string[];
38
42
  langMonthsFull?: string[];
39
43
  langToday?: string;
44
+ langAppearanceLabelMonth?: string;
45
+ langAppearanceLabelWeek?: string;
40
46
  iconRemove?: React.ReactNode | string;
41
47
  iconAdd?: React.ReactNode | string;
42
48
  cellCloseBtnClassName?: string;
@@ -51,7 +57,9 @@ export declare type EventCalendarTimelineProps = {
51
57
  onChangeMonth?: (currentData: any) => void;
52
58
  onChangeYear?: (currentData: any) => void;
53
59
  onChangeToday?: (currentData: any) => void;
60
+ onChangeWeek?: (startDate: string, endDate: string) => void;
54
61
  onListRenderComplete?: () => void;
62
+ onChangeAppearanceMode?: (mode: string) => void;
55
63
  modalMaskOpacity?: string;
56
64
  modalMaxWidth?: number | string;
57
65
  modalMinHeight?: number | string;
@@ -72,7 +80,9 @@ export declare type EventCalendarTimelineProps = {
72
80
  onModalDeleteEvent?: (currentData: any, closewin: any, gridInit: Function) => void;
73
81
  onCellMouseEnter?: (el: any) => void;
74
82
  onCellMouseLeave?: (el: any) => void;
75
- onCellClick?: (el: any) => void;
83
+ onCellMouseUp?: (el: any, selectedCellsData: any[]) => void;
84
+ onCellClick?: (el: any, cellData: any) => void;
85
+ onKeyPressed?: (el: any, selectedCellsData: any[]) => void;
76
86
  tableListSectionTitle?: string | React.ReactNode;
77
87
  tableCellMinWidth?: number;
78
88
  tableTooltipDirection?: string;