diff --git a/packages/__tests__/src/date-selection/implicit-unselect.ts b/packages/__tests__/src/date-selection/implicit-unselect.ts index 815a5d3534..302bf19932 100644 --- a/packages/__tests__/src/date-selection/implicit-unselect.ts +++ b/packages/__tests__/src/date-selection/implicit-unselect.ts @@ -11,10 +11,10 @@ describe('implicit unselection', () => { initCalendar({ select() { - selectFired++ + selectFired += 1 }, unselect() { - unselectFired++ + unselectFired += 1 }, }) @@ -33,10 +33,10 @@ describe('implicit unselection', () => { initCalendar({ select() { - selectFired++ + selectFired += 1 }, unselect() { - unselectFired++ + unselectFired += 1 }, }) diff --git a/packages/__tests__/src/datelib/main.ts b/packages/__tests__/src/datelib/main.ts index adc655880a..07aa816e3e 100644 --- a/packages/__tests__/src/datelib/main.ts +++ b/packages/__tests__/src/datelib/main.ts @@ -1,5 +1,13 @@ -import { DateEnv, createFormatter, createDuration, startOfDay, diffWholeWeeks, diffWholeDays, diffDayAndTime, Calendar } from '@fullcalendar/core' - +import { + DateEnv, + createFormatter, + createDuration, + startOfDay, + diffWholeWeeks, + diffWholeDays, + diffDayAndTime, + Calendar, +} from '@fullcalendar/core' import dayGridPlugin from '@fullcalendar/daygrid' import { getDSTDeadZone } from '../lib/dst-dead-zone' import { formatPrettyTimeZoneOffset, formatIsoTimeZoneOffset, formatIsoWithoutTz } from '../lib/datelib-utils' @@ -230,13 +238,13 @@ describe('datelib', () => { }) it('works with different days of same month, with inprecise formatter', () => { - let formatter = createFormatter({ + let otherFormatter = createFormatter({ month: 'long', year: 'numeric', }) let m0 = env.createMarker('2018-06-08') let m1 = env.createMarker('2018-06-09') - let s = env.formatRange(m0, m1, formatter) + let s = env.formatRange(m0, m1, otherFormatter) expect(s).toBe('June 2018') }) @@ -518,7 +526,7 @@ describe('datelib', () => { let deadZone = getDSTDeadZone() if (!deadZone) { - console.log('could not determine DST dead zone') + console.log('could not determine DST dead zone') // eslint-disable-line no-console } else { // use a utc date to get a ISO8601 string representation of the start of the dead zone let utcDate = new Date(Date.UTC( diff --git a/packages/__tests__/src/event-data/Event.mutation.ts b/packages/__tests__/src/event-data/Event.mutation.ts index c0499ee0c3..b80af2ebcd 100644 --- a/packages/__tests__/src/event-data/Event.mutation.ts +++ b/packages/__tests__/src/event-data/Event.mutation.ts @@ -12,7 +12,7 @@ describe('event mutations on non-instances', () => { let renderCnt = 0 let calendar = initCalendar({ eventContent(arg) { - renderCnt++ + renderCnt += 1 if (renderCnt === 2) { arg.event.setStart('2018-08-04') arg.event.setEnd('2018-10-04') diff --git a/packages/__tests__/src/event-data/dynamic-options.ts b/packages/__tests__/src/event-data/dynamic-options.ts index 55b093d835..68e06f8118 100644 --- a/packages/__tests__/src/event-data/dynamic-options.ts +++ b/packages/__tests__/src/event-data/dynamic-options.ts @@ -5,7 +5,7 @@ describe('setting option dynamically', () => { initCalendar({ initialView: 'dayGridMonth', events(arg, callback) { - fetchCnt++ + fetchCnt += 1 callback([]) }, }) diff --git a/packages/__tests__/src/event-data/eventDataTransform.ts b/packages/__tests__/src/event-data/eventDataTransform.ts index 3d99188f78..604e308be6 100644 --- a/packages/__tests__/src/event-data/eventDataTransform.ts +++ b/packages/__tests__/src/event-data/eventDataTransform.ts @@ -1,9 +1,9 @@ describe('eventDataTransform', () => { - let transform = function (raw) { - return $.extend({}, raw, { + let transform = (raw) => ( + $.extend({}, raw, { was_processed: true, }) - } + ) describeOptions({ 'when on the calendar': { diff --git a/packages/__tests__/src/event-data/events-function.ts b/packages/__tests__/src/event-data/events-function.ts index 85225ffc21..15028db596 100644 --- a/packages/__tests__/src/event-data/events-function.ts +++ b/packages/__tests__/src/event-data/events-function.ts @@ -86,12 +86,12 @@ describe('events as a function', () => { loadingCallArgs.push(bool) }, eventSources: [ - function (arg, callback) { + (arg, callback) => { setTimeout(() => { callback([]) }, 0) }, - function (arg, callback) { + (arg, callback) => { setTimeout(() => { callback([]) }, 10) diff --git a/packages/__tests__/src/event-data/lazyFetching.ts b/packages/__tests__/src/event-data/lazyFetching.ts index d2b331e3a8..46fe917cc4 100644 --- a/packages/__tests__/src/event-data/lazyFetching.ts +++ b/packages/__tests__/src/event-data/lazyFetching.ts @@ -11,9 +11,8 @@ describe('lazyFetching', () => { }) it('won\'t fetch weeks already queried', () => { - let arg let options = { - events(arg, callback) { + events(fetchInfo, callback) { callback([]) }, } @@ -27,7 +26,7 @@ describe('lazyFetching', () => { expect(options.events.calls.count()).toBe(1) - arg = options.events.calls.argsFor(0)[0] + let arg = options.events.calls.argsFor(0)[0] expect(arg.start).toEqualDate('2017-10-01T00:00:00Z') expect(arg.end).toEqualDate('2017-11-12T00:00:00Z') }) @@ -39,9 +38,8 @@ describe('lazyFetching', () => { }) it('will fetch each new week range', () => { - let arg let options = { - events(arg, callback) { + events(fetchInfo, callback) { callback([]) }, } @@ -55,7 +53,7 @@ describe('lazyFetching', () => { expect(options.events.calls.count()).toBe(5) - arg = options.events.calls.argsFor(0)[0] + let arg = options.events.calls.argsFor(0)[0] expect(arg.start).toEqualDate('2017-10-01T00:00:00Z') expect(arg.end).toEqualDate('2017-11-12T00:00:00Z') diff --git a/packages/__tests__/src/event-drag/between-calendars.ts b/packages/__tests__/src/event-drag/between-calendars.ts index 88c6f0b1fe..9403eef167 100644 --- a/packages/__tests__/src/event-drag/between-calendars.ts +++ b/packages/__tests__/src/event-drag/between-calendars.ts @@ -41,6 +41,7 @@ describe('dragging events between calendars', () => { it('fires all triggers', (done) => { let triggerNames = [] let eventAllowCalled = false + let eventEl calendar0 = new Calendar(el0, { plugins: [interactionPlugin, dayGridPlugin], @@ -93,7 +94,7 @@ describe('dragging events between calendars', () => { let dayGridWrapper0 = new DayGridViewWrapper(calendar0).dayGrid let dayGridWrapper1 = new DayGridViewWrapper(calendar1).dayGrid - let eventEl = dayGridWrapper0.getEventEls()[0] + eventEl = dayGridWrapper0.getEventEls()[0] let dayEl = dayGridWrapper1.getDayEls('2019-01-05')[0] let point1 = getRectCenter(dayEl.getBoundingClientRect()) diff --git a/packages/__tests__/src/event-drag/repeating.ts b/packages/__tests__/src/event-drag/repeating.ts index 35d26c9baa..ca149b694f 100644 --- a/packages/__tests__/src/event-drag/repeating.ts +++ b/packages/__tests__/src/event-drag/repeating.ts @@ -42,6 +42,7 @@ describe('event dragging on repeating events', () => { }) it('hides other repeating events when dragging', (done) => { + let dayGridWrapper let calendar = initCalendar({ eventDragStart() { setTimeout(() => { // try go execute DURING the drag @@ -55,8 +56,8 @@ describe('event dragging on repeating events', () => { }, 10) }, }) - let dayGridWrapper = new DayGridViewWrapper(calendar).dayGrid + dayGridWrapper = new DayGridViewWrapper(calendar).dayGrid $(dayGridWrapper.getFirstEventEl()).simulate('drag', { dx: 100, duration: 100, // ample time for separate eventDragStart/eventDrop @@ -65,6 +66,7 @@ describe('event dragging on repeating events', () => { // inverse of above test it('doesnt accidentally hide all non-id events when dragging', (done) => { + let dayGridWrapper let calendar = initCalendar({ events: [ { @@ -90,8 +92,8 @@ describe('event dragging on repeating events', () => { }, 10) }, }) - let dayGridWrapper = new DayGridViewWrapper(calendar).dayGrid + dayGridWrapper = new DayGridViewWrapper(calendar).dayGrid $(dayGridWrapper.getFirstEventEl()).simulate('drag', { dx: 100, duration: 100, // ample time for separate eventDragStart/eventDrop diff --git a/packages/__tests__/src/event-resize/mirror-hooks.ts b/packages/__tests__/src/event-resize/mirror-hooks.ts index 5b85886de1..32f3f22994 100644 --- a/packages/__tests__/src/event-resize/mirror-hooks.ts +++ b/packages/__tests__/src/event-resize/mirror-hooks.ts @@ -26,17 +26,17 @@ describe('event resize mirror', () => { let calendar = initCalendar({ eventDidMount(info) { if (info.isMirror) { - mirrorMountCalls++ + mirrorMountCalls += 1 } }, eventContent(info) { if (info.isMirror) { - mirrorContentCalls++ + mirrorContentCalls += 1 } }, eventWillUnmount(info) { if (info.isMirror) { - mirrorUnmountCalls++ + mirrorUnmountCalls += 1 } }, }) @@ -76,17 +76,17 @@ describe('event resize mirror', () => { let calendar = initCalendar({ eventDidMount(info) { if (info.isMirror) { - mirrorMountCalls++ + mirrorMountCalls += 1 } }, eventContent(info) { if (info.isMirror) { - mirrorContentCalls++ + mirrorContentCalls += 1 } }, eventWillUnmount(info) { if (info.isMirror) { - mirrorUnmountCalls++ + mirrorUnmountCalls += 1 } }, }) diff --git a/packages/__tests__/src/event-source/eventSourceSuccess.ts b/packages/__tests__/src/event-source/eventSourceSuccess.ts index 5138f3d257..53bb4b78c4 100644 --- a/packages/__tests__/src/event-source/eventSourceSuccess.ts +++ b/packages/__tests__/src/event-source/eventSourceSuccess.ts @@ -1,5 +1,5 @@ describe('eventSourceSuccess', () => { - const FETCH_FUNC = function (info, successCallback) { + const FETCH_FUNC = (info, successCallback) => { successCallback({ something: [ { title: 'hi', start: '2018-10-01' }, @@ -7,9 +7,7 @@ describe('eventSourceSuccess', () => { }) } - const TRANSFORM = function (input) { - return input.something - } + const TRANSFORM = (input) => input.something pushOptions({ initialDate: '2018-10-01', diff --git a/packages/__tests__/src/event-source/refetch.ts b/packages/__tests__/src/event-source/refetch.ts index f9d7dabf26..3c936276f0 100644 --- a/packages/__tests__/src/event-source/refetch.ts +++ b/packages/__tests__/src/event-source/refetch.ts @@ -108,10 +108,10 @@ describe('event source refetch', () => { } function createEventGenerator(classNamePrefix, fetchConfig) { - return function (arg, callback) { + return (arg, callback) => { let events = [] - for (let i = 0; i < fetchConfig.eventCount; i++) { + for (let i = 0; i < fetchConfig.eventCount; i += 1) { events.push({ start: '2015-08-07T02:00:00', end: '2015-08-07T03:00:00', diff --git a/packages/__tests__/src/legacy/ListView.ts b/packages/__tests__/src/legacy/ListView.ts index 950e676fd7..1240d0ca8d 100644 --- a/packages/__tests__/src/legacy/ListView.ts +++ b/packages/__tests__/src/legacy/ListView.ts @@ -45,7 +45,7 @@ describe('ListView rendering', () => { initCalendar({ eventDidMount() { - eventMountCnt++ + eventMountCnt += 1 }, }) @@ -57,7 +57,7 @@ describe('ListView rendering', () => { initCalendar({ eventWillUnmount() { - callCnt++ + callCnt += 1 }, }) diff --git a/packages/__tests__/src/legacy/aspectRatio.ts b/packages/__tests__/src/legacy/aspectRatio.ts index d0d6468e89..fce5f78cbc 100644 --- a/packages/__tests__/src/legacy/aspectRatio.ts +++ b/packages/__tests__/src/legacy/aspectRatio.ts @@ -46,7 +46,7 @@ describe('aspectRatio', () => { let viewContainerEl = new CalendarWrapper(calendar).getViewContainerEl() let rect = viewContainerEl.getBoundingClientRect() - let ratio = Math.round(rect.width / rect.height * 100) + let ratio = Math.round((rect.width / rect.height) * 100) expect(Math.round(ratio)).toEqual(200) }) }) @@ -69,7 +69,7 @@ describe('aspectRatio', () => { let viewContainerEl = new CalendarWrapper(calendar).getViewContainerEl() let rect = viewContainerEl.getBoundingClientRect() - let ratio = Math.round(rect.width / rect.height * 100) + let ratio = Math.round((rect.width / rect.height) * 100) expect(Math.round(ratio)).toEqual(100) }) }) @@ -92,7 +92,7 @@ describe('aspectRatio', () => { let viewContainerEl = new CalendarWrapper(calendar).getViewContainerEl() let rect = viewContainerEl.getBoundingClientRect() - let ratio = Math.round(rect.width / rect.height * 100) + let ratio = Math.round((rect.width / rect.height) * 100) expect(Math.round(ratio)).toEqual(50) }) }) @@ -115,7 +115,7 @@ describe('aspectRatio', () => { let viewContainerEl = new CalendarWrapper(calendar).getViewContainerEl() let rect = viewContainerEl.getBoundingClientRect() - let ratio = Math.round(rect.width / rect.height * 100) + let ratio = Math.round((rect.width / rect.height) * 100) expect(Math.round(ratio)).toEqual(50) }) }) @@ -138,7 +138,7 @@ describe('aspectRatio', () => { let viewContainerEl = new CalendarWrapper(calendar).getViewContainerEl() let rect = viewContainerEl.getBoundingClientRect() - let ratio = Math.round(rect.width / rect.height * 100) + let ratio = Math.round((rect.width / rect.height) * 100) expect(Math.round(ratio)).toEqual(50) }) }) diff --git a/packages/__tests__/src/legacy/dayNames.ts b/packages/__tests__/src/legacy/dayNames.ts index 2773f9e16b..a6b10e260f 100644 --- a/packages/__tests__/src/legacy/dayNames.ts +++ b/packages/__tests__/src/legacy/dayNames.ts @@ -38,7 +38,7 @@ describe('day names', () => { }) }) - $.each(locales, (index, locale) => { + $.each(locales, (localeIndex, locale) => { describe('when locale is ' + locale, () => { CalendarWrapper.DOW_CLASSNAMES.forEach((dowClassName, index) => { let dayDate = addDays(sundayDate, index) diff --git a/packages/__tests__/src/legacy/dayRender.ts b/packages/__tests__/src/legacy/dayRender.ts index 913bf4fffc..d6fe016ba1 100644 --- a/packages/__tests__/src/legacy/dayRender.ts +++ b/packages/__tests__/src/legacy/dayRender.ts @@ -75,7 +75,7 @@ describe('dayCellDidMount', () => { // TODO: rename file expect(arg.date instanceof Date).toBe(true) expect(arg.el instanceof HTMLElement).toBe(true) expect(typeof arg.view).toBe('object') - callCnt++ + callCnt += 1 }, } diff --git a/packages/__tests__/src/legacy/destroy.ts b/packages/__tests__/src/legacy/destroy.ts index e371a9ff9f..9c8d0dfe46 100644 --- a/packages/__tests__/src/legacy/destroy.ts +++ b/packages/__tests__/src/legacy/destroy.ts @@ -70,7 +70,7 @@ describe('destroy', () => { // Issue 2432 it('preserves existing window handlers when handleWindowResize is off', () => { - let resizeHandler = function () {} + let resizeHandler = () => {} let windowListenerCounter = new ListenerCounter(window) windowListenerCounter.startWatching() diff --git a/packages/__tests__/src/legacy/event-dnd.ts b/packages/__tests__/src/legacy/event-dnd.ts index 05723c3022..f88d5b442f 100644 --- a/packages/__tests__/src/legacy/event-dnd.ts +++ b/packages/__tests__/src/legacy/event-dnd.ts @@ -17,12 +17,12 @@ describe('eventDrop', () => { describe('when in month view', () => { pushOptions({ initialView: 'dayGridMonth', - }) + }); // TODO: test that event's dragged via touch that don't wait long enough for longPressDelay // SHOULD NOT drag - ;[false, true].forEach((isTouch) => { + [false, true].forEach((isTouch) => { describe('with ' + (isTouch ? 'touch' : 'mouse'), () => { describe('when dragging an all-day event to another day', () => { it('should be given correct arguments, with whole-day delta', (done) => { diff --git a/packages/__tests__/src/legacy/eventDestroy.ts b/packages/__tests__/src/legacy/eventDestroy.ts index ea967a49f6..5201d0edfd 100644 --- a/packages/__tests__/src/legacy/eventDestroy.ts +++ b/packages/__tests__/src/legacy/eventDestroy.ts @@ -11,7 +11,8 @@ describe('eventWillUnmount', () => { // TODO: rename file let calendar = initCalendar({ events: [singleEventData], eventWillUnmount(arg) { - if (callCnt++ === 0) { // only care about the first call. gets called again when calendar is destroyed + callCnt += 1 + if (callCnt === 1) { // only care about the first call. gets called again when calendar is destroyed expect(arg.event.id).toBe(singleEventData.id) done() } diff --git a/packages/__tests__/src/legacy/eventLimit-popover.ts b/packages/__tests__/src/legacy/eventLimit-popover.ts index de40d54f3b..dddecf8299 100644 --- a/packages/__tests__/src/legacy/eventLimit-popover.ts +++ b/packages/__tests__/src/legacy/eventLimit-popover.ts @@ -465,6 +465,7 @@ describe('more-link popover', () => { // TODO: rename file describe('when a single-day event isn\'t dragged out all the way', () => { it('shouldn\'t do anything', (done) => { + let dayGridWrapper let calendar = initCalendar({ eventDragStop() { setTimeout(() => { // try to wait until drag is over. eventMutation won't fire BTW @@ -474,9 +475,9 @@ describe('more-link popover', () => { // TODO: rename file }, }) let viewWrapper = new DayGridViewWrapper(calendar) - let dayGridWrapper = viewWrapper.dayGrid - + dayGridWrapper = viewWrapper.dayGrid dayGridWrapper.openMorePopover() + setTimeout(() => { // simulate was getting confused about which thing was being clicked :( $('.event1', dayGridWrapper.getMorePopoverEl()).simulate('drag', { localPoint: { left: '0%', top: '50%' }, // leftmost is guaranteed to be over the 30th diff --git a/packages/__tests__/src/legacy/eventLimit-popoverDestroy.ts b/packages/__tests__/src/legacy/eventLimit-popoverDestroy.ts index 6b76b93aa0..4fa32cd44f 100644 --- a/packages/__tests__/src/legacy/eventLimit-popoverDestroy.ts +++ b/packages/__tests__/src/legacy/eventLimit-popoverDestroy.ts @@ -23,12 +23,12 @@ describe('more-link popover', () => { // TODO: rename file eventDidMount(arg) { if (activated) { eventsRendered[arg.event.title] = true - ++renderCount + renderCount += 1 } }, eventWillUnmount(arg) { delete eventsRendered[arg.event.title] - --renderCount + renderCount -= 1 }, }) let dayGridWrapper = new DayGridViewWrapper(calendar).dayGrid @@ -58,12 +58,12 @@ describe('more-link popover', () => { // TODO: rename file eventDidMount(arg) { if (activated) { eventsRendered[arg.event.title] = true - ++renderCount + renderCount += 1 } }, eventWillUnmount(arg) { delete eventsRendered[arg.event.title] - --renderCount + renderCount -= 1 }, }) let dayGridWrapper = new DayGridViewWrapper(calendar).dayGrid diff --git a/packages/__tests__/src/legacy/events-function.ts b/packages/__tests__/src/legacy/events-function.ts index 47a3a6cb2d..5e3179454a 100644 --- a/packages/__tests__/src/legacy/events-function.ts +++ b/packages/__tests__/src/legacy/events-function.ts @@ -64,7 +64,7 @@ describe('events as a function', () => { timeZone: 'America/Chicago', events(arg, callback) { testEventFunctionParams(arg, callback) - callCnt++ + callCnt += 1 if (callCnt === 1) { expect(arg.timeZone).toEqual('America/Chicago') expect(arg.start).toEqualDate('2014-04-27') diff --git a/packages/__tests__/src/legacy/events-gcal.ts b/packages/__tests__/src/legacy/events-gcal.ts index 7c81a88d13..17b6b8e6f8 100644 --- a/packages/__tests__/src/legacy/events-gcal.ts +++ b/packages/__tests__/src/legacy/events-gcal.ts @@ -7,7 +7,7 @@ import { CalendarWrapper } from '../lib/wrappers/CalendarWrapper' // (requests to other services were working however) const SKIP_GCAL = window.karmaConfig.isCi // maybe use webpack for this??? if (SKIP_GCAL) { - console.log('skipping google-calendar') + console.log('skipping google-calendar') // eslint-disable-line no-console } // eslint-disable-next-line @@ -33,8 +33,8 @@ describe('Google Calendar plugin', () => { // Intercept calls to console.warn currentWarnArgs = null oldConsoleWarn = console.warn - console.warn = function () { - currentWarnArgs = arguments + console.warn = function () { // eslint-disable-line func-names + currentWarnArgs = arguments // eslint-disable-line prefer-rest-params } }) @@ -54,7 +54,7 @@ describe('Google Calendar plugin', () => { let i expect(events.length).toBe(NUM_EVENTS) - for (i = 0; i < events.length; i++) { + for (i = 0; i < events.length; i += 1) { expect(events[i].url).not.toMatch('ctz=') } @@ -74,7 +74,7 @@ describe('Google Calendar plugin', () => { let i expect(events.length).toBe(NUM_EVENTS) - for (i = 0; i < events.length; i++) { + for (i = 0; i < events.length; i += 1) { expect(events[i].url).toMatch('ctz=UTC') } @@ -96,7 +96,7 @@ describe('Google Calendar plugin', () => { let i expect(events.length).toBe(NUM_EVENTS) - for (i = 0; i < events.length; i++) { + for (i = 0; i < events.length; i += 1) { expect(events[i].url).toMatch('ctz=America/New_York') } @@ -272,7 +272,7 @@ describe('Google Calendar plugin', () => { }) }) - function afterEventsLoaded(calendar, callback) { + function afterEventsLoaded(calendar, callback: () => void) { calendar.on('eventsSet', () => { setTimeout(callback) // because nothing is rendered yet when eventSourceSuccess fires }) diff --git a/packages/__tests__/src/legacy/events-json-feed.ts b/packages/__tests__/src/legacy/events-json-feed.ts index 67028d7302..74ea72c757 100644 --- a/packages/__tests__/src/legacy/events-json-feed.ts +++ b/packages/__tests__/src/legacy/events-json-feed.ts @@ -93,9 +93,8 @@ describe('events as a json feed', () => { calendar.setOption('timeZone', 'America/New_York') setTimeout(() => { - let eventStartStr = calendar.getEvents()[0].startStr + eventStartStr = calendar.getEvents()[0].startStr expect(eventStartStr).toBe('2014-06-08T03:00:00') - done() }, 100) }, 100) diff --git a/packages/__tests__/src/legacy/external-dnd-advanced.ts b/packages/__tests__/src/legacy/external-dnd-advanced.ts index 9bfae2503e..4848fd4d09 100644 --- a/packages/__tests__/src/legacy/external-dnd-advanced.ts +++ b/packages/__tests__/src/legacy/external-dnd-advanced.ts @@ -337,12 +337,12 @@ describe('advanced external dnd', () => { function testExternalElDrag(options, dragToDate, expectedDate, expectSuccess, callback) { // with NO event creation options.droppable = true - options.drop = function (arg) { + options.drop = (arg) => { expect(arg.date instanceof Date).toBe(true) expect(arg.date).toEqualDate(expectedDate) expect(typeof arg.jsEvent).toBe('object') } - options.eventReceive = function () { } + options.eventReceive = () => {} spyOn(options, 'drop').and.callThrough() spyOn(options, 'eventReceive').and.callThrough() @@ -361,13 +361,13 @@ describe('advanced external dnd', () => { let expectedAllDay = dragToDate.indexOf('T') === -1 // for the drop callback only! options.droppable = true - options.drop = function (arg) { + options.drop = (arg) => { expect(arg.date instanceof Date).toBe(true) expect(arg.date).toEqualDate(dragToDate) expect(arg.allDay).toBe(expectedAllDay) expect(typeof arg.jsEvent).toBe('object') } - options.eventReceive = function (arg) { + options.eventReceive = (arg) => { expect(arg.event.start).toEqualDate(expectedDate) } spyOn(options, 'drop').and.callThrough() diff --git a/packages/__tests__/src/legacy/external-dnd.ts b/packages/__tests__/src/legacy/external-dnd.ts index e5e633d122..94934abc6d 100644 --- a/packages/__tests__/src/legacy/external-dnd.ts +++ b/packages/__tests__/src/legacy/external-dnd.ts @@ -55,6 +55,7 @@ describe('external drag and drop with jquery UI', () => { it('works after the view is changed', (done) => { // issue 2240 let callCnt = 0 + let dayGridWrapper let calendar = initCalendarInContainer({ drop(arg) { if (callCnt === 0) { @@ -74,10 +75,10 @@ describe('external drag and drop with jquery UI', () => { setTimeout(done) // weird } - callCnt++ + callCnt += 1 }, }) - let dayGridWrapper = new DayGridViewWrapper(calendar).dayGrid + dayGridWrapper = new DayGridViewWrapper(calendar).dayGrid initDnd() setTimeout(() => { // weird @@ -193,6 +194,7 @@ describe('external drag and drop with jquery UI', () => { it('works after the view is changed', (done) => { let callCnt = 0 + let timeGridWrapper let calendar = initCalendarInContainer({ drop(arg) { if (callCnt === 0) { @@ -212,10 +214,10 @@ describe('external drag and drop with jquery UI', () => { setTimeout(done) // weird } - callCnt++ + callCnt += 1 }, }) - let timeGridWrapper = new TimeGridViewWrapper(calendar).timeGrid + timeGridWrapper = new TimeGridViewWrapper(calendar).timeGrid initDnd() setTimeout(() => { // weird diff --git a/packages/__tests__/src/legacy/firstDay.ts b/packages/__tests__/src/legacy/firstDay.ts index 2dc58fa301..13eb278e29 100644 --- a/packages/__tests__/src/legacy/firstDay.ts +++ b/packages/__tests__/src/legacy/firstDay.ts @@ -94,7 +94,7 @@ describe('firstDay', () => { let headerWrapper = new DayGridViewWrapper(calendar).header let cellEls = headerWrapper.getCellEls() - for (let i = 0; i < 7; i++) { + for (let i = 0; i < 7; i += 1) { expect(cellEls[i]).toHaveClass(DOW_CLASSNAMES[(i + dowNum) % 7]) } } diff --git a/packages/__tests__/src/legacy/header-rendering.ts b/packages/__tests__/src/legacy/header-rendering.ts index c1fd4a32a6..8be4ead024 100644 --- a/packages/__tests__/src/legacy/header-rendering.ts +++ b/packages/__tests__/src/legacy/header-rendering.ts @@ -114,7 +114,7 @@ children: [ .appendTo('body') function beforeUnloadHandler() { - console.log('when calendar is within a form, it submits!!!') + console.log('when calendar is within a form, it submits!!!') // eslint-disable-line no-console unloadCalled = true cleanup() return 'click stay on this page' diff --git a/packages/__tests__/src/legacy/height-and-contentHeight.ts b/packages/__tests__/src/legacy/height-and-contentHeight.ts index c0d3d7e0e8..998eb342a2 100644 --- a/packages/__tests__/src/legacy/height-and-contentHeight.ts +++ b/packages/__tests__/src/legacy/height-and-contentHeight.ts @@ -3,75 +3,173 @@ import { DayGridViewWrapper } from '../lib/wrappers/DayGridViewWrapper' import { TimeGridViewWrapper } from '../lib/wrappers/TimeGridViewWrapper' import '../lib/dom-misc' -(function () { - ['height', 'contentHeight'].forEach((heightProp) => { - describe(heightProp, () => { - let $calendarEl - let heightEl // HTMLElement - let asAMethod - let heightPropDescriptions: { description: string, height: string | number, heightWrapper?: boolean }[] = [ - { description: 'as a number', height: 600 }, - ] +['height', 'contentHeight'].forEach((heightProp) => { + describe(heightProp, () => { + let $calendarEl + let heightEl // HTMLElement + let asAMethod + let heightPropDescriptions: { description: string, height: string | number, heightWrapper?: boolean }[] = [ + { description: 'as a number', height: 600 }, + ] + + if (heightProp === 'height') { + heightPropDescriptions.push({ description: 'as "100%"', height: '100%', heightWrapper: true }) + } - if (heightProp === 'height') { - heightPropDescriptions.push({ description: 'as "100%"', height: '100%', heightWrapper: true }) - } + pushOptions({ + initialDate: '2014-08-01', + }) - pushOptions({ - initialDate: '2014-08-01', - }) + beforeEach(() => { + $calendarEl = $('
').appendTo('body').width(900) + }) - beforeEach(() => { - $calendarEl = $('
').appendTo('body').width(900) - }) + afterEach(() => { + $calendarEl.remove() + }) - afterEach(() => { - $calendarEl.remove() - }) + // relies on asAMethod (boolean) + // otherOptions: other calendar options to dynamically set (assumes asAMethod) + function init(heightVal) { + let calendar - // relies on asAMethod (boolean) - // otherOptions: other calendar options to dynamically set (assumes asAMethod) - function init(heightVal) { - let calendar - - if (asAMethod) { - calendar = initCalendar({}, $calendarEl[0]) - let calendarWrapper = new CalendarWrapper(calendar) - let dateEl = calendarWrapper.getFirstDateEl() - - calendar.setOption(heightProp, heightVal) - expect(calendarWrapper.getFirstDateEl()).toBe(dateEl) - } else { - calendar = initCalendar({ [heightProp]: heightVal }, $calendarEl[0]) - } - - if (heightProp === 'height') { - heightEl = calendar.el - } else { - heightEl = new CalendarWrapper(calendar).getViewEl() - } - - return calendar + if (asAMethod) { + calendar = initCalendar({}, $calendarEl[0]) + let calendarWrapper = new CalendarWrapper(calendar) + let dateEl = calendarWrapper.getFirstDateEl() + + calendar.setOption(heightProp, heightVal) + expect(calendarWrapper.getFirstDateEl()).toBe(dateEl) + } else { + calendar = initCalendar({ [heightProp]: heightVal }, $calendarEl[0]) } - function expectHeight(heightVal) { - let diff = Math.abs(heightEl.offsetHeight - heightVal) - expect(diff).toBeLessThan(2) // off-by-one or exactly the same. for zoom, and firefox + if (heightProp === 'height') { + heightEl = calendar.el + } else { + heightEl = new CalendarWrapper(calendar).getViewEl() } - $.each({ - 'as an init option': false, - 'as a method': true, - }, (desc, bool) => { - describe(desc, () => { - beforeEach(() => { - asAMethod = bool - }) + return calendar + } + + function expectHeight(heightVal) { + let diff = Math.abs(heightEl.offsetHeight - heightVal) + expect(diff).toBeLessThan(2) // off-by-one or exactly the same. for zoom, and firefox + } + + $.each({ + 'as an init option': false, + 'as a method': true, + }, (desc, bool) => { + describe(desc, () => { + beforeEach(() => { + asAMethod = bool + }) + + describe('for ' + heightProp, () => { + describe('when in month view', () => { + pushOptions({ + initialView: 'dayGridMonth', + }) + + heightPropDescriptions.forEach((testInfo) => { + describe(testInfo.description, () => { + if (testInfo.heightWrapper) { + beforeEach(() => { + $calendarEl.wrap('
') + }) + afterEach(() => { + $('#calendar-container').remove() + }) + } + + describe('when there are no events', () => { + it('should be the specified height, with no scrollbars', () => { + let calendar = init(testInfo.height) + let viewWrapper = new DayGridViewWrapper(calendar) + let diff = Math.abs(heightEl.offsetHeight - 600) + + expect(diff).toBeLessThan(2) + expect(viewWrapper.getScrollerEl()).not.toHaveScrollbars() + }) + }) + + describe('when there is one tall row of events', () => { + pushOptions({ + events: repeatClone({ title: 'event', start: '2014-08-04' }, 9), + }) + + it('should take away height from other rows, but not do scrollbars', () => { + let calendar = init(testInfo.height) + let viewWrapper = new DayGridViewWrapper(calendar) + let $rows = $(viewWrapper.dayGrid.getRowEls()) + let $tallRow = $rows.eq(1) + let $shortRows = $rows.not($tallRow) // 0, 2, 3, 4, 5 + let shortHeight = $shortRows.eq(0).outerHeight() + + expectHeight(600) + + $shortRows.each((i, node) => { + let rowHeight = $(node).outerHeight() + let diff = Math.abs(rowHeight - shortHeight) + expect(diff).toBeLessThan(10) // all roughly the same + }) + + expect($tallRow.outerHeight()).toBeGreaterThan(shortHeight * 2) // much taller + expect(viewWrapper.getScrollerEl()).not.toHaveScrollbars() + }) + }) + + describe('when there are many tall rows of events', () => { + pushOptions({ + events: [].concat( + repeatClone({ title: 'event0', start: '2014-07-28' }, 9), + repeatClone({ title: 'event1', start: '2014-08-04' }, 9), + repeatClone({ title: 'event2', start: '2014-08-11' }, 9), + repeatClone({ title: 'event3', start: '2014-08-18' }, 9), + repeatClone({ title: 'event4', start: '2014-08-25' }, 9), + repeatClone({ title: 'event5', start: '2014-09-01' }, 9), + ), + }) + + it('height is correct and scrollbars show up', () => { + let calendar = init(testInfo.height) + let viewWrapper = new DayGridViewWrapper(calendar) + + expectHeight(600) + expect(viewWrapper.getScrollerEl()).toHaveScrollbars() + }) + }) + }) + }) + + describe('as "auto", when there are many tall rows of events', () => { + pushOptions({ + events: [].concat( + repeatClone({ title: 'event0', start: '2014-07-28' }, 9), + repeatClone({ title: 'event1', start: '2014-08-04' }, 9), + repeatClone({ title: 'event2', start: '2014-08-11' }, 9), + repeatClone({ title: 'event3', start: '2014-08-18' }, 9), + repeatClone({ title: 'event4', start: '2014-08-25' }, 9), + repeatClone({ title: 'event5', start: '2014-09-01' }, 9), + ), + }) + + it('height is really tall and there are no scrollbars', () => { + let calendar = init('auto') + let viewWrapper = new DayGridViewWrapper(calendar) + + expect(heightEl.offsetHeight).toBeGreaterThan(1000) // pretty tall + expect(viewWrapper.getScrollerEl()).not.toHaveScrollbars() + }) + }) + }); - describe('for ' + heightProp, () => { - describe('when in month view', () => { + ['dayGridWeek', 'dayGridDay'].forEach((viewName) => { + describe('in ' + viewName + ' view', () => { pushOptions({ - initialView: 'dayGridMonth', + initialView: viewName, }) heightPropDescriptions.forEach((testInfo) => { @@ -89,52 +187,18 @@ import '../lib/dom-misc' it('should be the specified height, with no scrollbars', () => { let calendar = init(testInfo.height) let viewWrapper = new DayGridViewWrapper(calendar) - let diff = Math.abs(heightEl.offsetHeight - 600) - - expect(diff).toBeLessThan(2) - expect(viewWrapper.getScrollerEl()).not.toHaveScrollbars() - }) - }) - - describe('when there is one tall row of events', () => { - pushOptions({ - events: repeatClone({ title: 'event', start: '2014-08-04' }, 9), - }) - - it('should take away height from other rows, but not do scrollbars', () => { - let calendar = init(testInfo.height) - let viewWrapper = new DayGridViewWrapper(calendar) - let $rows = $(viewWrapper.dayGrid.getRowEls()) - let $tallRow = $rows.eq(1) - let $shortRows = $rows.not($tallRow) // 0, 2, 3, 4, 5 - let shortHeight = $shortRows.eq(0).outerHeight() expectHeight(600) - - $shortRows.each((i, node) => { - let rowHeight = $(node).outerHeight() - let diff = Math.abs(rowHeight - shortHeight) - expect(diff).toBeLessThan(10) // all roughly the same - }) - - expect($tallRow.outerHeight()).toBeGreaterThan(shortHeight * 2) // much taller expect(viewWrapper.getScrollerEl()).not.toHaveScrollbars() }) }) - describe('when there are many tall rows of events', () => { + describe('when there are many events', () => { pushOptions({ - events: [].concat( - repeatClone({ title: 'event0', start: '2014-07-28' }, 9), - repeatClone({ title: 'event1', start: '2014-08-04' }, 9), - repeatClone({ title: 'event2', start: '2014-08-11' }, 9), - repeatClone({ title: 'event3', start: '2014-08-18' }, 9), - repeatClone({ title: 'event4', start: '2014-08-25' }, 9), - repeatClone({ title: 'event5', start: '2014-09-01' }, 9), - ), + events: repeatClone({ title: 'event', start: '2014-08-01' }, 100), }) - it('height is correct and scrollbars show up', () => { + it('should have the correct height, with scrollbars', () => { let calendar = init(testInfo.height) let viewWrapper = new DayGridViewWrapper(calendar) @@ -145,19 +209,11 @@ import '../lib/dom-misc' }) }) - describe('as "auto", when there are many tall rows of events', () => { + describe('as "auto", when there are many events', () => { pushOptions({ - events: [].concat( - repeatClone({ title: 'event0', start: '2014-07-28' }, 9), - repeatClone({ title: 'event1', start: '2014-08-04' }, 9), - repeatClone({ title: 'event2', start: '2014-08-11' }, 9), - repeatClone({ title: 'event3', start: '2014-08-18' }, 9), - repeatClone({ title: 'event4', start: '2014-08-25' }, 9), - repeatClone({ title: 'event5', start: '2014-09-01' }, 9), - ), + events: repeatClone({ title: 'event', start: '2014-08-01' }, 100), }) - - it('height is really tall and there are no scrollbars', () => { + it('should be really tall with no scrollbars', () => { let calendar = init('auto') let viewWrapper = new DayGridViewWrapper(calendar) @@ -165,14 +221,20 @@ import '../lib/dom-misc' expect(viewWrapper.getScrollerEl()).not.toHaveScrollbars() }) }) - }); + }) + }); - ['dayGridWeek', 'dayGridDay'].forEach((viewName) => { - describe('in ' + viewName + ' view', () => { - pushOptions({ - initialView: viewName, - }) + ['timeGridWeek', 'timeGridDay'].forEach((viewName) => { + describe('in ' + viewName + ' view', () => { + pushOptions({ + initialView: viewName, + }) + describeOptions({ + 'with no all-day section': { allDaySlot: false }, + 'with no all-day events': { }, + 'with some all-day events': { events: repeatClone({ title: 'event', start: '2014-08-01' }, 6) }, + }, () => { heightPropDescriptions.forEach((testInfo) => { describe(testInfo.description, () => { if (testInfo.heightWrapper) { @@ -184,24 +246,14 @@ import '../lib/dom-misc' }) } - describe('when there are no events', () => { - it('should be the specified height, with no scrollbars', () => { - let calendar = init(testInfo.height) - let viewWrapper = new DayGridViewWrapper(calendar) - - expectHeight(600) - expect(viewWrapper.getScrollerEl()).not.toHaveScrollbars() - }) - }) - - describe('when there are many events', () => { + describe('with many slots', () => { pushOptions({ - events: repeatClone({ title: 'event', start: '2014-08-01' }, 100), + slotMinTime: '00:00:00', + slotMaxTime: '24:00:00', }) - - it('should have the correct height, with scrollbars', () => { + it('should be the correct height, with scrollbars', () => { let calendar = init(testInfo.height) - let viewWrapper = new DayGridViewWrapper(calendar) + let viewWrapper = new TimeGridViewWrapper(calendar) expectHeight(600) expect(viewWrapper.getScrollerEl()).toHaveScrollbars() @@ -210,86 +262,32 @@ import '../lib/dom-misc' }) }) - describe('as "auto", when there are many events', () => { + describe('as "auto", with only a few slots', () => { pushOptions({ - events: repeatClone({ title: 'event', start: '2014-08-01' }, 100), + slotMinTime: '06:00:00', + slotMaxTime: '10:00:00', }) - it('should be really tall with no scrollbars', () => { + it('should be really short with no scrollbars nor horizontal rule', () => { let calendar = init('auto') - let viewWrapper = new DayGridViewWrapper(calendar) + let viewWrapper = new TimeGridViewWrapper(calendar) - expect(heightEl.offsetHeight).toBeGreaterThan(1000) // pretty tall + expect(heightEl.offsetHeight).toBeLessThan(500) // pretty short expect(viewWrapper.getScrollerEl()).not.toHaveScrollbars() }) }) - }) - }); - - ['timeGridWeek', 'timeGridDay'].forEach((viewName) => { - describe('in ' + viewName + ' view', () => { - pushOptions({ - initialView: viewName, - }) - - describeOptions({ - 'with no all-day section': { allDaySlot: false }, - 'with no all-day events': { }, - 'with some all-day events': { events: repeatClone({ title: 'event', start: '2014-08-01' }, 6) }, - }, () => { - heightPropDescriptions.forEach((testInfo) => { - describe(testInfo.description, () => { - if (testInfo.heightWrapper) { - beforeEach(() => { - $calendarEl.wrap('
') - }) - afterEach(() => { - $('#calendar-container').remove() - }) - } - - describe('with many slots', () => { - pushOptions({ - slotMinTime: '00:00:00', - slotMaxTime: '24:00:00', - }) - it('should be the correct height, with scrollbars', () => { - let calendar = init(testInfo.height) - let viewWrapper = new TimeGridViewWrapper(calendar) - - expectHeight(600) - expect(viewWrapper.getScrollerEl()).toHaveScrollbars() - }) - }) - }) - }) - - describe('as "auto", with only a few slots', () => { - pushOptions({ - slotMinTime: '06:00:00', - slotMaxTime: '10:00:00', - }) - it('should be really short with no scrollbars nor horizontal rule', () => { - let calendar = init('auto') - let viewWrapper = new TimeGridViewWrapper(calendar) - expect(heightEl.offsetHeight).toBeLessThan(500) // pretty short - expect(viewWrapper.getScrollerEl()).not.toHaveScrollbars() - }) + describe('as a "auto", with many slots', () => { + pushOptions({ + slotMinTime: '00:00:00', + slotMaxTime: '24:00:00', }) - describe('as a "auto", with many slots', () => { - pushOptions({ - slotMinTime: '00:00:00', - slotMaxTime: '24:00:00', - }) - - it('should be really tall with no scrollbars nor horizontal rule', () => { - let calendar = init('auto') - let viewWrapper = new TimeGridViewWrapper(calendar) + it('should be really tall with no scrollbars nor horizontal rule', () => { + let calendar = init('auto') + let viewWrapper = new TimeGridViewWrapper(calendar) - expect(heightEl.offsetHeight).toBeGreaterThan(900) // pretty tall - expect(viewWrapper.getScrollerEl()).not.toHaveScrollbars() - }) + expect(heightEl.offsetHeight).toBeGreaterThan(900) // pretty tall + expect(viewWrapper.getScrollerEl()).not.toHaveScrollbars() }) }) }) @@ -299,33 +297,33 @@ import '../lib/dom-misc' }) }) }) - - it('no height oscillation happens', () => { - let $container = $( - '
' + - '
' + - '
', - ).appendTo('body') - - // will freeze browser if bug exists :) - let calendar = initCalendar({ - headerToolbar: false, - initialView: 'dayGridMonth', - aspectRatio: 1, - }, $container.find('div')[0]) - - calendar.destroy() - $container.remove() - }) - - function repeatClone(srcObj, times) { - let a = [] - let i - - for (i = 0; i < times; i++) { - a.push($.extend({}, srcObj)) - } - - return a +}) + +it('no height oscillation happens', () => { + let $container = $( + '
' + + '
' + + '
', + ).appendTo('body') + + // will freeze browser if bug exists :) + let calendar = initCalendar({ + headerToolbar: false, + initialView: 'dayGridMonth', + aspectRatio: 1, + }, $container.find('div')[0]) + + calendar.destroy() + $container.remove() +}) + +function repeatClone(srcObj, times) { + let a = [] + let i + + for (i = 0; i < times; i += 1) { + a.push($.extend({}, srcObj)) } -}()) + + return a +} diff --git a/packages/__tests__/src/legacy/nextDayThreshold.ts b/packages/__tests__/src/legacy/nextDayThreshold.ts index 46d2d5df20..91e584f817 100644 --- a/packages/__tests__/src/legacy/nextDayThreshold.ts +++ b/packages/__tests__/src/legacy/nextDayThreshold.ts @@ -76,7 +76,7 @@ describe('nextDayThreshold', () => { let totalWidth = 0 let eventEls = new CalendarWrapper(calendar).getEventEls() - $(eventEls).each(function () { + $(eventEls).each(() => { totalWidth += $(this).outerWidth() }) diff --git a/packages/__tests__/src/legacy/overlap.ts b/packages/__tests__/src/legacy/overlap.ts index 7d4906562f..21e08045d5 100644 --- a/packages/__tests__/src/legacy/overlap.ts +++ b/packages/__tests__/src/legacy/overlap.ts @@ -526,7 +526,7 @@ describe('event overlap', () => { describe('when eventOverlap is a function', () => { describe('when no intersecting events upon drag', () => { it('does not get called, allows dragging', (done) => { - options.eventOverlap = function () { } + options.eventOverlap = () => {} options.events = [ { title: 'Event A', @@ -550,7 +550,7 @@ describe('event overlap', () => { }) describe('when an intersection and returning true', () => { it('allows dragging AND gets called', (done) => { - options.eventOverlap = function (stillEvent, movingEvent) { + options.eventOverlap = (stillEvent, movingEvent) => { // checks arguments here expect(stillEvent.title).toBe('Event B') expect(movingEvent.title).toBe('Event A') @@ -579,9 +579,7 @@ describe('event overlap', () => { }) describe('when an intersection and returning false', () => { it('disallows dragging AND gets called', (done) => { - options.eventOverlap = function () { - return false - } + options.eventOverlap = () => false options.events = [ { title: 'Event A', @@ -741,7 +739,7 @@ describe('selectOverlap', () => { describe('as a function', () => { describe('when no intersecting events when selecting', () => { it('does not get called, allows selection', (done) => { - options.selectOverlap = function () { } + options.selectOverlap = () => {} options.events = [{ title: 'Event A', start: '2014-11-12T04:00:00', @@ -756,10 +754,10 @@ describe('selectOverlap', () => { }) describe('when an intersection and returning true', () => { it('allows selection', (done) => { - options.selectOverlap = function (o) { + options.selectOverlap = (arg0, arg1) => { // checks arguments here - expect(o.title).toBe('Event A') - expect(arguments[1]).toBeFalsy() + expect(arg0.title).toBe('Event A') + expect(arg1).toBeFalsy() return true } options.events = [{ @@ -776,9 +774,7 @@ describe('selectOverlap', () => { }) describe('when an intersection and returning false', () => { it('does not allow selection', (done) => { - options.selectOverlap = function () { - return false - } + options.selectOverlap = () => false options.events = [{ title: 'Event A', start: '2014-11-12T04:00:00', diff --git a/packages/__tests__/src/legacy/refetchEvents.ts b/packages/__tests__/src/legacy/refetchEvents.ts index e46ee70109..d9b8b7ade8 100644 --- a/packages/__tests__/src/legacy/refetchEvents.ts +++ b/packages/__tests__/src/legacy/refetchEvents.ts @@ -72,7 +72,7 @@ describe('refetchEvents', () => { describe('and all events are fetched synchronously', () => { it('all events are immediately updated', (done) => { initCalendar({ eventSources }) - fetchCount++ + fetchCount += 1 currentCalendar.refetchEvents() expect($('.fetch0').length).toEqual(0) expect($('.fetch1').length).toEqual(3) @@ -83,7 +83,7 @@ describe('refetchEvents', () => { describe('and one event source is asynchronous', () => { it('original events remain on the calendar until all events have been refetched', (done) => { // set a 100ms timeout on this event source - eventSources[0].events = function (arg, callback) { + eventSources[0].events = (arg, callback) => { let events = [ { id: '1', start: '2015-08-07T02:00:00', @@ -101,7 +101,7 @@ describe('refetchEvents', () => { }) setTimeout(() => { - fetchCount++ + fetchCount += 1 currentCalendar.refetchEvents() expect($('.fetch0').length).toEqual(3) // original events still on the calendar expect($('.fetch1').length).toEqual(0) // new events not yet refetched @@ -117,7 +117,7 @@ describe('refetchEvents', () => { // relies on fetchCount function createEventGenerator() { - return function (arg, callback) { + return (arg, callback) => { let events = [ { id: 1, diff --git a/packages/__tests__/src/legacy/removeEvents.ts b/packages/__tests__/src/legacy/removeEvents.ts index e31dee4ec2..4d392f8356 100644 --- a/packages/__tests__/src/legacy/removeEvents.ts +++ b/packages/__tests__/src/legacy/removeEvents.ts @@ -19,7 +19,7 @@ describe('removeEvents', () => { let events = buildEventsWithoutIds() let i - for (i = 0; i < events.length; i++) { + for (i = 0; i < events.length; i += 1) { events[i].id = i } diff --git a/packages/__tests__/src/legacy/scroll-state.ts b/packages/__tests__/src/legacy/scroll-state.ts index 8dd3c719c1..db7a0e8dd2 100644 --- a/packages/__tests__/src/legacy/scroll-state.ts +++ b/packages/__tests__/src/legacy/scroll-state.ts @@ -26,6 +26,8 @@ describe('scroll state', () => { let ViewWrapper = viewName.match(/^dayGrid/) ? DayGridViewWrapper : TimeGridViewWrapper it('should be maintained when resizing window', (done) => { + let scrollEl + let scroll0 let calendar = initCalendar({ windowResize() { setTimeout(() => { // wait until all other tasks are finished @@ -34,8 +36,8 @@ describe('scroll state', () => { }, 0) }, }, calendarEl) - let scrollEl = new ViewWrapper(calendar).getScrollerEl() - let scroll0 + + scrollEl = new ViewWrapper(calendar).getScrollerEl() setTimeout(() => { // wait until after browser's scroll state is applied scrollEl.scrollTop = 9999 // all the way diff --git a/packages/__tests__/src/legacy/timegrid-view.ts b/packages/__tests__/src/legacy/timegrid-view.ts index e673fe326e..771607e143 100644 --- a/packages/__tests__/src/legacy/timegrid-view.ts +++ b/packages/__tests__/src/legacy/timegrid-view.ts @@ -16,7 +16,7 @@ describe('timeGrid view rendering', () => { let dowClassNames = CalendarWrapper.DOW_CLASSNAMES - for (let i = 0; i < dowClassNames.length; i++) { + for (let i = 0; i < dowClassNames.length; i += 1) { expect(thEls[i]).toHaveClass(dowClassNames[i]) } }) diff --git a/packages/__tests__/src/legacy/unselectAuto.ts b/packages/__tests__/src/legacy/unselectAuto.ts index f90200fa44..ad58077098 100644 --- a/packages/__tests__/src/legacy/unselectAuto.ts +++ b/packages/__tests__/src/legacy/unselectAuto.ts @@ -23,6 +23,7 @@ describe('unselectAuto', () => { describe('when clicking away', () => { it('unselects the current selection when clicking elsewhere in DOM', (done) => { let isDone = false // hack against dragging continuing after destroy + let dayGridWrapper let calendar = initCalendar({ unselect(arg) { if (!isDone) { @@ -34,8 +35,7 @@ describe('unselectAuto', () => { } }, }) - let dayGridWrapper = new DayGridViewWrapper(calendar).dayGrid - + dayGridWrapper = new DayGridViewWrapper(calendar).dayGrid calendar.select('2014-12-01', '2014-12-03') expect(dayGridWrapper.getHighlightEls().length).toBeGreaterThan(0) @@ -49,6 +49,7 @@ describe('unselectAuto', () => { describe('when clicking another date', () => { it('unselects the current selection when clicking elsewhere in DOM', (done) => { let isDone = false // hack against dragging continuing after destroy + let dayGridWrapper let calendar = initCalendar({ unselect(arg) { if (!isDone) { @@ -60,11 +61,9 @@ describe('unselectAuto', () => { } }, }) - let dayGridWrapper = new DayGridViewWrapper(calendar).dayGrid - + dayGridWrapper = new DayGridViewWrapper(calendar).dayGrid calendar.select('2014-12-01', '2014-12-03') expect(dayGridWrapper.getHighlightEls().length).toBeGreaterThan(0) - $(dayGridWrapper.getDayEl('2014-12-04')).simulate('drag') }) }) diff --git a/packages/__tests__/src/lib/DayGridEventRenderUtils.ts b/packages/__tests__/src/lib/DayGridEventRenderUtils.ts index ed14a09771..07ddcb4626 100644 --- a/packages/__tests__/src/lib/DayGridEventRenderUtils.ts +++ b/packages/__tests__/src/lib/DayGridEventRenderUtils.ts @@ -24,12 +24,12 @@ export function directionallyTestSeg(opts) { let col let td - for (col = leftCol; col <= rightCol; col++) { + for (col = leftCol; col <= rightCol; col += 1) { td = rowTds[col] expect(el).toIntersectWith(td) } - for (col = 0; col < rowTds.length; col++) { + for (col = 0; col < rowTds.length; col += 1) { if (col < leftCol || col > rightCol) { td = rowTds[col] expect(el).not.toIntersectWith(td) diff --git a/packages/__tests__/src/lib/ListenerCounter.ts b/packages/__tests__/src/lib/ListenerCounter.ts index b57dd7a97d..3f37908ab3 100644 --- a/packages/__tests__/src/lib/ListenerCounter.ts +++ b/packages/__tests__/src/lib/ListenerCounter.ts @@ -19,14 +19,14 @@ export class ListenerCounter { el.addEventListener = (eventName, ...otherArgs) => { if (!IGNORED_EVENTS[eventName]) { - t.delta++ + t.delta += 1 } return origAddEventListened.call(el, eventName, ...otherArgs) } el.removeEventListener = (eventName, ...otherArgs) => { if (!IGNORED_EVENTS[eventName]) { - t.delta-- + t.delta -= 1 } return origRemoveEventListener.call(el, eventName, ...otherArgs) } diff --git a/packages/__tests__/src/lib/date-parsing.ts b/packages/__tests__/src/lib/date-parsing.ts index aa02f3ff42..f2f9aec52e 100644 --- a/packages/__tests__/src/lib/date-parsing.ts +++ b/packages/__tests__/src/lib/date-parsing.ts @@ -14,12 +14,12 @@ export function parseUtcDate(str) { } return new Date(Date.UTC( - parseInt(parts[0]), - parseInt(parts[1]) - 1, - parts[2] ? parseInt(parts[2]) : 0, - parts[3] ? parseInt(parts[3]) : 0, - parts[4] ? parseInt(parts[4]) : 0, - parts[5] ? parseInt(parts[5]) : 0, + parseInt(parts[0], 10), + parseInt(parts[1], 10) - 1, + parts[2] ? parseInt(parts[2], 10) : 0, + parts[3] ? parseInt(parts[3], 10) : 0, + parts[4] ? parseInt(parts[4], 10) : 0, + parts[5] ? parseInt(parts[5], 10) : 0, )) } @@ -33,12 +33,12 @@ export function parseLocalDate(str) { throw new Error('Don\'t pass timezone info to parseLocalDate. Use parseUtcDate instead.') } else { return new Date( - parseInt(parts[0]), - parseInt(parts[1]) - 1, - parts[2] ? parseInt(parts[2]) : 0, - parts[3] ? parseInt(parts[3]) : 0, - parts[4] ? parseInt(parts[4]) : 0, - parts[5] ? parseInt(parts[5]) : 0, + parseInt(parts[0], 10), + parseInt(parts[1], 10) - 1, + parts[2] ? parseInt(parts[2], 10) : 0, + parts[3] ? parseInt(parts[3], 10) : 0, + parts[4] ? parseInt(parts[4], 10) : 0, + parts[5] ? parseInt(parts[5], 10) : 0, ) } } diff --git a/packages/__tests__/src/lib/dnd-resize-utils.ts b/packages/__tests__/src/lib/dnd-resize-utils.ts index 204db141b0..2c801fb25d 100644 --- a/packages/__tests__/src/lib/dnd-resize-utils.ts +++ b/packages/__tests__/src/lib/dnd-resize-utils.ts @@ -201,7 +201,7 @@ export function testSelection(options, start, end, expectSuccess, callback) { } options.selectable = true - options.select = function (arg) { + options.select = (arg) => { successfulSelection = arg.allDay === allDay && arg.start.valueOf() === start.valueOf() && diff --git a/packages/__tests__/src/lib/dom-geom.ts b/packages/__tests__/src/lib/dom-geom.ts index 044e326c7b..ff79d48085 100644 --- a/packages/__tests__/src/lib/dom-geom.ts +++ b/packages/__tests__/src/lib/dom-geom.ts @@ -7,11 +7,11 @@ import { ['height', 'outerHeight'].forEach((methodName) => { let orig = $.fn[methodName] - $.fn[methodName] = function () { - if (!arguments.length && this.is('td')) { + $.fn[methodName] = function () { // eslint-disable-line func-names + if (!arguments.length && this.is('td')) { // eslint-disable-line prefer-rest-params return this[0].getBoundingClientRect().height } - return orig.apply(this, arguments) + return orig.apply(this, arguments) // eslint-disable-line prefer-rest-params } }) @@ -29,8 +29,8 @@ export function getBoundingRect(el) { export function anyElsIntersect(els) { let rects = els.map((el) => el.getBoundingClientRect()) - for (let i = 0; i < rects.length; i++) { - for (let j = i + 1; j < rects.length; j++) { + for (let i = 0; i < rects.length; i += 1) { + for (let j = i + 1; j < rects.length; j += 1) { if (rectsIntersect(rects[i], rects[j])) { return [els[i], els[j]] } diff --git a/packages/__tests__/src/lib/dst-dead-zone.ts b/packages/__tests__/src/lib/dst-dead-zone.ts index 8303666c84..b2041b4af2 100644 --- a/packages/__tests__/src/lib/dst-dead-zone.ts +++ b/packages/__tests__/src/lib/dst-dead-zone.ts @@ -24,6 +24,8 @@ export function getDSTDeadZone() { return [prior, dstDates[1]] } } + + return null } function getDSTDates() { @@ -64,4 +66,6 @@ function narrowDSTDate(start, end) { } if (midTZO === endTZO) { return narrowDSTDate(start, mid) } + + return null } diff --git a/packages/__tests__/src/lib/globals.ts b/packages/__tests__/src/lib/globals.ts index cfc1e595e4..faa3420f60 100644 --- a/packages/__tests__/src/lib/globals.ts +++ b/packages/__tests__/src/lib/globals.ts @@ -41,7 +41,7 @@ function pushOptions(options: CalendarOptions) { function spyOnCalendarCallback(name, func?) { let options = {} as any - options[name] = func || function () {} + options[name] = func || (() => {}) spyOn(options, name).and.callThrough() optionsStack.push(options) @@ -90,7 +90,7 @@ function initCalendar(moreOptions?: CalendarOptions, el?) { function getCurrentOptions() { let args = [{}].concat(optionsStack) as any - return $.extend.apply($, args) + return $.extend.apply($, args) // eslint-disable-line prefer-spread } // Categorizing Tests @@ -186,11 +186,12 @@ function describeTimeZone(name, callback) { function oneCall(func) { let called called = false - return function () { + return function () { // eslint-disable-line func-names if (!called) { called = true - return func.apply(this, arguments) + return func.apply(this, arguments) // eslint-disable-line prefer-rest-params } + return null } } @@ -205,7 +206,7 @@ function spyOnMethod(Class, methodName, dontCallThrough) { spy = spy.and.callThrough() } - spy.restore = function () { + (spy as any).restore = () => { if (origMethod) { Class.prototype[methodName] = origMethod } else { @@ -218,7 +219,7 @@ function spyOnMethod(Class, methodName, dontCallThrough) { // wraps an existing function in a spy, calling through to the function function spyCall(func?) { - func = func || function () {} + func = func || (() => {}) const obj = { func } spyOn(obj, 'func').and.callThrough() return obj.func diff --git a/packages/__tests__/src/lib/segs.ts b/packages/__tests__/src/lib/segs.ts index cfbbbe281b..b09d87fafe 100644 --- a/packages/__tests__/src/lib/segs.ts +++ b/packages/__tests__/src/lib/segs.ts @@ -17,11 +17,11 @@ export function doElsMatchSegs(els, segs, segToRectFunc) { return false } - for (j = 0, len = segs.length; j < len; j++) { + for (j = 0, len = segs.length; j < len; j += 1) { seg = segs[j] segRect = segToRectFunc(seg) found = false - for (i = k = 0, len1 = unmatchedRects.length; k < len1; i = ++k) { + for (i = k = 0, len1 = unmatchedRects.length; k < len1; i = (k += 1)) { elRect = unmatchedRects[i] if (isRectsSimilar(elRect, segRect)) { unmatchedRects.splice(i, 1) // remove diff --git a/packages/__tests__/src/lib/simulate.ts b/packages/__tests__/src/lib/simulate.ts index 45314bf131..b8b2f3263c 100644 --- a/packages/__tests__/src/lib/simulate.ts +++ b/packages/__tests__/src/lib/simulate.ts @@ -1,7 +1,7 @@ /* General Utils ---------------------------------------------------------------------------------------------------------------------- */ -$.simulateByPoint = function (type, options) { +$.simulateByPoint = (type, options) => { let docEl = $(document) let point = options.point let clientX @@ -22,16 +22,16 @@ $.simulateByPoint = function (type, options) { let origSimulateEvent = $.simulate.prototype.simulateEvent let touchUID = Date.now() -$.simulate.prototype.simulateEvent = function (elem, type, options) { +$.simulate.prototype.simulateEvent = function (elem, type, options) { // eslint-disable-line func-names if (elem === window && type === 'resize') { return this.simulateWindowResize() } if (/^touch/.test(type)) { return this.simulateTouchEvent(elem, type, options) } - return origSimulateEvent.apply(this, arguments) + return origSimulateEvent.apply(this, arguments) // eslint-disable-line prefer-rest-params } -$.simulate.prototype.simulateWindowResize = function () { +$.simulate.prototype.simulateWindowResize = function () { // eslint-disable-line func-names // from https://stackoverflow.com/a/1818513/96342 let event @@ -51,14 +51,14 @@ $.simulate.prototype.simulateWindowResize = function () { this.dispatchEvent(window, 'resize', event) } -$.simulate.prototype.simulateTouchEvent = function (elem, type, options) { +$.simulate.prototype.simulateTouchEvent = function (elem, type, options) { // eslint-disable-line func-names // http://stackoverflow.com/a/29019278/96342 let event = document.createEvent('Event') event.initEvent(type, true, true); // cancelable, bubbleable (event as any).touches = [{ target: elem, - identifier: touchUID++, + identifier: touchUID, pageX: options.clientX, pageY: options.clientY, screenX: options.clientX, @@ -66,11 +66,12 @@ $.simulate.prototype.simulateTouchEvent = function (elem, type, options) { clientX: options.clientX, clientY: options.clientY, }] + touchUID += 1 this.dispatchEvent(elem, type, event, options) } -$.simulateMouseClick = function (elem) { +$.simulateMouseClick = function (elem) { // eslint-disable-line func-names let $elem = $(elem) let clientCoords = { clientX: $elem.offset().left + $elem.outerWidth() / 2, @@ -82,7 +83,7 @@ $.simulateMouseClick = function (elem) { $elem.simulate('click', clientCoords) } -$.simulateTouchClick = function (elem) { +$.simulateTouchClick = function (elem) { // eslint-disable-line func-names let $elem = $(elem) let clientCoords = { clientX: $elem.offset().left + $elem.outerWidth() / 2, @@ -115,7 +116,7 @@ let DRAG_DEFAULTS = { let dragStackCnt = 0 -$.simulate.prototype.simulateDrag = function () { +$.simulate.prototype.simulateDrag = function () { // eslint-disable-line func-names let options = $.extend({}, DRAG_DEFAULTS, this.options) let targetNode = this.target // raw DOM node let targetEl = $(targetNode) // jq object @@ -217,7 +218,8 @@ function simulateDrag(self, targetNode, startPoint, dx, dy, moveCnt, duration, o function startDrag() { updateCoords() - dragId = ++dragStackCnt + dragStackCnt += 1 + dragId = dragStackCnt // simulate a drag-start only if another drag isn't already happening if (dragStackCnt === 1) { @@ -247,7 +249,7 @@ function simulateDrag(self, targetNode, startPoint, dx, dy, moveCnt, duration, o } function tick() { // called one interval after start - moveIndex++ + moveIndex += 1 updateCoords() // update clientCoords before mousemove if (isTouch) { @@ -275,7 +277,7 @@ function simulateDrag(self, targetNode, startPoint, dx, dy, moveCnt, duration, o } function stopDrag() { // progress at 1, coords already up to date at this point - (options.onBeforeRelease || function () {})() + (options.onBeforeRelease || (() => {}))() // only simulate a drop if the current drag is still the active one. // otherwise, this means another drag has begun via onBeforeRelease. @@ -292,14 +294,13 @@ function simulateDrag(self, targetNode, startPoint, dx, dy, moveCnt, duration, o } } - dragStackCnt-- + dragStackCnt -= 1 + + let callback: (() => void) = options.onRelease || options.callback || (() => {}) // we wait because the there might be a FullCalendar drag interaction that finishes asynchronously // after the mouseend/touchend happens, and it's really convenient if our callback fires after that. - setTimeout( - options.onRelease || options.callback || (() => {}), // TODO: deprecate "callback" ? - 0, - ) + setTimeout(callback, 0) } startDrag() @@ -310,10 +311,10 @@ function normalizeElPoint(point, el) { let top = point.top if (/%$/.test(left)) { - left = parseInt(left) / 100 * el.outerWidth() + left = (parseInt(left, 10) / 100) * el.outerWidth() } if (/%$/.test(top)) { - top = parseInt(top) / 100 * el.outerHeight() + top = (parseInt(top, 10) / 100) * el.outerHeight() } return { left, top } diff --git a/packages/__tests__/src/lib/wrappers/TimeGridWrapper.ts b/packages/__tests__/src/lib/wrappers/TimeGridWrapper.ts index cc6507a66e..3fd10ef09d 100644 --- a/packages/__tests__/src/lib/wrappers/TimeGridWrapper.ts +++ b/packages/__tests__/src/lib/wrappers/TimeGridWrapper.ts @@ -120,11 +120,13 @@ export class TimeGridWrapper { getLastMajorAxisInfo() { let cells = this.getTimeAxisInfo() - for (let i = cells.length - 1; i >= 0; i--) { + for (let i = cells.length - 1; i >= 0; i -= 1) { if (cells[i].isMajor) { return cells[i] } } + + return null } dragEventToDate(eventEl: HTMLElement, dropDate, onBeforeRelease?) { @@ -313,19 +315,18 @@ export class TimeGridWrapper { } const topBorderWidth = 1 // TODO: kill - let slotEl = this.getSlotElByTime(targetTimeMs) - let $slotEl // used within loop, but we access last val - // exact slot match - if (slotEl) { - return $(slotEl).offset().top + topBorderWidth + let singleSlotEl = this.getSlotElByTime(targetTimeMs) + if (singleSlotEl) { // exact slot match + return $(singleSlotEl).offset().top + topBorderWidth } + let $slotEl // used within loop, but we access last val let slotEls = this.getSlotEls() // all slots let slotTimeMs = null let prevSlotTimeMs = null - for (let i = 0; i < slotEls.length; i++) { // traverse earlier to later + for (let i = 0; i < slotEls.length; i += 1) { // traverse earlier to later let slotEl = slotEls[i] $slotEl = $(slotEl) @@ -377,10 +378,10 @@ export class TimeGridWrapper { let endTop = null let rects = [] - for (dayI = 0; dayI < dayStructs.length; dayI++) { + for (dayI = 0; dayI < dayStructs.length; dayI += 1) { dayStruct = dayStructs[dayI] - for (slotI = 0; slotI < slotStructs.length; slotI++) { + for (slotI = 0; slotI < slotStructs.length; slotI += 1) { slotStruct = slotStructs[slotI] slotDayStart = addDays( @@ -467,7 +468,7 @@ export class TimeGridWrapper { let len = slots.length if (len < 3) { - console.log('need at least 3 slots') + console.log('need at least 3 slots') // eslint-disable-line no-console return [] } @@ -478,12 +479,12 @@ export class TimeGridWrapper { let dayOffset = 0 // iterate from one-before middle to beginning - for (i = mid - 1; i >= 0; i--) { + for (i = mid - 1; i >= 0; i -= 1) { ms = slots[i + 1].startTimeMs - slots[i].startTimeMs // big deviation? assume moved to previous day (b/c of special slotMinTime) if (Math.abs(ms - standardMs) > standardMs * 2) { - dayOffset-- + dayOffset -= 1 slots[i].endTimeMs = slots[i].startTimeMs + standardMs } else { // otherwise, current slot's end is next slot's beginning slots[i].endTimeMs = slots[i + 1].startTimeMs @@ -495,14 +496,14 @@ export class TimeGridWrapper { dayOffset = 0 // iterate from middle to one-before last - for (i = mid; i < len - 1; i++) { + for (i = mid; i < len - 1; i += 1) { ms = slots[i + 1].startTimeMs - slots[i].startTimeMs slots[i].dayOffset = dayOffset // big deviation? assume moved to next day (b/c of special slotMaxTime) if (Math.abs(ms - standardMs) > standardMs * 2) { - dayOffset++ // will apply to the next slotStruct + dayOffset += 1 // will apply to the next slotStruct slots[i].endTimeMs = slots[i].startTimeMs + standardMs } else { // otherwise, current slot's end is next slot's beginning slots[i].endTimeMs = slots[i + 1].startTimeMs @@ -516,7 +517,7 @@ export class TimeGridWrapper { // if last slot went over the day threshold if (slots[i].endTimeMs > 1000 * 60 * 60 * 24) { slots[i].endTimeMs -= 1000 * 60 * 60 * 24 - slots[i].dayOffset++ + slots[i].dayOffset += 1 } return slots @@ -570,11 +571,11 @@ function checkEventRenderingMatch(expectedRects, eventEls) { let elRect if (eventEls.length !== expectedLength) { - console.log('does not match element count') + console.log('does not match element count') // eslint-disable-line no-console return false } - for (i = 0; i < expectedLength; i++) { + for (i = 0; i < expectedLength; i += 1) { expectedRect = expectedRects[i] elRect = eventEls[i].getBoundingClientRect() @@ -585,7 +586,7 @@ function checkEventRenderingMatch(expectedRects, eventEls) { Math.abs(elRect.top - expectedRect.top) < 1 && Math.abs(elRect.bottom + 1 - expectedRect.bottom) < 1 // add 1 because of bottom margin! )) { - console.log('rects do not match') + console.log('rects do not match') // eslint-disable-line no-console return false } } diff --git a/packages/__tests__/src/lib/wrappers/ToolbarWrapper.ts b/packages/__tests__/src/lib/wrappers/ToolbarWrapper.ts index 9cf1bdd313..a3b2cf5771 100644 --- a/packages/__tests__/src/lib/wrappers/ToolbarWrapper.ts +++ b/packages/__tests__/src/lib/wrappers/ToolbarWrapper.ts @@ -20,6 +20,8 @@ export class ToolbarWrapper { iconName: iconNameMatch ? iconNameMatch[1] : '', } } + + return null } getButtonEl(name) { // for custom or standard buttons diff --git a/packages/__tests__/src/main.ts b/packages/__tests__/src/main.ts index 5d12f7f977..32a175b267 100644 --- a/packages/__tests__/src/main.ts +++ b/packages/__tests__/src/main.ts @@ -1,4 +1,4 @@ -import 'jquery-simulate/jquery.simulate.js' +import 'jquery-simulate/jquery.simulate' import 'jasmine-jquery' import './lib/globals' diff --git a/packages/__tests__/src/performance/daygrid-rerenders.ts b/packages/__tests__/src/performance/daygrid-rerenders.ts index 1da3aace11..69a8afdd7c 100644 --- a/packages/__tests__/src/performance/daygrid-rerenders.ts +++ b/packages/__tests__/src/performance/daygrid-rerenders.ts @@ -11,13 +11,13 @@ it('daygrid view rerenders well', (done) => { { title: 'event 0', start: '2017-10-04' }, ], dayHeaderContent() { - dayHeaderRenderCnt++ + dayHeaderRenderCnt += 1 }, dayCellContent() { - dayCellRenderCnt++ + dayCellRenderCnt += 1 }, eventContent() { - eventRenderCnt++ + eventRenderCnt += 1 }, }) diff --git a/packages/__tests__/src/performance/list-rerenders.ts b/packages/__tests__/src/performance/list-rerenders.ts index dcb47488ba..ae0af6e022 100644 --- a/packages/__tests__/src/performance/list-rerenders.ts +++ b/packages/__tests__/src/performance/list-rerenders.ts @@ -11,13 +11,13 @@ it('list view rerenders well', (done) => { { title: 'event 0', start: '2017-10-04' }, ], dayHeaderContent() { - dayRenderCnt++ + dayRenderCnt += 1 }, eventContent() { - eventRenderCnt++ + eventRenderCnt += 1 }, noEventsContent() { - noEventsRenderCnt++ + noEventsRenderCnt += 1 }, }) diff --git a/packages/__tests__/src/performance/timegrid-rerenders.ts b/packages/__tests__/src/performance/timegrid-rerenders.ts index 5fc77f623a..ef90306320 100644 --- a/packages/__tests__/src/performance/timegrid-rerenders.ts +++ b/packages/__tests__/src/performance/timegrid-rerenders.ts @@ -13,19 +13,19 @@ it('timegrid view rerenders well', (done) => { { title: 'event 0', start: '2017-10-04T00:00:00' }, ], dayHeaderContent() { - dayHeaderRenderCnt++ + dayHeaderRenderCnt += 1 }, dayCellContent() { - dayCellRenderCnt++ + dayCellRenderCnt += 1 }, slotLabelContent() { - slotLabelRenderCnt++ + slotLabelRenderCnt += 1 }, slotLaneContent() { - slotLaneRenderCnt++ + slotLaneRenderCnt += 1 }, eventContent() { - eventRenderCnt++ + eventRenderCnt += 1 }, }) diff --git a/packages/__tests__/src/view-dates/datesSet.ts b/packages/__tests__/src/view-dates/datesSet.ts index e741ba85cd..1c19235202 100644 --- a/packages/__tests__/src/view-dates/datesSet.ts +++ b/packages/__tests__/src/view-dates/datesSet.ts @@ -13,7 +13,7 @@ describe('datesSet', () => { ...getCurrentOptions(), weekNumbers: false, datesSet() { - fireCnt++ + fireCnt += 1 }, } let $calendarEl = $('
').appendTo('body') @@ -40,7 +40,7 @@ describe('datesSet', () => { ...getCurrentOptions(), headerToolbar: buildHeaderToolbar(), datesSet() { - fireCnt++ + fireCnt += 1 }, } let $calendarEl = $('
').appendTo('body') @@ -62,7 +62,7 @@ describe('datesSet', () => { ...getCurrentOptions(), plugins: [dayGridPlugin], datesSet() { - fireCnt++ + fireCnt += 1 }, } let $calendarEl = $('
').appendTo('body') diff --git a/packages/__tests__/src/view-dates/visibleRange.ts b/packages/__tests__/src/view-dates/visibleRange.ts index 37d8868f5c..06c7d70841 100644 --- a/packages/__tests__/src/view-dates/visibleRange.ts +++ b/packages/__tests__/src/view-dates/visibleRange.ts @@ -21,18 +21,14 @@ describe('visibleRange', () => { start: startInput, end: endInput, }, - 'of a function that returns date objects': function () { - return { - start: new Date(startInput), - end: new Date(endInput), - } - }, - 'of a function that returns strings': function () { - return { - start: startInput, - end: endInput, - } - }, + 'of a function that returns date objects': () => ({ + start: new Date(startInput), + end: new Date(endInput), + }), + 'of a function that returns strings': () => ({ + start: startInput, + end: endInput, + }), }, () => { it('gets set to the given range', () => { initCalendar() diff --git a/packages/timegrid/src/TimeColsSeg.ts b/packages/timegrid/src/TimeColsSeg.ts index 132b42f6af..de7d3f2b10 100644 --- a/packages/timegrid/src/TimeColsSeg.ts +++ b/packages/timegrid/src/TimeColsSeg.ts @@ -12,12 +12,12 @@ export function splitSegsByCol(segs: TimeColsSeg[] | null, colCnt: number) { // let segsByCol: TimeColsSeg[][] = [] let i - for (i = 0; i < colCnt; i++) { + for (i = 0; i < colCnt; i += 1) { segsByCol.push([]) } if (segs) { - for (i = 0; i < segs.length; i++) { + for (i = 0; i < segs.length; i += 1) { segsByCol[segs[i].col].push(segs[i]) } } @@ -29,11 +29,11 @@ export function splitInteractionByCol(ui: EventSegUiInteractionState | null, col let byRow: EventSegUiInteractionState[] = [] if (!ui) { - for (let i = 0; i < colCnt; i++) { + for (let i = 0; i < colCnt; i += 1) { byRow[i] = null } } else { - for (let i = 0; i < colCnt; i++) { + for (let i = 0; i < colCnt; i += 1) { byRow[i] = { affectedInstances: ui.affectedInstances, isEvent: ui.isEvent, diff --git a/packages/timegrid/src/event-placement.ts b/packages/timegrid/src/event-placement.ts index 591b5a9470..e4fab7c19a 100644 --- a/packages/timegrid/src/event-placement.ts +++ b/packages/timegrid/src/event-placement.ts @@ -59,7 +59,7 @@ function buildSlotSegLevels(segs: Seg[]) { let seg let j - for (i = 0; i < segs.length; i++) { + for (i = 0; i < segs.length; i += 1) { seg = segs[i] // go through all the levels and stop on the first level where there are no collisions @@ -79,7 +79,7 @@ function buildSlotSegLevels(segs: Seg[]) { // Find all the segments in `otherSegs` that vertically collide with `seg`. // Append into an optionally-supplied `results` array and return. function computeSlotSegCollisions(seg: Seg, otherSegs: Seg[], results = []) { - for (let i = 0; i < otherSegs.length; i++) { + for (let i = 0; i < otherSegs.length; i += 1) { if (isSlotSegCollision(seg, otherSegs[i])) { results.push(otherSegs[i]) } @@ -102,7 +102,7 @@ function computeForwardSlotSegs(levels) { let seg let k - for (i = 0; i < levels.length; i++) { + for (i = 0; i < levels.length; i += 1) { level = levels[i] for (j = 0; j < level.length; j++) { @@ -125,7 +125,7 @@ function computeSlotSegPressures(seg: Seg) { let forwardSeg if (seg.forwardPressure == null) { // not already computed - for (i = 0; i < forwardSegs.length; i++) { + for (i = 0; i < forwardSegs.length; i += 1) { forwardSeg = forwardSegs[i] // figure out the child's maximum forward path @@ -176,7 +176,7 @@ function computeSegForwardBack(seg: Seg, seriesBackwardPressure, seriesBackwardC // use this segment's coordinates to computed the coordinates of the less-pressurized // forward segments - for (i = 0; i < forwardSegs.length; i++) { + for (i = 0; i < forwardSegs.length; i += 1) { computeSegForwardBack(forwardSegs[i], 0, seg.forwardCoord, eventOrderSpecs) } }