@syncfusion/ej2-calendars 20.2.38 → 20.2.40
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/dist/ej2-calendars.umd.min.js +2 -2
- package/dist/ej2-calendars.umd.min.js.map +1 -1
- package/dist/es6/ej2-calendars.es2015.js +87 -33
- package/dist/es6/ej2-calendars.es2015.js.map +1 -1
- package/dist/es6/ej2-calendars.es5.js +85 -31
- package/dist/es6/ej2-calendars.es5.js.map +1 -1
- package/dist/global/ej2-calendars.min.js +2 -2
- package/dist/global/ej2-calendars.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +8 -8
- package/src/calendar/calendar.d.ts +3 -0
- package/src/calendar/calendar.js +1 -0
- package/src/calendar/islamic.js +84 -31
package/dist/global/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: index.d.ts
|
|
3
|
-
* version : 20.2.
|
|
3
|
+
* version : 20.2.40
|
|
4
4
|
* Copyright Syncfusion Inc. 2001 - 2020. All rights reserved.
|
|
5
5
|
* Use of this code is subject to the terms of our license.
|
|
6
6
|
* A copy of the current license can be obtained at any time by e-mailing
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"_from": "@syncfusion/ej2-calendars@*",
|
|
3
|
-
"_id": "@syncfusion/ej2-calendars@20.2.
|
|
3
|
+
"_id": "@syncfusion/ej2-calendars@20.2.38",
|
|
4
4
|
"_inBundle": false,
|
|
5
|
-
"_integrity": "sha512-
|
|
5
|
+
"_integrity": "sha512-3Nvq36mXmkyj4dgK6Xb2kxSA90GPfXT1cVO+115iy+KFnqEplCv18sbkLeMSZqkfKvCKmDVYfV/2S8IuhXu0OQ==",
|
|
6
6
|
"_location": "/@syncfusion/ej2-calendars",
|
|
7
7
|
"_phantomChildren": {},
|
|
8
8
|
"_requested": {
|
|
@@ -32,8 +32,8 @@
|
|
|
32
32
|
"/@syncfusion/ej2-schedule",
|
|
33
33
|
"/@syncfusion/ej2-vue-calendars"
|
|
34
34
|
],
|
|
35
|
-
"_resolved": "http://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-calendars/-/ej2-calendars-20.2.
|
|
36
|
-
"_shasum": "
|
|
35
|
+
"_resolved": "http://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-calendars/-/ej2-calendars-20.2.38.tgz",
|
|
36
|
+
"_shasum": "02258f4ba3c38c0a39179224cf5cd031961a7871",
|
|
37
37
|
"_spec": "@syncfusion/ej2-calendars@*",
|
|
38
38
|
"_where": "/jenkins/workspace/automation_release_19.1.0.1-ZPMUBNQ6AUYH6YGEFBPVYMEQLRRW2SLD4XCZ6GATNZJFYJ3RIAOA/packages/included",
|
|
39
39
|
"author": {
|
|
@@ -44,11 +44,11 @@
|
|
|
44
44
|
},
|
|
45
45
|
"bundleDependencies": false,
|
|
46
46
|
"dependencies": {
|
|
47
|
-
"@syncfusion/ej2-base": "~20.2.
|
|
47
|
+
"@syncfusion/ej2-base": "~20.2.39",
|
|
48
48
|
"@syncfusion/ej2-buttons": "~20.2.38",
|
|
49
49
|
"@syncfusion/ej2-inputs": "~20.2.38",
|
|
50
|
-
"@syncfusion/ej2-lists": "~20.2.
|
|
51
|
-
"@syncfusion/ej2-popups": "~20.2.
|
|
50
|
+
"@syncfusion/ej2-lists": "~20.2.39",
|
|
51
|
+
"@syncfusion/ej2-popups": "~20.2.40"
|
|
52
52
|
},
|
|
53
53
|
"deprecated": false,
|
|
54
54
|
"description": "A complete package of date or time components with built-in features such as date formatting, inline editing, multiple (range) selection, range restriction, month and year selection, strict mode, and globalization.",
|
|
@@ -81,6 +81,6 @@
|
|
|
81
81
|
"url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
|
|
82
82
|
},
|
|
83
83
|
"typings": "index.d.ts",
|
|
84
|
-
"version": "20.2.
|
|
84
|
+
"version": "20.2.40",
|
|
85
85
|
"sideEffects": false
|
|
86
86
|
}
|
|
@@ -44,8 +44,11 @@ export declare class CalendarBase extends Component<HTMLElement> implements INot
|
|
|
44
44
|
protected navigateNextHandler: Function;
|
|
45
45
|
protected l10: L10n;
|
|
46
46
|
protected todayDisabled: boolean;
|
|
47
|
+
protected nextIconClicked: boolean;
|
|
48
|
+
protected previousIconClicked: boolean;
|
|
47
49
|
protected tabIndex: string;
|
|
48
50
|
protected todayDate: Date;
|
|
51
|
+
protected islamicPreviousHeader: any;
|
|
49
52
|
protected calendarElement: HTMLElement;
|
|
50
53
|
protected isPopupClicked: boolean;
|
|
51
54
|
protected isDateSelected: boolean;
|
package/src/calendar/calendar.js
CHANGED
|
@@ -1095,6 +1095,7 @@ var CalendarBase = /** @class */ (function (_super) {
|
|
|
1095
1095
|
this.currentDate.setFullYear(d.getFullYear());
|
|
1096
1096
|
}
|
|
1097
1097
|
else {
|
|
1098
|
+
this.islamicPreviousHeader = this.headerElement.textContent;
|
|
1098
1099
|
var islamicDate = this.islamicModule.getIslamicDate(d);
|
|
1099
1100
|
this.currentDate = this.islamicModule.toGregorian(islamicDate.year, islamicDate.month, 1);
|
|
1100
1101
|
}
|
package/src/calendar/islamic.js
CHANGED
|
@@ -201,6 +201,8 @@ var Islamic = /** @class */ (function () {
|
|
|
201
201
|
this.calendarInstance.switchView(view);
|
|
202
202
|
break;
|
|
203
203
|
case 'Decade':
|
|
204
|
+
this.calendarInstance.nextIconClicked = true;
|
|
205
|
+
islamicDate.year = islamicDate.year - this.calendarInstance.headerElement.textContent.split('-')[0].trim() === 1 ? islamicDate.year + 1 : islamicDate.year;
|
|
204
206
|
this.calendarInstance.currentDate = this.toGregorian(islamicDate.year + 10, islamicDate.month, 1);
|
|
205
207
|
this.calendarInstance.switchView(view);
|
|
206
208
|
break;
|
|
@@ -220,6 +222,7 @@ var Islamic = /** @class */ (function () {
|
|
|
220
222
|
this.calendarInstance.switchView(currentView);
|
|
221
223
|
break;
|
|
222
224
|
case 'Decade':
|
|
225
|
+
this.calendarInstance.previousIconClicked = true;
|
|
223
226
|
this.calendarInstance.currentDate = this.toGregorian(islamicDate.year - 10, islamicDate.month - 1, 1);
|
|
224
227
|
this.calendarInstance.switchView(currentView);
|
|
225
228
|
break;
|
|
@@ -289,43 +292,93 @@ var Islamic = /** @class */ (function () {
|
|
|
289
292
|
var endFullYr = endYr.getFullYear();
|
|
290
293
|
var startHdrYr = this.calendarInstance.globalize.formatDate(startYr, { type: 'dateTime', format: 'y', calendar: 'islamic' });
|
|
291
294
|
var endHdrYr = this.calendarInstance.globalize.formatDate(endYr, { type: 'dateTime', format: 'y', calendar: 'islamic' });
|
|
295
|
+
if (this.calendarInstance.islamicPreviousHeader) {
|
|
296
|
+
startHdrYr = this.calendarInstance.islamicPreviousHeader.split('-')[0].trim();
|
|
297
|
+
endHdrYr = this.calendarInstance.islamicPreviousHeader.split('-')[1].trim();
|
|
298
|
+
this.calendarInstance.islamicPreviousHeader = null;
|
|
299
|
+
}
|
|
300
|
+
var splityear = this.calendarInstance.headerElement.textContent.split('-');
|
|
301
|
+
if (this.calendarInstance.previousIconClicked) {
|
|
302
|
+
for (var i = 0; i <= splityear.length; i++) {
|
|
303
|
+
endHdrYr = endHdrYr - splityear[i] === 2 || splityear[i] - endHdrYr === 2 ? (parseInt(endHdrYr) + 1).toString() : endHdrYr - splityear[i] === 3 || splityear[i] - endHdrYr === 3 ? (parseInt(endHdrYr) + 2).toString() : endHdrYr - splityear[i] === 4 || splityear[i] - endHdrYr === 4 ? (parseInt(endHdrYr) + 3).toString() : endHdrYr - splityear[i] === 5 || splityear[i] - endHdrYr === 5 ? (parseInt(endHdrYr) + 4).toString() : endHdrYr;
|
|
304
|
+
if (endHdrYr - splityear[i] === 0 || splityear[i] - endHdrYr === 0) {
|
|
305
|
+
endHdrYr = (parseInt(endHdrYr) - 1).toString();
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
startHdrYr = endHdrYr - startHdrYr === 10
|
|
309
|
+
? (parseInt(startHdrYr) + 1).toString() : endHdrYr - startHdrYr === 11
|
|
310
|
+
? (parseInt(startHdrYr) + 2).toString() : endHdrYr - startHdrYr === 12
|
|
311
|
+
? (parseInt(startHdrYr) + 3).toString() : startHdrYr;
|
|
312
|
+
startHdrYr = endHdrYr - startHdrYr === 8 ? (parseInt(startHdrYr) - 1).toString() : startHdrYr;
|
|
313
|
+
}
|
|
314
|
+
if (this.calendarInstance.nextIconClicked) {
|
|
315
|
+
for (var i = 0; i <= splityear.length; i++) {
|
|
316
|
+
if (startHdrYr - splityear[i] === 0 || splityear[i] - startHdrYr === 0) {
|
|
317
|
+
startHdrYr = (parseInt(startHdrYr) + 1).toString();
|
|
318
|
+
}
|
|
319
|
+
if (startHdrYr - splityear[i] === 2 && startHdrYr > splityear[i].trim()) {
|
|
320
|
+
startHdrYr = (parseInt(startHdrYr) - 1).toString();
|
|
321
|
+
}
|
|
322
|
+
if (splityear[i] - startHdrYr === 1 && startHdrYr < splityear[i].trim()) {
|
|
323
|
+
startHdrYr = (parseInt(startHdrYr) + 2).toString();
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
endHdrYr = endHdrYr - startHdrYr === 10 ? (parseInt(endHdrYr) - 1).toString() : endHdrYr;
|
|
327
|
+
endHdrYr = endHdrYr - startHdrYr === 7
|
|
328
|
+
? (parseInt(endHdrYr) + 2).toString() : endHdrYr - startHdrYr === 8
|
|
329
|
+
? (parseInt(endHdrYr) + 1).toString() : endHdrYr;
|
|
330
|
+
}
|
|
292
331
|
this.calendarInstance.headerTitleElement.textContent = startHdrYr + ' - ' + (endHdrYr);
|
|
293
|
-
|
|
294
|
-
var
|
|
332
|
+
this.calendarInstance.nextIconClicked = this.calendarInstance.previousIconClicked = false;
|
|
333
|
+
var year = (parseInt(startHdrYr) - 2).toString();
|
|
334
|
+
startFullYr = Math.round(parseInt(startHdrYr) * 0.97 + 622);
|
|
335
|
+
endFullYr = Math.round(parseInt(endHdrYr) * 0.97 + 622);
|
|
336
|
+
var startYear = Math.round(parseInt(year) * 0.97 + 622);
|
|
295
337
|
for (var rowCount = 1; rowCount <= yearCell; ++rowCount) {
|
|
296
|
-
var
|
|
297
|
-
localDate.setFullYear(
|
|
338
|
+
var year_1 = startYear + rowCount;
|
|
339
|
+
localDate.setFullYear(year_1);
|
|
298
340
|
localDate.setDate(1);
|
|
299
341
|
localDate.setMonth(0);
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
attributes(tdEle, { 'role': 'gridcell' });
|
|
305
|
-
var dayLink = this.calendarInstance.createElement('span');
|
|
306
|
-
dayLink.textContent = this.calendarInstance.globalize.formatDate(localDate, { type: 'dateTime', format: 'y', calendar: 'islamic' });
|
|
307
|
-
if ((year < startFullYr) || (year > endFullYr)) {
|
|
308
|
-
addClass([tdEle], OTHERMONTH);
|
|
309
|
-
}
|
|
310
|
-
else if (year < new Date(this.islamicInValue(this.calendarInstance.min)).getFullYear()
|
|
311
|
-
|| year > new Date(this.islamicInValue(this.calendarInstance.max)).getFullYear()) {
|
|
312
|
-
addClass([tdEle], DISABLED);
|
|
313
|
-
}
|
|
314
|
-
else if (!isNullOrUndefined(value) &&
|
|
315
|
-
(this.getIslamicDate(localDate)).year ===
|
|
316
|
-
(this.getIslamicDate(value)).year) {
|
|
317
|
-
addClass([tdEle], SELECTED);
|
|
342
|
+
if ((this.getIslamicDate(localDate).year - islamicDate.year) > 1) {
|
|
343
|
+
localDate.setMonth(1);
|
|
344
|
+
rowCount = rowCount - 1;
|
|
345
|
+
localDate.setFullYear(localDate.getFullYear() - 1);
|
|
318
346
|
}
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
347
|
+
islamicDate = this.getIslamicDate(localDate);
|
|
348
|
+
var gregorianObject_2 = HijriParser.toGregorian(islamicDate.year, 1, 1);
|
|
349
|
+
localDate = gregorianObject_2;
|
|
350
|
+
if (islamicDate.year === parseInt(startHdrYr) - 1 || islamicDate.year >= startHdrYr && islamicDate.year <= endFullYr || islamicDate.year === parseInt(endHdrYr) + 1) {
|
|
351
|
+
var tdEle = this.islamicDayCell(localDate);
|
|
352
|
+
attributes(tdEle, { 'role': 'gridcell' });
|
|
353
|
+
var dayLink = this.calendarInstance.createElement('span');
|
|
354
|
+
dayLink.textContent = this.calendarInstance.globalize.formatDate(localDate, { type: 'dateTime', format: 'y', calendar: 'islamic' });
|
|
355
|
+
if (islamicDate.year === parseInt(startHdrYr) - 1 || (year_1 < startFullYr) || (year_1 > endFullYr) && islamicDate.year !== parseInt(endHdrYr)) {
|
|
356
|
+
addClass([tdEle], OTHERMONTH);
|
|
357
|
+
if (year_1 < new Date(this.islamicInValue(this.calendarInstance.min)).getFullYear()
|
|
358
|
+
|| year_1 > new Date(this.islamicInValue(this.calendarInstance.max)).getFullYear()) {
|
|
359
|
+
addClass([tdEle], DISABLED);
|
|
360
|
+
}
|
|
322
361
|
}
|
|
362
|
+
else if (year_1 < new Date(this.islamicInValue(this.calendarInstance.min)).getFullYear()
|
|
363
|
+
|| year_1 > new Date(this.islamicInValue(this.calendarInstance.max)).getFullYear()) {
|
|
364
|
+
addClass([tdEle], DISABLED);
|
|
365
|
+
}
|
|
366
|
+
else if (!isNullOrUndefined(value) &&
|
|
367
|
+
(this.getIslamicDate(localDate)).year ===
|
|
368
|
+
(this.getIslamicDate(value)).year) {
|
|
369
|
+
addClass([tdEle], SELECTED);
|
|
370
|
+
}
|
|
371
|
+
else {
|
|
372
|
+
if (localDate.getFullYear() === this.calendarInstance.currentDate.getFullYear() && !tdEle.classList.contains(DISABLED)) {
|
|
373
|
+
addClass([tdEle], FOCUSEDDATE);
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
if (!tdEle.classList.contains(DISABLED)) {
|
|
377
|
+
EventHandler.add(tdEle, 'click', this.calendarInstance.clickHandler, this.calendarInstance);
|
|
378
|
+
}
|
|
379
|
+
tdEle.appendChild(dayLink);
|
|
380
|
+
tdEles.push(tdEle);
|
|
323
381
|
}
|
|
324
|
-
if (!tdEle.classList.contains(DISABLED)) {
|
|
325
|
-
EventHandler.add(tdEle, 'click', this.calendarInstance.clickHandler, this.calendarInstance);
|
|
326
|
-
}
|
|
327
|
-
tdEle.appendChild(dayLink);
|
|
328
|
-
tdEles.push(tdEle);
|
|
329
382
|
}
|
|
330
383
|
this.islamicRenderTemplate(tdEles, numCells, 'e-decade', e, value);
|
|
331
384
|
};
|
|
@@ -352,7 +405,7 @@ var Islamic = /** @class */ (function () {
|
|
|
352
405
|
var otherMonthCell = 6;
|
|
353
406
|
var row = count;
|
|
354
407
|
var rowCount = 0;
|
|
355
|
-
for (var dayCell = 0; dayCell < elements.length / count; ++dayCell) {
|
|
408
|
+
for (var dayCell = 0; dayCell < Math.round(elements.length / count); ++dayCell) {
|
|
356
409
|
trEle = this.calendarInstance.createElement('tr', { attrs: { 'role': 'row' } });
|
|
357
410
|
for (rowCount = 0 + rowCount; rowCount < row; rowCount++) {
|
|
358
411
|
if (!elements[rowCount].classList.contains('e-week-number') && !isNullOrUndefined(elements[rowCount].children[0])) {
|