novo-elements 8.0.1 → 8.1.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (211) hide show
  1. package/elements/agenda/common/AgendaDateChange.scss +3 -1
  2. package/elements/agenda/common/AgendaHoursLayout.scss +52 -0
  3. package/elements/agenda/day/AgendaDayView.scss +40 -85
  4. package/elements/agenda/month/AgendaMonthView.scss +139 -135
  5. package/elements/agenda/week/AgendaWeekView.scss +70 -66
  6. package/elements/card/Card.d.ts +2 -2
  7. package/elements/card/Card.scss +27 -55
  8. package/elements/card/CardContent.scss +8 -0
  9. package/elements/card/CardFooter.scss +10 -0
  10. package/elements/card/CardHeader.scss +14 -0
  11. package/elements/date-picker/DatePicker.scss +181 -348
  12. package/elements/date-picker/DatePickerInput.scss +45 -0
  13. package/elements/date-picker/DateRangeInput.scss +55 -0
  14. package/elements/date-picker/MultiDateInput.scss +50 -0
  15. package/elements/date-time-picker/DateTimePickerInput.scss +14 -0
  16. package/elements/date-time-picker/_DateTimePicker.scss +4 -17
  17. package/elements/dropdown/Dropdown.scss +3 -3
  18. package/elements/header/Header.scss +14 -19
  19. package/elements/header/HeaderSpacer.scss +7 -0
  20. package/elements/icon/Icon.scss +1 -1
  21. package/elements/list/List.scss +5 -111
  22. package/elements/list/list-item-content.scss +34 -0
  23. package/elements/list/list-item-end.scss +8 -0
  24. package/elements/list/list-item-header-avatar.scss +12 -0
  25. package/elements/list/list-item-header-end.scss +4 -0
  26. package/elements/list/list-item-header-title.scss +17 -0
  27. package/elements/list/list-item-header.scss +17 -0
  28. package/elements/list/list-item.scss +47 -0
  29. package/elements/loading/Loading.scss +4 -1
  30. package/elements/loading/NovoSpinner.scss +3 -1
  31. package/elements/modal/modal.component.scss +19 -115
  32. package/elements/modal/notification.component.scss +108 -0
  33. package/elements/places/places.component.scss +3 -1
  34. package/elements/quick-note/QuickNote.scss +2 -31
  35. package/elements/quick-note/extras/quick-note-results/QuickNoteResults.scss +18 -0
  36. package/elements/radio/Radio.scss +32 -41
  37. package/elements/radio/radio-group.scss +53 -0
  38. package/elements/search/SearchBox.scss +2 -2
  39. package/elements/select/Select.scss +1 -1
  40. package/elements/simple-table/table.scss +2 -1
  41. package/elements/slider/Slider.scss +2 -2
  42. package/elements/stepper/step-header.component.scss +141 -52
  43. package/elements/stepper/stepper.component.scss +66 -166
  44. package/elements/switch/Switch.scss +5 -5
  45. package/elements/tabbed-group-picker/TabbedGroupPicker.scss +127 -125
  46. package/elements/table/extras/table-footer/table-footer.scss +3 -0
  47. package/elements/table/extras/table-header/table-header.scss +9 -0
  48. package/elements/tabs/tab-button.scss +54 -0
  49. package/elements/tabs/tab-content.scss +6 -0
  50. package/elements/tabs/tab-header.scss +6 -0
  51. package/elements/tabs/tab-nav.scss +39 -0
  52. package/elements/tabs/tab-outlet.scss +3 -0
  53. package/elements/tabs/tab.scss +190 -0
  54. package/elements/tiles/Tiles.scss +3 -1
  55. package/elements/time-picker/TimePicker.scss +3 -46
  56. package/elements/time-picker/TimePickerInput.scss +44 -0
  57. package/elements/tip-well/TipWell.scss +4 -1
  58. package/elements/toast/Toast.scss +151 -162
  59. package/elements/tooltip/Tooltip.scss +1 -1
  60. package/elements/value/Value.scss +21 -23
  61. package/esm2020/elements/agenda/common/AgendaDateChange.mjs +4 -7
  62. package/esm2020/elements/agenda/day/AgendaDayView.mjs +4 -7
  63. package/esm2020/elements/agenda/month/AgendaMonthView.mjs +4 -7
  64. package/esm2020/elements/agenda/week/AgendaWeekView.mjs +4 -7
  65. package/esm2020/elements/card/Card.mjs +17 -31
  66. package/esm2020/elements/date-picker/DatePicker.mjs +5 -10
  67. package/esm2020/elements/date-picker/DatePickerInput.mjs +4 -8
  68. package/esm2020/elements/date-picker/DateRangeInput.mjs +4 -8
  69. package/esm2020/elements/date-picker/MultiDateInput.mjs +4 -8
  70. package/esm2020/elements/date-time-picker/DateTimePicker.mjs +5 -10
  71. package/esm2020/elements/date-time-picker/DateTimePickerInput.mjs +4 -8
  72. package/esm2020/elements/dropdown/Dropdown.mjs +5 -10
  73. package/esm2020/elements/header/Header.mjs +6 -12
  74. package/esm2020/elements/icon/Icon.mjs +5 -10
  75. package/esm2020/elements/list/List.mjs +27 -59
  76. package/esm2020/elements/loading/Loading.mjs +7 -13
  77. package/esm2020/elements/modal/modal.component.mjs +9 -17
  78. package/esm2020/elements/places/places.component.mjs +4 -8
  79. package/esm2020/elements/quick-note/QuickNote.mjs +3 -7
  80. package/esm2020/elements/quick-note/extras/quick-note-results/QuickNoteResults.mjs +5 -9
  81. package/esm2020/elements/radio/Radio.mjs +5 -10
  82. package/esm2020/elements/radio/RadioGroup.mjs +5 -10
  83. package/esm2020/elements/search/SearchBox.mjs +4 -9
  84. package/esm2020/elements/select/Select.mjs +6 -12
  85. package/esm2020/elements/slider/Slider.mjs +5 -9
  86. package/esm2020/elements/stepper/step-header.component.mjs +2 -2
  87. package/esm2020/elements/stepper/stepper.component.mjs +7 -7
  88. package/esm2020/elements/switch/Switch.mjs +5 -10
  89. package/esm2020/elements/tabbed-group-picker/TabbedGroupPicker.mjs +3 -3
  90. package/esm2020/elements/table/extras/table-footer/TableFooter.mjs +3 -6
  91. package/esm2020/elements/table/extras/table-header/TableHeader.mjs +3 -6
  92. package/esm2020/elements/tabs/Tabs.mjs +22 -50
  93. package/esm2020/elements/tiles/Tiles.mjs +4 -9
  94. package/esm2020/elements/time-picker/TimePicker.mjs +5 -10
  95. package/esm2020/elements/time-picker/TimePickerInput.mjs +4 -8
  96. package/esm2020/elements/tip-well/TipWell.mjs +5 -9
  97. package/esm2020/elements/toast/Toast.mjs +5 -9
  98. package/esm2020/elements/tooltip/Tooltip.component.mjs +3 -3
  99. package/esm2020/elements/value/Value.mjs +4 -7
  100. package/fesm2015/novo-elements-elements-agenda.mjs +12 -24
  101. package/fesm2015/novo-elements-elements-agenda.mjs.map +1 -1
  102. package/fesm2015/novo-elements-elements-card.mjs +16 -30
  103. package/fesm2015/novo-elements-elements-card.mjs.map +1 -1
  104. package/fesm2015/novo-elements-elements-date-picker.mjs +13 -30
  105. package/fesm2015/novo-elements-elements-date-picker.mjs.map +1 -1
  106. package/fesm2015/novo-elements-elements-date-time-picker.mjs +7 -16
  107. package/fesm2015/novo-elements-elements-date-time-picker.mjs.map +1 -1
  108. package/fesm2015/novo-elements-elements-dropdown.mjs +4 -9
  109. package/fesm2015/novo-elements-elements-dropdown.mjs.map +1 -1
  110. package/fesm2015/novo-elements-elements-header.mjs +5 -11
  111. package/fesm2015/novo-elements-elements-header.mjs.map +1 -1
  112. package/fesm2015/novo-elements-elements-icon.mjs +4 -9
  113. package/fesm2015/novo-elements-elements-icon.mjs.map +1 -1
  114. package/fesm2015/novo-elements-elements-list.mjs +26 -58
  115. package/fesm2015/novo-elements-elements-list.mjs.map +1 -1
  116. package/fesm2015/novo-elements-elements-loading.mjs +6 -12
  117. package/fesm2015/novo-elements-elements-loading.mjs.map +1 -1
  118. package/fesm2015/novo-elements-elements-modal.mjs +8 -16
  119. package/fesm2015/novo-elements-elements-modal.mjs.map +1 -1
  120. package/fesm2015/novo-elements-elements-places.mjs +3 -7
  121. package/fesm2015/novo-elements-elements-places.mjs.map +1 -1
  122. package/fesm2015/novo-elements-elements-quick-note.mjs +6 -14
  123. package/fesm2015/novo-elements-elements-quick-note.mjs.map +1 -1
  124. package/fesm2015/novo-elements-elements-radio.mjs +8 -18
  125. package/fesm2015/novo-elements-elements-radio.mjs.map +1 -1
  126. package/fesm2015/novo-elements-elements-search.mjs +3 -8
  127. package/fesm2015/novo-elements-elements-search.mjs.map +1 -1
  128. package/fesm2015/novo-elements-elements-select.mjs +5 -11
  129. package/fesm2015/novo-elements-elements-select.mjs.map +1 -1
  130. package/fesm2015/novo-elements-elements-slider.mjs +4 -8
  131. package/fesm2015/novo-elements-elements-slider.mjs.map +1 -1
  132. package/fesm2015/novo-elements-elements-stepper.mjs +8 -8
  133. package/fesm2015/novo-elements-elements-stepper.mjs.map +1 -1
  134. package/fesm2015/novo-elements-elements-switch.mjs +4 -9
  135. package/fesm2015/novo-elements-elements-switch.mjs.map +1 -1
  136. package/fesm2015/novo-elements-elements-tabbed-group-picker.mjs +2 -2
  137. package/fesm2015/novo-elements-elements-tabbed-group-picker.mjs.map +1 -1
  138. package/fesm2015/novo-elements-elements-table.mjs +4 -10
  139. package/fesm2015/novo-elements-elements-table.mjs.map +1 -1
  140. package/fesm2015/novo-elements-elements-tabs.mjs +21 -49
  141. package/fesm2015/novo-elements-elements-tabs.mjs.map +1 -1
  142. package/fesm2015/novo-elements-elements-tiles.mjs +3 -8
  143. package/fesm2015/novo-elements-elements-tiles.mjs.map +1 -1
  144. package/fesm2015/novo-elements-elements-time-picker.mjs +7 -16
  145. package/fesm2015/novo-elements-elements-time-picker.mjs.map +1 -1
  146. package/fesm2015/novo-elements-elements-tip-well.mjs +4 -8
  147. package/fesm2015/novo-elements-elements-tip-well.mjs.map +1 -1
  148. package/fesm2015/novo-elements-elements-toast.mjs +4 -8
  149. package/fesm2015/novo-elements-elements-toast.mjs.map +1 -1
  150. package/fesm2015/novo-elements-elements-tooltip.mjs +2 -2
  151. package/fesm2015/novo-elements-elements-tooltip.mjs.map +1 -1
  152. package/fesm2015/novo-elements-elements-value.mjs +3 -6
  153. package/fesm2015/novo-elements-elements-value.mjs.map +1 -1
  154. package/fesm2020/novo-elements-elements-agenda.mjs +12 -24
  155. package/fesm2020/novo-elements-elements-agenda.mjs.map +1 -1
  156. package/fesm2020/novo-elements-elements-card.mjs +16 -30
  157. package/fesm2020/novo-elements-elements-card.mjs.map +1 -1
  158. package/fesm2020/novo-elements-elements-date-picker.mjs +13 -30
  159. package/fesm2020/novo-elements-elements-date-picker.mjs.map +1 -1
  160. package/fesm2020/novo-elements-elements-date-time-picker.mjs +7 -16
  161. package/fesm2020/novo-elements-elements-date-time-picker.mjs.map +1 -1
  162. package/fesm2020/novo-elements-elements-dropdown.mjs +4 -9
  163. package/fesm2020/novo-elements-elements-dropdown.mjs.map +1 -1
  164. package/fesm2020/novo-elements-elements-header.mjs +5 -11
  165. package/fesm2020/novo-elements-elements-header.mjs.map +1 -1
  166. package/fesm2020/novo-elements-elements-icon.mjs +4 -9
  167. package/fesm2020/novo-elements-elements-icon.mjs.map +1 -1
  168. package/fesm2020/novo-elements-elements-list.mjs +26 -58
  169. package/fesm2020/novo-elements-elements-list.mjs.map +1 -1
  170. package/fesm2020/novo-elements-elements-loading.mjs +6 -12
  171. package/fesm2020/novo-elements-elements-loading.mjs.map +1 -1
  172. package/fesm2020/novo-elements-elements-modal.mjs +8 -16
  173. package/fesm2020/novo-elements-elements-modal.mjs.map +1 -1
  174. package/fesm2020/novo-elements-elements-places.mjs +3 -7
  175. package/fesm2020/novo-elements-elements-places.mjs.map +1 -1
  176. package/fesm2020/novo-elements-elements-quick-note.mjs +6 -14
  177. package/fesm2020/novo-elements-elements-quick-note.mjs.map +1 -1
  178. package/fesm2020/novo-elements-elements-radio.mjs +8 -18
  179. package/fesm2020/novo-elements-elements-radio.mjs.map +1 -1
  180. package/fesm2020/novo-elements-elements-search.mjs +3 -8
  181. package/fesm2020/novo-elements-elements-search.mjs.map +1 -1
  182. package/fesm2020/novo-elements-elements-select.mjs +5 -11
  183. package/fesm2020/novo-elements-elements-select.mjs.map +1 -1
  184. package/fesm2020/novo-elements-elements-slider.mjs +4 -8
  185. package/fesm2020/novo-elements-elements-slider.mjs.map +1 -1
  186. package/fesm2020/novo-elements-elements-stepper.mjs +8 -8
  187. package/fesm2020/novo-elements-elements-stepper.mjs.map +1 -1
  188. package/fesm2020/novo-elements-elements-switch.mjs +4 -9
  189. package/fesm2020/novo-elements-elements-switch.mjs.map +1 -1
  190. package/fesm2020/novo-elements-elements-tabbed-group-picker.mjs +2 -2
  191. package/fesm2020/novo-elements-elements-tabbed-group-picker.mjs.map +1 -1
  192. package/fesm2020/novo-elements-elements-table.mjs +4 -10
  193. package/fesm2020/novo-elements-elements-table.mjs.map +1 -1
  194. package/fesm2020/novo-elements-elements-tabs.mjs +21 -49
  195. package/fesm2020/novo-elements-elements-tabs.mjs.map +1 -1
  196. package/fesm2020/novo-elements-elements-tiles.mjs +3 -8
  197. package/fesm2020/novo-elements-elements-tiles.mjs.map +1 -1
  198. package/fesm2020/novo-elements-elements-time-picker.mjs +7 -16
  199. package/fesm2020/novo-elements-elements-time-picker.mjs.map +1 -1
  200. package/fesm2020/novo-elements-elements-tip-well.mjs +4 -8
  201. package/fesm2020/novo-elements-elements-tip-well.mjs.map +1 -1
  202. package/fesm2020/novo-elements-elements-toast.mjs +4 -8
  203. package/fesm2020/novo-elements-elements-toast.mjs.map +1 -1
  204. package/fesm2020/novo-elements-elements-tooltip.mjs +2 -2
  205. package/fesm2020/novo-elements-elements-tooltip.mjs.map +1 -1
  206. package/fesm2020/novo-elements-elements-value.mjs +3 -6
  207. package/fesm2020/novo-elements-elements-value.mjs.map +1 -1
  208. package/novo-elements.scss +10 -43
  209. package/package.json +1 -1
  210. package/elements/tabs/Tabs.scss +0 -298
  211. package/elements/value/Values.scss +0 -57
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-elements-agenda.mjs","sources":["../../../projects/novo-elements/src/elements/agenda/pipe/Month.pipe.ts","../../../projects/novo-elements/src/elements/agenda/pipe/Year.pipe.ts","../../../projects/novo-elements/src/elements/agenda/pipe/MonthDay.pipe.ts","../../../projects/novo-elements/src/elements/agenda/pipe/EndOfWeekDisplayPipe.pipe.ts","../../../projects/novo-elements/src/elements/agenda/pipe/Weekday.pipe.ts","../../../projects/novo-elements/src/elements/agenda/pipe/DayOfMonth.pipe.ts","../../../projects/novo-elements/src/elements/agenda/common/AgendaDateChange.ts","../../../projects/novo-elements/src/elements/agenda/common/EventTypeLegend.ts","../../../projects/novo-elements/src/elements/agenda/day/AgendaAllDayEvent.ts","../../../projects/novo-elements/src/elements/agenda/day/AgendaDayEvent.ts","../../../projects/novo-elements/src/elements/agenda/pipe/Hours.pipe.ts","../../../projects/novo-elements/src/elements/agenda/day/AgendaHourSegment.ts","../../../projects/novo-elements/src/elements/agenda/day/AgendaDayView.ts","../../../projects/novo-elements/src/elements/agenda/month/AgendaMonthDay.ts","../../../projects/novo-elements/src/elements/agenda/month/AgendaMonthHeader.ts","../../../projects/novo-elements/src/elements/agenda/month/AgendaMonthView.ts","../../../projects/novo-elements/src/elements/agenda/week/AgendaWeekEvent.ts","../../../projects/novo-elements/src/elements/agenda/week/AgendaWeekHeader.ts","../../../projects/novo-elements/src/elements/agenda/week/AgendaWeekView.ts","../../../projects/novo-elements/src/elements/agenda/Agenda.module.ts","../../../projects/novo-elements/src/elements/agenda/novo-elements-elements-agenda.ts"],"sourcesContent":["import { Inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'month' })\nexport class MonthPipe implements PipeTransform {\n constructor(@Inject(LOCALE_ID) private locale: string = 'en-US') {}\n transform(date: Date, locale: string = this.locale, method: 'numeric' | '2-digit' | 'long' | 'short' | 'narrow' = 'long'): string {\n return new Intl.DateTimeFormat(locale, { month: method }).format(date);\n }\n}\n","import { Inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'year' })\nexport class YearPipe implements PipeTransform {\n constructor(@Inject(LOCALE_ID) private locale: string = 'en-US') {}\n transform(date: Date, locale: string = this.locale, method: 'numeric' | '2-digit' = 'numeric'): string {\n return new Intl.DateTimeFormat(locale, { year: method }).format(date);\n }\n}\n","import { Inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'monthday' })\nexport class MonthDayPipe implements PipeTransform {\n constructor(@Inject(LOCALE_ID) private locale: string = 'en-US') {}\n transform(date: Date, locale: string = this.locale, method: 'numeric' | '2-digit' | 'long' | 'short' | 'narrow' = 'short'): string {\n return new Intl.DateTimeFormat(locale, { month: method, day: 'numeric' }).format(date);\n }\n}\n","import { Inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'endofweekdisplay' })\nexport class EndOfWeekDisplayPipe implements PipeTransform {\n constructor(@Inject(LOCALE_ID) private locale: string = 'en-US') {}\n\n transform(\n endOfWeek: Date,\n startOfWeek: Date,\n locale: string = this.locale,\n method: 'numeric' | '2-digit' | 'long' | 'short' | 'narrow' = 'short',\n ): String {\n if (endOfWeek.getMonth() === startOfWeek.getMonth()) {\n return new Intl.DateTimeFormat(locale, { day: 'numeric' }).format(endOfWeek);\n }\n\n return new Intl.DateTimeFormat(locale, { month: method, day: 'numeric' }).format(endOfWeek);\n }\n}\n","import { Inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'weekday' })\nexport class WeekdayPipe implements PipeTransform {\n constructor(@Inject(LOCALE_ID) private locale: string = 'en-US') {}\n transform(date: Date, locale: string = this.locale, method: 'long' | 'short' | 'narrow' = 'short'): string {\n return new Intl.DateTimeFormat(locale, { weekday: method }).format(date);\n }\n}\n","import { Inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'dayofmonth' })\nexport class DayOfMonthPipe implements PipeTransform {\n constructor(@Inject(LOCALE_ID) private locale: string = 'en-US') {}\n transform(date: Date, locale: string = this.locale, method: 'numeric' | '2-digit' = 'numeric'): string {\n return new Intl.DateTimeFormat(locale, { day: method }).format(date);\n }\n}\n","import { Component, EventEmitter, Inject, Input, LOCALE_ID, Output } from '@angular/core';\nimport { DateUtil } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-date-change',\n template: `\n <div class=\"cal-date-change\">\n <i class=\"bhi-arrow-left\" (click)=\"subtractDate()\"></i>\n <span [ngSwitch]=\"view\">\n <span *ngSwitchCase=\"'month'\">{{ (viewDate | month: locale) + ' ' + (viewDate | year: locale) }}</span>\n <span *ngSwitchCase=\"'week'\">{{\n (startOfWeek | monthday: locale:'long') + ' - ' + (endOfWeek | endofweekdisplay: startOfWeek:locale:'long')\n }}</span>\n <span *ngSwitchCase=\"'day'\">{{\n (viewDate | weekday: locale:'long') + ', ' + (viewDate | month: locale) + ' ' + (viewDate | dayofmonth: locale)\n }}</span>\n </span>\n <i class=\"bhi-arrow-right\" (click)=\"addDate()\"></i>\n </div>\n `,\n})\nexport class NovoAgendaDateChangeElement {\n /**\n * The current view\n */\n @Input()\n view: string;\n\n /**\n * The current view date\n */\n @Input()\n viewDate: Date;\n\n @Input()\n locale: string;\n\n /**\n * Called when the view date is changed\n */\n @Output()\n viewDateChange: EventEmitter<Date> = new EventEmitter();\n\n constructor(@Inject(LOCALE_ID) locale: string) {\n this.locale = locale;\n }\n\n /**\n * @hidden\n */\n subtractDate(): void {\n this.changeDate(-1);\n }\n\n addDate(): void {\n this.changeDate(1);\n }\n\n changeDate(unit: number): void {\n const addFn: any = {\n day: DateUtil.addDays,\n week: DateUtil.addWeeks,\n month: DateUtil.addMonths,\n }[this.view];\n\n this.viewDateChange.emit(addFn(this.viewDate, unit));\n }\n\n get startOfWeek() {\n return DateUtil.startOfWeek(this.viewDate);\n }\n\n get endOfWeek() {\n return DateUtil.endOfWeek(this.viewDate);\n }\n}\n","import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { CalendarEvent } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-event-type-legend',\n template: `\n <ng-template #defaultTemplate>\n <div class=\"cal-event-legend\">\n <div\n class=\"cal-event-type\"\n *ngFor=\"let type of events | groupBy: 'type'\"\n (click)=\"$event.stopPropagation(); eventTypeClicked.emit({ event: type?.key })\"\n >\n <div class=\"cal-event-type-swatch\"></div>\n <div>{{ type?.key }}</div>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{ events: events, eventTypeClicked: eventTypeClicked }\"\n >\n </ng-template>\n `,\n})\nexport class NovoEventTypeLegendElement {\n @Input()\n events: CalendarEvent[];\n\n @Input()\n customTemplate: TemplateRef<any>;\n\n @Output()\n eventTypeClicked: EventEmitter<any> = new EventEmitter();\n}\n","import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { CalendarEvent } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-all-day-event',\n template: `\n <ng-template #defaultTemplate>\n <div class=\"cal-all-day-event\" [style.backgroundColor]=\"event.color.secondary\" [style.borderColor]=\"event.color.primary\">\n {{ event.title }}\n <!--<novo-agenda-event-title\n [event]=\"event\"\n view=\"day\"\n (click)=\"eventClicked.emit()\">\n </novo-agenda-event-title>\n <novo-agenda-event-actions [event]=\"event\"></novo-agenda-event-actions>-->\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{\n event: event,\n eventClicked: eventClicked\n }\"\n >\n </ng-template>\n `,\n})\nexport class NovoAgendaAllDayEventElement {\n @Input()\n event: CalendarEvent;\n\n @Input()\n customTemplate: TemplateRef<any>;\n\n @Output()\n eventClicked: EventEmitter<any> = new EventEmitter();\n}\n","import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { DayViewEvent } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-day-event',\n template: `\n <ng-template #defaultTemplate>\n <div\n class=\"cal-event\"\n [style.borderColor]=\"dayEvent.event.color.secondary\"\n [class.cal-starts-within-day]=\"!dayEvent.startsBeforeDay\"\n [class.cal-ends-within-day]=\"!dayEvent.endsAfterDay\"\n [ngClass]=\"dayEvent.event.cssClass\"\n [tooltip]=\"dayEvent.event.description\"\n [tooltipPosition]=\"tooltipPosition\"\n (click)=\"eventClicked.emit({ event: dayEvent.event })\"\n >\n <div class=\"cal-event-ribbon\" [style.backgroundColor]=\"dayEvent.event.color.primary\"></div>\n <div class=\"cal-event-group\">\n <div class=\"cal-event-title\">{{ dayEvent.event.title }}</div>\n <div class=\"cal-event-description\">{{ dayEvent.event?.description }}</div>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{ dayEvent: dayEvent, tooltipPosition: tooltipPosition, eventClicked: eventClicked }\"\n >\n </ng-template>\n `,\n})\nexport class NovoAgendaDayEventElement {\n @Input()\n dayEvent: DayViewEvent;\n\n @Input()\n tooltipPosition: string;\n\n @Input()\n customTemplate: TemplateRef<any>;\n\n @Output()\n eventClicked: EventEmitter<any> = new EventEmitter();\n}\n","import { Inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'hours' })\nexport class HoursPipe implements PipeTransform {\n constructor(@Inject(LOCALE_ID) private locale: string = 'en-US') {}\n transform(date: Date, locale: string = this.locale, method: 'numeric' | '2-digit' = 'numeric'): string {\n return new Intl.DateTimeFormat(locale, { hour: method }).format(date);\n }\n}\n","import { Component, Input, TemplateRef } from '@angular/core';\nimport { DayViewHourSegment } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-day-hour-segment',\n template: `\n <ng-template #defaultTemplate>\n <div\n class=\"cal-hour-segment\"\n [class.cal-hour-start]=\"segment.isStart\"\n [class.cal-after-hour-start]=\"!segment.isStart\"\n [ngClass]=\"segment.cssClass\"\n >\n <div class=\"cal-time\">\n {{ segment.date | hours: locale }}\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{\n segment: segment,\n locale: locale\n }\"\n >\n </ng-template>\n `,\n})\nexport class NovoAgendaHourSegmentElement {\n @Input()\n segment: DayViewHourSegment;\n\n @Input()\n locale: string;\n\n @Input()\n customTemplate: TemplateRef<any>;\n}\n","import {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Inject,\n Input,\n LOCALE_ID,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n} from '@angular/core';\nimport { Subject, Subscription } from 'rxjs';\nimport {\n CalendarEvent,\n CalendarEventTimesChangedEvent,\n DayView,\n DayViewHour,\n getDayView,\n getDayViewHourGrid,\n} from 'novo-elements/utils';\n\n/**\n * @hidden\n */\nconst SEGMENT_HEIGHT: number = 30;\n\n/**\n * @hidden\n */\nconst MINUTES_IN_HOUR: number = 60;\n\n/**\n * Shows all events on a given day. Example usage:\n *\n * ```typescript\n * &lt;novo-agenda-day\n * [viewDate]=\"viewDate\"\n * [events]=\"events\"&gt;\n * &lt;/novo-agenda-day&gt;\n * ```\n */\n@Component({\n selector: 'novo-agenda-day',\n template: `\n <div class=\"cal-day-view\" #dayViewContainer>\n <novo-agenda-all-day-event\n *ngFor=\"let event of view.allDayEvents\"\n [event]=\"event\"\n [customTemplate]=\"allDayEventTemplate\"\n (eventClicked)=\"eventClicked.emit({ event: event })\"\n >\n </novo-agenda-all-day-event>\n <div class=\"cal-hour-rows\">\n <div class=\"cal-events\">\n <div\n #event\n *ngFor=\"let dayEvent of view?.events\"\n class=\"cal-event-container\"\n [style.marginTop.px]=\"dayEvent.top\"\n [style.height.px]=\"dayEvent.height\"\n [style.marginLeft.px]=\"dayEvent.left + 70\"\n [style.width.px]=\"dayEvent.width - 1\"\n >\n <novo-agenda-day-event\n [dayEvent]=\"dayEvent\"\n [tooltipPosition]=\"tooltipPosition\"\n [customTemplate]=\"eventTemplate\"\n (eventClicked)=\"eventClicked.emit($event)\"\n >\n </novo-agenda-day-event>\n </div>\n </div>\n <div class=\"cal-hour\" *ngFor=\"let hour of hours\" [style.minWidth.px]=\"view?.width + 70\">\n <novo-agenda-day-hour-segment\n *ngFor=\"let segment of hour.segments\"\n [segment]=\"segment\"\n [locale]=\"locale\"\n [customTemplate]=\"hourSegmentTemplate\"\n (click)=\"hourSegmentClicked.emit({ date: segment.date })\"\n >\n </novo-agenda-day-hour-segment>\n </div>\n </div>\n </div>\n `,\n})\nexport class NovoAgendaDayViewElement implements OnChanges, OnInit, OnDestroy {\n /**\n * The current view date\n */\n @Input()\n viewDate: Date;\n\n /**\n * An array of events to display on view\n */\n @Input()\n events: CalendarEvent[] = [];\n\n /**\n * The number of segments in an hour. Must be <= 6\n */\n @Input()\n hourSegments: number = 2;\n\n /**\n * The day start hours in 24 hour time. Must be 0-23\n */\n @Input()\n dayStartHour: number = 0;\n\n /**\n * The day start minutes. Must be 0-59\n */\n @Input()\n dayStartMinute: number = 0;\n\n /**\n * The day end hours in 24 hour time. Must be 0-23\n */\n @Input()\n dayEndHour: number = 23;\n\n /**\n * The day end minutes. Must be 0-59\n */\n @Input()\n dayEndMinute: number = 59;\n\n /**\n * The width in pixels of each event on the view\n */\n @Input()\n eventWidth: number = 150;\n\n /**\n * An observable that when emitted on will re-render the current view\n */\n @Input()\n refresh: Subject<any>;\n\n /**\n * The locale used to format dates\n */\n @Input()\n locale: string;\n\n /**\n * A function that will be called before each hour segment is called. The first argument will contain the hour segment.\n * If you add the `cssClass` property to the segment it will add that class to the hour segment in the template\n */\n @Input()\n hourSegmentModifier: Function;\n\n /**\n * The grid size to snap resizing and dragging of events to\n */\n @Input()\n eventSnapSize: number = 30;\n\n /**\n * The placement of the event tooltip\n */\n @Input()\n tooltipPosition: string = 'top';\n\n /**\n * A custom template to use to replace the hour segment\n */\n @Input()\n hourSegmentTemplate: TemplateRef<any>;\n\n /**\n * A custom template to use for all day events\n */\n @Input()\n allDayEventTemplate: TemplateRef<any>;\n\n /**\n * A custom template to use for day view events\n */\n @Input()\n eventTemplate: TemplateRef<any>;\n\n /**\n * Called when an event title is clicked\n */\n @Output()\n eventClicked: EventEmitter<{ event: CalendarEvent }> = new EventEmitter<{ event: CalendarEvent }>();\n\n /**\n * Called when an hour segment is clicked\n */\n @Output()\n hourSegmentClicked: EventEmitter<{ date: Date }> = new EventEmitter<{ date: Date }>();\n\n /**\n * Called when an event is resized or dragged and dropped\n */\n @Output()\n eventTimesChanged: EventEmitter<CalendarEventTimesChangedEvent> = new EventEmitter<CalendarEventTimesChangedEvent>();\n\n /**\n * @hidden\n */\n hours: DayViewHour[] = [];\n\n /**\n * @hidden\n */\n view: DayView;\n\n /**\n * @hidden\n */\n width: number = 0;\n\n /**\n * @hidden\n */\n refreshSubscription: Subscription;\n\n /**\n * @hidden\n */\n currentResize: {\n originalTop: number;\n originalHeight: number;\n edge: string;\n };\n\n /**\n * @hidden\n */\n validateDrag: Function;\n\n /**\n * @hidden\n */\n validateResize: Function;\n\n /**\n * @hidden\n */\n constructor(private cdr: ChangeDetectorRef, @Inject(LOCALE_ID) locale: string) {\n this.locale = locale;\n }\n\n /**\n * @hidden\n */\n ngOnInit(): void {\n if (this.refresh) {\n this.refreshSubscription = this.refresh.subscribe(() => {\n this.refreshAll();\n this.cdr.detectChanges();\n });\n }\n }\n\n /**\n * @hidden\n */\n ngOnDestroy(): void {\n if (this.refreshSubscription) {\n this.refreshSubscription.unsubscribe();\n }\n }\n\n /**\n * @hidden\n */\n ngOnChanges(changes: any): void {\n if (changes.viewDate || changes.dayStartHour || changes.dayStartMinute || changes.dayEndHour || changes.dayEndMinute) {\n this.refreshHourGrid();\n }\n\n if (\n changes.viewDate ||\n changes.events ||\n changes.dayStartHour ||\n changes.dayStartMinute ||\n changes.dayEndHour ||\n changes.dayEndMinute ||\n changes.eventWidth\n ) {\n this.refreshView();\n }\n }\n\n /*\n eventDropped(dropEvent: {dropData?: {event?: CalendarEvent}}, segment: DayViewHourSegment): void {\n if (dropEvent.dropData && dropEvent.dropData.event) {\n this.eventTimesChanged.emit({event: dropEvent.dropData.event, newStart: segment.date});\n }\n }\n\n resizeStarted(event: DayViewEvent, resizeEvent: ResizeEvent, dayViewContainer: HTMLElement): void {\n this.currentResize = {\n originalTop: event.top,\n originalHeight: event.height,\n edge: typeof resizeEvent.edges.top !== 'undefined' ? 'top' : 'bottom'\n };\n const resizeHelper: CalendarResizeHelper = new CalendarResizeHelper(dayViewContainer);\n this.validateResize = ({rectangle}) => resizeHelper.validateResize({rectangle});\n this.cdr.detectChanges();\n }\n\n resizing(event: DayViewEvent, resizeEvent: ResizeEvent): void {\n if (resizeEvent.edges.top) {\n event.top = this.currentResize.originalTop + +resizeEvent.edges.top;\n event.height = this.currentResize.originalHeight - +resizeEvent.edges.top;\n } else if (resizeEvent.edges.bottom) {\n event.height = this.currentResize.originalHeight + +resizeEvent.edges.bottom;\n }\n }\n\n resizeEnded(dayEvent: DayViewEvent): void {\n\n let pixelsMoved: number;\n if (this.currentResize.edge === 'top') {\n pixelsMoved = (dayEvent.top - this.currentResize.originalTop);\n } else {\n pixelsMoved = (dayEvent.height - this.currentResize.originalHeight);\n }\n\n dayEvent.top = this.currentResize.originalTop;\n dayEvent.height = this.currentResize.originalHeight;\n\n const pixelAmountInMinutes: number = MINUTES_IN_HOUR / (this.hourSegments * SEGMENT_HEIGHT);\n const minutesMoved: number = pixelsMoved * pixelAmountInMinutes;\n let newStart: Date = dayEvent.event.start;\n let newEnd: Date = dayEvent.event.end;\n if (this.currentResize.edge === 'top') {\n newStart = addMinutes(newStart, minutesMoved);\n } else if (newEnd) {\n newEnd = addMinutes(newEnd, minutesMoved);\n }\n\n this.eventTimesChanged.emit({newStart, newEnd, event: dayEvent.event});\n this.currentResize = null;\n\n }\n\n dragStart(event: HTMLElement, dayViewContainer: HTMLElement): void {\n const dragHelper: CalendarDragHelper = new CalendarDragHelper(dayViewContainer, event);\n this.validateDrag = ({x, y}) => !this.currentResize && dragHelper.validateDrag({x, y});\n this.cdr.detectChanges();\n }\n\n eventDragged(dayEvent: DayViewEvent, draggedInPixels: number): void {\n const pixelAmountInMinutes: number = MINUTES_IN_HOUR / (this.hourSegments * SEGMENT_HEIGHT);\n const minutesMoved: number = draggedInPixels * pixelAmountInMinutes;\n const newStart: Date = addMinutes(dayEvent.event.start, minutesMoved);\n let newEnd: Date;\n if (dayEvent.event.end) {\n newEnd = addMinutes(dayEvent.event.end, minutesMoved);\n }\n this.eventTimesChanged.emit({newStart, newEnd, event: dayEvent.event});\n }\n */\n\n private refreshHourGrid(): void {\n this.hours = getDayViewHourGrid({\n viewDate: this.viewDate,\n hourSegments: this.hourSegments,\n dayStart: {\n hour: this.dayStartHour,\n minute: this.dayStartMinute,\n },\n dayEnd: {\n hour: this.dayEndHour,\n minute: this.dayEndMinute,\n },\n });\n if (this.hourSegmentModifier) {\n this.hours.forEach((hour) => {\n hour.segments.forEach((segment) => this.hourSegmentModifier(segment));\n });\n }\n }\n\n private refreshView(): void {\n this.view = getDayView({\n events: this.events,\n viewDate: this.viewDate,\n hourSegments: this.hourSegments,\n dayStart: {\n hour: this.dayStartHour,\n minute: this.dayStartMinute,\n },\n dayEnd: {\n hour: this.dayEndHour,\n minute: this.dayEndMinute,\n },\n eventWidth: this.eventWidth,\n segmentHeight: SEGMENT_HEIGHT,\n });\n }\n\n private refreshAll(): void {\n this.refreshHourGrid();\n this.refreshView();\n }\n}\n","import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { CalendarEvent, CalendarEventResponse, MonthViewDay } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-month-day',\n template: `\n <ng-template #defaultTemplate>\n <div class=\"agenda-day-top\">\n <span class=\"agenda-day-badge\" *ngIf=\"day.badgeTotal > 0\">{{ day.badgeTotal }}</span>\n <span class=\"agenda-day-number\">{{ day.date | dayofmonth: locale }}</span>\n </div>\n <div class=\"agenda-events\">\n <div\n class=\"agenda-event\"\n *ngFor=\"let type of day.events | groupBy: 'type'\"\n [style.backgroundColor]=\"type?.value[0]?.color.primary\"\n [ngClass]=\"type?.value[0]?.cssClass\"\n (click)=\"$event.stopPropagation(); eventClicked.emit({ event: type?.value[0] })\"\n >\n {{ type?.value.length }}\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{\n day: day,\n locale: locale,\n tooltipPosition: tooltipPosition,\n eventClicked: eventClicked,\n accepted: accepted,\n rejected: rejected,\n maybes: maybes\n }\"\n >\n </ng-template>\n `,\n host: {\n '[class]': '\"agenda-cell agenda-day-cell \" + day?.cssClass',\n '[class.agenda-day-accepted]': 'accepted.length',\n '[class.agenda-day-rejected]': 'rejected.length',\n '[class.agenda-past]': 'day.isPast',\n '[class.agenda-today]': 'day.isToday',\n '[class.agenda-future]': 'day.isFuture',\n '[class.agenda-weekend]': 'day.isWeekend',\n '[class.agenda-in-month]': 'day.inMonth',\n '[class.agenda-out-month]': '!day.inMonth',\n '[class.agenda-has-events]': 'day.events.length > 0',\n '[style.backgroundColor]': 'day.backgroundColor',\n },\n})\nexport class NovoAgendaMonthDayElement {\n @Input()\n day: MonthViewDay;\n\n @Input()\n locale: string;\n\n @Input()\n tooltipPosition: string;\n\n @Input()\n customTemplate: TemplateRef<any>;\n\n @Output()\n eventClicked: EventEmitter<{ event: CalendarEvent }> = new EventEmitter<{ event: CalendarEvent }>();\n\n get accepted(): Array<CalendarEvent> {\n if (!this.day) {\n return [];\n }\n return this.day.events.filter((evt) => {\n return evt.response === CalendarEventResponse.Accepted;\n });\n }\n\n get rejected(): Array<CalendarEvent> {\n if (!this.day) {\n return [];\n }\n return this.day.events.filter((evt) => {\n return evt.response === CalendarEventResponse.Rejected;\n });\n }\n\n get maybes(): Array<CalendarEvent> {\n if (!this.day) {\n return [];\n }\n return this.day.events.filter((evt) => {\n return evt.response === CalendarEventResponse.Maybe;\n });\n }\n}\n","import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { addMonths, subMonths } from 'date-fns';\nimport { WeekDay } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-month-header',\n template: `\n <ng-template #defaultTemplate>\n <div class=\"agenda-header\">\n <div class=\"agenda-header-top\">\n <novo-button theme=\"icon\" icon=\"previous\" (click)=\"prevMonth($event)\"></novo-button>\n <div class=\"agenda-month\">{{ viewDate | month: locale }}</div>\n <novo-button theme=\"icon\" icon=\"next\" (click)=\"nextMonth($event)\"></novo-button>\n </div>\n <div class=\"agenda-weekdays\">\n <div\n class=\"agenda-weekday\"\n *ngFor=\"let day of days\"\n [class.agenda-past]=\"day.isPast\"\n [class.agenda-today]=\"day.isToday\"\n [class.agenda-future]=\"day.isFuture\"\n [class.agenda-weekend]=\"day.isWeekend\"\n >\n {{ day.date | weekday: locale }}\n </div>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{ days: days, locale: locale, viewDate: viewDate }\"\n >\n </ng-template>\n `,\n})\nexport class NovoAgendaMonthHeaderElement {\n @Input()\n viewDate: Date;\n\n @Input()\n days: WeekDay[];\n\n @Input()\n locale: string;\n\n @Input()\n customTemplate: TemplateRef<any>;\n\n /**\n * Called when the view date is changed\n */\n @Output()\n viewDateChange: EventEmitter<Date> = new EventEmitter();\n\n prevMonth(event: Event) {\n this.viewDateChange.emit(subMonths(this.viewDate, 1));\n }\n\n nextMonth(event: Event) {\n this.viewDateChange.emit(addMonths(this.viewDate, 1));\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Inject,\n Input,\n LOCALE_ID,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n} from '@angular/core';\nimport { addSeconds, differenceInSeconds, getDate, getMonth, getYear, setDate, setMonth, setYear } from 'date-fns';\nimport { Subject, Subscription } from 'rxjs';\nimport {\n CalendarEvent,\n CalendarEventTimesChangedEvent,\n getMonthView,\n getWeekViewHeader,\n MonthView,\n MonthViewDay,\n WeekDay,\n} from 'novo-elements/utils';\n\n/**\n * Shows all events on a given month. Example usage:\n *\n * ```\n * &lt;novo-agenda-month-view\n * [viewDate]=\"viewDate\"\n * [events]=\"events\"&gt;\n * &lt;/novo-agenda-month-view&gt;\n * ```\n */\n@Component({\n selector: 'novo-agenda-month',\n template: `\n <div class=\"agenda-month-view\">\n <novo-agenda-month-header\n [(viewDate)]=\"viewDate\"\n [days]=\"columnHeaders\"\n [locale]=\"locale\"\n [customTemplate]=\"headerTemplate\"\n (viewDateChange)=\"refreshAll()\"\n >\n </novo-agenda-month-header>\n <div class=\"agenda-days\">\n <div *ngFor=\"let rowIndex of view.rowOffsets\">\n <div class=\"agenda-cell-row\">\n <novo-agenda-month-day\n *ngFor=\"let day of view.days | slice: rowIndex:rowIndex + view.totalDaysVisibleInWeek\"\n [day]=\"day\"\n [locale]=\"locale\"\n [customTemplate]=\"cellTemplate\"\n (click)=\"dayClicked.emit({ day: day })\"\n (eventClicked)=\"eventClicked.emit({ day: day, event: $event.event })\"\n >\n </novo-agenda-month-day>\n </div>\n </div>\n </div>\n </div>\n `,\n})\nexport class NovoAgendaMonthViewElement implements OnChanges, OnInit, OnDestroy {\n /**\n * The current view date\n */\n @Input()\n viewDate: Date;\n\n /**\n * An array of events to display on view\n */\n @Input()\n events: CalendarEvent[] = [];\n\n /**\n * An array of day indexes (0 = sunday, 1 = monday etc) that will be hidden on the view\n */\n @Input()\n excludeDays: number[] = [];\n\n /**\n * A function that will be called before each cell is rendered. The first argument will contain the calendar cell.\n * If you add the `cssClass` property to the cell it will add that class to the cell in the template\n */\n @Input()\n dayModifier: Function;\n\n /**\n * An observable that when emitted on will re-render the current view\n */\n @Input()\n refresh: Subject<any>;\n\n /**\n * The locale used to format dates\n */\n @Input()\n locale: string = 'en-US';\n\n /**\n * The placement of the event tooltip\n */\n @Input()\n tooltipPosition: string = 'top';\n\n /**\n * The start number of the week\n */\n @Input()\n weekStartsOn: Day;\n\n /**\n * A custom template to use to replace the header\n */\n @Input()\n headerTemplate: TemplateRef<any>;\n\n /**\n * A custom template to use to replace the day cell\n */\n @Input()\n cellTemplate: TemplateRef<any>;\n\n /**\n * Called when the day cell is clicked\n */\n @Output()\n dayClicked: EventEmitter<{ day: MonthViewDay }> = new EventEmitter<{ day: MonthViewDay }>();\n\n /**\n * Called when the event title is clicked\n */\n @Output()\n eventClicked: EventEmitter<{ day: any; event: CalendarEvent }> = new EventEmitter<{ day: any; event: CalendarEvent }>();\n\n /**\n * Called when an event is dragged and dropped\n */\n @Output()\n eventTimesChanged: EventEmitter<CalendarEventTimesChangedEvent> = new EventEmitter<CalendarEventTimesChangedEvent>();\n\n @Output()\n viewDateChange: EventEmitter<Date> = new EventEmitter<Date>();\n\n /**\n * @hidden\n */\n columnHeaders: WeekDay[];\n\n /**\n * @hidden\n */\n view: MonthView;\n\n /**\n * @hidden\n */\n refreshSubscription: Subscription;\n\n /**\n * @hidden\n */\n constructor(private cdr: ChangeDetectorRef, @Inject(LOCALE_ID) locale: string) {\n this.locale = locale;\n }\n\n /**\n * @hidden\n */\n ngOnInit(): void {\n if (this.refresh) {\n this.refreshSubscription = this.refresh.subscribe(() => {\n this.refreshAll();\n this.cdr.markForCheck();\n });\n }\n }\n\n /**\n * @hidden\n */\n ngOnChanges(changes: any): void {\n if (changes.viewDate || changes.excludeDays) {\n this.refreshHeader();\n }\n if (changes.viewDate || changes.events || changes.excludeDays) {\n this.refreshBody();\n }\n }\n\n /**\n * @hidden\n */\n ngOnDestroy(): void {\n if (this.refreshSubscription) {\n this.refreshSubscription.unsubscribe();\n }\n }\n\n /**\n * @hidden\n */\n eventDropped(day: MonthViewDay, event: CalendarEvent): void {\n const year: number = getYear(day.date);\n const month: number = getMonth(day.date);\n const date: number = getDate(day.date);\n const newStart: Date = setYear(setMonth(setDate(event.start, date), month), year);\n let newEnd: Date;\n if (event.end) {\n const secondsDiff: number = differenceInSeconds(newStart, event.start);\n newEnd = addSeconds(event.end, secondsDiff);\n }\n this.eventTimesChanged.emit({ event, newStart, newEnd });\n }\n\n private refreshHeader(): void {\n this.columnHeaders = getWeekViewHeader({\n viewDate: this.viewDate,\n weekStartsOn: this.weekStartsOn,\n excluded: this.excludeDays,\n });\n }\n\n private refreshBody(): void {\n this.view = getMonthView({\n events: this.events,\n viewDate: this.viewDate,\n weekStartsOn: this.weekStartsOn,\n excluded: this.excludeDays,\n });\n if (this.dayModifier) {\n this.view.days.forEach((day) => this.dayModifier(day));\n }\n }\n\n public refreshAll(): void {\n this.refreshHeader();\n this.refreshBody();\n this.viewDateChange.emit(this.viewDate);\n }\n}\n","import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { WeekViewEvent } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-week-event',\n template: `\n <ng-template #defaultTemplate>\n <div\n class=\"cal-event\"\n [class.cal-starts-within-week]=\"!weekEvent.startsBeforeWeek\"\n [class.cal-ends-within-week]=\"!weekEvent.endsAfterWeek\"\n [ngClass]=\"weekEvent.event?.cssClass\"\n [tooltip]=\"weekEvent.event.description\"\n [tooltipPosition]=\"tooltipPosition\"\n (click)=\"eventClicked.emit({ event: weekEvent.event })\"\n >\n <div class=\"cal-event-ribbon\" [style.backgroundColor]=\"weekEvent.event.color.primary\"></div>\n <div class=\"cal-event-title\">{{ weekEvent.event?.title }}</div>\n <div class=\"cal-event-description\">{{ weekEvent.event?.description }}</div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{ weekEvent: weekEvent, tooltipPosition: tooltipPosition, eventClicked: eventClicked }\"\n >\n </ng-template>\n `,\n})\nexport class NovoAgendaWeekEventElement {\n @Input()\n weekEvent: WeekViewEvent;\n\n @Input()\n tooltipPosition: string;\n\n @Input()\n customTemplate: TemplateRef<any>;\n\n @Output()\n eventClicked: EventEmitter<any> = new EventEmitter();\n}\n","import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { CalendarEvent, WeekDay } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-week-header',\n template: `\n <ng-template #defaultTemplate>\n <div class=\"cal-day-headers\">\n <div\n class=\"cal-header\"\n *ngFor=\"let day of days\"\n [class.cal-past]=\"day.isPast\"\n [class.cal-today]=\"day.isToday\"\n [class.cal-future]=\"day.isFuture\"\n [class.cal-weekend]=\"day.isWeekend\"\n [class.cal-drag-over]=\"day.dragOver\"\n (click)=\"dayClicked.emit({ date: day.date })\"\n mwlDroppable\n (dragEnter)=\"day.dragOver = true\"\n (dragLeave)=\"day.dragOver = false\"\n (drop)=\"day.dragOver = false; eventDropped.emit({ event: $event.dropData.event, newStart: day.date })\"\n >\n <b>{{ day.date | weekday: locale:'long' }}</b\n ><br />\n <span>{{ day.date | monthday: locale }}</span>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{ days: days, locale: locale, dayClicked: dayClicked, eventDropped: eventDropped }\"\n >\n </ng-template>\n `,\n})\nexport class NovoAgendaWeekHeaderElement {\n @Input()\n days: WeekDay[];\n\n @Input()\n locale: string;\n\n @Input()\n customTemplate: TemplateRef<any>;\n\n @Output()\n dayClicked: EventEmitter<{ date: Date }> = new EventEmitter<{ date: Date }>();\n\n @Output()\n eventDropped: EventEmitter<{ event: CalendarEvent; newStart: Date }> = new EventEmitter<{ event: CalendarEvent; newStart: Date }>();\n}\n","import {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Inject,\n Input,\n LOCALE_ID,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n} from '@angular/core';\nimport { Subject, Subscription } from 'rxjs';\nimport {\n CalendarEvent,\n CalendarEventTimesChangedEvent,\n DayViewHour,\n getDayViewHourGrid,\n getWeekView,\n getWeekViewHeader,\n WeekDay,\n WeekViewEventRow,\n} from 'novo-elements/utils';\n\n/**\n * @hidden\n */\nconst SEGMENT_HEIGHT: number = 30;\n\n/**\n * @hidden\n */\nconst MINUTES_IN_HOUR: number = 60;\n/**\n * Shows all events on a given week. Example usage:\n *\n * ```typescript\n * &lt;novo-agenda-week\n * [viewDate]=\"viewDate\"\n * [events]=\"events\"&gt;\n * &lt;/novo-agenda-week&gt;\n * ```\n */\n@Component({\n selector: 'novo-agenda-week',\n template: `\n <div class=\"cal-week-view\" #weekViewContainer>\n <novo-agenda-week-header [days]=\"days\" [locale]=\"locale\" [customTemplate]=\"headerTemplate\" (dayClicked)=\"dayClicked.emit($event)\">\n </novo-agenda-week-header>\n <div *ngFor=\"let eventRow of eventRows\" #eventRowContainer>\n <div\n class=\"cal-event-container\"\n #event\n *ngFor=\"let weekEvent of eventRow.row\"\n [style.width]=\"(100 / days.length) * weekEvent.span + '%'\"\n [style.marginTop.px]=\"weekEvent.top\"\n [style.height.px]=\"weekEvent.height\"\n [style.marginLeft]=\"(100 / days.length) * weekEvent.offset + '%'\"\n >\n <novo-agenda-week-event\n [weekEvent]=\"weekEvent\"\n [tooltipPosition]=\"tooltipPosition\"\n [customTemplate]=\"eventTemplate\"\n (eventClicked)=\"eventClicked.emit($event)\"\n >\n </novo-agenda-week-event>\n </div>\n </div>\n <div class=\"cal-hour\" *ngFor=\"let hour of hours\" [style.minWidth.px]=\"70\">\n <novo-agenda-day-hour-segment\n *ngFor=\"let segment of hour.segments\"\n [segment]=\"segment\"\n [locale]=\"locale\"\n [customTemplate]=\"hourSegmentTemplate\"\n (click)=\"hourSegmentClicked.emit({ date: segment.date })\"\n >\n </novo-agenda-day-hour-segment>\n </div>\n </div>\n `,\n})\nexport class NovoAgendaWeekViewElement implements OnChanges, OnInit, OnDestroy {\n /**\n * The current view date\n */\n @Input()\n viewDate: Date;\n\n /**\n * An array of events to display on view\n */\n @Input()\n events: CalendarEvent[] = [];\n\n /**\n * An array of day indexes (0 = sunday, 1 = monday etc) that will be hidden on the view\n */\n @Input()\n excludeDays: number[] = [];\n\n /**\n * An observable that when emitted on will re-render the current view\n */\n @Input()\n refresh: Subject<any>;\n\n /**\n * The locale used to format dates\n */\n @Input()\n locale: string;\n\n /**\n * The placement of the event tooltip\n */\n @Input()\n tooltipPosition: string = 'bottom';\n\n /**\n * The start number of the week\n */\n @Input()\n weekStartsOn: Day;\n\n /**\n * A custom template to use to replace the header\n */\n @Input()\n headerTemplate: TemplateRef<any>;\n\n /**\n * A custom template to use for week view events\n */\n @Input()\n eventTemplate: TemplateRef<any>;\n\n /**\n * The precision to display events.\n * `days` will round event start and end dates to the nearest day and `minutes` will not do this rounding\n */\n @Input()\n precision: 'days' | 'minutes' = 'days';\n /**\n * The number of segments in an hour. Must be <= 6\n */\n @Input()\n hourSegments: number = 2;\n\n /**\n * The day start hours in 24 hour time. Must be 0-23\n */\n @Input()\n dayStartHour: number = 0;\n\n /**\n * The day start minutes. Must be 0-59\n */\n @Input()\n dayStartMinute: number = 0;\n\n /**\n * The day end hours in 24 hour time. Must be 0-23\n */\n @Input()\n dayEndHour: number = 23;\n\n /**\n * The day end minutes. Must be 0-59\n */\n @Input()\n dayEndMinute: number = 59;\n /**\n * A custom template to use to replace the hour segment\n */\n @Input()\n hourSegmentTemplate: TemplateRef<any>;\n /**\n * Called when an hour segment is clicked\n */\n @Output()\n hourSegmentClicked: EventEmitter<{ date: Date }> = new EventEmitter<{ date: Date }>();\n /**\n * Called when a header week day is clicked\n */\n @Output()\n dayClicked: EventEmitter<{ date: Date }> = new EventEmitter<{ date: Date }>();\n\n /**\n * Called when the event title is clicked\n */\n @Output()\n eventClicked: EventEmitter<{ event: CalendarEvent }> = new EventEmitter<{ event: CalendarEvent }>();\n\n /**\n * Called when an event is resized or dragged and dropped\n */\n @Output()\n eventTimesChanged: EventEmitter<CalendarEventTimesChangedEvent> = new EventEmitter<CalendarEventTimesChangedEvent>();\n\n /**\n * @hidden\n */\n days: WeekDay[];\n /**\n * @hidden\n */\n hours: DayViewHour[] = [];\n\n /**\n * @hidden\n */\n eventRows: WeekViewEventRow[] = [];\n\n /**\n * @hidden\n */\n refreshSubscription: Subscription;\n\n /**\n * @hidden\n */\n currentResize: {\n originalOffset: number;\n originalSpan: number;\n edge: string;\n };\n\n /**\n * @hidden\n */\n validateDrag: Function;\n\n /**\n * @hidden\n */\n validateResize: Function;\n\n /**\n * @hidden\n */\n constructor(private cdr: ChangeDetectorRef, @Inject(LOCALE_ID) locale: string) {\n this.locale = locale;\n }\n\n /**\n * @hidden\n */\n ngOnInit(): void {\n if (this.refresh) {\n this.refreshSubscription = this.refresh.subscribe(() => {\n this.refreshAll();\n this.cdr.detectChanges();\n });\n }\n }\n\n /**\n * @hidden\n */\n ngOnChanges(changes: any): void {\n if (changes.viewDate || changes.excludeDays) {\n this.refreshHeader();\n }\n\n if (changes.events || changes.viewDate || changes.excludeDays) {\n this.refreshBody();\n }\n\n if (changes.viewDate || changes.dayStartHour || changes.dayStartMinute || changes.dayEndHour || changes.dayEndMinute) {\n this.refreshHourGrid();\n }\n }\n\n /**\n * @hidden\n */\n ngOnDestroy(): void {\n if (this.refreshSubscription) {\n this.refreshSubscription.unsubscribe();\n }\n }\n\n /*\n resizeStarted(weekViewContainer: HTMLElement, weekEvent: WeekViewEvent, resizeEvent: ResizeEvent): void {\n this.currentResize = {\n originalOffset: weekEvent.offset,\n originalSpan: weekEvent.span,\n edge: typeof resizeEvent.edges.left !== 'undefined' ? 'left' : 'right'\n };\n const resizeHelper: CalendarResizeHelper = new CalendarResizeHelper(weekViewContainer, this.getDayColumnWidth(weekViewContainer));\n this.validateResize = ({rectangle}) => resizeHelper.validateResize({rectangle});\n this.cdr.detectChanges();\n }\n\n resizing(weekEvent: WeekViewEvent, resizeEvent: ResizeEvent, dayWidth: number): void {\n if (resizeEvent.edges.left) {\n const diff: number = Math.round(+resizeEvent.edges.left / dayWidth);\n weekEvent.offset = this.currentResize.originalOffset + diff;\n weekEvent.span = this.currentResize.originalSpan - diff;\n } else if (resizeEvent.edges.right) {\n const diff: number = Math.round(+resizeEvent.edges.right / dayWidth);\n weekEvent.span = this.currentResize.originalSpan + diff;\n }\n }\n\n resizeEnded(weekEvent: WeekViewEvent): void {\n\n let daysDiff: number;\n if (this.currentResize.edge === 'left') {\n daysDiff = weekEvent.offset - this.currentResize.originalOffset;\n } else {\n daysDiff = weekEvent.span - this.currentResize.originalSpan;\n }\n\n weekEvent.offset = this.currentResize.originalOffset;\n weekEvent.span = this.currentResize.originalSpan;\n\n let newStart: Date = weekEvent.event.start;\n let newEnd: Date = weekEvent.event.end;\n if (this.currentResize.edge === 'left') {\n newStart = addDays(newStart, daysDiff);\n } else if (newEnd) {\n newEnd = addDays(newEnd, daysDiff);\n }\n\n this.eventTimesChanged.emit({newStart, newEnd, event: weekEvent.event});\n this.currentResize = null;\n\n }\n\n eventDragged(weekEvent: WeekViewEvent, draggedByPx: number, dayWidth: number): void {\n\n const daysDragged: number = draggedByPx / dayWidth;\n const newStart: Date = addDays(weekEvent.event.start, daysDragged);\n let newEnd: Date;\n if (weekEvent.event.end) {\n newEnd = addDays(weekEvent.event.end, daysDragged);\n }\n\n this.eventTimesChanged.emit({newStart, newEnd, event: weekEvent.event});\n\n }\n\n dragStart(weekViewContainer: HTMLElement, event: HTMLElement): void {\n const dragHelper: CalendarDragHelper = new CalendarDragHelper(weekViewContainer, event);\n this.validateDrag = ({x, y}) => !this.currentResize && dragHelper.validateDrag({x, y});\n this.cdr.detectChanges();\n }\n */\n\n getDayColumnWidth(eventRowContainer: HTMLElement): number {\n return Math.floor(eventRowContainer.offsetWidth / this.days.length);\n }\n\n private refreshHeader(): void {\n this.days = getWeekViewHeader({\n viewDate: this.viewDate,\n weekStartsOn: this.weekStartsOn,\n excluded: this.excludeDays,\n });\n }\n\n private refreshBody(): void {\n this.eventRows = getWeekView({\n events: this.events,\n viewDate: this.viewDate,\n weekStartsOn: this.weekStartsOn,\n excluded: this.excludeDays,\n hourSegments: this.hourSegments,\n segmentHeight: SEGMENT_HEIGHT,\n dayStart: {\n hour: this.dayStartHour,\n minute: this.dayStartMinute,\n },\n dayEnd: {\n hour: this.dayEndHour,\n minute: this.dayEndMinute,\n },\n // precision: this.precision\n });\n }\n\n private refreshHourGrid(): void {\n this.hours = getDayViewHourGrid({\n viewDate: this.viewDate,\n hourSegments: this.hourSegments,\n dayStart: {\n hour: this.dayStartHour,\n minute: this.dayStartMinute,\n },\n dayEnd: {\n hour: this.dayEndHour,\n minute: this.dayEndMinute,\n },\n });\n // if (this.hourSegmentModifier) {\n // this.hours.forEach(hour => {\n // hour.segments.forEach(segment => this.hourSegmentModifier(segment));\n // });\n // }\n }\n\n private refreshAll(): void {\n this.refreshHeader();\n this.refreshHourGrid();\n this.refreshBody();\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n// APP\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoPipesModule } from 'novo-elements/pipes';\nimport { NovoTooltipModule } from 'novo-elements/elements/tooltip';\n// Common Elements\nimport { NovoAgendaDateChangeElement } from './common/AgendaDateChange';\nimport { NovoEventTypeLegendElement } from './common/EventTypeLegend';\n// Day View\nimport { NovoAgendaAllDayEventElement } from './day/AgendaAllDayEvent';\nimport { NovoAgendaDayEventElement } from './day/AgendaDayEvent';\nimport { NovoAgendaDayViewElement } from './day/AgendaDayView';\nimport { NovoAgendaHourSegmentElement } from './day/AgendaHourSegment';\n// Month View\nimport { NovoAgendaMonthDayElement } from './month/AgendaMonthDay';\nimport { NovoAgendaMonthHeaderElement } from './month/AgendaMonthHeader';\nimport { NovoAgendaMonthViewElement } from './month/AgendaMonthView';\n// Week View\nimport { NovoAgendaWeekEventElement } from './week/AgendaWeekEvent';\nimport { NovoAgendaWeekHeaderElement } from './week/AgendaWeekHeader';\nimport { NovoAgendaWeekViewElement } from './week/AgendaWeekView';\n// Pipes\nimport { DayOfMonthPipe } from './pipe/DayOfMonth.pipe';\nimport { EndOfWeekDisplayPipe } from './pipe/EndOfWeekDisplayPipe.pipe';\nimport { HoursPipe } from './pipe/Hours.pipe';\nimport { MonthPipe } from './pipe/Month.pipe';\nimport { MonthDayPipe } from './pipe/MonthDay.pipe';\nimport { WeekdayPipe } from './pipe/Weekday.pipe';\nimport { YearPipe } from './pipe/Year.pipe';\n\n@NgModule({\n imports: [CommonModule, NovoButtonModule, NovoTooltipModule, NovoPipesModule],\n declarations: [\n NovoEventTypeLegendElement,\n NovoAgendaMonthViewElement,\n NovoAgendaMonthHeaderElement,\n NovoAgendaMonthDayElement,\n NovoAgendaWeekViewElement,\n NovoAgendaWeekHeaderElement,\n NovoAgendaWeekEventElement,\n NovoAgendaDayViewElement,\n NovoAgendaDayEventElement,\n NovoAgendaHourSegmentElement,\n NovoAgendaAllDayEventElement,\n NovoAgendaDateChangeElement,\n WeekdayPipe,\n DayOfMonthPipe,\n MonthPipe,\n MonthDayPipe,\n YearPipe,\n HoursPipe,\n EndOfWeekDisplayPipe,\n ],\n exports: [\n NovoEventTypeLegendElement,\n NovoAgendaMonthViewElement,\n NovoAgendaMonthHeaderElement,\n NovoAgendaMonthDayElement,\n NovoAgendaWeekViewElement,\n NovoAgendaWeekHeaderElement,\n NovoAgendaWeekEventElement,\n NovoAgendaDayViewElement,\n NovoAgendaDayEventElement,\n NovoAgendaHourSegmentElement,\n NovoAgendaAllDayEventElement,\n NovoAgendaDateChangeElement,\n WeekdayPipe,\n DayOfMonthPipe,\n MonthPipe,\n MonthDayPipe,\n YearPipe,\n HoursPipe,\n EndOfWeekDisplayPipe,\n ],\n})\nexport class NovoAgendaModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.MonthPipe","i3.YearPipe","i4.MonthDayPipe","i5.EndOfWeekDisplayPipe","i6.WeekdayPipe","i7.DayOfMonthPipe","i2","i2.HoursPipe","SEGMENT_HEIGHT","MINUTES_IN_HOUR","i1.NovoAgendaAllDayEventElement","i2.NovoAgendaDayEventElement","i3.NovoAgendaHourSegmentElement","i4","i2.DayOfMonthPipe","i3","i1","i3.MonthPipe","i4.WeekdayPipe","i1.NovoAgendaMonthHeaderElement","i2.NovoAgendaMonthDayElement","i2.WeekdayPipe","i3.MonthDayPipe","i1.NovoAgendaWeekHeaderElement","i2.NovoAgendaWeekEventElement"],"mappings":"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"}
1
+ {"version":3,"file":"novo-elements-elements-agenda.mjs","sources":["../../../projects/novo-elements/src/elements/agenda/pipe/Month.pipe.ts","../../../projects/novo-elements/src/elements/agenda/pipe/Year.pipe.ts","../../../projects/novo-elements/src/elements/agenda/pipe/MonthDay.pipe.ts","../../../projects/novo-elements/src/elements/agenda/pipe/EndOfWeekDisplayPipe.pipe.ts","../../../projects/novo-elements/src/elements/agenda/pipe/Weekday.pipe.ts","../../../projects/novo-elements/src/elements/agenda/pipe/DayOfMonth.pipe.ts","../../../projects/novo-elements/src/elements/agenda/common/AgendaDateChange.ts","../../../projects/novo-elements/src/elements/agenda/common/EventTypeLegend.ts","../../../projects/novo-elements/src/elements/agenda/day/AgendaAllDayEvent.ts","../../../projects/novo-elements/src/elements/agenda/day/AgendaDayEvent.ts","../../../projects/novo-elements/src/elements/agenda/pipe/Hours.pipe.ts","../../../projects/novo-elements/src/elements/agenda/day/AgendaHourSegment.ts","../../../projects/novo-elements/src/elements/agenda/day/AgendaDayView.ts","../../../projects/novo-elements/src/elements/agenda/month/AgendaMonthDay.ts","../../../projects/novo-elements/src/elements/agenda/month/AgendaMonthHeader.ts","../../../projects/novo-elements/src/elements/agenda/month/AgendaMonthView.ts","../../../projects/novo-elements/src/elements/agenda/week/AgendaWeekEvent.ts","../../../projects/novo-elements/src/elements/agenda/week/AgendaWeekHeader.ts","../../../projects/novo-elements/src/elements/agenda/week/AgendaWeekView.ts","../../../projects/novo-elements/src/elements/agenda/Agenda.module.ts","../../../projects/novo-elements/src/elements/agenda/novo-elements-elements-agenda.ts"],"sourcesContent":["import { Inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'month' })\nexport class MonthPipe implements PipeTransform {\n constructor(@Inject(LOCALE_ID) private locale: string = 'en-US') {}\n transform(date: Date, locale: string = this.locale, method: 'numeric' | '2-digit' | 'long' | 'short' | 'narrow' = 'long'): string {\n return new Intl.DateTimeFormat(locale, { month: method }).format(date);\n }\n}\n","import { Inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'year' })\nexport class YearPipe implements PipeTransform {\n constructor(@Inject(LOCALE_ID) private locale: string = 'en-US') {}\n transform(date: Date, locale: string = this.locale, method: 'numeric' | '2-digit' = 'numeric'): string {\n return new Intl.DateTimeFormat(locale, { year: method }).format(date);\n }\n}\n","import { Inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'monthday' })\nexport class MonthDayPipe implements PipeTransform {\n constructor(@Inject(LOCALE_ID) private locale: string = 'en-US') {}\n transform(date: Date, locale: string = this.locale, method: 'numeric' | '2-digit' | 'long' | 'short' | 'narrow' = 'short'): string {\n return new Intl.DateTimeFormat(locale, { month: method, day: 'numeric' }).format(date);\n }\n}\n","import { Inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'endofweekdisplay' })\nexport class EndOfWeekDisplayPipe implements PipeTransform {\n constructor(@Inject(LOCALE_ID) private locale: string = 'en-US') {}\n\n transform(\n endOfWeek: Date,\n startOfWeek: Date,\n locale: string = this.locale,\n method: 'numeric' | '2-digit' | 'long' | 'short' | 'narrow' = 'short',\n ): String {\n if (endOfWeek.getMonth() === startOfWeek.getMonth()) {\n return new Intl.DateTimeFormat(locale, { day: 'numeric' }).format(endOfWeek);\n }\n\n return new Intl.DateTimeFormat(locale, { month: method, day: 'numeric' }).format(endOfWeek);\n }\n}\n","import { Inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'weekday' })\nexport class WeekdayPipe implements PipeTransform {\n constructor(@Inject(LOCALE_ID) private locale: string = 'en-US') {}\n transform(date: Date, locale: string = this.locale, method: 'long' | 'short' | 'narrow' = 'short'): string {\n return new Intl.DateTimeFormat(locale, { weekday: method }).format(date);\n }\n}\n","import { Inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'dayofmonth' })\nexport class DayOfMonthPipe implements PipeTransform {\n constructor(@Inject(LOCALE_ID) private locale: string = 'en-US') {}\n transform(date: Date, locale: string = this.locale, method: 'numeric' | '2-digit' = 'numeric'): string {\n return new Intl.DateTimeFormat(locale, { day: method }).format(date);\n }\n}\n","import { Component, EventEmitter, Inject, Input, LOCALE_ID, Output } from '@angular/core';\nimport { DateUtil } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-date-change',\n template: `\n <div class=\"cal-date-change\">\n <i class=\"bhi-arrow-left\" (click)=\"subtractDate()\"></i>\n <span [ngSwitch]=\"view\">\n <span *ngSwitchCase=\"'month'\">{{ (viewDate | month: locale) + ' ' + (viewDate | year: locale) }}</span>\n <span *ngSwitchCase=\"'week'\">{{\n (startOfWeek | monthday: locale:'long') + ' - ' + (endOfWeek | endofweekdisplay: startOfWeek:locale:'long')\n }}</span>\n <span *ngSwitchCase=\"'day'\">{{\n (viewDate | weekday: locale:'long') + ', ' + (viewDate | month: locale) + ' ' + (viewDate | dayofmonth: locale)\n }}</span>\n </span>\n <i class=\"bhi-arrow-right\" (click)=\"addDate()\"></i>\n </div>\n `,\n styleUrls: ['./AgendaDateChange.scss'],\n})\nexport class NovoAgendaDateChangeElement {\n /**\n * The current view\n */\n @Input()\n view: string;\n\n /**\n * The current view date\n */\n @Input()\n viewDate: Date;\n\n @Input()\n locale: string;\n\n /**\n * Called when the view date is changed\n */\n @Output()\n viewDateChange: EventEmitter<Date> = new EventEmitter();\n\n constructor(@Inject(LOCALE_ID) locale: string) {\n this.locale = locale;\n }\n\n /**\n * @hidden\n */\n subtractDate(): void {\n this.changeDate(-1);\n }\n\n addDate(): void {\n this.changeDate(1);\n }\n\n changeDate(unit: number): void {\n const addFn: any = {\n day: DateUtil.addDays,\n week: DateUtil.addWeeks,\n month: DateUtil.addMonths,\n }[this.view];\n\n this.viewDateChange.emit(addFn(this.viewDate, unit));\n }\n\n get startOfWeek() {\n return DateUtil.startOfWeek(this.viewDate);\n }\n\n get endOfWeek() {\n return DateUtil.endOfWeek(this.viewDate);\n }\n}\n","import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { CalendarEvent } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-event-type-legend',\n template: `\n <ng-template #defaultTemplate>\n <div class=\"cal-event-legend\">\n <div\n class=\"cal-event-type\"\n *ngFor=\"let type of events | groupBy: 'type'\"\n (click)=\"$event.stopPropagation(); eventTypeClicked.emit({ event: type?.key })\"\n >\n <div class=\"cal-event-type-swatch\"></div>\n <div>{{ type?.key }}</div>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{ events: events, eventTypeClicked: eventTypeClicked }\"\n >\n </ng-template>\n `,\n})\nexport class NovoEventTypeLegendElement {\n @Input()\n events: CalendarEvent[];\n\n @Input()\n customTemplate: TemplateRef<any>;\n\n @Output()\n eventTypeClicked: EventEmitter<any> = new EventEmitter();\n}\n","import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { CalendarEvent } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-all-day-event',\n template: `\n <ng-template #defaultTemplate>\n <div class=\"cal-all-day-event\" [style.backgroundColor]=\"event.color.secondary\" [style.borderColor]=\"event.color.primary\">\n {{ event.title }}\n <!--<novo-agenda-event-title\n [event]=\"event\"\n view=\"day\"\n (click)=\"eventClicked.emit()\">\n </novo-agenda-event-title>\n <novo-agenda-event-actions [event]=\"event\"></novo-agenda-event-actions>-->\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{\n event: event,\n eventClicked: eventClicked\n }\"\n >\n </ng-template>\n `,\n})\nexport class NovoAgendaAllDayEventElement {\n @Input()\n event: CalendarEvent;\n\n @Input()\n customTemplate: TemplateRef<any>;\n\n @Output()\n eventClicked: EventEmitter<any> = new EventEmitter();\n}\n","import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { DayViewEvent } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-day-event',\n template: `\n <ng-template #defaultTemplate>\n <div\n class=\"cal-event\"\n [style.borderColor]=\"dayEvent.event.color.secondary\"\n [class.cal-starts-within-day]=\"!dayEvent.startsBeforeDay\"\n [class.cal-ends-within-day]=\"!dayEvent.endsAfterDay\"\n [ngClass]=\"dayEvent.event.cssClass\"\n [tooltip]=\"dayEvent.event.description\"\n [tooltipPosition]=\"tooltipPosition\"\n (click)=\"eventClicked.emit({ event: dayEvent.event })\"\n >\n <div class=\"cal-event-ribbon\" [style.backgroundColor]=\"dayEvent.event.color.primary\"></div>\n <div class=\"cal-event-group\">\n <div class=\"cal-event-title\">{{ dayEvent.event.title }}</div>\n <div class=\"cal-event-description\">{{ dayEvent.event?.description }}</div>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{ dayEvent: dayEvent, tooltipPosition: tooltipPosition, eventClicked: eventClicked }\"\n >\n </ng-template>\n `,\n})\nexport class NovoAgendaDayEventElement {\n @Input()\n dayEvent: DayViewEvent;\n\n @Input()\n tooltipPosition: string;\n\n @Input()\n customTemplate: TemplateRef<any>;\n\n @Output()\n eventClicked: EventEmitter<any> = new EventEmitter();\n}\n","import { Inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'hours' })\nexport class HoursPipe implements PipeTransform {\n constructor(@Inject(LOCALE_ID) private locale: string = 'en-US') {}\n transform(date: Date, locale: string = this.locale, method: 'numeric' | '2-digit' = 'numeric'): string {\n return new Intl.DateTimeFormat(locale, { hour: method }).format(date);\n }\n}\n","import { Component, Input, TemplateRef } from '@angular/core';\nimport { DayViewHourSegment } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-day-hour-segment',\n template: `\n <ng-template #defaultTemplate>\n <div\n class=\"cal-hour-segment\"\n [class.cal-hour-start]=\"segment.isStart\"\n [class.cal-after-hour-start]=\"!segment.isStart\"\n [ngClass]=\"segment.cssClass\"\n >\n <div class=\"cal-time\">\n {{ segment.date | hours: locale }}\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{\n segment: segment,\n locale: locale\n }\"\n >\n </ng-template>\n `,\n})\nexport class NovoAgendaHourSegmentElement {\n @Input()\n segment: DayViewHourSegment;\n\n @Input()\n locale: string;\n\n @Input()\n customTemplate: TemplateRef<any>;\n}\n","import {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Inject,\n Input,\n LOCALE_ID,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n} from '@angular/core';\nimport { Subject, Subscription } from 'rxjs';\nimport {\n CalendarEvent,\n CalendarEventTimesChangedEvent,\n DayView,\n DayViewHour,\n getDayView,\n getDayViewHourGrid,\n} from 'novo-elements/utils';\n\n/**\n * @hidden\n */\nconst SEGMENT_HEIGHT: number = 30;\n\n/**\n * @hidden\n */\nconst MINUTES_IN_HOUR: number = 60;\n\n/**\n * Shows all events on a given day. Example usage:\n *\n * ```typescript\n * &lt;novo-agenda-day\n * [viewDate]=\"viewDate\"\n * [events]=\"events\"&gt;\n * &lt;/novo-agenda-day&gt;\n * ```\n */\n@Component({\n selector: 'novo-agenda-day',\n template: `\n <div class=\"cal-day-view\" #dayViewContainer>\n <novo-agenda-all-day-event\n *ngFor=\"let event of view.allDayEvents\"\n [event]=\"event\"\n [customTemplate]=\"allDayEventTemplate\"\n (eventClicked)=\"eventClicked.emit({ event: event })\"\n >\n </novo-agenda-all-day-event>\n <div class=\"cal-hour-rows\">\n <div class=\"cal-events\">\n <div\n #event\n *ngFor=\"let dayEvent of view?.events\"\n class=\"cal-event-container\"\n [style.marginTop.px]=\"dayEvent.top\"\n [style.height.px]=\"dayEvent.height\"\n [style.marginLeft.px]=\"dayEvent.left + 70\"\n [style.width.px]=\"dayEvent.width - 1\"\n >\n <novo-agenda-day-event\n [dayEvent]=\"dayEvent\"\n [tooltipPosition]=\"tooltipPosition\"\n [customTemplate]=\"eventTemplate\"\n (eventClicked)=\"eventClicked.emit($event)\"\n >\n </novo-agenda-day-event>\n </div>\n </div>\n <div class=\"cal-hour\" *ngFor=\"let hour of hours\" [style.minWidth.px]=\"view?.width + 70\">\n <novo-agenda-day-hour-segment\n *ngFor=\"let segment of hour.segments\"\n [segment]=\"segment\"\n [locale]=\"locale\"\n [customTemplate]=\"hourSegmentTemplate\"\n (click)=\"hourSegmentClicked.emit({ date: segment.date })\"\n >\n </novo-agenda-day-hour-segment>\n </div>\n </div>\n </div>\n `,\n styleUrls: ['./AgendaDayView.scss', '../common/AgendaHoursLayout.scss'],\n})\nexport class NovoAgendaDayViewElement implements OnChanges, OnInit, OnDestroy {\n /**\n * The current view date\n */\n @Input()\n viewDate: Date;\n\n /**\n * An array of events to display on view\n */\n @Input()\n events: CalendarEvent[] = [];\n\n /**\n * The number of segments in an hour. Must be <= 6\n */\n @Input()\n hourSegments: number = 2;\n\n /**\n * The day start hours in 24 hour time. Must be 0-23\n */\n @Input()\n dayStartHour: number = 0;\n\n /**\n * The day start minutes. Must be 0-59\n */\n @Input()\n dayStartMinute: number = 0;\n\n /**\n * The day end hours in 24 hour time. Must be 0-23\n */\n @Input()\n dayEndHour: number = 23;\n\n /**\n * The day end minutes. Must be 0-59\n */\n @Input()\n dayEndMinute: number = 59;\n\n /**\n * The width in pixels of each event on the view\n */\n @Input()\n eventWidth: number = 150;\n\n /**\n * An observable that when emitted on will re-render the current view\n */\n @Input()\n refresh: Subject<any>;\n\n /**\n * The locale used to format dates\n */\n @Input()\n locale: string;\n\n /**\n * A function that will be called before each hour segment is called. The first argument will contain the hour segment.\n * If you add the `cssClass` property to the segment it will add that class to the hour segment in the template\n */\n @Input()\n hourSegmentModifier: Function;\n\n /**\n * The grid size to snap resizing and dragging of events to\n */\n @Input()\n eventSnapSize: number = 30;\n\n /**\n * The placement of the event tooltip\n */\n @Input()\n tooltipPosition: string = 'top';\n\n /**\n * A custom template to use to replace the hour segment\n */\n @Input()\n hourSegmentTemplate: TemplateRef<any>;\n\n /**\n * A custom template to use for all day events\n */\n @Input()\n allDayEventTemplate: TemplateRef<any>;\n\n /**\n * A custom template to use for day view events\n */\n @Input()\n eventTemplate: TemplateRef<any>;\n\n /**\n * Called when an event title is clicked\n */\n @Output()\n eventClicked: EventEmitter<{ event: CalendarEvent }> = new EventEmitter<{ event: CalendarEvent }>();\n\n /**\n * Called when an hour segment is clicked\n */\n @Output()\n hourSegmentClicked: EventEmitter<{ date: Date }> = new EventEmitter<{ date: Date }>();\n\n /**\n * Called when an event is resized or dragged and dropped\n */\n @Output()\n eventTimesChanged: EventEmitter<CalendarEventTimesChangedEvent> = new EventEmitter<CalendarEventTimesChangedEvent>();\n\n /**\n * @hidden\n */\n hours: DayViewHour[] = [];\n\n /**\n * @hidden\n */\n view: DayView;\n\n /**\n * @hidden\n */\n width: number = 0;\n\n /**\n * @hidden\n */\n refreshSubscription: Subscription;\n\n /**\n * @hidden\n */\n currentResize: {\n originalTop: number;\n originalHeight: number;\n edge: string;\n };\n\n /**\n * @hidden\n */\n validateDrag: Function;\n\n /**\n * @hidden\n */\n validateResize: Function;\n\n /**\n * @hidden\n */\n constructor(private cdr: ChangeDetectorRef, @Inject(LOCALE_ID) locale: string) {\n this.locale = locale;\n }\n\n /**\n * @hidden\n */\n ngOnInit(): void {\n if (this.refresh) {\n this.refreshSubscription = this.refresh.subscribe(() => {\n this.refreshAll();\n this.cdr.detectChanges();\n });\n }\n }\n\n /**\n * @hidden\n */\n ngOnDestroy(): void {\n if (this.refreshSubscription) {\n this.refreshSubscription.unsubscribe();\n }\n }\n\n /**\n * @hidden\n */\n ngOnChanges(changes: any): void {\n if (changes.viewDate || changes.dayStartHour || changes.dayStartMinute || changes.dayEndHour || changes.dayEndMinute) {\n this.refreshHourGrid();\n }\n\n if (\n changes.viewDate ||\n changes.events ||\n changes.dayStartHour ||\n changes.dayStartMinute ||\n changes.dayEndHour ||\n changes.dayEndMinute ||\n changes.eventWidth\n ) {\n this.refreshView();\n }\n }\n\n /*\n eventDropped(dropEvent: {dropData?: {event?: CalendarEvent}}, segment: DayViewHourSegment): void {\n if (dropEvent.dropData && dropEvent.dropData.event) {\n this.eventTimesChanged.emit({event: dropEvent.dropData.event, newStart: segment.date});\n }\n }\n\n resizeStarted(event: DayViewEvent, resizeEvent: ResizeEvent, dayViewContainer: HTMLElement): void {\n this.currentResize = {\n originalTop: event.top,\n originalHeight: event.height,\n edge: typeof resizeEvent.edges.top !== 'undefined' ? 'top' : 'bottom'\n };\n const resizeHelper: CalendarResizeHelper = new CalendarResizeHelper(dayViewContainer);\n this.validateResize = ({rectangle}) => resizeHelper.validateResize({rectangle});\n this.cdr.detectChanges();\n }\n\n resizing(event: DayViewEvent, resizeEvent: ResizeEvent): void {\n if (resizeEvent.edges.top) {\n event.top = this.currentResize.originalTop + +resizeEvent.edges.top;\n event.height = this.currentResize.originalHeight - +resizeEvent.edges.top;\n } else if (resizeEvent.edges.bottom) {\n event.height = this.currentResize.originalHeight + +resizeEvent.edges.bottom;\n }\n }\n\n resizeEnded(dayEvent: DayViewEvent): void {\n\n let pixelsMoved: number;\n if (this.currentResize.edge === 'top') {\n pixelsMoved = (dayEvent.top - this.currentResize.originalTop);\n } else {\n pixelsMoved = (dayEvent.height - this.currentResize.originalHeight);\n }\n\n dayEvent.top = this.currentResize.originalTop;\n dayEvent.height = this.currentResize.originalHeight;\n\n const pixelAmountInMinutes: number = MINUTES_IN_HOUR / (this.hourSegments * SEGMENT_HEIGHT);\n const minutesMoved: number = pixelsMoved * pixelAmountInMinutes;\n let newStart: Date = dayEvent.event.start;\n let newEnd: Date = dayEvent.event.end;\n if (this.currentResize.edge === 'top') {\n newStart = addMinutes(newStart, minutesMoved);\n } else if (newEnd) {\n newEnd = addMinutes(newEnd, minutesMoved);\n }\n\n this.eventTimesChanged.emit({newStart, newEnd, event: dayEvent.event});\n this.currentResize = null;\n\n }\n\n dragStart(event: HTMLElement, dayViewContainer: HTMLElement): void {\n const dragHelper: CalendarDragHelper = new CalendarDragHelper(dayViewContainer, event);\n this.validateDrag = ({x, y}) => !this.currentResize && dragHelper.validateDrag({x, y});\n this.cdr.detectChanges();\n }\n\n eventDragged(dayEvent: DayViewEvent, draggedInPixels: number): void {\n const pixelAmountInMinutes: number = MINUTES_IN_HOUR / (this.hourSegments * SEGMENT_HEIGHT);\n const minutesMoved: number = draggedInPixels * pixelAmountInMinutes;\n const newStart: Date = addMinutes(dayEvent.event.start, minutesMoved);\n let newEnd: Date;\n if (dayEvent.event.end) {\n newEnd = addMinutes(dayEvent.event.end, minutesMoved);\n }\n this.eventTimesChanged.emit({newStart, newEnd, event: dayEvent.event});\n }\n */\n\n private refreshHourGrid(): void {\n this.hours = getDayViewHourGrid({\n viewDate: this.viewDate,\n hourSegments: this.hourSegments,\n dayStart: {\n hour: this.dayStartHour,\n minute: this.dayStartMinute,\n },\n dayEnd: {\n hour: this.dayEndHour,\n minute: this.dayEndMinute,\n },\n });\n if (this.hourSegmentModifier) {\n this.hours.forEach((hour) => {\n hour.segments.forEach((segment) => this.hourSegmentModifier(segment));\n });\n }\n }\n\n private refreshView(): void {\n this.view = getDayView({\n events: this.events,\n viewDate: this.viewDate,\n hourSegments: this.hourSegments,\n dayStart: {\n hour: this.dayStartHour,\n minute: this.dayStartMinute,\n },\n dayEnd: {\n hour: this.dayEndHour,\n minute: this.dayEndMinute,\n },\n eventWidth: this.eventWidth,\n segmentHeight: SEGMENT_HEIGHT,\n });\n }\n\n private refreshAll(): void {\n this.refreshHourGrid();\n this.refreshView();\n }\n}\n","import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { CalendarEvent, CalendarEventResponse, MonthViewDay } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-month-day',\n template: `\n <ng-template #defaultTemplate>\n <div class=\"agenda-day-top\">\n <span class=\"agenda-day-badge\" *ngIf=\"day.badgeTotal > 0\">{{ day.badgeTotal }}</span>\n <span class=\"agenda-day-number\">{{ day.date | dayofmonth: locale }}</span>\n </div>\n <div class=\"agenda-events\">\n <div\n class=\"agenda-event\"\n *ngFor=\"let type of day.events | groupBy: 'type'\"\n [style.backgroundColor]=\"type?.value[0]?.color.primary\"\n [ngClass]=\"type?.value[0]?.cssClass\"\n (click)=\"$event.stopPropagation(); eventClicked.emit({ event: type?.value[0] })\"\n >\n {{ type?.value.length }}\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{\n day: day,\n locale: locale,\n tooltipPosition: tooltipPosition,\n eventClicked: eventClicked,\n accepted: accepted,\n rejected: rejected,\n maybes: maybes\n }\"\n >\n </ng-template>\n `,\n host: {\n '[class]': '\"agenda-cell agenda-day-cell \" + day?.cssClass',\n '[class.agenda-day-accepted]': 'accepted.length',\n '[class.agenda-day-rejected]': 'rejected.length',\n '[class.agenda-past]': 'day.isPast',\n '[class.agenda-today]': 'day.isToday',\n '[class.agenda-future]': 'day.isFuture',\n '[class.agenda-weekend]': 'day.isWeekend',\n '[class.agenda-in-month]': 'day.inMonth',\n '[class.agenda-out-month]': '!day.inMonth',\n '[class.agenda-has-events]': 'day.events.length > 0',\n '[style.backgroundColor]': 'day.backgroundColor',\n },\n})\nexport class NovoAgendaMonthDayElement {\n @Input()\n day: MonthViewDay;\n\n @Input()\n locale: string;\n\n @Input()\n tooltipPosition: string;\n\n @Input()\n customTemplate: TemplateRef<any>;\n\n @Output()\n eventClicked: EventEmitter<{ event: CalendarEvent }> = new EventEmitter<{ event: CalendarEvent }>();\n\n get accepted(): Array<CalendarEvent> {\n if (!this.day) {\n return [];\n }\n return this.day.events.filter((evt) => {\n return evt.response === CalendarEventResponse.Accepted;\n });\n }\n\n get rejected(): Array<CalendarEvent> {\n if (!this.day) {\n return [];\n }\n return this.day.events.filter((evt) => {\n return evt.response === CalendarEventResponse.Rejected;\n });\n }\n\n get maybes(): Array<CalendarEvent> {\n if (!this.day) {\n return [];\n }\n return this.day.events.filter((evt) => {\n return evt.response === CalendarEventResponse.Maybe;\n });\n }\n}\n","import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { addMonths, subMonths } from 'date-fns';\nimport { WeekDay } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-month-header',\n template: `\n <ng-template #defaultTemplate>\n <div class=\"agenda-header\">\n <div class=\"agenda-header-top\">\n <novo-button theme=\"icon\" icon=\"previous\" (click)=\"prevMonth($event)\"></novo-button>\n <div class=\"agenda-month\">{{ viewDate | month: locale }}</div>\n <novo-button theme=\"icon\" icon=\"next\" (click)=\"nextMonth($event)\"></novo-button>\n </div>\n <div class=\"agenda-weekdays\">\n <div\n class=\"agenda-weekday\"\n *ngFor=\"let day of days\"\n [class.agenda-past]=\"day.isPast\"\n [class.agenda-today]=\"day.isToday\"\n [class.agenda-future]=\"day.isFuture\"\n [class.agenda-weekend]=\"day.isWeekend\"\n >\n {{ day.date | weekday: locale }}\n </div>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{ days: days, locale: locale, viewDate: viewDate }\"\n >\n </ng-template>\n `,\n})\nexport class NovoAgendaMonthHeaderElement {\n @Input()\n viewDate: Date;\n\n @Input()\n days: WeekDay[];\n\n @Input()\n locale: string;\n\n @Input()\n customTemplate: TemplateRef<any>;\n\n /**\n * Called when the view date is changed\n */\n @Output()\n viewDateChange: EventEmitter<Date> = new EventEmitter();\n\n prevMonth(event: Event) {\n this.viewDateChange.emit(subMonths(this.viewDate, 1));\n }\n\n nextMonth(event: Event) {\n this.viewDateChange.emit(addMonths(this.viewDate, 1));\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Inject,\n Input,\n LOCALE_ID,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n} from '@angular/core';\nimport { addSeconds, differenceInSeconds, getDate, getMonth, getYear, setDate, setMonth, setYear } from 'date-fns';\nimport { Subject, Subscription } from 'rxjs';\nimport {\n CalendarEvent,\n CalendarEventTimesChangedEvent,\n getMonthView,\n getWeekViewHeader,\n MonthView,\n MonthViewDay,\n WeekDay,\n} from 'novo-elements/utils';\n\n/**\n * Shows all events on a given month. Example usage:\n *\n * ```\n * &lt;novo-agenda-month-view\n * [viewDate]=\"viewDate\"\n * [events]=\"events\"&gt;\n * &lt;/novo-agenda-month-view&gt;\n * ```\n */\n@Component({\n selector: 'novo-agenda-month',\n template: `\n <div class=\"agenda-month-view\">\n <novo-agenda-month-header\n [(viewDate)]=\"viewDate\"\n [days]=\"columnHeaders\"\n [locale]=\"locale\"\n [customTemplate]=\"headerTemplate\"\n (viewDateChange)=\"refreshAll()\"\n >\n </novo-agenda-month-header>\n <div class=\"agenda-days\">\n <div *ngFor=\"let rowIndex of view.rowOffsets\">\n <div class=\"agenda-cell-row\">\n <novo-agenda-month-day\n *ngFor=\"let day of view.days | slice: rowIndex:rowIndex + view.totalDaysVisibleInWeek\"\n [day]=\"day\"\n [locale]=\"locale\"\n [customTemplate]=\"cellTemplate\"\n (click)=\"dayClicked.emit({ day: day })\"\n (eventClicked)=\"eventClicked.emit({ day: day, event: $event.event })\"\n >\n </novo-agenda-month-day>\n </div>\n </div>\n </div>\n </div>\n `,\n styleUrls: ['./AgendaMonthView.scss'],\n})\nexport class NovoAgendaMonthViewElement implements OnChanges, OnInit, OnDestroy {\n /**\n * The current view date\n */\n @Input()\n viewDate: Date;\n\n /**\n * An array of events to display on view\n */\n @Input()\n events: CalendarEvent[] = [];\n\n /**\n * An array of day indexes (0 = sunday, 1 = monday etc) that will be hidden on the view\n */\n @Input()\n excludeDays: number[] = [];\n\n /**\n * A function that will be called before each cell is rendered. The first argument will contain the calendar cell.\n * If you add the `cssClass` property to the cell it will add that class to the cell in the template\n */\n @Input()\n dayModifier: Function;\n\n /**\n * An observable that when emitted on will re-render the current view\n */\n @Input()\n refresh: Subject<any>;\n\n /**\n * The locale used to format dates\n */\n @Input()\n locale: string = 'en-US';\n\n /**\n * The placement of the event tooltip\n */\n @Input()\n tooltipPosition: string = 'top';\n\n /**\n * The start number of the week\n */\n @Input()\n weekStartsOn: Day;\n\n /**\n * A custom template to use to replace the header\n */\n @Input()\n headerTemplate: TemplateRef<any>;\n\n /**\n * A custom template to use to replace the day cell\n */\n @Input()\n cellTemplate: TemplateRef<any>;\n\n /**\n * Called when the day cell is clicked\n */\n @Output()\n dayClicked: EventEmitter<{ day: MonthViewDay }> = new EventEmitter<{ day: MonthViewDay }>();\n\n /**\n * Called when the event title is clicked\n */\n @Output()\n eventClicked: EventEmitter<{ day: any; event: CalendarEvent }> = new EventEmitter<{ day: any; event: CalendarEvent }>();\n\n /**\n * Called when an event is dragged and dropped\n */\n @Output()\n eventTimesChanged: EventEmitter<CalendarEventTimesChangedEvent> = new EventEmitter<CalendarEventTimesChangedEvent>();\n\n @Output()\n viewDateChange: EventEmitter<Date> = new EventEmitter<Date>();\n\n /**\n * @hidden\n */\n columnHeaders: WeekDay[];\n\n /**\n * @hidden\n */\n view: MonthView;\n\n /**\n * @hidden\n */\n refreshSubscription: Subscription;\n\n /**\n * @hidden\n */\n constructor(private cdr: ChangeDetectorRef, @Inject(LOCALE_ID) locale: string) {\n this.locale = locale;\n }\n\n /**\n * @hidden\n */\n ngOnInit(): void {\n if (this.refresh) {\n this.refreshSubscription = this.refresh.subscribe(() => {\n this.refreshAll();\n this.cdr.markForCheck();\n });\n }\n }\n\n /**\n * @hidden\n */\n ngOnChanges(changes: any): void {\n if (changes.viewDate || changes.excludeDays) {\n this.refreshHeader();\n }\n if (changes.viewDate || changes.events || changes.excludeDays) {\n this.refreshBody();\n }\n }\n\n /**\n * @hidden\n */\n ngOnDestroy(): void {\n if (this.refreshSubscription) {\n this.refreshSubscription.unsubscribe();\n }\n }\n\n /**\n * @hidden\n */\n eventDropped(day: MonthViewDay, event: CalendarEvent): void {\n const year: number = getYear(day.date);\n const month: number = getMonth(day.date);\n const date: number = getDate(day.date);\n const newStart: Date = setYear(setMonth(setDate(event.start, date), month), year);\n let newEnd: Date;\n if (event.end) {\n const secondsDiff: number = differenceInSeconds(newStart, event.start);\n newEnd = addSeconds(event.end, secondsDiff);\n }\n this.eventTimesChanged.emit({ event, newStart, newEnd });\n }\n\n private refreshHeader(): void {\n this.columnHeaders = getWeekViewHeader({\n viewDate: this.viewDate,\n weekStartsOn: this.weekStartsOn,\n excluded: this.excludeDays,\n });\n }\n\n private refreshBody(): void {\n this.view = getMonthView({\n events: this.events,\n viewDate: this.viewDate,\n weekStartsOn: this.weekStartsOn,\n excluded: this.excludeDays,\n });\n if (this.dayModifier) {\n this.view.days.forEach((day) => this.dayModifier(day));\n }\n }\n\n public refreshAll(): void {\n this.refreshHeader();\n this.refreshBody();\n this.viewDateChange.emit(this.viewDate);\n }\n}\n","import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { WeekViewEvent } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-week-event',\n template: `\n <ng-template #defaultTemplate>\n <div\n class=\"cal-event\"\n [class.cal-starts-within-week]=\"!weekEvent.startsBeforeWeek\"\n [class.cal-ends-within-week]=\"!weekEvent.endsAfterWeek\"\n [ngClass]=\"weekEvent.event?.cssClass\"\n [tooltip]=\"weekEvent.event.description\"\n [tooltipPosition]=\"tooltipPosition\"\n (click)=\"eventClicked.emit({ event: weekEvent.event })\"\n >\n <div class=\"cal-event-ribbon\" [style.backgroundColor]=\"weekEvent.event.color.primary\"></div>\n <div class=\"cal-event-title\">{{ weekEvent.event?.title }}</div>\n <div class=\"cal-event-description\">{{ weekEvent.event?.description }}</div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{ weekEvent: weekEvent, tooltipPosition: tooltipPosition, eventClicked: eventClicked }\"\n >\n </ng-template>\n `,\n})\nexport class NovoAgendaWeekEventElement {\n @Input()\n weekEvent: WeekViewEvent;\n\n @Input()\n tooltipPosition: string;\n\n @Input()\n customTemplate: TemplateRef<any>;\n\n @Output()\n eventClicked: EventEmitter<any> = new EventEmitter();\n}\n","import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { CalendarEvent, WeekDay } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-agenda-week-header',\n template: `\n <ng-template #defaultTemplate>\n <div class=\"cal-day-headers\">\n <div\n class=\"cal-header\"\n *ngFor=\"let day of days\"\n [class.cal-past]=\"day.isPast\"\n [class.cal-today]=\"day.isToday\"\n [class.cal-future]=\"day.isFuture\"\n [class.cal-weekend]=\"day.isWeekend\"\n [class.cal-drag-over]=\"day.dragOver\"\n (click)=\"dayClicked.emit({ date: day.date })\"\n mwlDroppable\n (dragEnter)=\"day.dragOver = true\"\n (dragLeave)=\"day.dragOver = false\"\n (drop)=\"day.dragOver = false; eventDropped.emit({ event: $event.dropData.event, newStart: day.date })\"\n >\n <b>{{ day.date | weekday: locale:'long' }}</b\n ><br />\n <span>{{ day.date | monthday: locale }}</span>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{ days: days, locale: locale, dayClicked: dayClicked, eventDropped: eventDropped }\"\n >\n </ng-template>\n `,\n})\nexport class NovoAgendaWeekHeaderElement {\n @Input()\n days: WeekDay[];\n\n @Input()\n locale: string;\n\n @Input()\n customTemplate: TemplateRef<any>;\n\n @Output()\n dayClicked: EventEmitter<{ date: Date }> = new EventEmitter<{ date: Date }>();\n\n @Output()\n eventDropped: EventEmitter<{ event: CalendarEvent; newStart: Date }> = new EventEmitter<{ event: CalendarEvent; newStart: Date }>();\n}\n","import {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Inject,\n Input,\n LOCALE_ID,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n} from '@angular/core';\nimport { Subject, Subscription } from 'rxjs';\nimport {\n CalendarEvent,\n CalendarEventTimesChangedEvent,\n DayViewHour,\n getDayViewHourGrid,\n getWeekView,\n getWeekViewHeader,\n WeekDay,\n WeekViewEventRow,\n} from 'novo-elements/utils';\n\n/**\n * @hidden\n */\nconst SEGMENT_HEIGHT: number = 30;\n\n/**\n * @hidden\n */\nconst MINUTES_IN_HOUR: number = 60;\n/**\n * Shows all events on a given week. Example usage:\n *\n * ```typescript\n * &lt;novo-agenda-week\n * [viewDate]=\"viewDate\"\n * [events]=\"events\"&gt;\n * &lt;/novo-agenda-week&gt;\n * ```\n */\n@Component({\n selector: 'novo-agenda-week',\n template: `\n <div class=\"cal-week-view\" #weekViewContainer>\n <novo-agenda-week-header [days]=\"days\" [locale]=\"locale\" [customTemplate]=\"headerTemplate\" (dayClicked)=\"dayClicked.emit($event)\">\n </novo-agenda-week-header>\n <div *ngFor=\"let eventRow of eventRows\" #eventRowContainer>\n <div\n class=\"cal-event-container\"\n #event\n *ngFor=\"let weekEvent of eventRow.row\"\n [style.width]=\"(100 / days.length) * weekEvent.span + '%'\"\n [style.marginTop.px]=\"weekEvent.top\"\n [style.height.px]=\"weekEvent.height\"\n [style.marginLeft]=\"(100 / days.length) * weekEvent.offset + '%'\"\n >\n <novo-agenda-week-event\n [weekEvent]=\"weekEvent\"\n [tooltipPosition]=\"tooltipPosition\"\n [customTemplate]=\"eventTemplate\"\n (eventClicked)=\"eventClicked.emit($event)\"\n >\n </novo-agenda-week-event>\n </div>\n </div>\n <div class=\"cal-hour\" *ngFor=\"let hour of hours\" [style.minWidth.px]=\"70\">\n <novo-agenda-day-hour-segment\n *ngFor=\"let segment of hour.segments\"\n [segment]=\"segment\"\n [locale]=\"locale\"\n [customTemplate]=\"hourSegmentTemplate\"\n (click)=\"hourSegmentClicked.emit({ date: segment.date })\"\n >\n </novo-agenda-day-hour-segment>\n </div>\n </div>\n `,\n styleUrls: ['./AgendaWeekView.scss', '../common/AgendaHoursLayout.scss'],\n})\nexport class NovoAgendaWeekViewElement implements OnChanges, OnInit, OnDestroy {\n /**\n * The current view date\n */\n @Input()\n viewDate: Date;\n\n /**\n * An array of events to display on view\n */\n @Input()\n events: CalendarEvent[] = [];\n\n /**\n * An array of day indexes (0 = sunday, 1 = monday etc) that will be hidden on the view\n */\n @Input()\n excludeDays: number[] = [];\n\n /**\n * An observable that when emitted on will re-render the current view\n */\n @Input()\n refresh: Subject<any>;\n\n /**\n * The locale used to format dates\n */\n @Input()\n locale: string;\n\n /**\n * The placement of the event tooltip\n */\n @Input()\n tooltipPosition: string = 'bottom';\n\n /**\n * The start number of the week\n */\n @Input()\n weekStartsOn: Day;\n\n /**\n * A custom template to use to replace the header\n */\n @Input()\n headerTemplate: TemplateRef<any>;\n\n /**\n * A custom template to use for week view events\n */\n @Input()\n eventTemplate: TemplateRef<any>;\n\n /**\n * The precision to display events.\n * `days` will round event start and end dates to the nearest day and `minutes` will not do this rounding\n */\n @Input()\n precision: 'days' | 'minutes' = 'days';\n /**\n * The number of segments in an hour. Must be <= 6\n */\n @Input()\n hourSegments: number = 2;\n\n /**\n * The day start hours in 24 hour time. Must be 0-23\n */\n @Input()\n dayStartHour: number = 0;\n\n /**\n * The day start minutes. Must be 0-59\n */\n @Input()\n dayStartMinute: number = 0;\n\n /**\n * The day end hours in 24 hour time. Must be 0-23\n */\n @Input()\n dayEndHour: number = 23;\n\n /**\n * The day end minutes. Must be 0-59\n */\n @Input()\n dayEndMinute: number = 59;\n /**\n * A custom template to use to replace the hour segment\n */\n @Input()\n hourSegmentTemplate: TemplateRef<any>;\n /**\n * Called when an hour segment is clicked\n */\n @Output()\n hourSegmentClicked: EventEmitter<{ date: Date }> = new EventEmitter<{ date: Date }>();\n /**\n * Called when a header week day is clicked\n */\n @Output()\n dayClicked: EventEmitter<{ date: Date }> = new EventEmitter<{ date: Date }>();\n\n /**\n * Called when the event title is clicked\n */\n @Output()\n eventClicked: EventEmitter<{ event: CalendarEvent }> = new EventEmitter<{ event: CalendarEvent }>();\n\n /**\n * Called when an event is resized or dragged and dropped\n */\n @Output()\n eventTimesChanged: EventEmitter<CalendarEventTimesChangedEvent> = new EventEmitter<CalendarEventTimesChangedEvent>();\n\n /**\n * @hidden\n */\n days: WeekDay[];\n /**\n * @hidden\n */\n hours: DayViewHour[] = [];\n\n /**\n * @hidden\n */\n eventRows: WeekViewEventRow[] = [];\n\n /**\n * @hidden\n */\n refreshSubscription: Subscription;\n\n /**\n * @hidden\n */\n currentResize: {\n originalOffset: number;\n originalSpan: number;\n edge: string;\n };\n\n /**\n * @hidden\n */\n validateDrag: Function;\n\n /**\n * @hidden\n */\n validateResize: Function;\n\n /**\n * @hidden\n */\n constructor(private cdr: ChangeDetectorRef, @Inject(LOCALE_ID) locale: string) {\n this.locale = locale;\n }\n\n /**\n * @hidden\n */\n ngOnInit(): void {\n if (this.refresh) {\n this.refreshSubscription = this.refresh.subscribe(() => {\n this.refreshAll();\n this.cdr.detectChanges();\n });\n }\n }\n\n /**\n * @hidden\n */\n ngOnChanges(changes: any): void {\n if (changes.viewDate || changes.excludeDays) {\n this.refreshHeader();\n }\n\n if (changes.events || changes.viewDate || changes.excludeDays) {\n this.refreshBody();\n }\n\n if (changes.viewDate || changes.dayStartHour || changes.dayStartMinute || changes.dayEndHour || changes.dayEndMinute) {\n this.refreshHourGrid();\n }\n }\n\n /**\n * @hidden\n */\n ngOnDestroy(): void {\n if (this.refreshSubscription) {\n this.refreshSubscription.unsubscribe();\n }\n }\n\n /*\n resizeStarted(weekViewContainer: HTMLElement, weekEvent: WeekViewEvent, resizeEvent: ResizeEvent): void {\n this.currentResize = {\n originalOffset: weekEvent.offset,\n originalSpan: weekEvent.span,\n edge: typeof resizeEvent.edges.left !== 'undefined' ? 'left' : 'right'\n };\n const resizeHelper: CalendarResizeHelper = new CalendarResizeHelper(weekViewContainer, this.getDayColumnWidth(weekViewContainer));\n this.validateResize = ({rectangle}) => resizeHelper.validateResize({rectangle});\n this.cdr.detectChanges();\n }\n\n resizing(weekEvent: WeekViewEvent, resizeEvent: ResizeEvent, dayWidth: number): void {\n if (resizeEvent.edges.left) {\n const diff: number = Math.round(+resizeEvent.edges.left / dayWidth);\n weekEvent.offset = this.currentResize.originalOffset + diff;\n weekEvent.span = this.currentResize.originalSpan - diff;\n } else if (resizeEvent.edges.right) {\n const diff: number = Math.round(+resizeEvent.edges.right / dayWidth);\n weekEvent.span = this.currentResize.originalSpan + diff;\n }\n }\n\n resizeEnded(weekEvent: WeekViewEvent): void {\n\n let daysDiff: number;\n if (this.currentResize.edge === 'left') {\n daysDiff = weekEvent.offset - this.currentResize.originalOffset;\n } else {\n daysDiff = weekEvent.span - this.currentResize.originalSpan;\n }\n\n weekEvent.offset = this.currentResize.originalOffset;\n weekEvent.span = this.currentResize.originalSpan;\n\n let newStart: Date = weekEvent.event.start;\n let newEnd: Date = weekEvent.event.end;\n if (this.currentResize.edge === 'left') {\n newStart = addDays(newStart, daysDiff);\n } else if (newEnd) {\n newEnd = addDays(newEnd, daysDiff);\n }\n\n this.eventTimesChanged.emit({newStart, newEnd, event: weekEvent.event});\n this.currentResize = null;\n\n }\n\n eventDragged(weekEvent: WeekViewEvent, draggedByPx: number, dayWidth: number): void {\n\n const daysDragged: number = draggedByPx / dayWidth;\n const newStart: Date = addDays(weekEvent.event.start, daysDragged);\n let newEnd: Date;\n if (weekEvent.event.end) {\n newEnd = addDays(weekEvent.event.end, daysDragged);\n }\n\n this.eventTimesChanged.emit({newStart, newEnd, event: weekEvent.event});\n\n }\n\n dragStart(weekViewContainer: HTMLElement, event: HTMLElement): void {\n const dragHelper: CalendarDragHelper = new CalendarDragHelper(weekViewContainer, event);\n this.validateDrag = ({x, y}) => !this.currentResize && dragHelper.validateDrag({x, y});\n this.cdr.detectChanges();\n }\n */\n\n getDayColumnWidth(eventRowContainer: HTMLElement): number {\n return Math.floor(eventRowContainer.offsetWidth / this.days.length);\n }\n\n private refreshHeader(): void {\n this.days = getWeekViewHeader({\n viewDate: this.viewDate,\n weekStartsOn: this.weekStartsOn,\n excluded: this.excludeDays,\n });\n }\n\n private refreshBody(): void {\n this.eventRows = getWeekView({\n events: this.events,\n viewDate: this.viewDate,\n weekStartsOn: this.weekStartsOn,\n excluded: this.excludeDays,\n hourSegments: this.hourSegments,\n segmentHeight: SEGMENT_HEIGHT,\n dayStart: {\n hour: this.dayStartHour,\n minute: this.dayStartMinute,\n },\n dayEnd: {\n hour: this.dayEndHour,\n minute: this.dayEndMinute,\n },\n // precision: this.precision\n });\n }\n\n private refreshHourGrid(): void {\n this.hours = getDayViewHourGrid({\n viewDate: this.viewDate,\n hourSegments: this.hourSegments,\n dayStart: {\n hour: this.dayStartHour,\n minute: this.dayStartMinute,\n },\n dayEnd: {\n hour: this.dayEndHour,\n minute: this.dayEndMinute,\n },\n });\n // if (this.hourSegmentModifier) {\n // this.hours.forEach(hour => {\n // hour.segments.forEach(segment => this.hourSegmentModifier(segment));\n // });\n // }\n }\n\n private refreshAll(): void {\n this.refreshHeader();\n this.refreshHourGrid();\n this.refreshBody();\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n// APP\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoPipesModule } from 'novo-elements/pipes';\nimport { NovoTooltipModule } from 'novo-elements/elements/tooltip';\n// Common Elements\nimport { NovoAgendaDateChangeElement } from './common/AgendaDateChange';\nimport { NovoEventTypeLegendElement } from './common/EventTypeLegend';\n// Day View\nimport { NovoAgendaAllDayEventElement } from './day/AgendaAllDayEvent';\nimport { NovoAgendaDayEventElement } from './day/AgendaDayEvent';\nimport { NovoAgendaDayViewElement } from './day/AgendaDayView';\nimport { NovoAgendaHourSegmentElement } from './day/AgendaHourSegment';\n// Month View\nimport { NovoAgendaMonthDayElement } from './month/AgendaMonthDay';\nimport { NovoAgendaMonthHeaderElement } from './month/AgendaMonthHeader';\nimport { NovoAgendaMonthViewElement } from './month/AgendaMonthView';\n// Week View\nimport { NovoAgendaWeekEventElement } from './week/AgendaWeekEvent';\nimport { NovoAgendaWeekHeaderElement } from './week/AgendaWeekHeader';\nimport { NovoAgendaWeekViewElement } from './week/AgendaWeekView';\n// Pipes\nimport { DayOfMonthPipe } from './pipe/DayOfMonth.pipe';\nimport { EndOfWeekDisplayPipe } from './pipe/EndOfWeekDisplayPipe.pipe';\nimport { HoursPipe } from './pipe/Hours.pipe';\nimport { MonthPipe } from './pipe/Month.pipe';\nimport { MonthDayPipe } from './pipe/MonthDay.pipe';\nimport { WeekdayPipe } from './pipe/Weekday.pipe';\nimport { YearPipe } from './pipe/Year.pipe';\n\n@NgModule({\n imports: [CommonModule, NovoButtonModule, NovoTooltipModule, NovoPipesModule],\n declarations: [\n NovoEventTypeLegendElement,\n NovoAgendaMonthViewElement,\n NovoAgendaMonthHeaderElement,\n NovoAgendaMonthDayElement,\n NovoAgendaWeekViewElement,\n NovoAgendaWeekHeaderElement,\n NovoAgendaWeekEventElement,\n NovoAgendaDayViewElement,\n NovoAgendaDayEventElement,\n NovoAgendaHourSegmentElement,\n NovoAgendaAllDayEventElement,\n NovoAgendaDateChangeElement,\n WeekdayPipe,\n DayOfMonthPipe,\n MonthPipe,\n MonthDayPipe,\n YearPipe,\n HoursPipe,\n EndOfWeekDisplayPipe,\n ],\n exports: [\n NovoEventTypeLegendElement,\n NovoAgendaMonthViewElement,\n NovoAgendaMonthHeaderElement,\n NovoAgendaMonthDayElement,\n NovoAgendaWeekViewElement,\n NovoAgendaWeekHeaderElement,\n NovoAgendaWeekEventElement,\n NovoAgendaDayViewElement,\n NovoAgendaDayEventElement,\n NovoAgendaHourSegmentElement,\n NovoAgendaAllDayEventElement,\n NovoAgendaDateChangeElement,\n WeekdayPipe,\n DayOfMonthPipe,\n MonthPipe,\n MonthDayPipe,\n YearPipe,\n HoursPipe,\n EndOfWeekDisplayPipe,\n ],\n})\nexport class NovoAgendaModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.MonthPipe","i3.YearPipe","i4.MonthDayPipe","i5.EndOfWeekDisplayPipe","i6.WeekdayPipe","i7.DayOfMonthPipe","i2","i2.HoursPipe","SEGMENT_HEIGHT","MINUTES_IN_HOUR","i1.NovoAgendaAllDayEventElement","i2.NovoAgendaDayEventElement","i3.NovoAgendaHourSegmentElement","i4","i2.DayOfMonthPipe","i3","i1","i3.MonthPipe","i4.WeekdayPipe","i1.NovoAgendaMonthHeaderElement","i2.NovoAgendaMonthDayElement","i2.WeekdayPipe","i3.MonthDayPipe","i1.NovoAgendaWeekHeaderElement","i2.NovoAgendaWeekEventElement"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, Directive, Input, EventEmitter, HostBinding, Output, NgModule } from '@angular/core';
2
+ import { Component, Input, EventEmitter, HostBinding, Output, NgModule } from '@angular/core';
3
3
  import * as i1 from 'novo-elements/services';
4
4
  import { BooleanInput } from 'novo-elements/utils';
5
5
  import * as i2 from 'novo-elements/elements/loading';
@@ -41,18 +41,15 @@ class CardContentElement {
41
41
  this.condensed = false;
42
42
  }
43
43
  }
44
- CardContentElement.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CardContentElement, deps: [], target: i0.ɵɵFactoryTarget.Directive });
45
- CardContentElement.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: CardContentElement, selector: "novo-card-content, [novo-card-content], [novoCardContent]", inputs: { condensed: "condensed" }, host: { properties: { "class.condensed": "condensed" }, classAttribute: "novo-card-content" }, ngImport: i0 });
44
+ CardContentElement.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CardContentElement, deps: [], target: i0.ɵɵFactoryTarget.Component });
45
+ CardContentElement.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CardContentElement, selector: "novo-card-content, [novo-card-content], [novoCardContent]", inputs: { condensed: "condensed" }, host: { properties: { "class.condensed": "condensed" }, classAttribute: "novo-card-content" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block}:host:not(.condensed){padding:1rem}\n"] });
46
46
  __decorate([
47
47
  BooleanInput(),
48
48
  __metadata("design:type", Boolean)
49
49
  ], CardContentElement.prototype, "condensed", void 0);
50
50
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CardContentElement, decorators: [{
51
- type: Directive,
52
- args: [{
53
- selector: 'novo-card-content, [novo-card-content], [novoCardContent]',
54
- host: { class: 'novo-card-content', '[class.condensed]': 'condensed' },
55
- }]
51
+ type: Component,
52
+ args: [{ selector: 'novo-card-content, [novo-card-content], [novoCardContent]', host: { class: 'novo-card-content', '[class.condensed]': 'condensed' }, template: '<ng-content></ng-content>', styles: [":host{display:block}:host:not(.condensed){padding:1rem}\n"] }]
56
53
  }], propDecorators: { condensed: [{
57
54
  type: Input
58
55
  }] } });
@@ -71,13 +68,10 @@ CardHeaderElement.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
71
68
  <div class="novo-card-header-actions">
72
69
  <ng-content select="novo-action"></ng-content>
73
70
  </div>
74
- `, isInline: true });
71
+ `, isInline: true, styles: [":host{padding:1rem 1rem 0;display:flex;flex-direction:row;align-items:center;gap:1rem}:host[color=black]{color:#fff;background:#000000}:host[color=white]{color:#3d464d;background:#ffffff}:host[color=gray]{color:#3d464d;background:#9e9e9e}:host[color=grey]{color:#3d464d;background:#9e9e9e}:host[color=offWhite]{color:#3d464d;background:#f7f7f7}:host[color=bright]{color:#3d464d;background:#f7f7f7}:host[color=light]{color:#3d464d;background:#dbdbdb}:host[color=neutral]{color:#fff;background:#4f5361}:host[color=dark]{color:#fff;background:#3d464d}:host[color=orange]{color:#3d464d;background:#ff6900}:host[color=navigation]{color:#fff;background:#202945}:host[color=skyBlue]{color:#fff;background:#009bdf}:host[color=steel]{color:#fff;background:#5b6770}:host[color=metal]{color:#fff;background:#637893}:host[color=sand]{color:#3d464d;background:#f4f4f4}:host[color=silver]{color:#3d464d;background:#e2e2e2}:host[color=stone]{color:#3d464d;background:#bebebe}:host[color=ash]{color:#3d464d;background:#a0a0a0}:host[color=slate]{color:#fff;background:#707070}:host[color=onyx]{color:#fff;background:#526980}:host[color=charcoal]{color:#fff;background:#282828}:host[color=moonlight]{color:#fff;background:#1a242f}:host[color=midnight]{color:#fff;background:#202945}:host[color=darkness]{color:#fff;background:#161f27}:host[color=navy]{color:#fff;background:#0d2d42}:host[color=aqua]{color:#3d464d;background:#3bafda}:host[color=ocean]{color:#fff;background:#4a89dc}:host[color=mint]{color:#3d464d;background:#37bc9b}:host[color=grass]{color:#fff;background:#8cc152}:host[color=sunflower]{color:#fff;background:#f6b042}:host[color=bittersweet]{color:#fff;background:#eb6845}:host[color=grapefruit]{color:#fff;background:#da4453}:host[color=carnation]{color:#fff;background:#d770ad}:host[color=lavender]{color:#fff;background:#967adc}:host[color=mountain]{color:#fff;background:#9678b6}:host[color=info]{color:#fff;background:#4a89dc}:host[color=positive]{color:#fff;background:#4a89dc}:host[color=success]{color:#fff;background:#8cc152}:host[color=negative]{color:#fff;background:#da4453}:host[color=danger]{color:#fff;background:#da4453}:host[color=error]{color:#fff;background:#da4453}:host[color=warning]{color:#fff;background:#f6b042}:host[color=empty]{color:#3d464d;background:#cccdcc}:host[color=disabled]{color:#3d464d;background:#bebebe}:host[color=background]{color:#3d464d;background:#f7f7f7}:host[color=backgroundDark]{color:#3d464d;background:#e2e2e2}:host[color=presentation]{color:#fff;background:#5b6770}:host[color=bullhorn]{color:#3d464d;background:#ff6900}:host[color=pulse]{color:#3d464d;background:#3bafda}:host[color=company]{color:#fff;background:#3399dd}:host[color=candidate]{color:#fff;background:#44bb77}:host[color=lead]{color:#fff;background:#aa6699}:host[color=contact]{color:#fff;background:#ffaa44}:host[color=clientcontact]{color:#fff;background:#ffaa44}:host[color=opportunity]{color:#fff;background:#662255}:host[color=job]{color:#fff;background:#bb5566}:host[color=joborder]{color:#fff;background:#bb5566}:host[color=submission]{color:#3d464d;background:#a9adbb}:host[color=sendout]{color:#fff;background:#747884}:host[color=placement]{color:#fff;background:#0b344f}:host[color=note]{color:#fff;background:#747884}:host[color=contract]{color:#fff;background:#454ea0}:host[color=jobCode]{color:#fff;background:#696d79}:host[color=earnCode]{color:#fff;background:#696d79}:host[color=invoiceStatement]{color:#fff;background:#696d79}:host[color=billableCharge]{color:#fff;background:#696d79}:host[color=payableCharge]{color:#fff;background:#696d79}:host[color=user]{color:#fff;background:#696d79}:host[color=corporateUser]{color:#fff;background:#696d79}:host[color=distributionList]{color:#fff;background:#696d79}:host[color=credential]{color:#fff;background:#696d79}:host[color=person]{color:#fff;background:#696d79}:host .novo-card-header-text{flex:1 1 0px}\n"] });
75
72
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CardHeaderElement, decorators: [{
76
73
  type: Component,
77
- args: [{
78
- selector: 'novo-card-header, [novo-card-header], [novoCardHeader]',
79
- host: { class: 'novo-card-header' },
80
- template: `
74
+ args: [{ selector: 'novo-card-header, [novo-card-header], [novoCardHeader]', host: { class: 'novo-card-header' }, template: `
81
75
  <ng-content select="novo-avatar, [novo-avatar], novo-icon"></ng-content>
82
76
  <div class="novo-card-header-text">
83
77
  <ng-content select="novo-title, [novo-title], novo-text, novo-label, novo-caption"></ng-content>
@@ -86,19 +80,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
86
80
  <div class="novo-card-header-actions">
87
81
  <ng-content select="novo-action"></ng-content>
88
82
  </div>
89
- `,
90
- }]
83
+ `, styles: [":host{padding:1rem 1rem 0;display:flex;flex-direction:row;align-items:center;gap:1rem}:host[color=black]{color:#fff;background:#000000}:host[color=white]{color:#3d464d;background:#ffffff}:host[color=gray]{color:#3d464d;background:#9e9e9e}:host[color=grey]{color:#3d464d;background:#9e9e9e}:host[color=offWhite]{color:#3d464d;background:#f7f7f7}:host[color=bright]{color:#3d464d;background:#f7f7f7}:host[color=light]{color:#3d464d;background:#dbdbdb}:host[color=neutral]{color:#fff;background:#4f5361}:host[color=dark]{color:#fff;background:#3d464d}:host[color=orange]{color:#3d464d;background:#ff6900}:host[color=navigation]{color:#fff;background:#202945}:host[color=skyBlue]{color:#fff;background:#009bdf}:host[color=steel]{color:#fff;background:#5b6770}:host[color=metal]{color:#fff;background:#637893}:host[color=sand]{color:#3d464d;background:#f4f4f4}:host[color=silver]{color:#3d464d;background:#e2e2e2}:host[color=stone]{color:#3d464d;background:#bebebe}:host[color=ash]{color:#3d464d;background:#a0a0a0}:host[color=slate]{color:#fff;background:#707070}:host[color=onyx]{color:#fff;background:#526980}:host[color=charcoal]{color:#fff;background:#282828}:host[color=moonlight]{color:#fff;background:#1a242f}:host[color=midnight]{color:#fff;background:#202945}:host[color=darkness]{color:#fff;background:#161f27}:host[color=navy]{color:#fff;background:#0d2d42}:host[color=aqua]{color:#3d464d;background:#3bafda}:host[color=ocean]{color:#fff;background:#4a89dc}:host[color=mint]{color:#3d464d;background:#37bc9b}:host[color=grass]{color:#fff;background:#8cc152}:host[color=sunflower]{color:#fff;background:#f6b042}:host[color=bittersweet]{color:#fff;background:#eb6845}:host[color=grapefruit]{color:#fff;background:#da4453}:host[color=carnation]{color:#fff;background:#d770ad}:host[color=lavender]{color:#fff;background:#967adc}:host[color=mountain]{color:#fff;background:#9678b6}:host[color=info]{color:#fff;background:#4a89dc}:host[color=positive]{color:#fff;background:#4a89dc}:host[color=success]{color:#fff;background:#8cc152}:host[color=negative]{color:#fff;background:#da4453}:host[color=danger]{color:#fff;background:#da4453}:host[color=error]{color:#fff;background:#da4453}:host[color=warning]{color:#fff;background:#f6b042}:host[color=empty]{color:#3d464d;background:#cccdcc}:host[color=disabled]{color:#3d464d;background:#bebebe}:host[color=background]{color:#3d464d;background:#f7f7f7}:host[color=backgroundDark]{color:#3d464d;background:#e2e2e2}:host[color=presentation]{color:#fff;background:#5b6770}:host[color=bullhorn]{color:#3d464d;background:#ff6900}:host[color=pulse]{color:#3d464d;background:#3bafda}:host[color=company]{color:#fff;background:#3399dd}:host[color=candidate]{color:#fff;background:#44bb77}:host[color=lead]{color:#fff;background:#aa6699}:host[color=contact]{color:#fff;background:#ffaa44}:host[color=clientcontact]{color:#fff;background:#ffaa44}:host[color=opportunity]{color:#fff;background:#662255}:host[color=job]{color:#fff;background:#bb5566}:host[color=joborder]{color:#fff;background:#bb5566}:host[color=submission]{color:#3d464d;background:#a9adbb}:host[color=sendout]{color:#fff;background:#747884}:host[color=placement]{color:#fff;background:#0b344f}:host[color=note]{color:#fff;background:#747884}:host[color=contract]{color:#fff;background:#454ea0}:host[color=jobCode]{color:#fff;background:#696d79}:host[color=earnCode]{color:#fff;background:#696d79}:host[color=invoiceStatement]{color:#fff;background:#696d79}:host[color=billableCharge]{color:#fff;background:#696d79}:host[color=payableCharge]{color:#fff;background:#696d79}:host[color=user]{color:#fff;background:#696d79}:host[color=corporateUser]{color:#fff;background:#696d79}:host[color=distributionList]{color:#fff;background:#696d79}:host[color=credential]{color:#fff;background:#696d79}:host[color=person]{color:#fff;background:#696d79}:host .novo-card-header-text{flex:1 1 0px}\n"] }]
91
84
  }] });
92
85
  class CardFooterElement {
93
86
  }
94
- CardFooterElement.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CardFooterElement, deps: [], target: i0.ɵɵFactoryTarget.Directive });
95
- CardFooterElement.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: CardFooterElement, selector: "novo-card-footer, [novo-card-footer], [novoCardFooter]", host: { classAttribute: "novo-card-footer" }, ngImport: i0 });
87
+ CardFooterElement.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CardFooterElement, deps: [], target: i0.ɵɵFactoryTarget.Component });
88
+ CardFooterElement.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CardFooterElement, selector: "novo-card-footer, [novo-card-footer], [novoCardFooter]", host: { classAttribute: "novo-card-footer" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{padding:0 1rem 1rem;display:flex;flex-direction:row;align-items:center;gap:1rem}:host[color=black]{color:#fff;background:#000000}:host[color=white]{color:#3d464d;background:#ffffff}:host[color=gray]{color:#3d464d;background:#9e9e9e}:host[color=grey]{color:#3d464d;background:#9e9e9e}:host[color=offWhite]{color:#3d464d;background:#f7f7f7}:host[color=bright]{color:#3d464d;background:#f7f7f7}:host[color=light]{color:#3d464d;background:#dbdbdb}:host[color=neutral]{color:#fff;background:#4f5361}:host[color=dark]{color:#fff;background:#3d464d}:host[color=orange]{color:#3d464d;background:#ff6900}:host[color=navigation]{color:#fff;background:#202945}:host[color=skyBlue]{color:#fff;background:#009bdf}:host[color=steel]{color:#fff;background:#5b6770}:host[color=metal]{color:#fff;background:#637893}:host[color=sand]{color:#3d464d;background:#f4f4f4}:host[color=silver]{color:#3d464d;background:#e2e2e2}:host[color=stone]{color:#3d464d;background:#bebebe}:host[color=ash]{color:#3d464d;background:#a0a0a0}:host[color=slate]{color:#fff;background:#707070}:host[color=onyx]{color:#fff;background:#526980}:host[color=charcoal]{color:#fff;background:#282828}:host[color=moonlight]{color:#fff;background:#1a242f}:host[color=midnight]{color:#fff;background:#202945}:host[color=darkness]{color:#fff;background:#161f27}:host[color=navy]{color:#fff;background:#0d2d42}:host[color=aqua]{color:#3d464d;background:#3bafda}:host[color=ocean]{color:#fff;background:#4a89dc}:host[color=mint]{color:#3d464d;background:#37bc9b}:host[color=grass]{color:#fff;background:#8cc152}:host[color=sunflower]{color:#fff;background:#f6b042}:host[color=bittersweet]{color:#fff;background:#eb6845}:host[color=grapefruit]{color:#fff;background:#da4453}:host[color=carnation]{color:#fff;background:#d770ad}:host[color=lavender]{color:#fff;background:#967adc}:host[color=mountain]{color:#fff;background:#9678b6}:host[color=info]{color:#fff;background:#4a89dc}:host[color=positive]{color:#fff;background:#4a89dc}:host[color=success]{color:#fff;background:#8cc152}:host[color=negative]{color:#fff;background:#da4453}:host[color=danger]{color:#fff;background:#da4453}:host[color=error]{color:#fff;background:#da4453}:host[color=warning]{color:#fff;background:#f6b042}:host[color=empty]{color:#3d464d;background:#cccdcc}:host[color=disabled]{color:#3d464d;background:#bebebe}:host[color=background]{color:#3d464d;background:#f7f7f7}:host[color=backgroundDark]{color:#3d464d;background:#e2e2e2}:host[color=presentation]{color:#fff;background:#5b6770}:host[color=bullhorn]{color:#3d464d;background:#ff6900}:host[color=pulse]{color:#3d464d;background:#3bafda}:host[color=company]{color:#fff;background:#3399dd}:host[color=candidate]{color:#fff;background:#44bb77}:host[color=lead]{color:#fff;background:#aa6699}:host[color=contact]{color:#fff;background:#ffaa44}:host[color=clientcontact]{color:#fff;background:#ffaa44}:host[color=opportunity]{color:#fff;background:#662255}:host[color=job]{color:#fff;background:#bb5566}:host[color=joborder]{color:#fff;background:#bb5566}:host[color=submission]{color:#3d464d;background:#a9adbb}:host[color=sendout]{color:#fff;background:#747884}:host[color=placement]{color:#fff;background:#0b344f}:host[color=note]{color:#fff;background:#747884}:host[color=contract]{color:#fff;background:#454ea0}:host[color=jobCode]{color:#fff;background:#696d79}:host[color=earnCode]{color:#fff;background:#696d79}:host[color=invoiceStatement]{color:#fff;background:#696d79}:host[color=billableCharge]{color:#fff;background:#696d79}:host[color=payableCharge]{color:#fff;background:#696d79}:host[color=user]{color:#fff;background:#696d79}:host[color=corporateUser]{color:#fff;background:#696d79}:host[color=distributionList]{color:#fff;background:#696d79}:host[color=credential]{color:#fff;background:#696d79}:host[color=person]{color:#fff;background:#696d79}\n"] });
96
89
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CardFooterElement, decorators: [{
97
- type: Directive,
98
- args: [{
99
- selector: 'novo-card-footer, [novo-card-footer], [novoCardFooter]',
100
- host: { class: 'novo-card-footer' },
101
- }]
90
+ type: Component,
91
+ args: [{ selector: 'novo-card-footer, [novo-card-footer], [novoCardFooter]', host: { class: 'novo-card-footer' }, template: '<ng-content></ng-content>', styles: [":host{padding:0 1rem 1rem;display:flex;flex-direction:row;align-items:center;gap:1rem}:host[color=black]{color:#fff;background:#000000}:host[color=white]{color:#3d464d;background:#ffffff}:host[color=gray]{color:#3d464d;background:#9e9e9e}:host[color=grey]{color:#3d464d;background:#9e9e9e}:host[color=offWhite]{color:#3d464d;background:#f7f7f7}:host[color=bright]{color:#3d464d;background:#f7f7f7}:host[color=light]{color:#3d464d;background:#dbdbdb}:host[color=neutral]{color:#fff;background:#4f5361}:host[color=dark]{color:#fff;background:#3d464d}:host[color=orange]{color:#3d464d;background:#ff6900}:host[color=navigation]{color:#fff;background:#202945}:host[color=skyBlue]{color:#fff;background:#009bdf}:host[color=steel]{color:#fff;background:#5b6770}:host[color=metal]{color:#fff;background:#637893}:host[color=sand]{color:#3d464d;background:#f4f4f4}:host[color=silver]{color:#3d464d;background:#e2e2e2}:host[color=stone]{color:#3d464d;background:#bebebe}:host[color=ash]{color:#3d464d;background:#a0a0a0}:host[color=slate]{color:#fff;background:#707070}:host[color=onyx]{color:#fff;background:#526980}:host[color=charcoal]{color:#fff;background:#282828}:host[color=moonlight]{color:#fff;background:#1a242f}:host[color=midnight]{color:#fff;background:#202945}:host[color=darkness]{color:#fff;background:#161f27}:host[color=navy]{color:#fff;background:#0d2d42}:host[color=aqua]{color:#3d464d;background:#3bafda}:host[color=ocean]{color:#fff;background:#4a89dc}:host[color=mint]{color:#3d464d;background:#37bc9b}:host[color=grass]{color:#fff;background:#8cc152}:host[color=sunflower]{color:#fff;background:#f6b042}:host[color=bittersweet]{color:#fff;background:#eb6845}:host[color=grapefruit]{color:#fff;background:#da4453}:host[color=carnation]{color:#fff;background:#d770ad}:host[color=lavender]{color:#fff;background:#967adc}:host[color=mountain]{color:#fff;background:#9678b6}:host[color=info]{color:#fff;background:#4a89dc}:host[color=positive]{color:#fff;background:#4a89dc}:host[color=success]{color:#fff;background:#8cc152}:host[color=negative]{color:#fff;background:#da4453}:host[color=danger]{color:#fff;background:#da4453}:host[color=error]{color:#fff;background:#da4453}:host[color=warning]{color:#fff;background:#f6b042}:host[color=empty]{color:#3d464d;background:#cccdcc}:host[color=disabled]{color:#3d464d;background:#bebebe}:host[color=background]{color:#3d464d;background:#f7f7f7}:host[color=backgroundDark]{color:#3d464d;background:#e2e2e2}:host[color=presentation]{color:#fff;background:#5b6770}:host[color=bullhorn]{color:#3d464d;background:#ff6900}:host[color=pulse]{color:#3d464d;background:#3bafda}:host[color=company]{color:#fff;background:#3399dd}:host[color=candidate]{color:#fff;background:#44bb77}:host[color=lead]{color:#fff;background:#aa6699}:host[color=contact]{color:#fff;background:#ffaa44}:host[color=clientcontact]{color:#fff;background:#ffaa44}:host[color=opportunity]{color:#fff;background:#662255}:host[color=job]{color:#fff;background:#bb5566}:host[color=joborder]{color:#fff;background:#bb5566}:host[color=submission]{color:#3d464d;background:#a9adbb}:host[color=sendout]{color:#fff;background:#747884}:host[color=placement]{color:#fff;background:#0b344f}:host[color=note]{color:#fff;background:#747884}:host[color=contract]{color:#fff;background:#454ea0}:host[color=jobCode]{color:#fff;background:#696d79}:host[color=earnCode]{color:#fff;background:#696d79}:host[color=invoiceStatement]{color:#fff;background:#696d79}:host[color=billableCharge]{color:#fff;background:#696d79}:host[color=payableCharge]{color:#fff;background:#696d79}:host[color=user]{color:#fff;background:#696d79}:host[color=corporateUser]{color:#fff;background:#696d79}:host[color=distributionList]{color:#fff;background:#696d79}:host[color=credential]{color:#fff;background:#696d79}:host[color=person]{color:#fff;background:#696d79}\n"] }]
102
92
  }] });
103
93
  class CardElement {
104
94
  constructor(labels) {
@@ -202,21 +192,18 @@ CardElement.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
202
192
  *ngIf="!(loading || config.loading) && !(message || config.message)"
203
193
  select="footer,novo-card-footer,[novo-card-footer],[novoCardFooter]"
204
194
  ></ng-content>
205
- `, isInline: true, components: [{ type: i2.NovoLoadingElement, selector: "novo-loading", inputs: ["theme", "color", "size"] }, { type: i3.NovoIconComponent, selector: "novo-icon", inputs: ["raised", "theme", "shape", "color", "size", "smaller", "larger", "alt", "name"] }, { type: i4.NovoButtonElement, selector: "novo-button,button[theme]", inputs: ["color", "side", "size", "theme", "loading", "icon", "disabled"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.TooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "tooltipPosition", "tooltipType", "tooltipSize", "tooltipBounce", "tooltipNoAnimate", "tooltipRounded", "tooltipAlways", "tooltipActive", "tooltipPreline", "removeTooltipArrow", "tooltipAutoPosition", "tooltipIsHTML"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
195
+ `, isInline: true, styles: [":host{display:flex;flex-flow:column;background-color:#fff;background-color:var(--background-bright, #ffffff);box-shadow:0 -1px 3px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border-radius:.4em;position:relative;overflow-x:hidden}:host.loading{min-height:200px}:host div.card-loading-container{position:absolute;top:43px;left:0;right:0;bottom:0;border-radius:.4em;background-color:#fff;background-color:var(--background-bright, #ffffff);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:1}:host header{display:flex;flex-flow:row nowrap;align-items:center;justify-content:space-between;padding:.5em}:host header .title{display:flex;align-items:center;min-width:0;flex:1}:host header .title ::ng-deep i.bhi-move{color:#dbdbdb;margin-right:.3em;cursor:pointer}:host header .title h1,:host header .title h2,:host header .title h3{font-size:1.6rem;font-weight:500;line-height:1.5;color:#3d464d;color:var(--text-main, #3d464d);width:100%;padding:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host header .title h1 i,:host header .title h2 i,:host header .title h3 i{font-size:1.2em}:host header .title h1 i.bhi-info,:host header .title h2 i.bhi-info,:host header .title h3 i.bhi-info{color:#dbdbdb}:host header .actions{color:#5f6d78;white-space:nowrap}:host p.card-message{padding:20px 0;max-width:inherit;text-align:center;line-height:25px;color:#b8b8b8}:host p.card-message i{display:block;font-size:24px;margin:0 0 .5em;color:#d1d1d1}:host footer{display:flex;justify-content:center}:host.novo-card-inline{display:inline-flex;justify-self:start;align-self:start}:host.novo-card-inset-none{padding:0}:host.novo-card-inset-small{padding:.5rem}:host.novo-card-inset-medium{padding:1rem}:host.novo-card-inset-large{padding:1.25rem}:host ::ng-deep .novo-card-header+.novo-card-content.condensed,:host ::ng-deep .novo-card-header+:not(.novo-card-content){margin-top:.5rem}:host ::ng-deep [novo-card-image]{width:100%;margin:1rem 0}\n"], components: [{ type: i2.NovoLoadingElement, selector: "novo-loading", inputs: ["theme", "color", "size"] }, { type: i3.NovoIconComponent, selector: "novo-icon", inputs: ["raised", "theme", "shape", "color", "size", "smaller", "larger", "alt", "name"] }, { type: i4.NovoButtonElement, selector: "novo-button,button[theme]", inputs: ["color", "side", "size", "theme", "loading", "icon", "disabled"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.TooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "tooltipPosition", "tooltipType", "tooltipSize", "tooltipBounce", "tooltipNoAnimate", "tooltipRounded", "tooltipAlways", "tooltipActive", "tooltipPreline", "removeTooltipArrow", "tooltipAutoPosition", "tooltipIsHTML"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
206
196
  __decorate([
207
197
  BooleanInput(),
208
198
  __metadata("design:type", Boolean)
209
199
  ], CardElement.prototype, "inline", void 0);
210
200
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CardElement, decorators: [{
211
201
  type: Component,
212
- args: [{
213
- selector: 'novo-card',
214
- host: {
202
+ args: [{ selector: 'novo-card', host: {
215
203
  class: 'novo-card',
216
204
  '[attr.data-automation-id]': 'cardAutomationId',
217
205
  '[class.loading]': 'loading || config.loading',
218
- },
219
- template: `
206
+ }, template: `
220
207
  <!--Loading-->
221
208
  <div class="card-loading-container" *ngIf="loading || config.loading">
222
209
  <novo-loading theme="line" [attr.data-automation-id]="cardAutomationId + '-loading'"></novo-loading>
@@ -277,8 +264,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
277
264
  *ngIf="!(loading || config.loading) && !(message || config.message)"
278
265
  select="footer,novo-card-footer,[novo-card-footer],[novoCardFooter]"
279
266
  ></ng-content>
280
- `,
281
- }]
267
+ `, styles: [":host{display:flex;flex-flow:column;background-color:#fff;background-color:var(--background-bright, #ffffff);box-shadow:0 -1px 3px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border-radius:.4em;position:relative;overflow-x:hidden}:host.loading{min-height:200px}:host div.card-loading-container{position:absolute;top:43px;left:0;right:0;bottom:0;border-radius:.4em;background-color:#fff;background-color:var(--background-bright, #ffffff);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:1}:host header{display:flex;flex-flow:row nowrap;align-items:center;justify-content:space-between;padding:.5em}:host header .title{display:flex;align-items:center;min-width:0;flex:1}:host header .title ::ng-deep i.bhi-move{color:#dbdbdb;margin-right:.3em;cursor:pointer}:host header .title h1,:host header .title h2,:host header .title h3{font-size:1.6rem;font-weight:500;line-height:1.5;color:#3d464d;color:var(--text-main, #3d464d);width:100%;padding:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host header .title h1 i,:host header .title h2 i,:host header .title h3 i{font-size:1.2em}:host header .title h1 i.bhi-info,:host header .title h2 i.bhi-info,:host header .title h3 i.bhi-info{color:#dbdbdb}:host header .actions{color:#5f6d78;white-space:nowrap}:host p.card-message{padding:20px 0;max-width:inherit;text-align:center;line-height:25px;color:#b8b8b8}:host p.card-message i{display:block;font-size:24px;margin:0 0 .5em;color:#d1d1d1}:host footer{display:flex;justify-content:center}:host.novo-card-inline{display:inline-flex;justify-self:start;align-self:start}:host.novo-card-inset-none{padding:0}:host.novo-card-inset-small{padding:.5rem}:host.novo-card-inset-medium{padding:1rem}:host.novo-card-inset-large{padding:1.25rem}:host ::ng-deep .novo-card-header+.novo-card-content.condensed,:host ::ng-deep .novo-card-header+:not(.novo-card-content){margin-top:.5rem}:host ::ng-deep [novo-card-image]{width:100%;margin:1rem 0}\n"] }]
282
268
  }], ctorParameters: function () { return [{ type: i1.NovoLabelService }]; }, propDecorators: { padding: [{
283
269
  type: Input
284
270
  }], config: [{