angular-material-event-calendar
Advanced tools
| <md-event-calendar | ||
| auto-height="40" | ||
| ng-model="selected" | ||
@@ -3,0 +4,0 @@ md-events="events" |
+1
-1
| { | ||
| "name": "angular-material-event-calendar", | ||
| "version": "0.0.7", | ||
| "version": "0.0.8", | ||
| "description": "Angular material event calander component", | ||
@@ -5,0 +5,0 @@ "main": [ |
+13
-6
@@ -1,8 +0,5 @@ | ||
| <a name="0.0.5"></a> | ||
| ## 0.0.5 (2016-09-05) | ||
| <a name="0.0.7"></a> | ||
| ## 0.0.6 (2016-09-24) | ||
| * Add previos and next month days to calendar view. These contain events | ||
| * Update theme to default to white for header background | ||
| * Add `md-primary` styling for header background and selected events. You can add the `md-primary` class to the `me-event-calendar` directive. | ||
| * Fix event sorting in month view to fit more events in a day | ||
| * Add `auto-height` attribute | ||
@@ -18,1 +15,11 @@ | ||
| * Fix event display on last day of week | ||
| <a name="0.0.5"></a> | ||
| ## 0.0.5 (2016-09-05) | ||
| * Add previos and next month days to calendar view. These contain events | ||
| * Update theme to default to white for header background | ||
| * Add `md-primary` styling for header background and selected events. You can add the `md-primary` class to the `me-event-calendar` directive. | ||
| * Fix event sorting in month view to fit more events in a day |
@@ -101,6 +101,12 @@ md-event-calendar:not(._md) md-event-calendar-header { | ||
| md-event-calendar md-event-calendar-month.fitted { | ||
| display: -webkit-box; | ||
| display: -ms-flexbox; | ||
| display: flex; | ||
| -webkit-box-orient: vertical; | ||
| -webkit-box-direction: normal; | ||
| -ms-flex-direction: column; | ||
| flex-direction: column; } | ||
| md-event-calendar md-event-calendar-month .md-event-calendar-month-row-header { | ||
| -webkit-box-flex: 1; | ||
| -ms-flex: 1; | ||
| flex: 1; | ||
| display: -webkit-box; | ||
@@ -114,2 +120,3 @@ display: -ms-flexbox; | ||
| min-height: 36px; | ||
| height: 36px; | ||
| -webkit-box-align: end; | ||
@@ -116,0 +123,0 @@ -ms-flex-align: end; |
@@ -165,2 +165,5 @@ (function(){"use strict";/** | ||
| vm.setToday = setToday; | ||
| vm.autoHeight = $attrs.autoHeight !== undefined; | ||
| vm.fitted = $attrs.fitted !== undefined; | ||
| vm.offset = vm.autoHeight === false || isNaN($attrs.autoHeight.replace('px', '')) ? 0 : parseInt($attrs.autoHeight.replace('px', '')); | ||
@@ -324,3 +327,3 @@ | ||
| monthElement.appendChild(row); | ||
| var cellSize = (options.bounds.width / 7) - 48; | ||
| var cellSize = options.cellHeight - 48; | ||
| var maxEvents = Math.floor(cellSize / 24); | ||
@@ -724,2 +727,4 @@ | ||
| scope.$evalAsync(function () { | ||
| setAutoHeight(); | ||
| element.toggleClass('fitted', mdEventCalendarCtrl.fitted); | ||
| buildView(); | ||
@@ -743,4 +748,14 @@ }); | ||
| }); | ||
| setAutoHeight(); | ||
| element.toggleClass('fitted', mdEventCalendarCtrl.fitted); | ||
| function setAutoHeight() { | ||
| if (!mdEventCalendarCtrl.autoHeight) { return; } | ||
| mdEventCalendarCtrl.fitted = true; | ||
| var top = element[0].getBoundingClientRect().top; | ||
| var height = $window.innerHeight - top - mdEventCalendarCtrl.offset; | ||
| element.css('height', height+'px'); | ||
| } | ||
| element.on('click', function (e) { | ||
@@ -789,2 +804,9 @@ if (mdEventCalendarCtrl.isCreateDisabled() === true) { return; } | ||
| function buildView() { | ||
| var cellHeight; | ||
| if (mdEventCalendarCtrl.fitted) { | ||
| cellHeight = element[0].offsetHeight / 5; | ||
| } else { | ||
| cellHeight = mdEventCalendarCtrl.$element[0].offsetWidth / 7; | ||
| } | ||
| var monthElement = $$mdEventCalendarBuilder.month({ | ||
@@ -796,5 +818,3 @@ date: mdEventCalendarCtrl.date, | ||
| showCreateLink: mdEventCalendarCtrl.showCreateLink, | ||
| bounds: { | ||
| width: mdEventCalendarCtrl.$element[0].offsetWidth | ||
| } | ||
| cellHeight: cellHeight | ||
| }); | ||
@@ -801,0 +821,0 @@ element.empty(); |
@@ -1,1 +0,1 @@ | ||
| md-event-calendar:not(._md) md-event-calendar-header{color:#666;background:#fff;border-color:#ddd}md-event-calendar:not(._md) md-event-calendar-header md-event-calendar-next .md-arrow svg,md-event-calendar:not(._md) md-event-calendar-header md-event-calendar-prev .md-arrow svg{fill:#666}md-event-calendar:not(._md) .md-button:not([disabled]){color:#333}md-event-calendar:not(._md) .md-button:not([disabled]):hover{background:hsla(0,0%,62%,.2)}md-event-calendar:not(._md) .md-button[disabled]{color:#ccc}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row-header{color:#999;background:#fff;border-color:#ddd}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row{background:#fff;border-color:#ddd}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell,md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell-divider{border-color:#ddd}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-create-link{color:#4189b8}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-cell-data-label{color:#999}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-cell-event-show-more-link{color:#4189b8}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell.different-month{background:#f5f5f5}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell.today{box-shadow:inset 0 0 0 1px #aaa}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell.today .md-event-calendar-month-cell-content .md-event-calendar-cell-data-label{color:#666}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell.today .md-event-calendar-month-cell-divider{border-color:#aaa}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell:last-child{border-color:#ddd}md-event-calendar:not(._md) .md-event-calendar-cell-event{background:#ddd;color:#666}md-event-calendar:not(._md) .md-event-calendar-cell-event.md-selected{color:#eee;background:#888}md-event-calendar:not(._md) .md-event-calendar-cell-event.md-continue-left:after,md-event-calendar:not(._md) .md-event-calendar-cell-event.md-end-left:after{border-right-color:#ddd}md-event-calendar:not(._md) .md-event-calendar-cell-event.md-continue-right:after,md-event-calendar:not(._md) .md-event-calendar-cell-event.md-start-right:after{border-left-color:#ddd}md-event-calendar:not(._md) .md-event-calendar-cell-event.md-selected.md-continue-left:after,md-event-calendar:not(._md) .md-event-calendar-cell-event.md-selected.md-end-left:after{border-right-color:#888}md-event-calendar:not(._md) .md-event-calendar-cell-event.md-selected.md-continue-right:after,md-event-calendar:not(._md) .md-event-calendar-cell-event.md-selected.md-start-right:after{border-left-color:#888}md-event-calendar:not(._md) .md-event-calendar-show-more-container .md-event-calendar-show-more-date-label{color:#999}md-event-calendar:not(._md) .md-event-calendar-show-more-container .md-event-calendar-show-more-close svg{fill:#999}md-event-calendar{display:block}md-event-calendar md-event-calendar-header{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;display:-webkit-box;display:-ms-flexbox;display:flex;line-height:64px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-style:solid;border-width:1px 1px 0}md-event-calendar md-event-calendar-header.md-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}md-event-calendar md-event-calendar-header md-event-calendar-title{display:block;min-width:170px;text-align:center;font-size:20px}md-event-calendar md-event-calendar-header md-event-calendar-next,md-event-calendar md-event-calendar-header md-event-calendar-prev{display:block}md-event-calendar md-event-calendar-header md-event-calendar-next .md-arrow,md-event-calendar md-event-calendar-header md-event-calendar-prev .md-arrow{cursor:pointer;height:24px;width:24px}md-event-calendar md-event-calendar-header md-event-calendar-next .md-arrow.md-left-arrow,md-event-calendar md-event-calendar-header md-event-calendar-prev .md-arrow.md-left-arrow{-webkit-transform:rotate(180deg);transform:rotate(180deg)}md-event-calendar md-event-calendar-month .md-event-calendar-month-row-header{-webkit-box-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;min-height:36px;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;font-size:12px;font-weight:500;padding-bottom:12px;border-style:solid;border-width:0 1px 1px}md-event-calendar md-event-calendar-month .md-event-calendar-month-row-header .md-event-calendar-month-cell-header{-webkit-box-flex:1;-ms-flex:1;flex:1;padding-left:6px}md-event-calendar md-event-calendar-month .md-event-calendar-month-row{-webkit-box-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;border-style:solid;border-width:0 0 1px}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell{position:relative;-webkit-box-flex:1;-ms-flex:1;flex:1}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-spacer{margin-top:100%}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-divider{position:absolute;top:0;bottom:0;left:0;border-style:solid;border-width:0 1px 0 0}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content{position:absolute;top:0;bottom:0;left:0;right:0}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-create-link{-ms-flex-item-align:center;align-self:center;text-transform:uppercase;font-size:14px;font-weight:500;padding-right:12px;cursor:pointer;opacity:0;-webkit-transition:opacity .4s cubic-bezier(.25,.8,.25,1);transition:opacity .4s cubic-bezier(.25,.8,.25,1)}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content:hover .md-event-calendar-create-link{opacity:1}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-cell-data-label{font-size:13px;padding:8px;-webkit-box-flex:1;-ms-flex:1;flex:1}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-cell-event-spacer{margin:4px 0;height:23px}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-cell-event-show-more-link{font-size:13px;padding:4px;padding-left:8px;cursor:pointer}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell:last-child{border-style:solid;border-width:0 1px 0 0}md-event-calendar .md-event-calendar-cell-event{font-size:12px;min-height:15px;padding:4px;cursor:pointer}md-event-calendar .md-event-calendar-cell-event.md-single{margin:4px;border-radius:2px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}md-event-calendar .md-event-calendar-cell-event.md-start{margin:4px 0 4px 4px;border-radius:2px 0 0 2px;white-space:nowrap;z-index:1;position:relative}md-event-calendar .md-event-calendar-cell-event.md-start-right{margin:4px 13px 4px 4px;border-radius:2px 0 0 2px}md-event-calendar .md-event-calendar-cell-event.md-end{margin:4px 4px 4px 0;border-radius:0 2px 2px 0}md-event-calendar .md-event-calendar-cell-event.md-end-left{margin:4px 4px 4px 13px;border-radius:0 2px 2px 0}md-event-calendar .md-event-calendar-cell-event.md-continue,md-event-calendar .md-event-calendar-cell-event.md-continue-both{margin:4px 0;border-radius:0}md-event-calendar .md-event-calendar-cell-event.md-continue-right{margin:4px 13px 4px 0;border-radius:0;white-space:nowrap}md-event-calendar .md-event-calendar-cell-event.md-continue-left{margin:4px 0 4px 13px;border-radius:0;white-space:nowrap}md-event-calendar .md-event-calendar-cell-event.md-continue-right:after,md-event-calendar .md-event-calendar-cell-event.md-start-right:after{content:'';position:absolute;height:0;width:0;right:0;margin-top:-4px;border-top:12px solid transparent;border-bottom:11.5px solid transparent;border-left:13px solid #eee}md-event-calendar .md-event-calendar-cell-event.md-continue-left:after,md-event-calendar .md-event-calendar-cell-event.md-end-left:after{content:'';position:absolute;height:0;width:0;left:0;margin-top:-4px;border-top:12px solid transparent;border-bottom:11.5px solid transparent;border-right:13px solid #eee}md-event-calendar .md-event-calendar-cell-event .md-event-calendar-cell-event-time{font-weight:500;padding-right:6px;pointer-events:none}md-event-calendar .md-event-calendar-cell-event span{pointer-events:none}md-event-calendar .md-event-calendar-show-more-content .md-event-calendar-cell-event.md-end,md-event-calendar .md-event-calendar-show-more-content .md-event-calendar-cell-event.md-single,md-event-calendar .md-event-calendar-show-more-content .md-event-calendar-cell-event.md-start-right{padding-left:16px;margin-left:0}md-event-calendar .md-event-calendar-show-more-content .md-event-calendar-cell-event.md-end,md-event-calendar .md-event-calendar-show-more-content .md-event-calendar-cell-event.md-end-left,md-event-calendar .md-event-calendar-show-more-content .md-event-calendar-cell-event.md-single{margin-right:0}md-event-calendar .md-event-calendar-show-more-container{opacity:0;position:absolute;top:0;left:1px;width:180px;background:#fff;padding:12px;padding-top:7px;border-radius:2px;z-index:2;box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}md-event-calendar .md-event-calendar-show-more-container .md-event-calendar-show-more-content{position:relative}md-event-calendar .md-event-calendar-show-more-container.show{opacity:1}md-event-calendar .md-event-calendar-show-more-container.show:not(.no-transition){-webkit-transition:opacity .4s cubic-bezier(.25,.8,.25,1);transition:opacity .4s cubic-bezier(.25,.8,.25,1)}md-event-calendar .md-event-calendar-show-more-container .md-event-calendar-show-more-close{display:-webkit-box;display:-ms-flexbox;display:flex;position:absolute;top:6px;right:7px;width:16px;height:16px;cursor:pointer}md-event-calendar .md-event-calendar-show-more-container .md-event-calendar-show-more-close svg{pointer-events:none}md-event-calendar .md-event-calendar-show-more-container .md-event-calendar-show-more-date-label{font-size:13px;padding:6px;margin-left:-11px;margin-top:-5px}md-event-calendar.md-create-disabled md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-create-link{display:none} | ||
| md-event-calendar:not(._md) md-event-calendar-header{color:#666;background:#fff;border-color:#ddd}md-event-calendar:not(._md) md-event-calendar-header md-event-calendar-next .md-arrow svg,md-event-calendar:not(._md) md-event-calendar-header md-event-calendar-prev .md-arrow svg{fill:#666}md-event-calendar:not(._md) .md-button:not([disabled]){color:#333}md-event-calendar:not(._md) .md-button:not([disabled]):hover{background:hsla(0,0%,62%,.2)}md-event-calendar:not(._md) .md-button[disabled]{color:#ccc}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row-header{color:#999;background:#fff;border-color:#ddd}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row{background:#fff;border-color:#ddd}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell,md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell-divider{border-color:#ddd}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-create-link{color:#4189b8}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-cell-data-label{color:#999}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-cell-event-show-more-link{color:#4189b8}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell.different-month{background:#f5f5f5}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell.today{box-shadow:inset 0 0 0 1px #aaa}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell.today .md-event-calendar-month-cell-content .md-event-calendar-cell-data-label{color:#666}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell.today .md-event-calendar-month-cell-divider{border-color:#aaa}md-event-calendar:not(._md) md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell:last-child{border-color:#ddd}md-event-calendar:not(._md) .md-event-calendar-cell-event{background:#ddd;color:#666}md-event-calendar:not(._md) .md-event-calendar-cell-event.md-selected{color:#eee;background:#888}md-event-calendar:not(._md) .md-event-calendar-cell-event.md-continue-left:after,md-event-calendar:not(._md) .md-event-calendar-cell-event.md-end-left:after{border-right-color:#ddd}md-event-calendar:not(._md) .md-event-calendar-cell-event.md-continue-right:after,md-event-calendar:not(._md) .md-event-calendar-cell-event.md-start-right:after{border-left-color:#ddd}md-event-calendar:not(._md) .md-event-calendar-cell-event.md-selected.md-continue-left:after,md-event-calendar:not(._md) .md-event-calendar-cell-event.md-selected.md-end-left:after{border-right-color:#888}md-event-calendar:not(._md) .md-event-calendar-cell-event.md-selected.md-continue-right:after,md-event-calendar:not(._md) .md-event-calendar-cell-event.md-selected.md-start-right:after{border-left-color:#888}md-event-calendar:not(._md) .md-event-calendar-show-more-container .md-event-calendar-show-more-date-label{color:#999}md-event-calendar:not(._md) .md-event-calendar-show-more-container .md-event-calendar-show-more-close svg{fill:#999}md-event-calendar{display:block}md-event-calendar md-event-calendar-header{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;display:-webkit-box;display:-ms-flexbox;display:flex;line-height:64px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-style:solid;border-width:1px 1px 0}md-event-calendar md-event-calendar-header.md-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}md-event-calendar md-event-calendar-header md-event-calendar-title{display:block;min-width:170px;text-align:center;font-size:20px}md-event-calendar md-event-calendar-header md-event-calendar-next,md-event-calendar md-event-calendar-header md-event-calendar-prev{display:block}md-event-calendar md-event-calendar-header md-event-calendar-next .md-arrow,md-event-calendar md-event-calendar-header md-event-calendar-prev .md-arrow{cursor:pointer;height:24px;width:24px}md-event-calendar md-event-calendar-header md-event-calendar-next .md-arrow.md-left-arrow,md-event-calendar md-event-calendar-header md-event-calendar-prev .md-arrow.md-left-arrow{-webkit-transform:rotate(180deg);transform:rotate(180deg)}md-event-calendar md-event-calendar-month.fitted{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}md-event-calendar md-event-calendar-month .md-event-calendar-month-row-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;min-height:36px;height:36px;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;font-size:12px;font-weight:500;padding-bottom:12px;border-style:solid;border-width:0 1px 1px}md-event-calendar md-event-calendar-month .md-event-calendar-month-row-header .md-event-calendar-month-cell-header{-webkit-box-flex:1;-ms-flex:1;flex:1;padding-left:6px}md-event-calendar md-event-calendar-month .md-event-calendar-month-row{-webkit-box-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;border-style:solid;border-width:0 0 1px}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell{position:relative;-webkit-box-flex:1;-ms-flex:1;flex:1}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-spacer{margin-top:100%}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-divider{position:absolute;top:0;bottom:0;left:0;border-style:solid;border-width:0 1px 0 0}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content{position:absolute;top:0;bottom:0;left:0;right:0}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-create-link{-ms-flex-item-align:center;align-self:center;text-transform:uppercase;font-size:14px;font-weight:500;padding-right:12px;cursor:pointer;opacity:0;-webkit-transition:opacity .4s cubic-bezier(.25,.8,.25,1);transition:opacity .4s cubic-bezier(.25,.8,.25,1)}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content:hover .md-event-calendar-create-link{opacity:1}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-cell-data-label{font-size:13px;padding:8px;-webkit-box-flex:1;-ms-flex:1;flex:1}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-cell-event-spacer{margin:4px 0;height:23px}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-cell-event-show-more-link{font-size:13px;padding:4px;padding-left:8px;cursor:pointer}md-event-calendar md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell:last-child{border-style:solid;border-width:0 1px 0 0}md-event-calendar .md-event-calendar-cell-event{font-size:12px;min-height:15px;padding:4px;cursor:pointer}md-event-calendar .md-event-calendar-cell-event.md-single{margin:4px;border-radius:2px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}md-event-calendar .md-event-calendar-cell-event.md-start{margin:4px 0 4px 4px;border-radius:2px 0 0 2px;white-space:nowrap;z-index:1;position:relative}md-event-calendar .md-event-calendar-cell-event.md-start-right{margin:4px 13px 4px 4px;border-radius:2px 0 0 2px}md-event-calendar .md-event-calendar-cell-event.md-end{margin:4px 4px 4px 0;border-radius:0 2px 2px 0}md-event-calendar .md-event-calendar-cell-event.md-end-left{margin:4px 4px 4px 13px;border-radius:0 2px 2px 0}md-event-calendar .md-event-calendar-cell-event.md-continue,md-event-calendar .md-event-calendar-cell-event.md-continue-both{margin:4px 0;border-radius:0}md-event-calendar .md-event-calendar-cell-event.md-continue-right{margin:4px 13px 4px 0;border-radius:0;white-space:nowrap}md-event-calendar .md-event-calendar-cell-event.md-continue-left{margin:4px 0 4px 13px;border-radius:0;white-space:nowrap}md-event-calendar .md-event-calendar-cell-event.md-continue-right:after,md-event-calendar .md-event-calendar-cell-event.md-start-right:after{content:'';position:absolute;height:0;width:0;right:0;margin-top:-4px;border-top:12px solid transparent;border-bottom:11.5px solid transparent;border-left:13px solid #eee}md-event-calendar .md-event-calendar-cell-event.md-continue-left:after,md-event-calendar .md-event-calendar-cell-event.md-end-left:after{content:'';position:absolute;height:0;width:0;left:0;margin-top:-4px;border-top:12px solid transparent;border-bottom:11.5px solid transparent;border-right:13px solid #eee}md-event-calendar .md-event-calendar-cell-event .md-event-calendar-cell-event-time{font-weight:500;padding-right:6px;pointer-events:none}md-event-calendar .md-event-calendar-cell-event span{pointer-events:none}md-event-calendar .md-event-calendar-show-more-content .md-event-calendar-cell-event.md-end,md-event-calendar .md-event-calendar-show-more-content .md-event-calendar-cell-event.md-single,md-event-calendar .md-event-calendar-show-more-content .md-event-calendar-cell-event.md-start-right{padding-left:16px;margin-left:0}md-event-calendar .md-event-calendar-show-more-content .md-event-calendar-cell-event.md-end,md-event-calendar .md-event-calendar-show-more-content .md-event-calendar-cell-event.md-end-left,md-event-calendar .md-event-calendar-show-more-content .md-event-calendar-cell-event.md-single{margin-right:0}md-event-calendar .md-event-calendar-show-more-container{opacity:0;position:absolute;top:0;left:1px;width:180px;background:#fff;padding:12px;padding-top:7px;border-radius:2px;z-index:2;box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}md-event-calendar .md-event-calendar-show-more-container .md-event-calendar-show-more-content{position:relative}md-event-calendar .md-event-calendar-show-more-container.show{opacity:1}md-event-calendar .md-event-calendar-show-more-container.show:not(.no-transition){-webkit-transition:opacity .4s cubic-bezier(.25,.8,.25,1);transition:opacity .4s cubic-bezier(.25,.8,.25,1)}md-event-calendar .md-event-calendar-show-more-container .md-event-calendar-show-more-close{display:-webkit-box;display:-ms-flexbox;display:flex;position:absolute;top:6px;right:7px;width:16px;height:16px;cursor:pointer}md-event-calendar .md-event-calendar-show-more-container .md-event-calendar-show-more-close svg{pointer-events:none}md-event-calendar .md-event-calendar-show-more-container .md-event-calendar-show-more-date-label{font-size:13px;padding:6px;margin-left:-11px;margin-top:-5px}md-event-calendar.md-create-disabled md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-create-link{display:none} |
@@ -1,1 +0,1 @@ | ||
| !function(){"use strict";function e(e,n,a){var r;e.has("$mdThemingProvider")?(r=e.get("$mdThemingProvider"),r.registerStyles(a)):n.decorator("$$rAF",["$delegate",t])}function t(e){return e.throttle=function(t){var n,a,r,d;return function(){n=arguments,d=this,r=t,a||(a=!0,e(function(){r.apply(d,Array.prototype.slice.call(n)),a=!1}))}},e}e.$inject=["$injector","$provide","EVENT_CALENDAR_THEME"],angular.module("material.components.eventCalendar",[]).config(e)}(),function(){"use strict";angular.module("material.components.eventCalendar").run(["$templateCache",function(e){e.put("icons/ic_close_black_24px.svg",'<svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg">\n <path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/>\n <path d="M0 0h24v24H0z" fill="none"/>\n</svg>'),e.put("icons/ic_keyboard_arrow_right_black_24px.svg",'<svg fill="#EEEEEE" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg">\n <path d="M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z"/>\n <path d="M0-.25h24v24H0z" fill="none"/>\n</svg>\n')}])}(),function(){"use strict";angular.module("material.components.eventCalendar").constant("EVENT_CALENDAR_THEME","md-event-calendar._md md-event-calendar-header {\n color: '{{foreground-1}}';\n background: '{{background-hue-1}}';\n border-color: '{{foreground-4}}'; }\n md-event-calendar._md md-event-calendar-header md-event-calendar-next .md-arrow svg, md-event-calendar._md md-event-calendar-header md-event-calendar-prev .md-arrow svg {\n fill: '{{foreground-2}}'; }\n\nmd-event-calendar._md md-event-calendar-month .md-event-calendar-month-row-header {\n color: '{{foreground-3}}';\n background: '{{background-hue-1}}';\n border-color: '{{foreground-4}}'; }\n\nmd-event-calendar._md md-event-calendar-month .md-event-calendar-month-row {\n background: '{{background-hue-1}}';\n border-color: '{{foreground-4}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell-divider {\n border-color: '{{foreground-4}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell {\n border-color: '{{foreground-4}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-create-link {\n color: '{{primary-default}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-cell-data-label {\n color: '{{foreground-3}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-cell-event-show-more-link {\n color: '{{primary-default}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell.different-month {\n background: '{{background-hue-2}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell.today {\n box-shadow: inset 0px 0px 0px 1px '{{primary-default}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell.today .md-event-calendar-month-cell-content .md-event-calendar-cell-data-label {\n color: '{{primary-default}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell:last-child {\n border-color: '{{foreground-4}}'; }\n\nmd-event-calendar._md .md-event-calendar-cell-event {\n background: '{{foreground-4}}';\n color: '{{background-900}}'; }\n md-event-calendar._md .md-event-calendar-cell-event.md-selected {\n color: #EEE;\n background: '{{primary-default}}'; }\n md-event-calendar._md .md-event-calendar-cell-event.md-continue-left:after, md-event-calendar._md .md-event-calendar-cell-event.md-end-left:after {\n border-right-color: '{{foreground-4}}'; }\n md-event-calendar._md .md-event-calendar-cell-event.md-continue-right:after, md-event-calendar._md .md-event-calendar-cell-event.md-start-right:after {\n border-left-color: '{{foreground-4}}'; }\n md-event-calendar._md .md-event-calendar-cell-event.md-selected.md-continue-left:after, md-event-calendar._md .md-event-calendar-cell-event.md-selected.md-end-left:after {\n border-right-color: '{{primary-default}}'; }\n md-event-calendar._md .md-event-calendar-cell-event.md-selected.md-continue-right:after, md-event-calendar._md .md-event-calendar-cell-event.md-selected.md-start-right:after {\n border-left-color: '{{primary-default}}'; }\n\nmd-event-calendar._md .md-event-calendar-show-more-container .md-event-calendar-show-more-date-label {\n color: '{{foreground-3}}'; }\n\nmd-event-calendar._md .md-event-calendar-show-more-container .md-event-calendar-show-more-close svg {\n fill: '{{foreground-1}}'; }\n\nmd-event-calendar._md.md-primary md-event-calendar-header {\n color: '{{background-100}}';\n background: '{{primary-default}}'; }\n md-event-calendar._md.md-primary md-event-calendar-header md-event-calendar-next .md-arrow svg, md-event-calendar._md.md-primary md-event-calendar-header md-event-calendar-prev .md-arrow svg {\n fill: '{{background-100}}'; }\n\nmd-event-calendar._md.md-primary md-event-calendar-month .md-event-calendar-month-row-header {\n color: '{{background-100}}';\n background: '{{primary-default}}'; }\n")}(),function(){"use strict";function e(e,t){function n(e,n){var a=n.mdEventClick?t(n.mdEventClick,null,!0):void 0,d=n.mdCreateEventClick?t(n.mdCreateEventClick,null,!0):void 0,l=n.mdCreateDisabled?t(n.mdCreateDisabled):void 0;return e.append("<md-event-calendar-month></md-event-calendar-month>"),function(e,t,o,c){function i(){var e=f.$viewValue||f.$modelValue||[];h.selectedEvents=[].concat(e)}function m(t,n){o.mdEventClick&&a(e.$parent,{$event:t,$selectedEvent:n})}function s(t,n){o.mdCreateEventClick&&d(e.$parent,{$event:t,$date:n})}function v(){return u}var u=!1,h=c[0],f=c[1];r&&(t.addClass("_md"),r(t)),h.isCreateDisabled=v,h.callEventClick=m,h.createEventClick=s,f&&(f.$render=i,h.ngModelCtrl=f),l?e.$watch(function(){return l(e.$parent)},function(e){u=e,t.toggleClass("md-create-disabled",e)}):void 0!==n.mdCreateDisabled&&(u=!0,t.addClass("md-create-disabled"))}}function a(e,t,n){function a(){o.date=e.getDateInNextMonth(o.date),o.monthDisplay=e.months[o.date.getMonth()],o.yearDisplay=o.date.getFullYear(),o.isTodayDisabled=o.date.getMonth()===(new Date).getMonth()}function r(){o.date=e.getDateInPreviousMonth(o.date),o.monthDisplay=e.months[o.date.getMonth()],o.yearDisplay=o.date.getFullYear(),o.isTodayDisabled=o.date.getMonth()===(new Date).getMonth()}function d(){o.date=new Date,o.monthDisplay=e.months[o.date.getMonth()],o.yearDisplay=o.date.getFullYear(),o.isTodayDisabled=!0}function l(e,t){var n=o.events.filter(function(e){return e.$$mdEventId===t});return o.ngModelCtrl&&(o.ngModelCtrl.$setViewValue(n[0]),o.ngModelCtrl.$render()),o.callEventClick(e,n[0]),!0}var o=this;o.$element=t,o.labelProperty=n.mdLabel||"title",o.selectedEvents=[],o.today=e.createDateAtMidnight(),o.date=e.createDateAtMidnight(),o.isToday=e.isSameDay(o.date,new Date),o.monthDisplay=e.months[o.date.getMonth()],o.yearDisplay=o.date.getFullYear(),o.isTodayDisabled=!0,o.showCreateLink=void 0!==n.mdShowCreateLink&&"false"!==n.mdShowCreateLink,o.nextMonth=a,o.previousMonth=r,o.selectEvent=l,o.setToday=d}a.$inject=["$$mdEventCalendarUtil","$element","$attrs"];var r=e.has("$mdTheming")?e.get("$mdTheming"):void 0,d={restrict:"E",require:["mdEventCalendar","?ngModel"],scope:{events:"=mdEvents"},compile:n,controller:a,controllerAs:"mdEventCalendar",bindToController:!0};return d}e.$inject=["$injector","$parse"],angular.module("material.components.eventCalendar").directive("mdEventCalendar",e)}(),function(){"use strict";function e(e,n){function a(t){var a=t.date,d=t.selected||[],l=t.events?r(a,t.events):[],o=t.labelProperty,c=document.createDocumentFragment(),i=document.createElement("div");i.classList.add("md-event-calendar-show-more-container");var s=document.createElement("div");s.classList.add("md-event-calendar-show-more-content");var v=document.createElement("div");v.classList.add("md-event-calendar-show-more-date-label"),v.textContent=e.dates[a.getDate()];var u=document.createElement("div");u.classList.add("md-event-calendar-show-more-close"),u.innerHTML=n.get("icons/ic_close_black_24px.svg"),u.setAttribute("md-show-more-close","true"),i.appendChild(v),i.appendChild(u),i.appendChild(s),c.appendChild(i),l.forEach(function(t){var n,r=e.isSameDay(a,t.start),l=!e.isValidDate(t.end)||e.isSameDay(a,t.end),c={labelProperty:o,selected:d};n=r&&l?m({className:"single",hasLabel:!0},t,c):r?m({className:"start-right",hasLabel:!0},t,c):l?m({className:"end-left",hasLabel:!0},t,c):m({className:"continue",hasLabel:!0},t,c),s.appendChild(n)});var h=(t.cell.getBoundingClientRect(),t.cell.offsetTop),f=t.cell.offsetLeft;return i.style.top=h+"px",i.style.left=f+"px",c}function r(t,n){return n&&n.length?n.filter(function(n){return e.isDateWithinRange(t,n.start,n.end||n.start)}).sort(function(e,t){return e=new Date(e.start),t=new Date(t.start),e>t?1:e<t?-1:0}):[]}function d(t){function n(e,n,a){return{date:e,today:c,dayOfWeek:n,differentMonth:a||!1,events:u,isFirstDay:d,isLastDay:o,maxEvents:D,selected:h,labelProperty:t.labelProperty,showCreateLink:t.showCreateLink}}var a,r=0,d=!0,o=!1,c=e.createDateAtMidnight(),i=e.isValidDate(t.date)?t.date:new Date,m=e.getFirstDateOfMonth(i),s=(m.getDay()+7)%7,v=e.getNumberOfDaysInMonth(i),u=p(i,t.events);u.forEach(C);var h=t.selected||[],E=f(),b=g();E.appendChild(b);var y=t.bounds.width/7-48,D=Math.floor(y/24);if(s>0)for(a=e.getFirstDateOfMonth(i),a.setDate(a.getDate()-s);r<s;)b.appendChild(l(n(a,r,!0))),d=!1,r+=1,a.setDate(a.getDate()+1);var $=s,w=m;for(r=1;r<=v;)7===$&&($=0,b=g(),d=!1,E.appendChild(b)),6===$&&r===v&&(o=!0),w.setDate(r),b.appendChild(l(n(w,$))),d=!1,$+=1,r+=1;for(;b.childNodes.length<7;)6===$&&(o=!0),w.setDate(r),b.appendChild(l(n(w,$,!0))),$+=1,r+=1;return E}function l(t){var n=document.createElement("div");n.classList.add("md-event-calendar-month-cell"),n.setAttribute("md-date",t.date),t.differentMonth===!0&&n.classList.add("different-month"),e.isSameDay(t.date,t.today)&&n.classList.add("today");var a=document.createElement("div");a.classList.add("md-event-calendar-month-cell-spacer"),n.appendChild(a);var r=document.createElement("div");r.classList.add("md-event-calendar-month-cell-divider"),n.appendChild(r);var d=document.createElement("div");d.setAttribute("md-create-event",""),d.classList.add("md-event-calendar-month-cell-content"),n.appendChild(d);var l=document.createElement("div");l.setAttribute("md-create-event",""),l.classList.add("layout-row"),d.appendChild(l);var c=document.createElement("div");if(c.setAttribute("md-create-event",""),c.classList.add("md-event-calendar-cell-data-label"),c.textContent=e.dates[t.date.getDate()],l.appendChild(c),t.showCreateLink===!0){var i=document.createElement("div");i.setAttribute("md-create-event",""),i.classList.add("md-event-calendar-create-link"),i.textContent="Create",l.appendChild(i)}return o(d,t),n}function o(e,t){var n,a=0,r=!1,d=u(t.date,t.events);d=h(d,t.dayOfWeek),d.every(function(l,o){var s=v(l,t),u=l.$$place-a;for(r=!0,a=l.$$place+1,n=0;n<u;){if(a>=t.maxEvents)return e.appendChild(c(d.length-o,t.date)),!1;e.appendChild(i()),n+=1}return a>=t.maxEvents?(e.appendChild(c(d.length-o,t.date)),!1):(e.appendChild(m(s,l,t)),!0)}),r===!0&&e.classList.add("md-has-events")}function c(e,t){var n=document.createElement("div");return n.classList.add("md-event-calendar-cell-event-show-more-link"),n.textContent=e+" more",n.setAttribute("md-show-more",t.toISOString()),n}function i(){var e=document.createElement("div");return e.classList.add("md-event-calendar-cell-event-spacer"),e}function m(t,n,a){var r=s(n),d=document.createElement("div");if(d.classList.add("md-event-calendar-cell-event"),d.classList.add("md-"+t.className),d.setAttribute("md-event-id",r),t.hasLabel===!0){if(t.allDay!==!0){var l=document.createElement("span");l.classList.add("md-event-calendar-cell-event-time"),l.textContent=e.formatEventTime(n.start),d.appendChild(l)}var o=document.createElement("span");o.textContent=n[a.labelProperty],d.appendChild(o)}return a.selected.every(function(e){return void 0===e.$$mdEventId||e.$$mdEventId!==n.$$mdEventId||(d.classList.add("md-selected"),!1)}),d}function s(e){return angular.isObject(e)?"object_"+(e.$$mdEventId||(e.$$mdEventId=++t)):"id_"+ ++t}function v(t,n){var a,r,d=e.isSameDay(n.date,t.start),l=!e.isValidDate(t.end)||e.isSameDay(n.date,t.end);return d&&(n.allDay||l)?(a="single",r=!0):d&&6===n.dayOfWeek?(a="start-right",r=!0):d?(a="start",r=!0):l&&0===n.dayOfWeek?(a="end-left",r=!0):l?(a="end",r=n.isFirstDay):0===n.dayOfWeek?(a="continue-left",r=!0):6===n.dayOfWeek?(a="continue-right",r=!1):(a="continue",r=!1),{className:a,hasLabel:r,allDay:t.allDay||!1}}function u(t,n){return n.filter(function(n){return e.isDateWithinRange(t,n.start,n.end||n.start)})}function h(e,t){function n(){for(var e=0;a.indexOf(e)!==-1;)e++;return a.push(e),e}var a=[],r=e.sort(function(e,t){return e.end>t.end?-1:e.end<t.end?1:0});return r.forEach(function(e){0===t?e.$$place=void 0:void 0!==e.$$place&&a.push(e.$$place)}),r.forEach(function(e){void 0===e.$$place&&(e.$$place=n())}),r.sort(function(e,t){return e.$$place>t.$$place?1:e.$$place<t.$$place?-1:0})}function f(){var t=document.createDocumentFragment(),n=document.createElement("div");return n.classList.add("md-event-calendar-month-row-header"),t.appendChild(n),e.days.forEach(function(e){var t=document.createElement("div");t.classList.add("md-event-calendar-month-cell-header"),t.textContent=e.slice(0,3).toLowerCase(),n.appendChild(t)}),t}function g(){var e=document.createElement("div");return e.classList.add("md-event-calendar-month-row"),e}function p(t,n){if(!n||!n.length)return[];var a=e.getFirstDateOfMonth(t).getDate(-6),r=e.getFirstDateOfMonth(t).getDate(37);return n.filter(function(t){return!!e.isValidDate(t.start)&&(!!e.isDateWithinRange(t.start,a,r)||!!e.isValidDate(t.end)&&!!e.isDateWithinRange(t.end,a,r))}).sort(function(e,t){return e=new Date(e.start),t=new Date(t.start),e>t?1:e<t?-1:0})}function C(e){e.$$hide=void 0,e.$$place=void 0}var E={month:d,showMore:a};return E}e.$inject=["$$mdEventCalendarUtil","$templateCache"],angular.module("material.components.eventCalendar").factory("$$mdEventCalendarBuilder",e);var t=0}(),function(){"use strict";function e(e,t,n,a){function r(r,d,l,o){function c(e){for(var t=e.getAttribute("md-date");null===t&&"MD-EVENT-CALENDAR-MONTH"!==e.nodeName;)e=e.parentNode,t=e.getAttribute("md-date");return null===t?void 0:new Date(t)}function i(){var t=e.month({date:p.date,events:p.events,selected:p.selectedEvents,labelProperty:p.labelProperty,showCreateLink:p.showCreateLink,bounds:{width:p.$element[0].offsetWidth}});d.empty(),d.append(t),s()}function m(e){g={date:e},s(!0)}function s(t){if(void 0!==g){g.element&&(angular.element(g.element).remove(),g.element=void 0);var n=u(g.date),r=e.showMore({date:g.date,selected:p.selectedEvents,events:p.events,labelProperty:p.labelProperty,cell:n});d.append(r),g.element=d[0].lastChild,v(),t?a(function(){angular.element(g.element).addClass("show")},0):(angular.element(g.element).addClass("no-transition"),angular.element(g.element).addClass("show"))}}function v(){var e=g.element.getBoundingClientRect(),n=t.innerHeight-e.height,a=t.innerWidth-e.width,r=e.left-a;e.top>n&&(g.element.style.top=n+"px"),r>0&&(g.element.style.left=a+"px",r-=10,r>0&&(g.element.querySelector(".md-event-calendar-show-more-date-label").style.marginLeft=r+"px"))}function u(e){return d[0].querySelector('[md-date="'+e+'"]')}function h(e){if(g){var t=g.element;g=void 0,e?(angular.element(t).removeClass("no-transition"),a(function(){angular.element(t).removeClass("show")},0),a(function(){t.remove(),t=void 0},400)):(t.remove(),t=void 0)}}function f(e){return parseInt(e.replace("object_",""))}var g,p=o,C=n.throttle(function(){r.$evalAsync(function(){i()})});r.$watch(function(){return p.date},i),r.$watch(function(){return p.events},function(e,t){e!==t&&i()},!0),r.$watch(function(){return p.selectedEvents},function(e,t){e!==t&&i()},!0),angular.element(t).on("resize",C),r.$on("$destroy",function(){angular.element(t).off("resize",C)}),d.on("click",function(e){if(p.isCreateDisabled()!==!0){var t=e.target.getAttribute("md-event-id"),n=e.target.getAttribute("md-show-more"),a=(e.target.getAttribute("md-show-more-close"),null!==e.target.getAttribute("md-create-event"));if(t){f(t);return void r.$apply(function(){p.selectEvent(e,f(t))})}if(h(!0),n&&m(new Date(n)),a){var d=c(e.target);void 0!==d&&r.$apply(function(){p.createEventClick(e,d)})}}})}var d={restrict:"E",require:"^mdEventCalendar",link:r};return d}e.$inject=["$$mdEventCalendarBuilder","$window","$$rAF","$timeout"],angular.module("material.components.eventCalendar").directive("mdEventCalendarMonth",e)}(),function(){"use strict";function e(){var e={restrict:"E",require:"^mdEventCalendar",template:'<md-button class="md-icon-button" ng-click="mdEventCalendar.nextMonth()" aria-label="mext month"><div class="md-arrow" ng-include="\'icons/ic_keyboard_arrow_right_black_24px.svg\'"></div></md-button>'};return e}angular.module("material.components.eventCalendar").directive("mdEventCalendarNext",e)}(),function(){"use strict";function e(){var e={restrict:"E",require:"^mdEventCalendar",template:'<md-button class="md-icon-button" ng-click="mdEventCalendar.previousMonth()" aria-label="previous month"><div class="md-arrow md-left-arrow" ng-include="\'icons/ic_keyboard_arrow_right_black_24px.svg\'"></div></md-button>'};return e}angular.module("material.components.eventCalendar").directive("mdEventCalendarPrev",e)}(),function(){"use strict";function e(){function e(e,t,n,a){e.mdEventCalendar=a}var t={restrict:"E",require:"^mdEventCalendar",template:'<div class="md-event-calendar-header-label">{{mdEventCalendar.monthDisplay + " " + mdEventCalendar.yearDisplay}}</div>',link:e};return t}angular.module("material.components.eventCalendar").directive("mdEventCalendarTitle",e)}(),function(){"use strict";function e(){var e={restrict:"E",require:"^mdEventCalendar",template:'<md-button class="md-button" ng-click="mdEventCalendar.setToday()" aria-label="today" ng-disabled="mdEventCalendar.isTodayDisabled">Today</md-button>'};return e}angular.module("material.components.eventCalendar").directive("mdEventCalendarToday",e)}(),function(){"use strict";function e(e,t,n){function a(e){return g(e,"h:mm a")}function r(e,t,n){var a=c(e),r=o(t)?c(t):null,d=o(n)?c(n):null;return(!r||r<=a)&&(!d||d>=a)}function d(e){return"Week "+e}function l(e){o(e)&&e.setHours(0,0,0,0)}function o(e){return e&&e.getTime&&!isNaN(e.getTime())}function c(e){var t;return t=void 0===e?new Date:new Date(e),l(t),t}function i(e){return new Date(e.getFullYear(),e.getMonth()+1,1)}function m(e){return new Date(e.getFullYear(),e.getMonth()-1,1)}function s(e){return new Date(e.getFullYear(),e.getMonth(),1)}function v(e){return new Date(e.getFullYear(),e.getMonth()+1,0).getDate()}function u(e,t){return e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()}function h(e,t){return e.getDate()==t.getDate()&&u(e,t)}for(var f=e.has("$mdDateLocale")?e.get("$mdDateLocale"):void 0,g=n("date"),p=f?f.months:t.DATETIME_FORMATS.MONTH,C=f?f.shortMonths:t.DATETIME_FORMATS.SHORTMONTH,E=f?f.days:t.DATETIME_FORMATS.DAY,b=f?f.shortDays:t.DATETIME_FORMATS.SHORTDAY.map(function(e){return e.substring(0,1)}),y=Array(32),D=1;D<=31;D++)y[D]=D;var $={months:p,shortMonths:C,days:E,dates:f?f.dates:y,shortDays:b,isValidDate:o,createDateAtMidnight:c,getDateInNextMonth:i,getDateInPreviousMonth:m,getFirstDateOfMonth:s,getNumberOfDaysInMonth:v,weekNumberFormatter:f?f.weekNumberFormatter:d,isSameMonthAndYear:u,isSameDay:h,isDateWithinRange:r,formatEventTime:a};return $}e.$inject=["$injector","$locale","$filter"],angular.module("material.components.eventCalendar").factory("$$mdEventCalendarUtil",e)}(); | ||
| !function(){"use strict";function e(e,n,a){var r;e.has("$mdThemingProvider")?(r=e.get("$mdThemingProvider"),r.registerStyles(a)):n.decorator("$$rAF",["$delegate",t])}function t(e){return e.throttle=function(t){var n,a,r,d;return function(){n=arguments,d=this,r=t,a||(a=!0,e(function(){r.apply(d,Array.prototype.slice.call(n)),a=!1}))}},e}e.$inject=["$injector","$provide","EVENT_CALENDAR_THEME"],angular.module("material.components.eventCalendar",[]).config(e)}(),function(){"use strict";angular.module("material.components.eventCalendar").run(["$templateCache",function(e){e.put("icons/ic_close_black_24px.svg",'<svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg">\n <path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/>\n <path d="M0 0h24v24H0z" fill="none"/>\n</svg>'),e.put("icons/ic_keyboard_arrow_right_black_24px.svg",'<svg fill="#EEEEEE" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg">\n <path d="M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z"/>\n <path d="M0-.25h24v24H0z" fill="none"/>\n</svg>\n')}])}(),function(){"use strict";angular.module("material.components.eventCalendar").constant("EVENT_CALENDAR_THEME","md-event-calendar._md md-event-calendar-header {\n color: '{{foreground-1}}';\n background: '{{background-hue-1}}';\n border-color: '{{foreground-4}}'; }\n md-event-calendar._md md-event-calendar-header md-event-calendar-next .md-arrow svg, md-event-calendar._md md-event-calendar-header md-event-calendar-prev .md-arrow svg {\n fill: '{{foreground-2}}'; }\n\nmd-event-calendar._md md-event-calendar-month .md-event-calendar-month-row-header {\n color: '{{foreground-3}}';\n background: '{{background-hue-1}}';\n border-color: '{{foreground-4}}'; }\n\nmd-event-calendar._md md-event-calendar-month .md-event-calendar-month-row {\n background: '{{background-hue-1}}';\n border-color: '{{foreground-4}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell-divider {\n border-color: '{{foreground-4}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell {\n border-color: '{{foreground-4}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-create-link {\n color: '{{primary-default}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-cell-data-label {\n color: '{{foreground-3}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell .md-event-calendar-month-cell-content .md-event-calendar-cell-event-show-more-link {\n color: '{{primary-default}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell.different-month {\n background: '{{background-hue-2}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell.today {\n box-shadow: inset 0px 0px 0px 1px '{{primary-default}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell.today .md-event-calendar-month-cell-content .md-event-calendar-cell-data-label {\n color: '{{primary-default}}'; }\n md-event-calendar._md md-event-calendar-month .md-event-calendar-month-row .md-event-calendar-month-cell:last-child {\n border-color: '{{foreground-4}}'; }\n\nmd-event-calendar._md .md-event-calendar-cell-event {\n background: '{{foreground-4}}';\n color: '{{background-900}}'; }\n md-event-calendar._md .md-event-calendar-cell-event.md-selected {\n color: #EEE;\n background: '{{primary-default}}'; }\n md-event-calendar._md .md-event-calendar-cell-event.md-continue-left:after, md-event-calendar._md .md-event-calendar-cell-event.md-end-left:after {\n border-right-color: '{{foreground-4}}'; }\n md-event-calendar._md .md-event-calendar-cell-event.md-continue-right:after, md-event-calendar._md .md-event-calendar-cell-event.md-start-right:after {\n border-left-color: '{{foreground-4}}'; }\n md-event-calendar._md .md-event-calendar-cell-event.md-selected.md-continue-left:after, md-event-calendar._md .md-event-calendar-cell-event.md-selected.md-end-left:after {\n border-right-color: '{{primary-default}}'; }\n md-event-calendar._md .md-event-calendar-cell-event.md-selected.md-continue-right:after, md-event-calendar._md .md-event-calendar-cell-event.md-selected.md-start-right:after {\n border-left-color: '{{primary-default}}'; }\n\nmd-event-calendar._md .md-event-calendar-show-more-container .md-event-calendar-show-more-date-label {\n color: '{{foreground-3}}'; }\n\nmd-event-calendar._md .md-event-calendar-show-more-container .md-event-calendar-show-more-close svg {\n fill: '{{foreground-1}}'; }\n\nmd-event-calendar._md.md-primary md-event-calendar-header {\n color: '{{background-100}}';\n background: '{{primary-default}}'; }\n md-event-calendar._md.md-primary md-event-calendar-header md-event-calendar-next .md-arrow svg, md-event-calendar._md.md-primary md-event-calendar-header md-event-calendar-prev .md-arrow svg {\n fill: '{{background-100}}'; }\n\nmd-event-calendar._md.md-primary md-event-calendar-month .md-event-calendar-month-row-header {\n color: '{{background-100}}';\n background: '{{primary-default}}'; }\n")}(),function(){"use strict";function e(e,t){function n(e,n){var a=n.mdEventClick?t(n.mdEventClick,null,!0):void 0,d=n.mdCreateEventClick?t(n.mdCreateEventClick,null,!0):void 0,l=n.mdCreateDisabled?t(n.mdCreateDisabled):void 0;return e.append("<md-event-calendar-month></md-event-calendar-month>"),function(e,t,o,c){function i(){var e=f.$viewValue||f.$modelValue||[];h.selectedEvents=[].concat(e)}function m(t,n){o.mdEventClick&&a(e.$parent,{$event:t,$selectedEvent:n})}function s(t,n){o.mdCreateEventClick&&d(e.$parent,{$event:t,$date:n})}function v(){return u}var u=!1,h=c[0],f=c[1];r&&(t.addClass("_md"),r(t)),h.isCreateDisabled=v,h.callEventClick=m,h.createEventClick=s,f&&(f.$render=i,h.ngModelCtrl=f),l?e.$watch(function(){return l(e.$parent)},function(e){u=e,t.toggleClass("md-create-disabled",e)}):void 0!==n.mdCreateDisabled&&(u=!0,t.addClass("md-create-disabled"))}}function a(e,t,n){function a(){o.date=e.getDateInNextMonth(o.date),o.monthDisplay=e.months[o.date.getMonth()],o.yearDisplay=o.date.getFullYear(),o.isTodayDisabled=o.date.getMonth()===(new Date).getMonth()}function r(){o.date=e.getDateInPreviousMonth(o.date),o.monthDisplay=e.months[o.date.getMonth()],o.yearDisplay=o.date.getFullYear(),o.isTodayDisabled=o.date.getMonth()===(new Date).getMonth()}function d(){o.date=new Date,o.monthDisplay=e.months[o.date.getMonth()],o.yearDisplay=o.date.getFullYear(),o.isTodayDisabled=!0}function l(e,t){var n=o.events.filter(function(e){return e.$$mdEventId===t});return o.ngModelCtrl&&(o.ngModelCtrl.$setViewValue(n[0]),o.ngModelCtrl.$render()),o.callEventClick(e,n[0]),!0}var o=this;o.$element=t,o.labelProperty=n.mdLabel||"title",o.selectedEvents=[],o.today=e.createDateAtMidnight(),o.date=e.createDateAtMidnight(),o.isToday=e.isSameDay(o.date,new Date),o.monthDisplay=e.months[o.date.getMonth()],o.yearDisplay=o.date.getFullYear(),o.isTodayDisabled=!0,o.showCreateLink=void 0!==n.mdShowCreateLink&&"false"!==n.mdShowCreateLink,o.nextMonth=a,o.previousMonth=r,o.selectEvent=l,o.setToday=d,o.autoHeight=void 0!==n.autoHeight,o.fitted=void 0!==n.fitted,o.offset=o.autoHeight===!1||isNaN(n.autoHeight.replace("px",""))?0:parseInt(n.autoHeight.replace("px",""))}a.$inject=["$$mdEventCalendarUtil","$element","$attrs"];var r=e.has("$mdTheming")?e.get("$mdTheming"):void 0,d={restrict:"E",require:["mdEventCalendar","?ngModel"],scope:{events:"=mdEvents"},compile:n,controller:a,controllerAs:"mdEventCalendar",bindToController:!0};return d}e.$inject=["$injector","$parse"],angular.module("material.components.eventCalendar").directive("mdEventCalendar",e)}(),function(){"use strict";function e(e,n){function a(t){var a=t.date,d=t.selected||[],l=t.events?r(a,t.events):[],o=t.labelProperty,c=document.createDocumentFragment(),i=document.createElement("div");i.classList.add("md-event-calendar-show-more-container");var s=document.createElement("div");s.classList.add("md-event-calendar-show-more-content");var v=document.createElement("div");v.classList.add("md-event-calendar-show-more-date-label"),v.textContent=e.dates[a.getDate()];var u=document.createElement("div");u.classList.add("md-event-calendar-show-more-close"),u.innerHTML=n.get("icons/ic_close_black_24px.svg"),u.setAttribute("md-show-more-close","true"),i.appendChild(v),i.appendChild(u),i.appendChild(s),c.appendChild(i),l.forEach(function(t){var n,r=e.isSameDay(a,t.start),l=!e.isValidDate(t.end)||e.isSameDay(a,t.end),c={labelProperty:o,selected:d};n=r&&l?m({className:"single",hasLabel:!0},t,c):r?m({className:"start-right",hasLabel:!0},t,c):l?m({className:"end-left",hasLabel:!0},t,c):m({className:"continue",hasLabel:!0},t,c),s.appendChild(n)});var h=(t.cell.getBoundingClientRect(),t.cell.offsetTop),f=t.cell.offsetLeft;return i.style.top=h+"px",i.style.left=f+"px",c}function r(t,n){return n&&n.length?n.filter(function(n){return e.isDateWithinRange(t,n.start,n.end||n.start)}).sort(function(e,t){return e=new Date(e.start),t=new Date(t.start),e>t?1:e<t?-1:0}):[]}function d(t){function n(e,n,a){return{date:e,today:c,dayOfWeek:n,differentMonth:a||!1,events:u,isFirstDay:d,isLastDay:o,maxEvents:D,selected:h,labelProperty:t.labelProperty,showCreateLink:t.showCreateLink}}var a,r=0,d=!0,o=!1,c=e.createDateAtMidnight(),i=e.isValidDate(t.date)?t.date:new Date,m=e.getFirstDateOfMonth(i),s=(m.getDay()+7)%7,v=e.getNumberOfDaysInMonth(i),u=p(i,t.events);u.forEach(C);var h=t.selected||[],E=f(),y=g();E.appendChild(y);var b=t.cellHeight-48,D=Math.floor(b/24);if(s>0)for(a=e.getFirstDateOfMonth(i),a.setDate(a.getDate()-s);r<s;)y.appendChild(l(n(a,r,!0))),d=!1,r+=1,a.setDate(a.getDate()+1);var $=s,w=m;for(r=1;r<=v;)7===$&&($=0,y=g(),d=!1,E.appendChild(y)),6===$&&r===v&&(o=!0),w.setDate(r),y.appendChild(l(n(w,$))),d=!1,$+=1,r+=1;for(;y.childNodes.length<7;)6===$&&(o=!0),w.setDate(r),y.appendChild(l(n(w,$,!0))),$+=1,r+=1;return E}function l(t){var n=document.createElement("div");n.classList.add("md-event-calendar-month-cell"),n.setAttribute("md-date",t.date),t.differentMonth===!0&&n.classList.add("different-month"),e.isSameDay(t.date,t.today)&&n.classList.add("today");var a=document.createElement("div");a.classList.add("md-event-calendar-month-cell-spacer"),n.appendChild(a);var r=document.createElement("div");r.classList.add("md-event-calendar-month-cell-divider"),n.appendChild(r);var d=document.createElement("div");d.setAttribute("md-create-event",""),d.classList.add("md-event-calendar-month-cell-content"),n.appendChild(d);var l=document.createElement("div");l.setAttribute("md-create-event",""),l.classList.add("layout-row"),d.appendChild(l);var c=document.createElement("div");if(c.setAttribute("md-create-event",""),c.classList.add("md-event-calendar-cell-data-label"),c.textContent=e.dates[t.date.getDate()],l.appendChild(c),t.showCreateLink===!0){var i=document.createElement("div");i.setAttribute("md-create-event",""),i.classList.add("md-event-calendar-create-link"),i.textContent="Create",l.appendChild(i)}return o(d,t),n}function o(e,t){var n,a=0,r=!1,d=u(t.date,t.events);d=h(d,t.dayOfWeek),d.every(function(l,o){var s=v(l,t),u=l.$$place-a;for(r=!0,a=l.$$place+1,n=0;n<u;){if(a>=t.maxEvents)return e.appendChild(c(d.length-o,t.date)),!1;e.appendChild(i()),n+=1}return a>=t.maxEvents?(e.appendChild(c(d.length-o,t.date)),!1):(e.appendChild(m(s,l,t)),!0)}),r===!0&&e.classList.add("md-has-events")}function c(e,t){var n=document.createElement("div");return n.classList.add("md-event-calendar-cell-event-show-more-link"),n.textContent=e+" more",n.setAttribute("md-show-more",t.toISOString()),n}function i(){var e=document.createElement("div");return e.classList.add("md-event-calendar-cell-event-spacer"),e}function m(t,n,a){var r=s(n),d=document.createElement("div");if(d.classList.add("md-event-calendar-cell-event"),d.classList.add("md-"+t.className),d.setAttribute("md-event-id",r),t.hasLabel===!0){if(t.allDay!==!0){var l=document.createElement("span");l.classList.add("md-event-calendar-cell-event-time"),l.textContent=e.formatEventTime(n.start),d.appendChild(l)}var o=document.createElement("span");o.textContent=n[a.labelProperty],d.appendChild(o)}return a.selected.every(function(e){return void 0===e.$$mdEventId||e.$$mdEventId!==n.$$mdEventId||(d.classList.add("md-selected"),!1)}),d}function s(e){return angular.isObject(e)?"object_"+(e.$$mdEventId||(e.$$mdEventId=++t)):"id_"+ ++t}function v(t,n){var a,r,d=e.isSameDay(n.date,t.start),l=!e.isValidDate(t.end)||e.isSameDay(n.date,t.end);return d&&(n.allDay||l)?(a="single",r=!0):d&&6===n.dayOfWeek?(a="start-right",r=!0):d?(a="start",r=!0):l&&0===n.dayOfWeek?(a="end-left",r=!0):l?(a="end",r=n.isFirstDay):0===n.dayOfWeek?(a="continue-left",r=!0):6===n.dayOfWeek?(a="continue-right",r=!1):(a="continue",r=!1),{className:a,hasLabel:r,allDay:t.allDay||!1}}function u(t,n){return n.filter(function(n){return e.isDateWithinRange(t,n.start,n.end||n.start)})}function h(e,t){function n(){for(var e=0;a.indexOf(e)!==-1;)e++;return a.push(e),e}var a=[],r=e.sort(function(e,t){return e.end>t.end?-1:e.end<t.end?1:0});return r.forEach(function(e){0===t?e.$$place=void 0:void 0!==e.$$place&&a.push(e.$$place)}),r.forEach(function(e){void 0===e.$$place&&(e.$$place=n())}),r.sort(function(e,t){return e.$$place>t.$$place?1:e.$$place<t.$$place?-1:0})}function f(){var t=document.createDocumentFragment(),n=document.createElement("div");return n.classList.add("md-event-calendar-month-row-header"),t.appendChild(n),e.days.forEach(function(e){var t=document.createElement("div");t.classList.add("md-event-calendar-month-cell-header"),t.textContent=e.slice(0,3).toLowerCase(),n.appendChild(t)}),t}function g(){var e=document.createElement("div");return e.classList.add("md-event-calendar-month-row"),e}function p(t,n){if(!n||!n.length)return[];var a=e.getFirstDateOfMonth(t).getDate(-6),r=e.getFirstDateOfMonth(t).getDate(37);return n.filter(function(t){return!!e.isValidDate(t.start)&&(!!e.isDateWithinRange(t.start,a,r)||!!e.isValidDate(t.end)&&!!e.isDateWithinRange(t.end,a,r))}).sort(function(e,t){return e=new Date(e.start),t=new Date(t.start),e>t?1:e<t?-1:0})}function C(e){e.$$hide=void 0,e.$$place=void 0}var E={month:d,showMore:a};return E}e.$inject=["$$mdEventCalendarUtil","$templateCache"],angular.module("material.components.eventCalendar").factory("$$mdEventCalendarBuilder",e);var t=0}(),function(){"use strict";function e(e,t,n,a){function r(r,d,l,o){function c(){if(C.autoHeight){C.fitted=!0;var e=d[0].getBoundingClientRect().top,n=t.innerHeight-e-C.offset;d.css("height",n+"px")}}function i(e){for(var t=e.getAttribute("md-date");null===t&&"MD-EVENT-CALENDAR-MONTH"!==e.nodeName;)e=e.parentNode,t=e.getAttribute("md-date");return null===t?void 0:new Date(t)}function m(){var t;t=C.fitted?d[0].offsetHeight/5:C.$element[0].offsetWidth/7;var n=e.month({date:C.date,events:C.events,selected:C.selectedEvents,labelProperty:C.labelProperty,showCreateLink:C.showCreateLink,cellHeight:t});d.empty(),d.append(n),v()}function s(e){p={date:e},v(!0)}function v(t){if(void 0!==p){p.element&&(angular.element(p.element).remove(),p.element=void 0);var n=h(p.date),r=e.showMore({date:p.date,selected:C.selectedEvents,events:C.events,labelProperty:C.labelProperty,cell:n});d.append(r),p.element=d[0].lastChild,u(),t?a(function(){angular.element(p.element).addClass("show")},0):(angular.element(p.element).addClass("no-transition"),angular.element(p.element).addClass("show"))}}function u(){var e=p.element.getBoundingClientRect(),n=t.innerHeight-e.height,a=t.innerWidth-e.width,r=e.left-a;e.top>n&&(p.element.style.top=n+"px"),r>0&&(p.element.style.left=a+"px",r-=10,r>0&&(p.element.querySelector(".md-event-calendar-show-more-date-label").style.marginLeft=r+"px"))}function h(e){return d[0].querySelector('[md-date="'+e+'"]')}function f(e){if(p){var t=p.element;p=void 0,e?(angular.element(t).removeClass("no-transition"),a(function(){angular.element(t).removeClass("show")},0),a(function(){t.remove(),t=void 0},400)):(t.remove(),t=void 0)}}function g(e){return parseInt(e.replace("object_",""))}var p,C=o,E=n.throttle(function(){r.$evalAsync(function(){c(),d.toggleClass("fitted",C.fitted),m()})});r.$watch(function(){return C.date},m),r.$watch(function(){return C.events},function(e,t){e!==t&&m()},!0),r.$watch(function(){return C.selectedEvents},function(e,t){e!==t&&m()},!0),angular.element(t).on("resize",E),r.$on("$destroy",function(){angular.element(t).off("resize",E)}),c(),d.toggleClass("fitted",C.fitted),d.on("click",function(e){if(C.isCreateDisabled()!==!0){var t=e.target.getAttribute("md-event-id"),n=e.target.getAttribute("md-show-more"),a=(e.target.getAttribute("md-show-more-close"),null!==e.target.getAttribute("md-create-event"));if(t){g(t);return void r.$apply(function(){C.selectEvent(e,g(t))})}if(f(!0),n&&s(new Date(n)),a){var d=i(e.target);void 0!==d&&r.$apply(function(){C.createEventClick(e,d)})}}})}var d={restrict:"E",require:"^mdEventCalendar",link:r};return d}e.$inject=["$$mdEventCalendarBuilder","$window","$$rAF","$timeout"],angular.module("material.components.eventCalendar").directive("mdEventCalendarMonth",e)}(),function(){"use strict";function e(){var e={restrict:"E",require:"^mdEventCalendar",template:'<md-button class="md-icon-button" ng-click="mdEventCalendar.nextMonth()" aria-label="mext month"><div class="md-arrow" ng-include="\'icons/ic_keyboard_arrow_right_black_24px.svg\'"></div></md-button>'};return e}angular.module("material.components.eventCalendar").directive("mdEventCalendarNext",e)}(),function(){"use strict";function e(){var e={restrict:"E",require:"^mdEventCalendar",template:'<md-button class="md-icon-button" ng-click="mdEventCalendar.previousMonth()" aria-label="previous month"><div class="md-arrow md-left-arrow" ng-include="\'icons/ic_keyboard_arrow_right_black_24px.svg\'"></div></md-button>'};return e}angular.module("material.components.eventCalendar").directive("mdEventCalendarPrev",e)}(),function(){"use strict";function e(){function e(e,t,n,a){e.mdEventCalendar=a}var t={restrict:"E",require:"^mdEventCalendar",template:'<div class="md-event-calendar-header-label">{{mdEventCalendar.monthDisplay + " " + mdEventCalendar.yearDisplay}}</div>',link:e};return t}angular.module("material.components.eventCalendar").directive("mdEventCalendarTitle",e)}(),function(){"use strict";function e(){var e={restrict:"E",require:"^mdEventCalendar",template:'<md-button class="md-button" ng-click="mdEventCalendar.setToday()" aria-label="today" ng-disabled="mdEventCalendar.isTodayDisabled">Today</md-button>'};return e}angular.module("material.components.eventCalendar").directive("mdEventCalendarToday",e)}(),function(){"use strict";function e(e,t,n){function a(e){return g(e,"h:mm a")}function r(e,t,n){var a=c(e),r=o(t)?c(t):null,d=o(n)?c(n):null;return(!r||r<=a)&&(!d||d>=a)}function d(e){return"Week "+e}function l(e){o(e)&&e.setHours(0,0,0,0)}function o(e){return e&&e.getTime&&!isNaN(e.getTime())}function c(e){var t;return t=void 0===e?new Date:new Date(e),l(t),t}function i(e){return new Date(e.getFullYear(),e.getMonth()+1,1)}function m(e){return new Date(e.getFullYear(),e.getMonth()-1,1)}function s(e){return new Date(e.getFullYear(),e.getMonth(),1)}function v(e){return new Date(e.getFullYear(),e.getMonth()+1,0).getDate()}function u(e,t){return e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()}function h(e,t){return e.getDate()==t.getDate()&&u(e,t)}for(var f=e.has("$mdDateLocale")?e.get("$mdDateLocale"):void 0,g=n("date"),p=f?f.months:t.DATETIME_FORMATS.MONTH,C=f?f.shortMonths:t.DATETIME_FORMATS.SHORTMONTH,E=f?f.days:t.DATETIME_FORMATS.DAY,y=f?f.shortDays:t.DATETIME_FORMATS.SHORTDAY.map(function(e){return e.substring(0,1)}),b=Array(32),D=1;D<=31;D++)b[D]=D;var $={months:p,shortMonths:C,days:E,dates:f?f.dates:b,shortDays:y,isValidDate:o,createDateAtMidnight:c,getDateInNextMonth:i,getDateInPreviousMonth:m,getFirstDateOfMonth:s,getNumberOfDaysInMonth:v,weekNumberFormatter:f?f.weekNumberFormatter:d,isSameMonthAndYear:u,isSameDay:h,isDateWithinRange:r,formatEventTime:a};return $}e.$inject=["$injector","$locale","$filter"],angular.module("material.components.eventCalendar").factory("$$mdEventCalendarUtil",e)}(); |
+1
-1
| { | ||
| "name": "angular-material-event-calendar", | ||
| "version": "0.0.7", | ||
| "version": "0.0.8", | ||
| "author": "Ben Rubin", | ||
@@ -5,0 +5,0 @@ "description": "Angular material event calander component", |
@@ -36,6 +36,12 @@ md-event-calendar { | ||
| md-event-calendar md-event-calendar-month.fitted { | ||
| display: -webkit-box; | ||
| display: -ms-flexbox; | ||
| display: flex; | ||
| -webkit-box-orient: vertical; | ||
| -webkit-box-direction: normal; | ||
| -ms-flex-direction: column; | ||
| flex-direction: column; } | ||
| md-event-calendar md-event-calendar-month .md-event-calendar-month-row-header { | ||
| -webkit-box-flex: 1; | ||
| -ms-flex: 1; | ||
| flex: 1; | ||
| display: -webkit-box; | ||
@@ -49,2 +55,3 @@ display: -ms-flexbox; | ||
| min-height: 36px; | ||
| height: 36px; | ||
| -webkit-box-align: end; | ||
@@ -51,0 +58,0 @@ -ms-flex-align: end; |
@@ -109,2 +109,5 @@ (function(){"use strict";angular | ||
| vm.setToday = setToday; | ||
| vm.autoHeight = $attrs.autoHeight !== undefined; | ||
| vm.fitted = $attrs.fitted !== undefined; | ||
| vm.offset = vm.autoHeight === false || isNaN($attrs.autoHeight.replace('px', '')) ? 0 : parseInt($attrs.autoHeight.replace('px', '')); | ||
@@ -111,0 +114,0 @@ |
@@ -116,3 +116,3 @@ (function(){"use strict";angular | ||
| monthElement.appendChild(row); | ||
| var cellSize = (options.bounds.width / 7) - 48; | ||
| var cellSize = options.cellHeight - 48; | ||
| var maxEvents = Math.floor(cellSize / 24); | ||
@@ -119,0 +119,0 @@ |
@@ -29,2 +29,4 @@ (function(){"use strict";angular | ||
| scope.$evalAsync(function () { | ||
| setAutoHeight(); | ||
| element.toggleClass('fitted', mdEventCalendarCtrl.fitted); | ||
| buildView(); | ||
@@ -48,4 +50,14 @@ }); | ||
| }); | ||
| setAutoHeight(); | ||
| element.toggleClass('fitted', mdEventCalendarCtrl.fitted); | ||
| function setAutoHeight() { | ||
| if (!mdEventCalendarCtrl.autoHeight) { return; } | ||
| mdEventCalendarCtrl.fitted = true; | ||
| var top = element[0].getBoundingClientRect().top; | ||
| var height = $window.innerHeight - top - mdEventCalendarCtrl.offset; | ||
| element.css('height', height+'px'); | ||
| } | ||
| element.on('click', function (e) { | ||
@@ -94,2 +106,9 @@ if (mdEventCalendarCtrl.isCreateDisabled() === true) { return; } | ||
| function buildView() { | ||
| var cellHeight; | ||
| if (mdEventCalendarCtrl.fitted) { | ||
| cellHeight = element[0].offsetHeight / 5; | ||
| } else { | ||
| cellHeight = mdEventCalendarCtrl.$element[0].offsetWidth / 7; | ||
| } | ||
| var monthElement = $$mdEventCalendarBuilder.month({ | ||
@@ -101,5 +120,3 @@ date: mdEventCalendarCtrl.date, | ||
| showCreateLink: mdEventCalendarCtrl.showCreateLink, | ||
| bounds: { | ||
| width: mdEventCalendarCtrl.$element[0].offsetWidth | ||
| } | ||
| cellHeight: cellHeight | ||
| }); | ||
@@ -106,0 +123,0 @@ element.empty(); |
| <md-event-calendar | ||
| auto-height="40" | ||
| ng-model="selected" | ||
@@ -3,0 +4,0 @@ md-events="events" |
+3
-0
@@ -118,2 +118,3 @@ # angular-material-event-calendar | ||
| md-create-disabled="true" | ||
| auto-height="" | ||
| class="md-primary" | ||
@@ -209,2 +210,3 @@ > | ||
| [md-create-disabled=""] | ||
| [auto-height=""] | ||
| > | ||
@@ -226,2 +228,3 @@ ... | ||
| | md-create-disabled | boolean | <p>Hides create link and disabled create click event</p> | | ||
| | auto-height | number | <p>Calendar will fill to the bottom of the window. You can pass it a number(pixels) as an offset</p> | | ||
@@ -228,0 +231,0 @@ |
@@ -45,7 +45,12 @@ md-event-calendar { | ||
| md-event-calendar-month { | ||
| &.fitted { | ||
| display: flex; | ||
| flex-direction: column; | ||
| } | ||
| .md-event-calendar-month-row-header { | ||
| flex: 1; | ||
| display: flex; | ||
| flex-direction: row; | ||
| min-height: 36px; | ||
| height: 36px; | ||
| align-items: flex-end; | ||
@@ -52,0 +57,0 @@ font-size: 12px; |
@@ -109,2 +109,5 @@ angular | ||
| vm.setToday = setToday; | ||
| vm.autoHeight = $attrs.autoHeight !== undefined; | ||
| vm.fitted = $attrs.fitted !== undefined; | ||
| vm.offset = vm.autoHeight === false || isNaN($attrs.autoHeight.replace('px', '')) ? 0 : parseInt($attrs.autoHeight.replace('px', '')); | ||
@@ -111,0 +114,0 @@ |
@@ -116,3 +116,3 @@ angular | ||
| monthElement.appendChild(row); | ||
| var cellSize = (options.bounds.width / 7) - 48; | ||
| var cellSize = options.cellHeight - 48; | ||
| var maxEvents = Math.floor(cellSize / 24); | ||
@@ -119,0 +119,0 @@ |
@@ -29,2 +29,4 @@ angular | ||
| scope.$evalAsync(function () { | ||
| setAutoHeight(); | ||
| element.toggleClass('fitted', mdEventCalendarCtrl.fitted); | ||
| buildView(); | ||
@@ -48,4 +50,14 @@ }); | ||
| }); | ||
| setAutoHeight(); | ||
| element.toggleClass('fitted', mdEventCalendarCtrl.fitted); | ||
| function setAutoHeight() { | ||
| if (!mdEventCalendarCtrl.autoHeight) { return; } | ||
| mdEventCalendarCtrl.fitted = true; | ||
| var top = element[0].getBoundingClientRect().top; | ||
| var height = $window.innerHeight - top - mdEventCalendarCtrl.offset; | ||
| element.css('height', height+'px'); | ||
| } | ||
| element.on('click', function (e) { | ||
@@ -94,2 +106,9 @@ if (mdEventCalendarCtrl.isCreateDisabled() === true) { return; } | ||
| function buildView() { | ||
| var cellHeight; | ||
| if (mdEventCalendarCtrl.fitted) { | ||
| cellHeight = element[0].offsetHeight / 5; | ||
| } else { | ||
| cellHeight = mdEventCalendarCtrl.$element[0].offsetWidth / 7; | ||
| } | ||
| var monthElement = $$mdEventCalendarBuilder.month({ | ||
@@ -101,5 +120,3 @@ date: mdEventCalendarCtrl.date, | ||
| showCreateLink: mdEventCalendarCtrl.showCreateLink, | ||
| bounds: { | ||
| width: mdEventCalendarCtrl.$element[0].offsetWidth | ||
| } | ||
| cellHeight: cellHeight | ||
| }); | ||
@@ -106,0 +123,0 @@ element.empty(); |
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
228895
1.75%4158
1.61%296
1.02%