All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
0.31.1 (2024-04-19)
0.31.0 (2022-12-11)
- angular 15 or higher is now required to use this package
- upgrade to angular 15 (71e3318)
0.30.1 (2022-08-15)
- add missing SASS entry point (#1595) (c83293c), closes #1596
- restore compatibility with jest 28 (#1599) (3cb63e1)
0.30.0 (2022-08-03)
- rtl: week view all day events with RTL may need some styling adjustments in your application for them to display properly
- angular 14 or higher is now required to use this package
- IE11 is no longer supported
- add secondaryText to event colors that you can use to customise week and day view event text (6bfbf70), closes #1375
- drop support for IE11 (39b4e76)
- upgrade to angular 14 (a496f35)
0.29.0 (2021-12-11)
- angular 12 or higher is now required to use this package
- if you are implementing your own date adapter you will now need to implement the
getTimezoneOffset
method - week-view: Previously when resizing events the minimum event height would be calculated based on
hourSegments
,hourSegmentHeight
andhourDuration
. It now respects theminimumEventHeight
input instead.
To restore the old behaviour you will need to set minimumEventHeight
appropriately (by default it's 30
so should continue to work as expected for most users)
- when using the moment date formatter, the day view title format has changed to be locale aware. If you prefer the old behaviour you can restore it by overriding the
dayViewTitle
method in the moment date formatter like so:
class CustomMomentDateFormatter extends CalendarMomentDateFormatter {
public dayViewTitle({ date, locale }: DateFormatterParams): string {
return this.moment(date).locale(locale).format('dddd, D MMMM, YYYY');
}
}
- week-view: the drag behaviour now mimicks the resize behaviour where you can drag an event down to move it into the next day. To restore the old behaviour you can use the new
validateEventTimesChanged
input to control where an event can be dragged. - week-view: events on the week and day view will now always be at least 30 pixels high by default. To restore the old behaviour you can set
[minimumEventHeight]="1"
.
- add support for rtl (caaf96c), closes #1203
- allow timezone offset to be overridden in the date adapter (96726e1)
- publish package in ivy partial compilation mode (29eb8c9), closes #1536
- week-view: add hourDuration option (6a72448), closes #1080
- week-view: add minimumEventHeight option (7789fda), closes #1192
- week-view: allow customising where events can be dragged (cd12d3c), closes #1183
- week-view: allow customising where events can be resized (ba45051), closes #1183
- use locale aware day view title for moment date formatter (acf93a3), closes #1396
- week-view: allow dragging events to span multiple days (ef5749c), closes #1234
- week-view: respect minimumEventHeight input when resizing (5f0f6be)
0.28.28 (2021-09-01)
- no functional changes, just needed to publish a readme update to npm
0.28.27 (2021-08-27)
- month-view: add missing a11y attributes (959029e)
0.28.26 (2021-06-20)
- schematics: fix deprecation warning on install (cd47e98)
0.28.25 (2021-06-20)
0.28.24 (2021-05-03)
- restore compatibility with angular 6 and 7 (79c2509)
0.28.23 (2021-05-03)
0.28.22 (2020-10-20)
0.28.21 (2020-10-20)
0.28.20 (2020-09-13)
0.28.19 (2020-09-13)
0.28.18 (2020-09-12)
0.28.17 (2020-09-12)
0.28.16 (2020-05-30)
0.28.15 (2020-05-16)
0.28.14 (2020-05-14)
0.28.13 (2020-05-03)
- month-view: dont fire click event when dropping event in cell (1b81353), closes #1237
- week-view: update event title time when dragging and resizing (b31e35b), closes #1238
0.28.11 (2020-04-19)
- fix scroll issues on touch devices when dragging (4cb3314)
0.28.10 (2020-04-18)
- fix click and scroll events on touch devices (fe08a96), closes #1144
- tooltip: hide tooltip when dragging starts (f565162)
0.28.9 (2020-04-18)
0.28.8 (2020-04-13)
0.28.7 (2020-04-12)
- make universal rendering work without any hacks (40de98d), closes #1211
- universal: remove need to add KeyboardEvent hack to server.ts (0e9e8d1)
0.28.6 (2020-04-12)
0.28.5 (2020-03-01)
0.28.4 (2020-03-01)
- schematics: fix setting custom module to add the calendar imports to (24125e5)
- schematics: use default project instead of first project if not set (ff477a5)
- fix infinite load on universal with day and week view (266e159), closes #1177
0.28.3 (2020-02-29)
0.28.2 (2019-11-21)
- fix npm funding link (5fc574a)
0.28.1 (2019-11-21)
0.28.0 (2019-11-14)
- date-fns v2 or higher is now required as a peer dependency
If implementing a custom adapter, the max
function signature has changed to accept an array of dates, instead of an infinite argument list.
The date adapters no longer accept strings as input arguments.
-
week-view: If extending the root week view component to override the template you must make the following changes:
-
Wrap the time events with
<div "class='cal-events-container'">
-
Change
<div class="cal-time-label-column" *ngIf="view.hourColumns.length > 0">
to<div class="cal-time-label-column" *ngIf="view.hourColumns.length > 0 && daysInWeek !== 1">
-
Add
[isTimeLabel]="daysInWeek === 1"
to the bottom<mwl-calendar-week-view-hour-segment>
elements -
The trackBy function
trackByDayOrWeekEvent
was split intotrackByWeekAllDayEvent
andtrackByWeekTimeEvent
-
week-view: if using a custom
headerTemplate
on the week view, then you must now addlet-dragEnter="dragEnter"
to the templates variables and(dragEnter)="dragEnter.emit({ date: day.date })"
onto themwlDroppable
element. -
the
columnHeaderClicked
output on the month view now exposes an object instead of just the ISO day number
Before:
columnHeaderClicked="columnHeaderClicked($event)"
After:
columnHeaderClicked="columnHeaderClicked($event.isoDayNumber)"
- day-view: The day and week view have now merged. For most users this should be a seamless migration, however there are some edge cases that you may need to take account for:
Any custom styles you used for the day view will need to be adjusted. The cal-day-view-theme
sass mixin is now gone as all the styles are shared between the week and day view.
The eventWidth
option is removed, events now fill the available width.
If using [daysInWeek]="1"
on the week view, the date and title formatters for the day view will be used instead.
The week view now has a border top applied to the top of the component container, rather than the top of the day headers container.
The getDayView
and getDayViewHourGrid
functions have been removed from the CalendarUtils
service.
The following interfaces from calendar-utils
were renamed: DayViewHourSegment
-> WeekViewHourSegment
, DayViewHour
-> WeekViewHour
, DayViewEvent
-> WeekViewTimeEvent
The day view scheduler demo is now based off the week view instead, please check the updated demo code for how to migrate: https://mattlewis92.github.io/angular-calendar/#/day-view-scheduler
If using a custom template for the hourSegmentTemplate
, you must pass let-isTimeLabel="isTimeLabel"
as a local variable and then change <div class="cal-time">
to <div class="cal-time" *ngIf="isTimeLabel">
- the dist files are no longer annotated for usage with closure compiler.
- ensure compatibility with angular 9 and ivy (d4fdfb3), closes #1086
- day-view: expand hour segments across the full calendar width (61aef47), closes #1083
- week-view: prevent dropping external events on adjacent time slots (494adb5), closes #1062
- upgrade date-fns to v2 (d4d3873), closes #1064
- add accessibility support (05c9a9a), closes #941
- schematics: support ng add schematics (2dc2f47), closes #888
- week-view: add current time marker (d3872b1), closes #1102
- expose the click or keyboard event that triggers click handlers (d1a2b78), closes #962
- day-view: merge the week and day view components (2e92b25), closes #889
- day-view: expose
allDayEventsLabelTemplate
input (224848c)
0.27.21 (2019-11-14)
- add npm funding link
0.27.20 (2019-10-19)
0.27.19 (2019-09-25)
- restore peer dependencies (1c0f6eb)
0.27.18 (2019-08-18)
- display times properly on days where DST changes (6e139f4), closes #964 #477
- upgrade positioning library (8480e72)
0.27.17 (2019-08-18)
- week-view: handle excluding non consecutive days (5ca90c9), closes #973
- upgrade positioning library (ad0a521), closes #956
0.27.16 (2019-08-18)
0.27.15 (2019-08-12)
- week-view: prevent duplicate drag and drop events (a2fb2e2)
0.27.14 (2019-07-20)
- upgrade dependencies (530afd0)
0.27.13 (2019-07-13)
0.27.12 (2019-06-27)
- month-view: add 1px drag sensitivity (4a0e581), closes #1012
- month-view: make slide animation smoother (8ef9fe8), closes #1017
- upgrade dependencies (6e05313)
0.27.11 (2019-06-07)
0.27.10 (2019-06-07)
- ensure date adapters are compiled to es5 (5fef3be)
- upgrade dependencies (50eacf8)
0.27.9 (2019-06-05)
- only include object.entries polyfill (650242d)
- upgrade commitlint (9a743ed)
- upgrade dependencies (c2562f1)
- deps: bump fstream from 1.0.11 to 1.0.12 in /build-tool-examples/angular-cli (#996) (ff61c03)
- upgrade dependencies (02a3b4b)
- upgrade dependencies (da42f3d)
- upgrade to angular 8 ✨ (f3d99f7)
0.27.8 (2019-05-20)
- make internal methods callable from sub classes (8c926ed)
0.27.7 (2019-04-27)
0.27.6 (2019-04-27)
0.27.5 (2019-04-21)
- draggable: support scrolling when dragging events (99c7aa3), closes #838 #909
- week-view: have time grid events fill available space (8571528), closes #833
0.27.4 (2019-04-20)
- styling fixes for day and week view when not using bootstrap (8c0fbf7), closes #951
- day-view: fix dashed line separators when not using bootstrap (f626dce), closes #952
0.27.3 (2019-04-11)
- click: disable click listeners unless required (5b315a5), closes #942
- click: lazily initialise all click handlers (823ee4d), closes #942
0.27.2 (2019-04-01)
0.27.1 (2019-03-26)
- actions: fix event is not defined error (2a2822f)
0.27.0 (2019-03-22)
- week-view: respect hourSegmentHeight when resizing events (241f7c3), closes #929
- allow events to be dragged back to their original location (0f69010), closes #847
- expose all track by fns to custom templates (d6fb3de)
- sanitise invalid hours and minutes on day and week view ranges (f54a5f5), closes #907
- day-view: set allDay to false when dragging events (c4c8bd5)
- week-view: handle dragging and resizing across excluded days (5d1c69a)
- tooltip: add a configurable tooltip delay (#891) (07aec13), closes #790
- add sass mixins for easier theming (447aea9), closes #858
- month-view: add activeDay input to override the active day (864462b), closes #885
- month-view: add columnHeaderClicked output (2bd5e2b), closes #722
- week-view: track by a unique row id instead of the index (481eb02)
- only call beforeViewRender output once when changing view date (ec7021a)
- use correct track by on month rows and event actions (302170e)
- all 3 views now have a default white background set. If you were relying on it being transparent before you will need to override with css. To migrate you can add this to your global CSS:
.cal-month-view, .cal-week-view, .cal-day-view {
background-color: initial;
}
- If overriding the main week view template, replace
*ngFor="let eventRow of view.allDayEventRows; trackBy:trackByIndex"
with
*ngFor="let eventRow of view.allDayEventRows; trackBy:trackById"
- If extending the
CalendarMonthViewComponent
you must add[ngStyle]="{ backgroundColor: day.backgroundColor }"
to themwl-calendar-month-cell
component.
0.26.11 (2019-03-17)
- week-view: dont disable tooltips until drag is started (e1c321c), closes #829
- week-view: preserve css classes on segments when dragging events (5fe384d), closes #908
0.26.10 (2019-03-17)
0.26.9 (2019-03-17)
0.26.8 (2019-03-17)
- week-view: update header when week starts on changes (bf3dd4d), closes #868
- throw better error message on invalid date formatter (5f1fe72), closes #897
0.26.7 (2019-03-16)
0.26.6 (2019-02-05)
- allow resizing events back to their original positions (0b478b8)
0.26.5 (2019-02-03)
- allow events to be dragged back to their original location (cb07924), closes #847
- week-view: handle event objects being changed when resizing (754d427)
- week-view: workaround js error when resizing events (94c51da)
0.26.4 (2018-11-05)
- day-view: set allDay to false when dragging events (14f1e5a)
- make sure moment date formatter is injectable (bd6da5f)
- week-view: use correct event width for hourly events (2fd4163), closes #784
0.26.3 (2018-10-14)
0.26.2 (2018-10-13)
- make it easier to extend providers (c753c22)
- day-view: add custom cssClass to allDay events (d2ac44c), closes #769
- month-view: don't allow dropping events on the source day (c96c87e), closes #746
- month-view: use correct inflection of month names on the title (ba9f5ad), closes #757
0.26.1 (2018-09-18)
0.26.0 (2018-09-03)
- allow events that end on different days to be dragged (df339b9)
- week-view: make sure currently resized events are always on top (bb08ec1)
- allow the mouse to be moved slightly when clicking events (08661c4), closes #678
- handle scrolling the page while dragging evwnts (9fe2a0f)
- make sure events that are being resized are always on top (ce8063d)
- month-view: stop events overflowing on ie11 (10ff7d5), closes #501
- mark package as having side effects (b20f821), closes #529
- day-view: allow events with no end date to be resized (b00d57c), closes #614
- day-view: always default eventSnapSize to hour segment height (8908759), closes #514
- day-view: disable pointer events whilst resizing (56dc132)
- day-view: dont remove events that start and end at the same time (d2223d5)
- day-view: make sure segmentHeight is passed to a custom template (79dd846), closes #514
- day-view: prevent segment double hover when dragging (1fd9089)
- event-clicked: clicking actual events now triggers eventClicked (403e127), closes #568
- moment: change weekViewColumnSubHeader from
D MMM
toMMM D
(a2fff58) - more robust way of telling if an event is dropped within a calendar (46a650a), closes #637
- prevent text getting selected in safari while dragging events (36fb312)
- month-view: prevent day clicked from firing when dragging events (c505d38), closes #487
- resizable: prevent resizing of elements when not on top stack (4bfac45), closes #662
- week-view: allow resizing events with no end date (ccffe05), closes #614
- week-view: fix cursor on draggable events (66e9223)
- week-view: use correct event left positioning (fb4bbb7), closes #675
- add a CalendarView enum to prevent typos in view names (f634a86)
- add time grid to the week view (5cfbfc7), closes #593
- allow event actions template to be customised (2c8a6db), closes #673
- allow meta to be passed to the event times changed interface (c27b2d8)
- allow moment to be used as a replacement to date-fns (1c5d32f)
- expose the full week view on the beforeViewRender output (1185d27), closes #632
- remove deep module imports (24eb394)
- remove direct dependency on date-fns (b3c9520)
- upgrade draggable library (d9e76d4)
- day-view: allow dragging and dropping all day events (62c41b9), closes #665
- day-view: allow events to be dragged outside of the view (6641319), closes #532
- day-view: expose events in beforeViewRender output (44347e2), closes #573
- day-view: make previous and next view helpers respect excludeDays (50159cc)
- day-view: remove the mwl-calendar-all-day-event component (c6b095a)
- event-times-changed: expose type of event (resize, drag or drop) (479c75a)
- event-title-formatter: expose the pre-formatted title (df62e7a), closes #587
- month-view: add class to day that's being highlighted (13a688e), closes #630
- month-view: allow events to be dropped on the open day events list (2454892), closes #523
- month-view: allow the open day events animation to be overridden (db0c880)
- upgrade the drag and drop library (ab764ec)
- tooltip: allow tooltip to be auto positioned (d6d61c4), closes #617
- week-view: allow events to be dragged outside of the view (e2538a1), closes #516
- week-view: allow total days in the week to be customised (0b4fcd5)
- week-view: make the week view title work with no config with i18n (aa7edd9), closes #670
- date-fns is now no longer a direct dependency of this library. To migrate:
Install date-fns with npm:
npm i date-fns
Add the date-fns calendar-utils adapter to the first argument of the CalendarModule.forRoot method:
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { CalendarModule, DateAdapter } from 'angular-calendar';
import { adapterFactory } from 'angular-calendar/date-adapters/date-fns';
@NgModule({
imports: [
BrowserAnimationsModule,
CalendarModule.forRoot({
provide: DateAdapter,
useFactory: adapterFactory
})
]
})
export class MyModule {}
For system.js users you will also need to add the following entries to your systemjs config:
'calendar-utils': 'npm:calendar-utils/bundles/calendar-utils.umd.js',
'calendar-utils/date-adapters/date-fns': 'npm:calendar-utils/date-adapters/date-fns/index.js',
'angular-calendar/date-adapters/date-fns': 'npm:angular-calendar/date-adapters/date-fns/index.js'
- week-view: the format of the week view title has changed from
Week d of yyyy
toMMM d - MMM d, yyyy
. You can override this by using a custom date formatter. - day-view: the allDayEventTemplate option was removed from the day view. To migrate use the eventTemplate input and check if dayEvent.event.allDay is set in the template
- Week view events will now appear on the bottom time grid. To restore the old behaviour you can set
allDay: true
on the event to make it appear at the top.
People extending the CalendarWeekViewComponent
will probably have to adjust their child component as the template and internal component api has changed significantly.
- month-view: If using a custom
openDayEventsTemplate
for the month view you must now wrap your template with:
<div class="cal-open-day-events" [@collapse] *ngIf="isOpen"></div>
and then you must add the collapse animation to the component that contains the open day events <ng-template>
:
import { collapseAnimation } from 'angular-calendar';
// add this to your component metadata
animations: [collapseAnimation]
- tooltip: all tooltips now default to auto positioning, you can use the tooltipPlacement input on all components to override this behaviour though
- event-clicked: eventClicked now fires whenever the event container instead of the event title is clicked
- day-view: previously events with no end date that were resized would emit an empty end time, now they will emit a sensible default new end date
- resizable: only one event at a time can now be resized on the day or week views
- week-view: if you were extending the week view component then the internal API has changed slightly and you may need to adjust your app
- month-view: Custom template users will now need to add a "dragActiveClass='cal-drag-active'" anywhere they use an mwlDraggable directive
If using the mwlDraggable directive anywhere else in your app you will need to apply pointer-events: none
to the element yourself when it's being dragged. This can be done with the dragActiveClass
option
- day-view: if you were extending the day view component then the internal API has changed slightly and you may need to adjust your app
- deep module imports angular-calendar/modules/{common,month,week,day} are no longer supported as the package is now treeshakable. To migrate, adjust your imports to be from angular-calendar directly
- moment: the moment weekViewColumnSubHeader format has changed for consistency with the other date formatters
- there were some minor breaking changes in the drag and drop library that might affect your app if you were using it outside of the calendar. See the changelog for more info: https://github.com/mattlewis92/angular-draggable-droppable/blob/main/CHANGELOG.md
- week-view: events with no end date that are resized now assume to have the start date as the end date
0.25.2 (2018-05-12)
- properly mark styles as having side effects (625e586)
0.25.1 (2018-05-11)
- mark styles as having side effects (2667433)
0.25.0 (2018-05-11)
- angular 6 or higher is now required to use this package
0.24.1 (2018-05-09)
0.24.0 (2018-04-17)
0.23.7 (2018-03-15)
0.23.6 (2018-02-12)
0.23.5 (2018-02-11)
0.23.4 (2018-02-11)
0.23.3 (2018-01-29)
0.23.2 (2018-01-10)
0.23.1 (2018-01-02)
- restore compatibility with system.js (1b3c27a)
0.23.0 (2018-01-02)
- date-formatter: use the angular date formatter by default (bd68045)
- export drag+drop and resizable modules for use in custom templates (579a51a), closes #419
- upgrade angular draggable droppable package (fd30c39)
- upgrade angular resizable element (26e2b53)
- upgrade calendar-utils (fe59aad)
- upgrade to angular 5 (775a62e), closes #417
- use ng-packagr for bundling the package (5744e9b), closes #408
- day-view: expose the period on the beforeViewRender output (24739ce), closes #418
- month-view: call beforeViewRender with the view period (a9ab6d9), closes #418
- week-view: expose the view period on beforeViewRender (cb73eff), closes #418
- angular 5 or higher is now required to use this package
- if using a locale other than english you will need to import the appropriate locale data somewhere in your app:
import { registerLocaleData } from '@angular/common';
import localeFr from '@angular/common/locales/fr'; // to register french
registerLocaleData(localeFr);
- date-formatter: the angular date formatter is now used by default to format dates instead of the formatter that requires the Intl polyfill
- day-view: the event signature of the beforeViewRender output has changed from $event.body to $event.body.hourGrid
- week-view: for people extending the root week view component, eventRows is now named view.eventRows
- the getWeekView function return signature has changed from an array of event rows to an object with the eventRows property set to the previous arrat value. This should only affect people overriding the CalendarUtils.getWeekView method.
- the umd entry path has changed from
angular-calendar/umd/angular-calendar.js
toangular-calendar/bundles/angular-calendar.umd.js
. System.js users will need to update their config - The UMD entry point for the
angular-draggable-droppable
package has changed fromangular-draggable-droppable/dist/umd/angular-draggable-droppable.js
toangular-draggable-droppable/bundles/angular-draggable-droppable.umd.js
. System.js users will need to update their config accordingly.
Also the dragStart output was renamed to dragPointerDown. Users using a custom template for the root day or week view components will need to adjust their templates accordingly.
- The UMD entry point for the
angular-resizable-element
package has changed fromangular-resizable-element/dist/umd/angular-resizable-element.js
toangular-resizable-element/bundles/angular-resizable-element.umd.js
. System.js users will need to update their config accordingly. - System.js users will now need to add an entry for the
positioning
package to their config'positioning': 'npm:positioning/dist/umd/positioning.js'
.
0.22.3 (2017-12-24)
- allow event actions to work on draggable events (c4d6abc), closes #373
- restore TS < 2.4 compatibility (fbfe430)
0.22.2 (2017-12-23)
- restore TS < 2.4 compatibility (fbfe430)
0.22.1 (2017-11-22)
0.22.0 (2017-11-19)
- day-view: allow the hour segment height to be customised (688693c), closes #360
- add individual month / week / day modules (e87ae23), closes #361
- add runtime validation of event properties (194fe59), closes #362
- introduce angular date formatter (cd40235), closes #376
- styles: move css files into the css root directory (72ae546)
- move umd bundle up and out of the dist directory (59d0049)
- styles: css styles have moved from:
node_modules/angular-calendar/dist/css/angular-calendar.css
to
node_modules/angular-calendar/css/angular-calendar.css
- The umd path for system.js users has changed from:
node_modules/angular-calendar/dist/umd/angular-calendar.js
to
node_modules/angular-calendar/umd/angular-calendar.js
0.21.3 (2017-10-21)
- allow angular 5 peer dependency (d178614)
0.21.2 (2017-09-07)
- monthView: allow adding extra weeks to the month view (529ebd3)
0.21.1 (2017-08-31)
0.21.0 (2017-08-29)
- monthView: don't fire dayClicked output when clicking on an event and using hammerjs (283c50e), closes #318
0.20.1 (2017-08-14)
- monthView: make collapse animation smoother (7b52366)
0.20.0 (2017-08-06)
- dayView: add the event.cssClass to the event container instead of the event itself (591dd4a), closes #299
- monthView: only call beforeViewRender once when refreshing the view (3dd3118), closes #293
- weekView: custom event
cssClass
's are now added to the event container instead of the event i (712ded8)
- weekView: you may need to adjust your CSS slightly to account for this change. See the day view breaking change for how to migrate.
- dayView: the
event.cssClass
property is now added to the parent container element, rather than the event itself. You may need to update your CSS.
Before:
.my-custom-event-class {}
After:
.my-custom-event-class .cal-event {}
People using custom day event event templates can also remove these lines from their template:
[class.cal-starts-within-day]="!dayEvent.startsBeforeDay"
[class.cal-ends-within-day]="!dayEvent.endsAfterDay"
[ngClass]="dayEvent.event.cssClass"
0.19.0 (2017-07-14)
0.18.3 (2017-06-28)
- tooltipTemplate: ensure custom tooltip template is available to other custom templates (ce14b96)
0.18.2 (2017-06-26)
0.18.1 (2017-06-25)
- Missed a breaking change that wasn't included in 0.18.0
0.18.0 (2017-06-25)
- dayView: introduce the
beforeViewRender
output (cfab254) - monthView: allow a css class to be added to a column header (abf02d8)
- monthView: introduce the
beforeViewRender
output (c9a2366) - tooltip: allow the event tooltip templates to be customised (82faaf4), closes #249
- weekendDays: allow weekend days to be customised (581b9a8), closes #255
- weekView: allow a custom css class to be added to a column header (068d08b), closes #222
- weekView: revert allowDragOutside feature (ac70656)
- upgrade calendar-utils (0dd602b)
- weekView: introduce the
dayHeaderClicked
output (2f11094), closes #222
- monthView: the
dayModifier
input has been replaced with a more powerfulbeforeViewRender
output. See the demo for an example of how to migrate your code. - dayView: the
hourSegmentModifier
has been replaced with thebeforeViewRender
output. - For system.js users only, the UMD path to the
calendar-utils
module has changed fromcalendar-utils/dist/umd/calendarUtils.js
tocalendar-utils/dist/umd/calendar-utils.js
- weekView: the
allowDragOutside
option has been removed from the week view as this can be implemented in user land. Please see this plunker for how to introduce it yourself: http://plnkr.co/edit/5KyUBC0lnfMsYMcVFAR9?p=preview - weekView: the
dayClicked
output has been replaced with thedayHeaderClicked
output. To migrate:
Before:
(dayClicked)="clickedDate = $event.date"
After:
(dayHeaderClicked)="clickedDate = $event.day.date"
0.17.4 (2017-06-21)
- various fixes when excluding days on the week and month views (58ce981)
0.17.3 (2017-06-12)
0.17.2 (2017-06-12)
- weekView: use correct event span when the the week doesn't start on a sunday (f19e970)
0.17.1 (2017-06-10)
- dayView: allow events to be resized that are next to each other (f627b8e), closes #225
- weekView: allow events to be resized that are next to each other (01b776c)
0.17.0 (2017-05-29)
- dayView: ensure all day event actions are always visible (132d990)
- dayView: ensure event actions are always visible (445b74f)
- weekView: stop events pushing others along when resizing (e6e02c5), closes #191
- meta: add
CalendarEvent
meta
property for storing arbritary data (43b0124), closes #218 - meta: make the event meta property generic so it can be strongly typed (d74c8e8)
- weekView: show event actions (7e7af92), closes #219
- Typescript 2.3 or higher is now required to use this library
0.16.0 (2017-05-27)
0.15.4 (2017-05-21)
- monthView: ensure events are dropped onto the correct dates (af48ed2)
0.15.3 (2017-05-21)
0.15.2 (2017-05-18)
0.15.1 (2017-05-17)
- refresh: use markForCheck instead of detectChanges (16dc938)
0.15.0 (2017-05-14)
- dayView: correct events dimensions for apps without bootstrap (977c344), closes #201
- tooltip: avoid ExpressionChangedAfterItHasBeenCheckedError when sometimes showing the tooltip (f9776c6), closes #196
- tooltip: position the tooltip correctly when using AoT (4531ebc)
- touch: use tap event instead of click if hammerjs is loaded (665520e), closes #203
- allow calendar-utils functions to be overridden (35ae95a), closes #199
- allow overriding of providers via the calendar modules forRoot method (847212e), closes #205
- if not using
CalendarModule.forRoot()
you must explicitly add theCalendarUtils
provider to your module declaration
0.14.0 (2017-04-21)
- weekView: add support for minute level precision on week view events (25d6933)
0.13.6 (2017-04-21)
- dayView: respect eventSnapSize when dragging events (028005f)
- dayView: respect eventSnapSize when resizing events (c0be926), closes #188
0.13.5 (2017-04-14)
0.13.4 (2017-04-10)
- dayView: fix resizing of events (18b573f)
0.13.3 (2017-04-10)
0.13.2 (2017-04-10)
- monthView: handle DST changes in the middle of the month (fcbca8a)
0.13.1 (2017-04-09)
0.13.0 (2017-04-07)
0.12.0 (2017-04-05)
- dayView: allow the all day event template to be customised (d542d13)
- dayView: allow the hour segment template to be customised (149b605), closes #172
0.11.0 (2017-03-29)
0.10.1 (2017-03-25)
- allow events array to be null (bcdf335)
0.10.0 (2017-03-24)
- ng4: angular 4.0 or higher is now required to use this library. The upgrade should be seamless for most users.
0.9.1 (2017-03-23)
0.9.0 (2017-03-21)
- monthView: allow open day events template to be customised (ef5a37f)
- monthView: allow the cell templates to be customised (4603e6b)
- monthView: allow the header template to be customised (53db16b)
- weekView: allow the header template to be customised (595a667)
- expose day, week and month view components so they can be extended with inheritance (426c287)
0.8.0 (2017-03-12)
- excludeDays: add an option to hide days on the month and week views (e296357)
0.7.3 (2017-03-04)
- loosen angular peer dependency to support angular 4 (e00c115)
- dayView: allow dropping of external events (86e5d06), closes #150
- monthView: add helper classes to the month view header (0008a83), closes #152
- weekView: allow external events to be dropped on the column headers (83266f7), closes #150
0.7.2 (2017-02-03)
- disable drag events when resizing (43c128c)
0.7.1 (2017-02-01)
- add all declarations to exports (Please note that these sub components will be subject to breaking changes in the next release once #16 lands, however will eventually become part of the public API. Use at your own risk!) (f20a991)
0.7.0 (2017-01-28)
0.6.2 (2017-01-06)
- export the CalendarMonthViewDay interface (4142231)
0.6.1 (2016-12-30)
- update the event title in the UI when it changes (3b611bf), closes #116
- monthView: cell events should be clickable (d61719e), closes #111
0.6.0 (2016-12-21)
- draggable: if not using CalendarModule.forRoot() and manually adding providers you must now also include the DraggableHelper from the angular-draggable-droppable module
Before:
import {CalendarModule, CalendarEventTitleFormatter, CalendarDateFormatter} from 'angular-calendar';
imports: [
CalendarModule
],
providers: [
CalendarEventTitleFormatter,
CalendarDateFormatter
]
After:
import {CalendarModule, CalendarEventTitleFormatter, CalendarDateFormatter} from 'angular-calendar';
import {DraggableHelper} from 'angular-draggable-droppable';
imports: [
CalendarModule
],
providers: [
CalendarEventTitleFormatter,
CalendarDateFormatter,
DraggableHelper
]
0.5.0 (2016-12-18)
- dayView: don't allow events to be resized outside of the calendar (78eb123), closes #99
- dayView: use correct event height when resizing from the top (1c5e74f)
- weekView: dont allow events to be resized outside of the calendar component (007fbc5), closes #99
- add drag and drop support (#100) (bbc02f3), closes #10 #102
- remove change detection strategy from all components (#101) (36458ab), closes #94
- rename
CalendarEventTitle
service toCalendarEventTitleFormatter
(45c0142)
- the
CalendarEventTitle
service has been renamed toCalendarEventTitleFormatter
- A dependency on the
angular-draggable-droppable
library has been added. System.js users will need to add this to their config:
'angular-draggable-droppable': 'npm:angular-draggable-droppable/dist/umd/angular-draggable-droppable.js'
- For enhanced performance it is recommended that you add
changeDetection: ChangeDetectionStrategy.OnPush
on all components that use this library. This will restrict change detection to only run when the components inputs change
0.4.4 (2016-12-07)
- date-fns: upgrade date-fns to fix module not found TS errors (733ed3e)
0.4.3 (2016-12-05)
0.4.2 (2016-12-05)
- botched release
0.4.1 (2016-11-25)
- date-fns: fix duplicate module declaration typescript errors (24be6f3)
0.4.0 (2016-11-04)
- dayView: add tooltips to events (2cc7929), closes #75
- dayView: allow resizing of events (95b9033)
- weekView: support resizing of events (c034a9d), closes #9
- rename module from angular2-calendar to angular-calendar (fa1ef98), closes #69
- The module has now been renamed from angular2-calendar to angular-calendar
The path to the sass and UMD builds has now changed. To migrate change all occurences of angular2-calendar
to angular-calendar
- dayView: day view events now have tooltips by default
- aot: angular 2.1.2 or higher is now required for AOT to work
- dayView: A dependency on the
angular-resizable-element
library has now been added. System.js users will need to add this to their config
'angular-resizable-element': 'npm:angular-resizable-element/dist/umd/angular-resizable-element.js',
Part of #9
0.3.6 (2016-10-30)
- dayView: fix event column stacking (4570fc6), closes #80
- dayView: show all day events that start outside of the day view start (edb2614), closes #79
0.3.5 (2016-10-13)
- system.js: use date-fns index imports for system.js users (096d6a2)
0.3.4 (2016-10-08)
- umd: more robust fix for umd build (135116a)
0.3.3 (2016-10-07)
0.3.2 (2016-10-06)
- rollup: allow the module to be bundled with rollup (e6deeea)
0.3.1 (2016-10-05)
- support building with rollup (428e254)
0.3.0 (2016-10-05)
- only versions of angular >= 2.0.0 are supported (6b1700b), closes #66
- remove positioning sourcemap from umd build (d7ea482), closes #66
- add CalendarModule.forRoot so providers dont need to be specified (ee54b8f)
- no RC versions of angular are supported. This was probably introduced in 0.2.x of this module, but clarifying here as a distinct breaking change
0.2.7 (2016-10-05)
- use commonjs date-fns imports for rollup (7e758ba)
0.2.6 (2016-09-28)
- typings: dont include reference to core-js (4daac27)
0.2.5 (2016-09-24)
- aot: export all components for aot (f701f86)
0.2.4 (2016-09-24)
- aot: export components so aot works (8b7ffc7)
0.2.3 (2016-09-24)
- aot: fix typescript errors when doing aot (c5ac3f9)
0.2.2 (2016-09-23)
- typings and esm paths (b70b92a)
0.2.1 (2016-09-23)
- allow any 1.x version of date-fns to be installed (726aaac)
- esm: dont import sass files in the esm build (00120f9)
- ng-bootstrap: add ng-bootstrap dependency to fix es module imports (af91adc)
0.2.0 (2016-09-23)
- build: support offline template compilation (dc12621)
- replace the moment dependency with the date-fns library (c147827), closes #48
- 1/ The
dayClicked
,dayModifier
andhourSegmentModifier
output objects now return pure date objects instead of moments
2/ If using the CalendarMomentDateFormatter
you must now also provide moment to the calendar like so
import * as moment from 'moment';
import {
CalendarMomentDateFormatter,
CalendarDateFormatter,
MOMENT
} from './../angular2-calendar';
...
providers: [
{provide: CalendarDateFormatter, useClass: CalendarMomentDateFormatter},
{provide: MOMENT, useValue: moment}
]
3/ The week start day is now no longer determined by moment. You must manually pass it to the month and week view components like so
// the first day of the week is Monday
[weekStartsOn]="1"
4/ If using this library without a module bundler you must make sure the date-fns library is included in a script tag
- build: The dist file paths have changed. To migrate
Before
import 'angular2-calendar/css/angular2-calendar.css';
After:
import 'angular2-calendar/dist/css/angular2-calendar.css';
For System.js users the path to the UMD files has changed:
Before:
node_modules/angular2-calendar/angular2-calendar.js
After:
node_modules/angular2-calendar/dist/umd/angular2-calendar.js
Webpack / browserify users aren't affected
0.1.3 (2016-09-13)
- peerDependencies: support any version of angular >= RC5 (2698bcf)
0.1.2 (2016-09-08)
0.1.1 (2016-09-03)
- monthView: fix the eventClicked output (745fff7)
Initial release