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-date-time-picker.mjs","sources":["../../../projects/novo-elements/src/elements/date-time-picker/DateTimePicker.ts","../../../projects/novo-elements/src/elements/date-time-picker/DateTimePickerInput.ts","../../../projects/novo-elements/src/elements/date-time-picker/DateTimePicker.module.ts","../../../projects/novo-elements/src/elements/date-time-picker/novo-elements-elements-date-time-picker.ts"],"sourcesContent":["// NG2\nimport { animate, state, style, transition, trigger } from '@angular/animations';\nimport { Component, ElementRef, EventEmitter, forwardRef, Input, Output } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n// Vendor\nimport { getHours, getMilliseconds, getMinutes, getSeconds, setHours, setMilliseconds, setMinutes, setSeconds } from 'date-fns';\n// APP\nimport { NovoLabelService } from 'novo-elements/services';\nimport { Helpers } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst DATE_TIME_PICKER_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoDateTimePickerElement),\n multi: true,\n};\n\n@Component({\n selector: 'novo-date-time-picker',\n providers: [DATE_TIME_PICKER_VALUE_ACCESSOR],\n animations: [\n trigger('dateTextState', [\n state(\n 'date',\n style({\n opacity: '1.0',\n }),\n ),\n state(\n 'time',\n style({\n opacity: '0.6',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n trigger('timeTextState', [\n state(\n 'date',\n style({\n opacity: '0.6',\n }),\n ),\n state(\n 'time',\n style({\n opacity: '1.0',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n trigger('indicatorState', [\n state(\n 'date',\n style({\n transform: 'translateX(0%)',\n }),\n ),\n state(\n 'time',\n style({\n transform: 'translateX(100%)',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n trigger('containerState', [\n state(\n 'date',\n style({\n transform: 'translateX(0%)',\n }),\n ),\n state(\n 'time',\n style({\n transform: 'translateX(-100%)',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n ],\n template: `\n <div class=\"date-time-container\">\n <div class=\"date-time-tabs\">\n <span\n class=\"date-tab\"\n (click)=\"toggleView('date')\"\n [@dateTextState]=\"componentTabState\"\n data-automation-id=\"novo-date-time-date-tab\"\n >{{ selectedLabel }}</span\n >\n <span\n class=\"time-tab\"\n (click)=\"toggleView('time')\"\n [@timeTextState]=\"componentTabState\"\n data-automation-id=\"novo-date-time-time-tab\"\n >\n <span class=\"hours\" data-automation-id=\"novo-time-picker-hours\">{{ hours }}</span\n >:<span class=\"minutes\" data-automation-id=\"novo-time-picker-minutes\">{{ minutes }}</span>\n <span *ngIf=\"!military\" class=\"meridian\"> {{ meridian }}</span>\n </span>\n <i class=\"date-time-indicator\" [@indicatorState]=\"componentTabState\"></i>\n </div>\n <div class=\"view-container\" [@containerState]=\"componentTabState\">\n <div class=\"calendar\">\n <novo-date-picker\n (onSelect)=\"onDateSelected($event)\"\n [(ngModel)]=\"model\"\n inline=\"true\"\n [minYear]=\"minYear\"\n [maxYear]=\"maxYear\"\n [start]=\"start\"\n [end]=\"end\"\n [disabledDateMessage]=\"disabledDateMessage\"\n [weekStart]=\"weekStart\"\n ></novo-date-picker>\n </div>\n <div class=\"time-picker\">\n <novo-time-picker (onSelect)=\"onTimeSelected($event)\" [(ngModel)]=\"model\" (ngModelChange)=\"onModelChange($event)\" [military]=\"military\" inline=\"true\"></novo-time-picker>\n </div>\n </div>\n </div>\n `,\n})\nexport class NovoDateTimePickerElement implements ControlValueAccessor {\n @Input()\n defaultTime: string;\n @Input()\n minYear: any;\n @Input()\n maxYear: any;\n @Input()\n start: any;\n @Input()\n end: any;\n @Input()\n military: any;\n @Input()\n weekStart: number = 0;\n @Input()\n disabledDateMessage: string;\n // Select callback for output\n @Output()\n onSelect: EventEmitter<any> = new EventEmitter(false);\n\n componentTabState: string = 'date';\n selectedLabel: string;\n hours: string;\n minutes: string;\n meridian: string;\n datePickerValue: Date = new Date();\n timePickerValue: Date = new Date();\n\n model: any;\n _onChange: Function = () => {};\n _onTouched: Function = () => {};\n\n constructor(public labels: NovoLabelService, private element: ElementRef) {}\n\n toggleView(tab: string): void {\n this.componentTabState = tab;\n }\n\n onModelChange(event) {\n this.model = this.createFullDateValue(this.datePickerValue, event);\n }\n\n setDateLabels(value: Date) {\n this.selectedLabel = this.labels.formatDateWithFormat(value, {\n month: 'short',\n day: '2-digit',\n year: 'numeric',\n });\n }\n\n setTimeLabels(value: Date) {\n let hours = value.getHours();\n const minutes = value.getMinutes();\n\n this.meridian = value.toLocaleTimeString().slice(-2);\n\n if (!this.military) {\n hours = this.meridian === 'PM' && hours > 12 ? hours - 12 : hours;\n\n // Special case for 12\n if (this.meridian === 'PM' && hours === 24) {\n hours = 12;\n } else if (this.meridian === 'AM' && hours === 0) {\n hours = 12;\n }\n }\n\n this.hours = hours.toString();\n this.minutes = minutes.toString().length === 1 ? `0${minutes.toString()}` : minutes.toString();\n }\n\n onDateSelected(event: { month?: any; year?: any; day?: any; date?: Date }) {\n this.datePickerValue = event.date;\n if (this.defaultTime === 'start') {\n this.timePickerValue = new Date(this.timePickerValue.setHours(0, 0, 0));\n } else if (this.defaultTime === 'end') {\n this.timePickerValue = new Date(this.timePickerValue.setHours(23, 59, 59));\n }\n this.model = this.createFullDateValue(this.datePickerValue, this.timePickerValue);\n this.setDateLabels(this.model);\n this.onSelect.emit({ date: this.model });\n this._onChange(this.model);\n this.toggleView('time');\n }\n\n onTimeSelected(event: { hours?: number; minutes?: number; meridian?: string; date?: Date; text?: string }) {\n this.timePickerValue = event.date;\n this.model = this.createFullDateValue(this.model, this.timePickerValue);\n this.setTimeLabels(this.model);\n this.onSelect.emit({ date: this.model });\n this._onChange(this.model);\n }\n\n createFullDateValue(datePickerValue: Date, timePickerValue: Date) {\n return setMilliseconds(\n setSeconds(\n setMinutes(setHours(datePickerValue, getHours(timePickerValue)), getMinutes(timePickerValue)),\n getSeconds(timePickerValue),\n ),\n getMilliseconds(timePickerValue),\n );\n }\n\n // ValueAccessor Functions\n writeValue(model: any): void {\n this.model = model;\n if (Helpers.isEmpty(model)) {\n this.model = new Date();\n } else if (!isNaN(model)) {\n this.model = new Date(model);\n }\n this.datePickerValue = this.model;\n this.timePickerValue = this.model;\n if (Helpers.isDate(this.model)) {\n this.setDateLabels(this.datePickerValue);\n this.setTimeLabels(this.timePickerValue);\n }\n }\n\n registerOnChange(fn: Function): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this._onTouched = fn;\n }\n}\n","// NG\nimport { ChangeDetectorRef, Component, ElementRef, EventEmitter, forwardRef, Input, Output } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n// Vendor\nimport { isDate } from 'date-fns';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { DateUtil, Helpers } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst DATE_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoDateTimePickerInputElement),\n multi: true,\n};\n\n@Component({\n selector: 'novo-date-time-picker-input',\n providers: [DATE_VALUE_ACCESSOR],\n template: `\n <novo-date-picker-input\n [ngModel]=\"datePart\"\n (ngModelChange)=\"updateDate($event)\"\n [start]=\"start\"\n [end]=\"end\"\n [disabledDateMessage]=\"disabledDateMessage\"\n [maskOptions]=\"maskOptions\"\n (blurEvent)=\"handleBlur($event)\"\n (focusEvent)=\"handleFocus($event)\"\n [disabled]=\"disabled\"\n [weekStart]=\"weekStart\"\n ></novo-date-picker-input>\n <novo-time-picker-input\n [ngModel]=\"timePart\"\n (ngModelChange)=\"updateTime($event)\"\n [military]=\"military\"\n (blurEvent)=\"handleBlur($event)\"\n (focusEvent)=\"handleFocus($event)\"\n [disabled]=\"disabled\"\n ></novo-time-picker-input>\n `,\n})\nexport class NovoDateTimePickerInputElement implements ControlValueAccessor {\n public value: any;\n public datePart: any;\n public timePart: any;\n\n /** View -> model callback called when value changes */\n _onChange: (value: any) => void = () => {};\n\n /** View -> model callback called when autocomplete has been touched */\n _onTouched = () => {};\n\n @Input()\n name: string;\n @Input()\n start: Date;\n @Input()\n end: Date;\n @Input()\n placeholder: string;\n @Input()\n maskOptions: any;\n @Input()\n military: boolean = false;\n @Input()\n disabled: boolean = false;\n @Input()\n format: string;\n @Input()\n weekStart: number = 0;\n @Input()\n disabledDateMessage: string;\n @Output()\n blurEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n @Output()\n focusEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n @Output()\n changeEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n\n constructor(public element: ElementRef, public labels: NovoLabelService, private _changeDetectorRef: ChangeDetectorRef) {}\n\n writeValue(value: any): void {\n this.datePart = isDate(value) ? DateUtil.parse(value) : value;\n this.timePart = isDate(value) ? DateUtil.parse(value) : value;\n Promise.resolve(null).then(() => this._setTriggerValue(value));\n }\n updateDate(event) {\n this.datePart = event;\n this.checkParts();\n }\n updateTime(event) {\n this.timePart = event;\n this.checkParts();\n }\n\n handleBlur(event) {\n this.blurEvent.emit(event);\n this.changeEvent.emit(event);\n }\n\n handleFocus(event) {\n this.focusEvent.emit(event);\n }\n\n checkParts() {\n try {\n if (this.datePart instanceof Date && this.timePart instanceof Date) {\n this.dispatchOnChange(\n new Date(\n this.datePart.getFullYear(),\n this.datePart.getMonth(),\n this.datePart.getDate(),\n this.timePart.getHours(),\n this.timePart.getMinutes(),\n ),\n );\n } else if (this.datePart instanceof Date) {\n this.timePart = new Date(this.datePart.getFullYear(), this.datePart.getMonth(), this.datePart.getDate(), 12, 0);\n this.dispatchOnChange(\n new Date(\n this.datePart.getFullYear(),\n this.datePart.getMonth(),\n this.datePart.getDate(),\n this.timePart.getHours(),\n this.timePart.getMinutes(),\n ),\n );\n } else {\n this.dispatchOnChange(null);\n }\n } catch (err) {\n // Date not valid\n this.dispatchOnChange(null);\n }\n }\n\n registerOnChange(fn: (value: any) => {}): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: () => {}) {\n this._onTouched = fn;\n }\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n }\n\n public dispatchOnChange(newValue?: any) {\n if (newValue !== this.value) {\n this._onChange(newValue);\n this._setTriggerValue(newValue);\n }\n }\n private _setTriggerValue(value: any): void {\n this.value = value;\n this._changeDetectorRef.markForCheck();\n }\n\n public setValue(event: any | null): void {\n if (event && event.date) {\n this.dispatchOnChange(event.date);\n }\n }\n\n public setValueAndClose(event: any | null): void {\n this.setValue(event);\n }\n\n /**\n * Clear any previous selected option and emit a selection change event for this option\n */\n public clearValue() {\n this.dispatchOnChange(null);\n }\n\n public get hasValue() {\n return !Helpers.isEmpty(this.value);\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n// Vendor\nimport { IMaskDirectiveModule } from 'angular-imask';\nimport { TextMaskModule } from 'angular2-text-mask';\n// APP\nimport { NovoOverlayModule } from 'novo-elements/elements/common';\nimport { NovoDatePickerModule } from 'novo-elements/elements/date-picker';\nimport { NovoTimePickerModule } from 'novo-elements/elements/time-picker';\nimport { NovoDateTimePickerElement } from './DateTimePicker';\nimport { NovoDateTimePickerInputElement } from './DateTimePickerInput';\n\n@NgModule({\n imports: [CommonModule, FormsModule, NovoDatePickerModule, NovoTimePickerModule, IMaskDirectiveModule, TextMaskModule, NovoOverlayModule],\n declarations: [NovoDateTimePickerElement, NovoDateTimePickerInputElement],\n exports: [NovoDateTimePickerElement, NovoDateTimePickerInputElement],\n})\nexport class NovoDateTimePickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4"],"mappings":"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"}
1
+ {"version":3,"file":"novo-elements-elements-date-time-picker.mjs","sources":["../../../projects/novo-elements/src/elements/date-time-picker/DateTimePicker.ts","../../../projects/novo-elements/src/elements/date-time-picker/DateTimePickerInput.ts","../../../projects/novo-elements/src/elements/date-time-picker/DateTimePicker.module.ts","../../../projects/novo-elements/src/elements/date-time-picker/novo-elements-elements-date-time-picker.ts"],"sourcesContent":["// NG2\nimport { animate, state, style, transition, trigger } from '@angular/animations';\nimport { Component, ElementRef, EventEmitter, forwardRef, Input, Output } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n// Vendor\nimport { getHours, getMilliseconds, getMinutes, getSeconds, setHours, setMilliseconds, setMinutes, setSeconds } from 'date-fns';\n// APP\nimport { NovoLabelService } from 'novo-elements/services';\nimport { Helpers } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst DATE_TIME_PICKER_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoDateTimePickerElement),\n multi: true,\n};\n\n@Component({\n selector: 'novo-date-time-picker',\n providers: [DATE_TIME_PICKER_VALUE_ACCESSOR],\n animations: [\n trigger('dateTextState', [\n state(\n 'date',\n style({\n opacity: '1.0',\n }),\n ),\n state(\n 'time',\n style({\n opacity: '0.6',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n trigger('timeTextState', [\n state(\n 'date',\n style({\n opacity: '0.6',\n }),\n ),\n state(\n 'time',\n style({\n opacity: '1.0',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n trigger('indicatorState', [\n state(\n 'date',\n style({\n transform: 'translateX(0%)',\n }),\n ),\n state(\n 'time',\n style({\n transform: 'translateX(100%)',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n trigger('containerState', [\n state(\n 'date',\n style({\n transform: 'translateX(0%)',\n }),\n ),\n state(\n 'time',\n style({\n transform: 'translateX(-100%)',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n ],\n template: `\n <div class=\"date-time-container\">\n <div class=\"date-time-tabs\">\n <span\n class=\"date-tab\"\n (click)=\"toggleView('date')\"\n [@dateTextState]=\"componentTabState\"\n data-automation-id=\"novo-date-time-date-tab\"\n >{{ selectedLabel }}</span\n >\n <span\n class=\"time-tab\"\n (click)=\"toggleView('time')\"\n [@timeTextState]=\"componentTabState\"\n data-automation-id=\"novo-date-time-time-tab\"\n >\n <span class=\"hours\" data-automation-id=\"novo-time-picker-hours\">{{ hours }}</span\n >:<span class=\"minutes\" data-automation-id=\"novo-time-picker-minutes\">{{ minutes }}</span>\n <span *ngIf=\"!military\" class=\"meridian\"> {{ meridian }}</span>\n </span>\n <i class=\"date-time-indicator\" [@indicatorState]=\"componentTabState\"></i>\n </div>\n <div class=\"view-container\" [@containerState]=\"componentTabState\">\n <div class=\"calendar\">\n <novo-date-picker\n (onSelect)=\"onDateSelected($event)\"\n [(ngModel)]=\"model\"\n inline=\"true\"\n [minYear]=\"minYear\"\n [maxYear]=\"maxYear\"\n [start]=\"start\"\n [end]=\"end\"\n [disabledDateMessage]=\"disabledDateMessage\"\n [weekStart]=\"weekStart\"\n ></novo-date-picker>\n </div>\n <div class=\"time-picker\">\n <novo-time-picker (onSelect)=\"onTimeSelected($event)\" [(ngModel)]=\"model\" (ngModelChange)=\"onModelChange($event)\" [military]=\"military\" inline=\"true\"></novo-time-picker>\n </div>\n </div>\n </div>\n `,\n styleUrls: ['./_DateTimePicker.scss'],\n})\nexport class NovoDateTimePickerElement implements ControlValueAccessor {\n @Input()\n defaultTime: string;\n @Input()\n minYear: any;\n @Input()\n maxYear: any;\n @Input()\n start: any;\n @Input()\n end: any;\n @Input()\n military: any;\n @Input()\n weekStart: number = 0;\n @Input()\n disabledDateMessage: string;\n // Select callback for output\n @Output()\n onSelect: EventEmitter<any> = new EventEmitter(false);\n\n componentTabState: string = 'date';\n selectedLabel: string;\n hours: string;\n minutes: string;\n meridian: string;\n datePickerValue: Date = new Date();\n timePickerValue: Date = new Date();\n\n model: any;\n _onChange: Function = () => {};\n _onTouched: Function = () => {};\n\n constructor(public labels: NovoLabelService, private element: ElementRef) {}\n\n toggleView(tab: string): void {\n this.componentTabState = tab;\n }\n\n onModelChange(event) {\n this.model = this.createFullDateValue(this.datePickerValue, event);\n }\n\n setDateLabels(value: Date) {\n this.selectedLabel = this.labels.formatDateWithFormat(value, {\n month: 'short',\n day: '2-digit',\n year: 'numeric',\n });\n }\n\n setTimeLabels(value: Date) {\n let hours = value.getHours();\n const minutes = value.getMinutes();\n\n this.meridian = value.toLocaleTimeString().slice(-2);\n\n if (!this.military) {\n hours = this.meridian === 'PM' && hours > 12 ? hours - 12 : hours;\n\n // Special case for 12\n if (this.meridian === 'PM' && hours === 24) {\n hours = 12;\n } else if (this.meridian === 'AM' && hours === 0) {\n hours = 12;\n }\n }\n\n this.hours = hours.toString();\n this.minutes = minutes.toString().length === 1 ? `0${minutes.toString()}` : minutes.toString();\n }\n\n onDateSelected(event: { month?: any; year?: any; day?: any; date?: Date }) {\n this.datePickerValue = event.date;\n if (this.defaultTime === 'start') {\n this.timePickerValue = new Date(this.timePickerValue.setHours(0, 0, 0));\n } else if (this.defaultTime === 'end') {\n this.timePickerValue = new Date(this.timePickerValue.setHours(23, 59, 59));\n }\n this.model = this.createFullDateValue(this.datePickerValue, this.timePickerValue);\n this.setDateLabels(this.model);\n this.onSelect.emit({ date: this.model });\n this._onChange(this.model);\n this.toggleView('time');\n }\n\n onTimeSelected(event: { hours?: number; minutes?: number; meridian?: string; date?: Date; text?: string }) {\n this.timePickerValue = event.date;\n this.model = this.createFullDateValue(this.model, this.timePickerValue);\n this.setTimeLabels(this.model);\n this.onSelect.emit({ date: this.model });\n this._onChange(this.model);\n }\n\n createFullDateValue(datePickerValue: Date, timePickerValue: Date) {\n return setMilliseconds(\n setSeconds(\n setMinutes(setHours(datePickerValue, getHours(timePickerValue)), getMinutes(timePickerValue)),\n getSeconds(timePickerValue),\n ),\n getMilliseconds(timePickerValue),\n );\n }\n\n // ValueAccessor Functions\n writeValue(model: any): void {\n this.model = model;\n if (Helpers.isEmpty(model)) {\n this.model = new Date();\n } else if (!isNaN(model)) {\n this.model = new Date(model);\n }\n this.datePickerValue = this.model;\n this.timePickerValue = this.model;\n if (Helpers.isDate(this.model)) {\n this.setDateLabels(this.datePickerValue);\n this.setTimeLabels(this.timePickerValue);\n }\n }\n\n registerOnChange(fn: Function): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this._onTouched = fn;\n }\n}\n","// NG\nimport { ChangeDetectorRef, Component, ElementRef, EventEmitter, forwardRef, Input, Output } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n// Vendor\nimport { isDate } from 'date-fns';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { DateUtil, Helpers } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst DATE_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoDateTimePickerInputElement),\n multi: true,\n};\n\n@Component({\n selector: 'novo-date-time-picker-input',\n providers: [DATE_VALUE_ACCESSOR],\n template: `\n <novo-date-picker-input\n [ngModel]=\"datePart\"\n (ngModelChange)=\"updateDate($event)\"\n [start]=\"start\"\n [end]=\"end\"\n [disabledDateMessage]=\"disabledDateMessage\"\n [maskOptions]=\"maskOptions\"\n (blurEvent)=\"handleBlur($event)\"\n (focusEvent)=\"handleFocus($event)\"\n [disabled]=\"disabled\"\n [weekStart]=\"weekStart\"\n ></novo-date-picker-input>\n <novo-time-picker-input\n [ngModel]=\"timePart\"\n (ngModelChange)=\"updateTime($event)\"\n [military]=\"military\"\n (blurEvent)=\"handleBlur($event)\"\n (focusEvent)=\"handleFocus($event)\"\n [disabled]=\"disabled\"\n ></novo-time-picker-input>\n `,\n styleUrls: ['./DateTimePickerInput.scss'],\n})\nexport class NovoDateTimePickerInputElement implements ControlValueAccessor {\n public value: any;\n public datePart: any;\n public timePart: any;\n\n /** View -> model callback called when value changes */\n _onChange: (value: any) => void = () => {};\n\n /** View -> model callback called when autocomplete has been touched */\n _onTouched = () => {};\n\n @Input()\n name: string;\n @Input()\n start: Date;\n @Input()\n end: Date;\n @Input()\n placeholder: string;\n @Input()\n maskOptions: any;\n @Input()\n military: boolean = false;\n @Input()\n disabled: boolean = false;\n @Input()\n format: string;\n @Input()\n weekStart: number = 0;\n @Input()\n disabledDateMessage: string;\n @Output()\n blurEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n @Output()\n focusEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n @Output()\n changeEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n\n constructor(public element: ElementRef, public labels: NovoLabelService, private _changeDetectorRef: ChangeDetectorRef) {}\n\n writeValue(value: any): void {\n this.datePart = isDate(value) ? DateUtil.parse(value) : value;\n this.timePart = isDate(value) ? DateUtil.parse(value) : value;\n Promise.resolve(null).then(() => this._setTriggerValue(value));\n }\n updateDate(event) {\n this.datePart = event;\n this.checkParts();\n }\n updateTime(event) {\n this.timePart = event;\n this.checkParts();\n }\n\n handleBlur(event) {\n this.blurEvent.emit(event);\n this.changeEvent.emit(event);\n }\n\n handleFocus(event) {\n this.focusEvent.emit(event);\n }\n\n checkParts() {\n try {\n if (this.datePart instanceof Date && this.timePart instanceof Date) {\n this.dispatchOnChange(\n new Date(\n this.datePart.getFullYear(),\n this.datePart.getMonth(),\n this.datePart.getDate(),\n this.timePart.getHours(),\n this.timePart.getMinutes(),\n ),\n );\n } else if (this.datePart instanceof Date) {\n this.timePart = new Date(this.datePart.getFullYear(), this.datePart.getMonth(), this.datePart.getDate(), 12, 0);\n this.dispatchOnChange(\n new Date(\n this.datePart.getFullYear(),\n this.datePart.getMonth(),\n this.datePart.getDate(),\n this.timePart.getHours(),\n this.timePart.getMinutes(),\n ),\n );\n } else {\n this.dispatchOnChange(null);\n }\n } catch (err) {\n // Date not valid\n this.dispatchOnChange(null);\n }\n }\n\n registerOnChange(fn: (value: any) => {}): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: () => {}) {\n this._onTouched = fn;\n }\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n }\n\n public dispatchOnChange(newValue?: any) {\n if (newValue !== this.value) {\n this._onChange(newValue);\n this._setTriggerValue(newValue);\n }\n }\n private _setTriggerValue(value: any): void {\n this.value = value;\n this._changeDetectorRef.markForCheck();\n }\n\n public setValue(event: any | null): void {\n if (event && event.date) {\n this.dispatchOnChange(event.date);\n }\n }\n\n public setValueAndClose(event: any | null): void {\n this.setValue(event);\n }\n\n /**\n * Clear any previous selected option and emit a selection change event for this option\n */\n public clearValue() {\n this.dispatchOnChange(null);\n }\n\n public get hasValue() {\n return !Helpers.isEmpty(this.value);\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n// Vendor\nimport { IMaskDirectiveModule } from 'angular-imask';\nimport { TextMaskModule } from 'angular2-text-mask';\n// APP\nimport { NovoOverlayModule } from 'novo-elements/elements/common';\nimport { NovoDatePickerModule } from 'novo-elements/elements/date-picker';\nimport { NovoTimePickerModule } from 'novo-elements/elements/time-picker';\nimport { NovoDateTimePickerElement } from './DateTimePicker';\nimport { NovoDateTimePickerInputElement } from './DateTimePickerInput';\n\n@NgModule({\n imports: [CommonModule, FormsModule, NovoDatePickerModule, NovoTimePickerModule, IMaskDirectiveModule, TextMaskModule, NovoOverlayModule],\n declarations: [NovoDateTimePickerElement, NovoDateTimePickerInputElement],\n exports: [NovoDateTimePickerElement, NovoDateTimePickerInputElement],\n})\nexport class NovoDateTimePickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4"],"mappings":"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"}
@@ -239,28 +239,23 @@ NovoDropdownElement.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
239
239
  <ng-content></ng-content>
240
240
  </div>
241
241
  </novo-overlay-template>
242
- `, isInline: true, components: [{ type: i1.NovoOverlayTemplateComponent, selector: "novo-overlay-template", inputs: ["position", "scrollStrategy", "width", "height", "closeOnSelect", "hasBackdrop", "parent"], outputs: ["select", "opening", "closing"] }] });
242
+ `, isInline: true, styles: [":host{display:inline-block;position:relative;outline:none}:host .novo-dropdown-trigger{cursor:pointer;-webkit-appearance:none}:host ::ng-deep button,:host ::ng-deep novo-button{position:relative;z-index:0}:host ::ng-deep button .novo-button-icon,:host ::ng-deep novo-button .novo-button-icon{font-size:.8em!important;width:1em!important;height:1em!important;margin:0 .5em}.dropdown-container{background-color:#f7f7f7;background-color:var(--background-bright, #f7f7f7);list-style:none;margin:0;padding:0;min-width:180px;margin-top:.5rem;margin-bottom:.5rem;box-shadow:0 4px 10px #00000040}.dropdown-container.has-height{overflow:auto}.dropdown-container list dropdown-item-header{color:#9e9e9e;font-size:.8em;flex:1;font-weight:500;text-transform:uppercase;padding:.5rem 1rem;display:block}.dropdown-container list hr{border:none;height:1px;background:#dbdbdb}\n"], components: [{ type: i1.NovoOverlayTemplateComponent, selector: "novo-overlay-template", inputs: ["position", "scrollStrategy", "width", "height", "closeOnSelect", "hasBackdrop", "parent"], outputs: ["select", "opening", "closing"] }] });
243
243
  __decorate([
244
244
  BooleanInput(),
245
245
  __metadata("design:type", Boolean)
246
246
  ], NovoDropdownElement.prototype, "keepOpen", void 0);
247
247
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NovoDropdownElement, decorators: [{
248
248
  type: Component,
249
- args: [{
250
- selector: 'novo-dropdown',
251
- template: `
249
+ args: [{ selector: 'novo-dropdown', template: `
252
250
  <ng-content select="button,novo-button,[dropdownTrigger]" #trigger></ng-content>
253
251
  <novo-overlay-template [parent]="element" [width]="width" [position]="side" [scrollStrategy]="scrollStrategy">
254
252
  <div #panel class="dropdown-container {{ containerClass }}" [style.height.px]="height" [class.has-height]="!!height">
255
253
  <ng-content></ng-content>
256
254
  </div>
257
255
  </novo-overlay-template>
258
- `,
259
- // providers: [{ provide: NOVO_OPTION_PARENT_COMPONENT, useExisting: NovoDropdownElement }],
260
- host: {
256
+ `, host: {
261
257
  '[attr.tabIndex]': 'disabled ? -1 : 0',
262
- },
263
- }]
258
+ }, styles: [":host{display:inline-block;position:relative;outline:none}:host .novo-dropdown-trigger{cursor:pointer;-webkit-appearance:none}:host ::ng-deep button,:host ::ng-deep novo-button{position:relative;z-index:0}:host ::ng-deep button .novo-button-icon,:host ::ng-deep novo-button .novo-button-icon{font-size:.8em!important;width:1em!important;height:1em!important;margin:0 .5em}.dropdown-container{background-color:#f7f7f7;background-color:var(--background-bright, #f7f7f7);list-style:none;margin:0;padding:0;min-width:180px;margin-top:.5rem;margin-bottom:.5rem;box-shadow:0 4px 10px #00000040}.dropdown-container.has-height{overflow:auto}.dropdown-container list dropdown-item-header{color:#9e9e9e;font-size:.8em;flex:1;font-weight:500;text-transform:uppercase;padding:.5rem 1rem;display:block}.dropdown-container list hr{border:none;height:1px;background:#dbdbdb}\n"] }]
264
259
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { parentScrollSelector: [{
265
260
  type: Input
266
261
  }], parentScrollAction: [{
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-elements-dropdown.mjs","sources":["../../../projects/novo-elements/src/elements/dropdown/Dropdown.ts","../../../projects/novo-elements/src/elements/dropdown/Dropdown.module.ts","../../../projects/novo-elements/src/elements/dropdown/novo-elements-elements-dropdown.ts"],"sourcesContent":["// NG2\nimport { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { hasModifierKey } from '@angular/cdk/keycodes';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n Directive,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n OnDestroy,\n OnInit,\n Output,\n QueryList,\n ViewChild,\n} from '@angular/core';\n// Vendor\nimport { merge, of, Subject, Subscription } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n// App\nimport { NovoButtonElement } from 'novo-elements/elements/button';\nimport {\n CanDisableCtor,\n HasOverlayCtor,\n HasTabIndexCtor,\n mixinDisabled,\n mixinOverlay,\n mixinTabIndex,\n NovoOptgroup,\n NovoOption,\n NovoOptionSelectionChange,\n NovoOverlayTemplateComponent,\n _countGroupLabelsBeforeOption,\n _getOptionScrollPosition,\n} from 'novo-elements/elements/common';\nimport { BooleanInput, Key, notify } from 'novo-elements/utils';\n\n@Directive({\n selector: '[dropdownTrigger]',\n host: {\n class: 'novo-dropdown-trigger',\n },\n})\nexport class NovoDropDownTrigger {\n constructor(public element: ElementRef) {}\n}\n\n// Create Base Class from Mixins\n// Boilerplate for applying mixins\nclass NovoDropdownBase {\n constructor() {}\n}\nconst NovoDropdowMixins: HasOverlayCtor & CanDisableCtor & HasTabIndexCtor & typeof NovoDropdownBase = mixinOverlay(\n mixinTabIndex(mixinDisabled(NovoDropdownBase), 1),\n);\n\n@Component({\n selector: 'novo-dropdown',\n template: `\n <ng-content select=\"button,novo-button,[dropdownTrigger]\" #trigger></ng-content>\n <novo-overlay-template [parent]=\"element\" [width]=\"width\" [position]=\"side\" [scrollStrategy]=\"scrollStrategy\">\n <div #panel class=\"dropdown-container {{ containerClass }}\" [style.height.px]=\"height\" [class.has-height]=\"!!height\">\n <ng-content></ng-content>\n </div>\n </novo-overlay-template>\n `,\n // providers: [{ provide: NOVO_OPTION_PARENT_COMPONENT, useExisting: NovoDropdownElement }],\n host: {\n '[attr.tabIndex]': 'disabled ? -1 : 0',\n },\n})\nexport class NovoDropdownElement extends NovoDropdowMixins implements OnInit, AfterContentInit, AfterViewInit, OnDestroy {\n @Input()\n parentScrollSelector: string;\n @Input()\n parentScrollAction: string = 'close';\n @Input()\n containerClass: string;\n @Input()\n side:\n | 'default'\n | 'right'\n | 'above-below'\n | 'right-above-below'\n | 'center'\n | 'bottom'\n | 'bottom-left'\n | 'bottom-right'\n | 'top-left'\n | 'top-right' = 'default';\n @Input()\n scrollStrategy: 'reposition' | 'block' | 'close' = 'reposition';\n\n /**\n * Keep dropdown open after an item is selected\n */\n @Input()\n @BooleanInput()\n keepOpen: boolean = false;\n\n @Input()\n height: number;\n @Input()\n width: number = -1; // Defaults to dynamic width (no hardcoded width value and no host width lookup)\n @Input()\n appendToBody: boolean = false; // Deprecated\n @Output()\n toggled: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n @ViewChild(NovoOverlayTemplateComponent)\n overlay: NovoOverlayTemplateComponent;\n\n @ContentChild(NovoButtonElement)\n _button: NovoButtonElement;\n @ContentChild(NovoDropDownTrigger)\n _trigger: NovoDropDownTrigger;\n\n @ContentChildren(NovoOptgroup, { descendants: true })\n optionGroups: QueryList<NovoOptgroup>;\n @ContentChildren(NovoOption, { descendants: true })\n options: QueryList<NovoOption>;\n @ViewChild('panel')\n panel: ElementRef;\n\n private clickHandler: any;\n private closeHandler: any;\n private _selectedOptionChanges = Subscription.EMPTY;\n /** The Subject to complete all subscriptions when destroyed. */\n private _onDestroy: Subject<void> = new Subject();\n /** The FocusKeyManager which handles focus. */\n private _keyManager: ActiveDescendantKeyManager<NovoOption>;\n\n /** Whether the user should be allowed to select multiple options. */\n @Input()\n get multiple(): boolean {\n return this._multiple;\n }\n set multiple(value: boolean) {\n this._multiple = coerceBooleanProperty(value);\n }\n private _multiple: boolean = false;\n\n get button() {\n return this._trigger || this._button;\n }\n\n constructor(public element: ElementRef, private ref: ChangeDetectorRef) {\n super();\n this.clickHandler = this.togglePanel.bind(this);\n this.closeHandler = this.closePanel.bind(this);\n }\n\n public ngOnInit(): void {\n if (this.appendToBody) {\n notify(`'appendToBody' has been deprecated. Please remove this attribute.`);\n }\n }\n\n public ngAfterContentInit(): void {\n // Add a click handler to the button to toggle the menu\n this.button.element.nativeElement.addEventListener('click', this.clickHandler);\n this.button.element.nativeElement.tabIndex = -1;\n this.options.changes.pipe(takeUntil(this._onDestroy)).subscribe(() => {\n this._initKeyManager();\n this._watchSelectionEvents();\n });\n this._initKeyManager();\n this._watchSelectionEvents();\n this.focus();\n }\n\n public ngAfterViewInit(): void {\n this._watchPanelEvents();\n }\n\n public ngOnDestroy(): void {\n this._onDestroy.next();\n this._onDestroy.complete();\n // Remove listener\n if (this.button) {\n this.button.element.nativeElement.removeEventListener('click', this.clickHandler);\n }\n }\n\n focus(options?: FocusOptions): void {\n if (!this.disabled) {\n this.element.nativeElement.focus(options);\n }\n }\n\n public set items(items: QueryList<NovoItemElement>) {\n // this._items = items;\n // this.activeIndex = -1;\n // // Get the innerText of all the items to allow for searching\n // this._textItems = items.map((item: NovoItemElement) => {\n // return item.element.nativeElement.innerText;\n // });\n }\n\n /** Handles all keydown events on the select. */\n @HostListener('keydown', ['$event'])\n _handleKeydown(event: KeyboardEvent): void {\n if (!this.disabled) {\n this.panelOpen ? this._handleOpenKeydown(event) : this._handleClosedKeydown(event);\n }\n }\n\n /** Handles keyboard events while the select is closed. */\n private _handleClosedKeydown(event: KeyboardEvent): void {\n const key = event.key;\n const isArrowKey = key === Key.ArrowDown || key === Key.ArrowUp || key === Key.ArrowLeft || key === Key.ArrowRight;\n const isOpenKey = key === Key.Enter || key === Key.Space;\n const manager = this._keyManager;\n // Open the select on ALT + arrow key to match the native <select>\n if ((!manager.isTyping() && isOpenKey && !hasModifierKey(event)) || ((this.multiple || event.altKey) && isArrowKey)) {\n event.preventDefault(); // prevents the page from scrolling down when pressing space\n this.openPanel();\n }\n }\n\n /** Handles keyboard events when the selected is open. */\n private _handleOpenKeydown(event: KeyboardEvent): void {\n const manager = this._keyManager;\n const key = event.key;\n const isArrowKey = key === Key.ArrowDown || key === Key.ArrowUp;\n const isTyping = manager.isTyping();\n const isInputField = event.target;\n if (isArrowKey && event.altKey) {\n // Close the select on ALT + arrow key to match the native <select>\n event.preventDefault();\n this.closePanel();\n // Don't do anything in this case if the user is typing,\n // because the typing sequence can include the space key.\n } else if (!isTyping && (key === Key.Enter || key === Key.Space) && manager.activeItem && !hasModifierKey(event)) {\n event.preventDefault();\n this._multiple ? manager.activeItem._selectViaInteraction() : manager.activeItem._clickViaInteraction();\n } else if (!isTyping && this._multiple && ['a', 'A'].includes(key) && event.ctrlKey) {\n event.preventDefault();\n const hasDeselectedOptions = this.options.some((opt) => !opt.disabled && !opt.selected);\n this.options.forEach((option) => {\n if (!option.disabled) {\n hasDeselectedOptions ? option.select() : option.deselect();\n }\n });\n } else if (Key.Escape === key) {\n this.closePanel();\n } else {\n const previouslyFocusedIndex = manager.activeItemIndex;\n manager.onKeydown(event);\n if (this._multiple && isArrowKey && event.shiftKey && manager.activeItem && manager.activeItemIndex !== previouslyFocusedIndex) {\n manager.activeItem._selectViaInteraction();\n }\n }\n }\n\n private _watchPanelEvents() {\n const panelStateChanges = merge(this.overlay.opening, this.overlay.closing);\n panelStateChanges.pipe(takeUntil(this._onDestroy)).subscribe((event: boolean) => this.toggled.emit(event));\n }\n\n private _watchSelectionEvents() {\n const selectionEvents = this.options ? merge(...this.options.map((option) => option.onSelectionChange)) : of();\n this._selectedOptionChanges.unsubscribe();\n this._selectedOptionChanges = selectionEvents.pipe(takeUntil(this._onDestroy)).subscribe((event: NovoOptionSelectionChange) => {\n // this.handleSelection(event.source, event.isUserInput);\n if (event.isUserInput && !this.multiple) {\n this._clearPreviousSelectedOption(this._keyManager.activeItem);\n if (!this.keepOpen && this.panelOpen) {\n this.closePanel();\n this.focus();\n }\n }\n });\n }\n /**\n * Clear any previous selected option and emit a selection change event for this option\n */\n private _clearPreviousSelectedOption(skip: NovoOption) {\n this.options.forEach((option) => {\n if (option !== skip && option.selected) {\n option.deselect();\n }\n });\n }\n\n /** Sets up a key manager to listen to keyboard events on the overlay panel. */\n private _initKeyManager() {\n this._keyManager = new ActiveDescendantKeyManager<NovoOption>(this.options).withTypeAhead(250).withHomeAndEnd();\n // .withAllowedModifierKeys(['shiftKey']);\n\n this._keyManager.tabOut.pipe(takeUntil(this._onDestroy)).subscribe(() => {\n if (this.panelOpen) {\n // Restore focus to the trigger before closing. Ensures that the focus\n // position won't be lost if the user got focus into the overlay.\n this.focus();\n this.closePanel();\n }\n });\n\n this._keyManager.change.pipe(takeUntil(this._onDestroy)).subscribe(() => {\n if (this.panelOpen && this.overlay) {\n this._scrollOptionIntoView(this._keyManager.activeItemIndex || 0);\n }\n });\n }\n\n /** Scrolls the active option into view. */\n protected _scrollOptionIntoView(index: number): void {\n const labelCount = _countGroupLabelsBeforeOption(index, this.options, this.optionGroups);\n const itemHeight = this._getItemHeight();\n this.panel.nativeElement.scrollTop = _getOptionScrollPosition(\n (index + labelCount) * itemHeight,\n itemHeight,\n this.panel.nativeElement.scrollTop,\n this.panel.nativeElement.offsetHeight,\n );\n }\n\n /** Calculates the height of the select's options. */\n private _getItemHeight(): number {\n let [first] = this.options;\n if (first) {\n return first._getHostElement().offsetHeight;\n }\n return 0;\n }\n}\n\n// Deprecated below here ---------------------------\n\n@Component({\n selector: 'item',\n template: '<novo-option><ng-content></ng-content></novo-option>',\n host: {\n '[class.disabled]': 'disabled',\n '[class.active]': 'active',\n },\n})\nexport class NovoItemElement {\n @Input()\n public disabled: boolean;\n @Input()\n public keepOpen: boolean = false;\n @Output()\n public action: EventEmitter<any> = new EventEmitter();\n\n public active: boolean = false;\n\n constructor(private dropdown: NovoDropdownElement, public element: ElementRef) {\n notify(`'item' element has been deprecated. Please use 'novo-option' and 'novo-optgroup'.`);\n }\n\n @HostListener('click', ['$event'])\n public onClick(event: Event): void {\n // Poor man's disable\n if (!this.disabled) {\n // Close if keepOpen is false\n if (!this.keepOpen) {\n this.dropdown.closePanel();\n }\n // Emit the action\n this.action.emit({ originalEvent: event });\n }\n }\n}\n\n@Component({\n selector: 'list',\n template: '<ng-content></ng-content>',\n})\nexport class NovoDropdownListElement implements AfterContentInit {\n @ContentChildren(NovoItemElement)\n public items: QueryList<NovoItemElement>;\n\n constructor(private dropdown: NovoDropdownElement) {\n notify(`'list' element has been deprecated. Please use novo-option and novo-optgroup.`);\n }\n\n public ngAfterContentInit(): void {\n this.dropdown.items = this.items;\n this.items.changes.subscribe(() => {\n this.dropdown.items = this.items;\n });\n }\n}\n\n@Component({\n selector: 'dropdown-item-header',\n template: '<ng-content></ng-content>',\n})\nexport class NovoDropDownItemHeaderElement {\n constructor() {\n notify(`'dropdown-item-header' element has been deprecated. Please use novo-option and novo-optgroup.`);\n }\n}\n","// NG2\nimport { NgModule } from '@angular/core';\nimport { NovoOptionModule, NovoOverlayModule } from 'novo-elements/elements/common';\n// APP\nimport {\n NovoDropdownElement,\n NovoDropDownItemHeaderElement,\n NovoDropdownListElement,\n NovoDropDownTrigger,\n NovoItemElement,\n} from './Dropdown';\n\n@NgModule({\n imports: [NovoOverlayModule, NovoOptionModule],\n declarations: [NovoDropdownElement, NovoItemElement, NovoDropdownListElement, NovoDropDownItemHeaderElement, NovoDropDownTrigger],\n exports: [NovoDropdownElement, NovoItemElement, NovoDropdownListElement, NovoDropDownItemHeaderElement, NovoDropDownTrigger],\n})\nexport class NovoDropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"novo-elements-elements-dropdown.mjs","sources":["../../../projects/novo-elements/src/elements/dropdown/Dropdown.ts","../../../projects/novo-elements/src/elements/dropdown/Dropdown.module.ts","../../../projects/novo-elements/src/elements/dropdown/novo-elements-elements-dropdown.ts"],"sourcesContent":["// NG2\nimport { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { hasModifierKey } from '@angular/cdk/keycodes';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n Directive,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n OnDestroy,\n OnInit,\n Output,\n QueryList,\n ViewChild,\n} from '@angular/core';\n// Vendor\nimport { merge, of, Subject, Subscription } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n// App\nimport { NovoButtonElement } from 'novo-elements/elements/button';\nimport {\n CanDisableCtor,\n HasOverlayCtor,\n HasTabIndexCtor,\n mixinDisabled,\n mixinOverlay,\n mixinTabIndex,\n NovoOptgroup,\n NovoOption,\n NovoOptionSelectionChange,\n NovoOverlayTemplateComponent,\n _countGroupLabelsBeforeOption,\n _getOptionScrollPosition,\n} from 'novo-elements/elements/common';\nimport { BooleanInput, Key, notify } from 'novo-elements/utils';\n\n@Directive({\n selector: '[dropdownTrigger]',\n host: {\n class: 'novo-dropdown-trigger',\n },\n})\nexport class NovoDropDownTrigger {\n constructor(public element: ElementRef) {}\n}\n\n// Create Base Class from Mixins\n// Boilerplate for applying mixins\nclass NovoDropdownBase {\n constructor() {}\n}\nconst NovoDropdowMixins: HasOverlayCtor & CanDisableCtor & HasTabIndexCtor & typeof NovoDropdownBase = mixinOverlay(\n mixinTabIndex(mixinDisabled(NovoDropdownBase), 1),\n);\n\n@Component({\n selector: 'novo-dropdown',\n template: `\n <ng-content select=\"button,novo-button,[dropdownTrigger]\" #trigger></ng-content>\n <novo-overlay-template [parent]=\"element\" [width]=\"width\" [position]=\"side\" [scrollStrategy]=\"scrollStrategy\">\n <div #panel class=\"dropdown-container {{ containerClass }}\" [style.height.px]=\"height\" [class.has-height]=\"!!height\">\n <ng-content></ng-content>\n </div>\n </novo-overlay-template>\n `,\n styleUrls: ['./Dropdown.scss'],\n host: {\n '[attr.tabIndex]': 'disabled ? -1 : 0',\n },\n})\nexport class NovoDropdownElement extends NovoDropdowMixins implements OnInit, AfterContentInit, AfterViewInit, OnDestroy {\n @Input()\n parentScrollSelector: string;\n @Input()\n parentScrollAction: string = 'close';\n @Input()\n containerClass: string;\n @Input()\n side:\n | 'default'\n | 'right'\n | 'above-below'\n | 'right-above-below'\n | 'center'\n | 'bottom'\n | 'bottom-left'\n | 'bottom-right'\n | 'top-left'\n | 'top-right' = 'default';\n @Input()\n scrollStrategy: 'reposition' | 'block' | 'close' = 'reposition';\n\n /**\n * Keep dropdown open after an item is selected\n */\n @Input()\n @BooleanInput()\n keepOpen: boolean = false;\n\n @Input()\n height: number;\n @Input()\n width: number = -1; // Defaults to dynamic width (no hardcoded width value and no host width lookup)\n @Input()\n appendToBody: boolean = false; // Deprecated\n @Output()\n toggled: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n @ViewChild(NovoOverlayTemplateComponent)\n overlay: NovoOverlayTemplateComponent;\n\n @ContentChild(NovoButtonElement)\n _button: NovoButtonElement;\n @ContentChild(NovoDropDownTrigger)\n _trigger: NovoDropDownTrigger;\n\n @ContentChildren(NovoOptgroup, { descendants: true })\n optionGroups: QueryList<NovoOptgroup>;\n @ContentChildren(NovoOption, { descendants: true })\n options: QueryList<NovoOption>;\n @ViewChild('panel')\n panel: ElementRef;\n\n private clickHandler: any;\n private closeHandler: any;\n private _selectedOptionChanges = Subscription.EMPTY;\n /** The Subject to complete all subscriptions when destroyed. */\n private _onDestroy: Subject<void> = new Subject();\n /** The FocusKeyManager which handles focus. */\n private _keyManager: ActiveDescendantKeyManager<NovoOption>;\n\n /** Whether the user should be allowed to select multiple options. */\n @Input()\n get multiple(): boolean {\n return this._multiple;\n }\n set multiple(value: boolean) {\n this._multiple = coerceBooleanProperty(value);\n }\n private _multiple: boolean = false;\n\n get button() {\n return this._trigger || this._button;\n }\n\n constructor(public element: ElementRef, private ref: ChangeDetectorRef) {\n super();\n this.clickHandler = this.togglePanel.bind(this);\n this.closeHandler = this.closePanel.bind(this);\n }\n\n public ngOnInit(): void {\n if (this.appendToBody) {\n notify(`'appendToBody' has been deprecated. Please remove this attribute.`);\n }\n }\n\n public ngAfterContentInit(): void {\n // Add a click handler to the button to toggle the menu\n this.button.element.nativeElement.addEventListener('click', this.clickHandler);\n this.button.element.nativeElement.tabIndex = -1;\n this.options.changes.pipe(takeUntil(this._onDestroy)).subscribe(() => {\n this._initKeyManager();\n this._watchSelectionEvents();\n });\n this._initKeyManager();\n this._watchSelectionEvents();\n this.focus();\n }\n\n public ngAfterViewInit(): void {\n this._watchPanelEvents();\n }\n\n public ngOnDestroy(): void {\n this._onDestroy.next();\n this._onDestroy.complete();\n // Remove listener\n if (this.button) {\n this.button.element.nativeElement.removeEventListener('click', this.clickHandler);\n }\n }\n\n focus(options?: FocusOptions): void {\n if (!this.disabled) {\n this.element.nativeElement.focus(options);\n }\n }\n\n public set items(items: QueryList<NovoItemElement>) {\n // this._items = items;\n // this.activeIndex = -1;\n // // Get the innerText of all the items to allow for searching\n // this._textItems = items.map((item: NovoItemElement) => {\n // return item.element.nativeElement.innerText;\n // });\n }\n\n /** Handles all keydown events on the select. */\n @HostListener('keydown', ['$event'])\n _handleKeydown(event: KeyboardEvent): void {\n if (!this.disabled) {\n this.panelOpen ? this._handleOpenKeydown(event) : this._handleClosedKeydown(event);\n }\n }\n\n /** Handles keyboard events while the select is closed. */\n private _handleClosedKeydown(event: KeyboardEvent): void {\n const key = event.key;\n const isArrowKey = key === Key.ArrowDown || key === Key.ArrowUp || key === Key.ArrowLeft || key === Key.ArrowRight;\n const isOpenKey = key === Key.Enter || key === Key.Space;\n const manager = this._keyManager;\n // Open the select on ALT + arrow key to match the native <select>\n if ((!manager.isTyping() && isOpenKey && !hasModifierKey(event)) || ((this.multiple || event.altKey) && isArrowKey)) {\n event.preventDefault(); // prevents the page from scrolling down when pressing space\n this.openPanel();\n }\n }\n\n /** Handles keyboard events when the selected is open. */\n private _handleOpenKeydown(event: KeyboardEvent): void {\n const manager = this._keyManager;\n const key = event.key;\n const isArrowKey = key === Key.ArrowDown || key === Key.ArrowUp;\n const isTyping = manager.isTyping();\n const isInputField = event.target;\n if (isArrowKey && event.altKey) {\n // Close the select on ALT + arrow key to match the native <select>\n event.preventDefault();\n this.closePanel();\n // Don't do anything in this case if the user is typing,\n // because the typing sequence can include the space key.\n } else if (!isTyping && (key === Key.Enter || key === Key.Space) && manager.activeItem && !hasModifierKey(event)) {\n event.preventDefault();\n this._multiple ? manager.activeItem._selectViaInteraction() : manager.activeItem._clickViaInteraction();\n } else if (!isTyping && this._multiple && ['a', 'A'].includes(key) && event.ctrlKey) {\n event.preventDefault();\n const hasDeselectedOptions = this.options.some((opt) => !opt.disabled && !opt.selected);\n this.options.forEach((option) => {\n if (!option.disabled) {\n hasDeselectedOptions ? option.select() : option.deselect();\n }\n });\n } else if (Key.Escape === key) {\n this.closePanel();\n } else {\n const previouslyFocusedIndex = manager.activeItemIndex;\n manager.onKeydown(event);\n if (this._multiple && isArrowKey && event.shiftKey && manager.activeItem && manager.activeItemIndex !== previouslyFocusedIndex) {\n manager.activeItem._selectViaInteraction();\n }\n }\n }\n\n private _watchPanelEvents() {\n const panelStateChanges = merge(this.overlay.opening, this.overlay.closing);\n panelStateChanges.pipe(takeUntil(this._onDestroy)).subscribe((event: boolean) => this.toggled.emit(event));\n }\n\n private _watchSelectionEvents() {\n const selectionEvents = this.options ? merge(...this.options.map((option) => option.onSelectionChange)) : of();\n this._selectedOptionChanges.unsubscribe();\n this._selectedOptionChanges = selectionEvents.pipe(takeUntil(this._onDestroy)).subscribe((event: NovoOptionSelectionChange) => {\n // this.handleSelection(event.source, event.isUserInput);\n if (event.isUserInput && !this.multiple) {\n this._clearPreviousSelectedOption(this._keyManager.activeItem);\n if (!this.keepOpen && this.panelOpen) {\n this.closePanel();\n this.focus();\n }\n }\n });\n }\n /**\n * Clear any previous selected option and emit a selection change event for this option\n */\n private _clearPreviousSelectedOption(skip: NovoOption) {\n this.options.forEach((option) => {\n if (option !== skip && option.selected) {\n option.deselect();\n }\n });\n }\n\n /** Sets up a key manager to listen to keyboard events on the overlay panel. */\n private _initKeyManager() {\n this._keyManager = new ActiveDescendantKeyManager<NovoOption>(this.options).withTypeAhead(250).withHomeAndEnd();\n // .withAllowedModifierKeys(['shiftKey']);\n\n this._keyManager.tabOut.pipe(takeUntil(this._onDestroy)).subscribe(() => {\n if (this.panelOpen) {\n // Restore focus to the trigger before closing. Ensures that the focus\n // position won't be lost if the user got focus into the overlay.\n this.focus();\n this.closePanel();\n }\n });\n\n this._keyManager.change.pipe(takeUntil(this._onDestroy)).subscribe(() => {\n if (this.panelOpen && this.overlay) {\n this._scrollOptionIntoView(this._keyManager.activeItemIndex || 0);\n }\n });\n }\n\n /** Scrolls the active option into view. */\n protected _scrollOptionIntoView(index: number): void {\n const labelCount = _countGroupLabelsBeforeOption(index, this.options, this.optionGroups);\n const itemHeight = this._getItemHeight();\n this.panel.nativeElement.scrollTop = _getOptionScrollPosition(\n (index + labelCount) * itemHeight,\n itemHeight,\n this.panel.nativeElement.scrollTop,\n this.panel.nativeElement.offsetHeight,\n );\n }\n\n /** Calculates the height of the select's options. */\n private _getItemHeight(): number {\n let [first] = this.options;\n if (first) {\n return first._getHostElement().offsetHeight;\n }\n return 0;\n }\n}\n\n// Deprecated below here ---------------------------\n\n@Component({\n selector: 'item',\n template: '<novo-option><ng-content></ng-content></novo-option>',\n host: {\n '[class.disabled]': 'disabled',\n '[class.active]': 'active',\n },\n})\nexport class NovoItemElement {\n @Input()\n public disabled: boolean;\n @Input()\n public keepOpen: boolean = false;\n @Output()\n public action: EventEmitter<any> = new EventEmitter();\n\n public active: boolean = false;\n\n constructor(private dropdown: NovoDropdownElement, public element: ElementRef) {\n notify(`'item' element has been deprecated. Please use 'novo-option' and 'novo-optgroup'.`);\n }\n\n @HostListener('click', ['$event'])\n public onClick(event: Event): void {\n // Poor man's disable\n if (!this.disabled) {\n // Close if keepOpen is false\n if (!this.keepOpen) {\n this.dropdown.closePanel();\n }\n // Emit the action\n this.action.emit({ originalEvent: event });\n }\n }\n}\n\n@Component({\n selector: 'list',\n template: '<ng-content></ng-content>',\n})\nexport class NovoDropdownListElement implements AfterContentInit {\n @ContentChildren(NovoItemElement)\n public items: QueryList<NovoItemElement>;\n\n constructor(private dropdown: NovoDropdownElement) {\n notify(`'list' element has been deprecated. Please use novo-option and novo-optgroup.`);\n }\n\n public ngAfterContentInit(): void {\n this.dropdown.items = this.items;\n this.items.changes.subscribe(() => {\n this.dropdown.items = this.items;\n });\n }\n}\n\n@Component({\n selector: 'dropdown-item-header',\n template: '<ng-content></ng-content>',\n})\nexport class NovoDropDownItemHeaderElement {\n constructor() {\n notify(`'dropdown-item-header' element has been deprecated. Please use novo-option and novo-optgroup.`);\n }\n}\n","// NG2\nimport { NgModule } from '@angular/core';\nimport { NovoOptionModule, NovoOverlayModule } from 'novo-elements/elements/common';\n// APP\nimport {\n NovoDropdownElement,\n NovoDropDownItemHeaderElement,\n NovoDropdownListElement,\n NovoDropDownTrigger,\n NovoItemElement,\n} from './Dropdown';\n\n@NgModule({\n imports: [NovoOverlayModule, NovoOptionModule],\n declarations: [NovoDropdownElement, NovoItemElement, NovoDropdownListElement, NovoDropDownItemHeaderElement, NovoDropDownTrigger],\n exports: [NovoDropdownElement, NovoItemElement, NovoDropdownListElement, NovoDropDownItemHeaderElement, NovoDropDownTrigger],\n})\nexport class NovoDropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -22,13 +22,10 @@ var __metadata = (this && this.__metadata) || function (k, v) {
22
22
  class NovoHeaderSpacer {
23
23
  }
24
24
  NovoHeaderSpacer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NovoHeaderSpacer, deps: [], target: i0.ɵɵFactoryTarget.Component });
25
- NovoHeaderSpacer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: NovoHeaderSpacer, selector: "header-spacer", ngImport: i0, template: `<ng-content></ng-content>`, isInline: true });
25
+ NovoHeaderSpacer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: NovoHeaderSpacer, selector: "header-spacer", ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [":host{display:inline-block;height:1.8em;width:2px;margin:0 .6em;background-color:#00000040}\n"] });
26
26
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NovoHeaderSpacer, decorators: [{
27
27
  type: Component,
28
- args: [{
29
- selector: 'header-spacer',
30
- template: `<ng-content></ng-content>`,
31
- }]
28
+ args: [{ selector: 'header-spacer', template: `<ng-content></ng-content>`, styles: [":host{display:inline-block;height:1.8em;width:2px;margin:0 .6em;background-color:#00000040}\n"] }]
32
29
  }] });
33
30
  class NovoUtilsComponent {
34
31
  }
@@ -123,16 +120,14 @@ NovoHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
123
120
  <ng-content select="[suffix]"></ng-content>
124
121
  </section>
125
122
  <ng-content></ng-content>
126
- `, isInline: true, components: [{ type: i3.NovoIconComponent, selector: "novo-icon", inputs: ["raised", "theme", "shape", "color", "size", "smaller", "larger", "alt", "name"] }, { type: i2.NovoTitle, selector: "novo-title,[novo-title]" }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
123
+ `, isInline: true, styles: [":host{display:block;background-color:#fff;background-color:var(--background-bright, #ffffff)}:host .spacer{flex:1 1 0%}:host[size=small]>section{height:3.6rem}:host.header-size-small>section{height:3.2rem}:host.header-size-default>section{height:5rem}:host.header-size-large>section{height:6.4rem}:host>section{display:flex;flex-direction:row;align-items:center;padding:0 1.25rem;gap:.5rem;box-sizing:border-box}:host>section .header-icon{font-size:var(--font-size-2xl)}:host>section div.header-title{display:flex;align-items:center;max-width:calc(100% - 40px);gap:.5rem}:host>section div.header-title ::ng-deep novo-icon{margin-right:1rem}:host>section .header-titles{display:flex;flex-direction:column;max-width:100%}:host>section .header-titles .novo-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host>section .header-titles h1{font-weight:500;line-height:1.5;color:#3d464d;color:var(--text-main, #3d464d);font-size:var(--font-size-title);transition:color .2s ease-out,opacity .2s ease-out;vertical-align:middle;margin:0;padding:0 20px 0 0;display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host>section .header-titles h1.text-capitalize{text-transform:capitalize}:host>section .header-titles h1.text-uppercase{text-transform:uppercase}:host>section .header-titles h1.text-nowrap{white-space:nowrap}:host>section .header-titles h1.text-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host>section .header-titles h1.text-size-default{font-size:inherit}:host>section .header-titles h1.text-size-body{font-size:1.3rem}:host>section .header-titles h1.text-size-xs{font-size:1rem}:host>section .header-titles h1.text-size-sm{font-size:1.2rem}:host>section .header-titles h1.text-size-md{font-size:1.3rem}:host>section .header-titles h1.text-size-lg{font-size:1.6rem}:host>section .header-titles h1.text-size-xl{font-size:2rem}:host>section .header-titles h1.text-size-2xl{font-size:2.6rem}:host>section .header-titles h1.text-size-3xl{font-size:3.2rem}:host>section .header-titles h1.text-size-smaller{font-size:.8em}:host>section .header-titles h1.text-size-larger{font-size:1.2em}:host>section .header-titles h1.text-color-black{color:#000}:host>section .header-titles h1.text-color-white{color:#fff}:host>section .header-titles h1.text-color-gray{color:#9e9e9e}:host>section .header-titles h1.text-color-grey{color:#9e9e9e}:host>section .header-titles h1.text-color-offWhite{color:#f7f7f7}:host>section .header-titles h1.text-color-bright{color:#f7f7f7}:host>section .header-titles h1.text-color-light{color:#dbdbdb}:host>section .header-titles h1.text-color-neutral{color:#4f5361}:host>section .header-titles h1.text-color-dark{color:#3d464d}:host>section .header-titles h1.text-color-orange{color:#ff6900}:host>section .header-titles h1.text-color-navigation{color:#202945}:host>section .header-titles h1.text-color-skyBlue{color:#009bdf}:host>section .header-titles h1.text-color-steel{color:#5b6770}:host>section .header-titles h1.text-color-metal{color:#637893}:host>section .header-titles h1.text-color-sand{color:#f4f4f4}:host>section .header-titles h1.text-color-silver{color:#e2e2e2}:host>section .header-titles h1.text-color-stone{color:#bebebe}:host>section .header-titles h1.text-color-ash{color:#a0a0a0}:host>section .header-titles h1.text-color-slate{color:#707070}:host>section .header-titles h1.text-color-onyx{color:#526980}:host>section .header-titles h1.text-color-charcoal{color:#282828}:host>section .header-titles h1.text-color-moonlight{color:#1a242f}:host>section .header-titles h1.text-color-midnight{color:#202945}:host>section .header-titles h1.text-color-darkness{color:#161f27}:host>section .header-titles h1.text-color-navy{color:#0d2d42}:host>section .header-titles h1.text-color-aqua{color:#3bafda}:host>section .header-titles h1.text-color-ocean{color:#4a89dc}:host>section .header-titles h1.text-color-mint{color:#37bc9b}:host>section .header-titles h1.text-color-grass{color:#8cc152}:host>section .header-titles h1.text-color-sunflower{color:#f6b042}:host>section .header-titles h1.text-color-bittersweet{color:#eb6845}:host>section .header-titles h1.text-color-grapefruit{color:#da4453}:host>section .header-titles h1.text-color-carnation{color:#d770ad}:host>section .header-titles h1.text-color-lavender{color:#967adc}:host>section .header-titles h1.text-color-mountain{color:#9678b6}:host>section .header-titles h1.text-color-info{color:#4a89dc}:host>section .header-titles h1.text-color-positive{color:#4a89dc}:host>section .header-titles h1.text-color-success{color:#8cc152}:host>section .header-titles h1.text-color-negative{color:#da4453}:host>section .header-titles h1.text-color-danger{color:#da4453}:host>section .header-titles h1.text-color-error{color:#da4453}:host>section .header-titles h1.text-color-warning{color:#f6b042}:host>section .header-titles h1.text-color-empty{color:#cccdcc}:host>section .header-titles h1.text-color-disabled{color:#bebebe}:host>section .header-titles h1.text-color-background{color:#f7f7f7}:host>section .header-titles h1.text-color-backgroundDark{color:#e2e2e2}:host>section .header-titles h1.text-color-presentation{color:#5b6770}:host>section .header-titles h1.text-color-bullhorn{color:#ff6900}:host>section .header-titles h1.text-color-pulse{color:#3bafda}:host>section .header-titles h1.text-color-company{color:#39d}:host>section .header-titles h1.text-color-candidate{color:#4b7}:host>section .header-titles h1.text-color-lead{color:#a69}:host>section .header-titles h1.text-color-contact{color:#fa4}:host>section .header-titles h1.text-color-clientcontact{color:#fa4}:host>section .header-titles h1.text-color-opportunity{color:#625}:host>section .header-titles h1.text-color-job{color:#b56}:host>section .header-titles h1.text-color-joborder{color:#b56}:host>section .header-titles h1.text-color-submission{color:#a9adbb}:host>section .header-titles h1.text-color-sendout{color:#747884}:host>section .header-titles h1.text-color-placement{color:#0b344f}:host>section .header-titles h1.text-color-note{color:#747884}:host>section .header-titles h1.text-color-contract{color:#454ea0}:host>section .header-titles h1.text-color-jobCode{color:#696d79}:host>section .header-titles h1.text-color-earnCode{color:#696d79}:host>section .header-titles h1.text-color-invoiceStatement{color:#696d79}:host>section .header-titles h1.text-color-billableCharge{color:#696d79}:host>section .header-titles h1.text-color-payableCharge{color:#696d79}:host>section .header-titles h1.text-color-user{color:#696d79}:host>section .header-titles h1.text-color-corporateUser{color:#696d79}:host>section .header-titles h1.text-color-distributionList{color:#696d79}:host>section .header-titles h1.text-color-credential{color:#696d79}:host>section .header-titles h1.text-color-person{color:#696d79}:host>section .header-titles h1.margin-before{margin-top:.4rem}:host>section .header-titles h1.margin-after{margin-bottom:.8rem}:host>section .header-titles h1.text-length-small{max-width:40ch}:host>section .header-titles h1.text-length-medium{max-width:55ch}:host>section .header-titles h1.text-length-large{max-width:70ch}:host>section .header-titles h1.text-weight-hairline{font-weight:100}:host>section .header-titles h1.text-weight-thin{font-weight:200}:host>section .header-titles h1.text-weight-light{font-weight:300}:host>section .header-titles h1.text-weight-normal{font-weight:400}:host>section .header-titles h1.text-weight-medium{font-weight:500}:host>section .header-titles h1.text-weight-semibold{font-weight:600}:host>section .header-titles h1.text-weight-bold{font-weight:700}:host>section .header-titles h1.text-weight-extrabold{font-weight:800}:host>section .header-titles h1.text-weight-heavy{font-weight:900}:host>section .header-titles h1.text-weight-lighter{font-weight:lighter}:host>section .header-titles h1.text-weight-bolder{font-weight:bolder}:host>section>::ng-deep section{flex:2 2 250px;min-width:100px}:host>section ::ng-deep utils,:host>section ::ng-deep novo-utils{display:flex;align-items:center;justify-content:flex-start;gap:.5rem}:host>section ::ng-deep .novo-action{display:flex}:host.novo-accent-black .header-titles ::ng-deep .novo-icon,:host.novo-accent-black .header-title ::ng-deep .novo-icon{color:#000}:host.novo-accent-black>section:first-of-type{border-bottom:2px solid #000000}:host.novo-theme-black>section:first-of-type{background:#000000;color:#fff;border-bottom:none}:host.novo-theme-black ::ng-deep .novo-title{color:inherit}:host.novo-theme-black ::ng-deep .novo-action button,:host.novo-theme-black ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-white .header-titles ::ng-deep .novo-icon,:host.novo-accent-white .header-title ::ng-deep .novo-icon{color:#fff}:host.novo-accent-white>section:first-of-type{border-bottom:2px solid #ffffff}:host.novo-theme-white>section:first-of-type{background:#ffffff;color:#3d464d;border-bottom:none}:host.novo-theme-white ::ng-deep .novo-title{color:inherit}:host.novo-theme-white ::ng-deep .novo-action button,:host.novo-theme-white ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-gray .header-titles ::ng-deep .novo-icon,:host.novo-accent-gray .header-title ::ng-deep .novo-icon{color:#9e9e9e}:host.novo-accent-gray>section:first-of-type{border-bottom:2px solid #9e9e9e}:host.novo-theme-gray>section:first-of-type{background:#9e9e9e;color:#3d464d;border-bottom:none}:host.novo-theme-gray ::ng-deep .novo-title{color:inherit}:host.novo-theme-gray ::ng-deep .novo-action button,:host.novo-theme-gray ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-grey .header-titles ::ng-deep .novo-icon,:host.novo-accent-grey .header-title ::ng-deep .novo-icon{color:#9e9e9e}:host.novo-accent-grey>section:first-of-type{border-bottom:2px solid #9e9e9e}:host.novo-theme-grey>section:first-of-type{background:#9e9e9e;color:#3d464d;border-bottom:none}:host.novo-theme-grey ::ng-deep .novo-title{color:inherit}:host.novo-theme-grey ::ng-deep .novo-action button,:host.novo-theme-grey ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-offWhite .header-titles ::ng-deep .novo-icon,:host.novo-accent-offWhite .header-title ::ng-deep .novo-icon{color:#f7f7f7}:host.novo-accent-offWhite>section:first-of-type{border-bottom:2px solid #f7f7f7}:host.novo-theme-offWhite>section:first-of-type{background:#f7f7f7;color:#3d464d;border-bottom:none}:host.novo-theme-offWhite ::ng-deep .novo-title{color:inherit}:host.novo-theme-offWhite ::ng-deep .novo-action button,:host.novo-theme-offWhite ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-bright .header-titles ::ng-deep .novo-icon,:host.novo-accent-bright .header-title ::ng-deep .novo-icon{color:#f7f7f7}:host.novo-accent-bright>section:first-of-type{border-bottom:2px solid #f7f7f7}:host.novo-theme-bright>section:first-of-type{background:#f7f7f7;color:#3d464d;border-bottom:none}:host.novo-theme-bright ::ng-deep .novo-title{color:inherit}:host.novo-theme-bright ::ng-deep .novo-action button,:host.novo-theme-bright ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-light .header-titles ::ng-deep .novo-icon,:host.novo-accent-light .header-title ::ng-deep .novo-icon{color:#dbdbdb}:host.novo-accent-light>section:first-of-type{border-bottom:2px solid #dbdbdb}:host.novo-theme-light>section:first-of-type{background:#dbdbdb;color:#3d464d;border-bottom:none}:host.novo-theme-light ::ng-deep .novo-title{color:inherit}:host.novo-theme-light ::ng-deep .novo-action button,:host.novo-theme-light ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-neutral .header-titles ::ng-deep .novo-icon,:host.novo-accent-neutral .header-title ::ng-deep .novo-icon{color:#4f5361}:host.novo-accent-neutral>section:first-of-type{border-bottom:2px solid #4f5361}:host.novo-theme-neutral>section:first-of-type{background:#4f5361;color:#fff;border-bottom:none}:host.novo-theme-neutral ::ng-deep .novo-title{color:inherit}:host.novo-theme-neutral ::ng-deep .novo-action button,:host.novo-theme-neutral ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-dark .header-titles ::ng-deep .novo-icon,:host.novo-accent-dark .header-title ::ng-deep .novo-icon{color:#3d464d}:host.novo-accent-dark>section:first-of-type{border-bottom:2px solid #3d464d}:host.novo-theme-dark>section:first-of-type{background:#3d464d;color:#fff;border-bottom:none}:host.novo-theme-dark ::ng-deep .novo-title{color:inherit}:host.novo-theme-dark ::ng-deep .novo-action button,:host.novo-theme-dark ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-orange .header-titles ::ng-deep .novo-icon,:host.novo-accent-orange .header-title ::ng-deep .novo-icon{color:#ff6900}:host.novo-accent-orange>section:first-of-type{border-bottom:2px solid #ff6900}:host.novo-theme-orange>section:first-of-type{background:#ff6900;color:#3d464d;border-bottom:none}:host.novo-theme-orange ::ng-deep .novo-title{color:inherit}:host.novo-theme-orange ::ng-deep .novo-action button,:host.novo-theme-orange ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-navigation .header-titles ::ng-deep .novo-icon,:host.novo-accent-navigation .header-title ::ng-deep .novo-icon{color:#202945}:host.novo-accent-navigation>section:first-of-type{border-bottom:2px solid #202945}:host.novo-theme-navigation>section:first-of-type{background:#202945;color:#fff;border-bottom:none}:host.novo-theme-navigation ::ng-deep .novo-title{color:inherit}:host.novo-theme-navigation ::ng-deep .novo-action button,:host.novo-theme-navigation ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-skyBlue .header-titles ::ng-deep .novo-icon,:host.novo-accent-skyBlue .header-title ::ng-deep .novo-icon{color:#009bdf}:host.novo-accent-skyBlue>section:first-of-type{border-bottom:2px solid #009bdf}:host.novo-theme-skyBlue>section:first-of-type{background:#009bdf;color:#fff;border-bottom:none}:host.novo-theme-skyBlue ::ng-deep .novo-title{color:inherit}:host.novo-theme-skyBlue ::ng-deep .novo-action button,:host.novo-theme-skyBlue ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-steel .header-titles ::ng-deep .novo-icon,:host.novo-accent-steel .header-title ::ng-deep .novo-icon{color:#5b6770}:host.novo-accent-steel>section:first-of-type{border-bottom:2px solid #5b6770}:host.novo-theme-steel>section:first-of-type{background:#5b6770;color:#fff;border-bottom:none}:host.novo-theme-steel ::ng-deep .novo-title{color:inherit}:host.novo-theme-steel ::ng-deep .novo-action button,:host.novo-theme-steel ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-metal .header-titles ::ng-deep .novo-icon,:host.novo-accent-metal .header-title ::ng-deep .novo-icon{color:#637893}:host.novo-accent-metal>section:first-of-type{border-bottom:2px solid #637893}:host.novo-theme-metal>section:first-of-type{background:#637893;color:#fff;border-bottom:none}:host.novo-theme-metal ::ng-deep .novo-title{color:inherit}:host.novo-theme-metal ::ng-deep .novo-action button,:host.novo-theme-metal ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-sand .header-titles ::ng-deep .novo-icon,:host.novo-accent-sand .header-title ::ng-deep .novo-icon{color:#f4f4f4}:host.novo-accent-sand>section:first-of-type{border-bottom:2px solid #f4f4f4}:host.novo-theme-sand>section:first-of-type{background:#f4f4f4;color:#3d464d;border-bottom:none}:host.novo-theme-sand ::ng-deep .novo-title{color:inherit}:host.novo-theme-sand ::ng-deep .novo-action button,:host.novo-theme-sand ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-silver .header-titles ::ng-deep .novo-icon,:host.novo-accent-silver .header-title ::ng-deep .novo-icon{color:#e2e2e2}:host.novo-accent-silver>section:first-of-type{border-bottom:2px solid #e2e2e2}:host.novo-theme-silver>section:first-of-type{background:#e2e2e2;color:#3d464d;border-bottom:none}:host.novo-theme-silver ::ng-deep .novo-title{color:inherit}:host.novo-theme-silver ::ng-deep .novo-action button,:host.novo-theme-silver ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-stone .header-titles ::ng-deep .novo-icon,:host.novo-accent-stone .header-title ::ng-deep .novo-icon{color:#bebebe}:host.novo-accent-stone>section:first-of-type{border-bottom:2px solid #bebebe}:host.novo-theme-stone>section:first-of-type{background:#bebebe;color:#3d464d;border-bottom:none}:host.novo-theme-stone ::ng-deep .novo-title{color:inherit}:host.novo-theme-stone ::ng-deep .novo-action button,:host.novo-theme-stone ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-ash .header-titles ::ng-deep .novo-icon,:host.novo-accent-ash .header-title ::ng-deep .novo-icon{color:#a0a0a0}:host.novo-accent-ash>section:first-of-type{border-bottom:2px solid #a0a0a0}:host.novo-theme-ash>section:first-of-type{background:#a0a0a0;color:#3d464d;border-bottom:none}:host.novo-theme-ash ::ng-deep .novo-title{color:inherit}:host.novo-theme-ash ::ng-deep .novo-action button,:host.novo-theme-ash ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-slate .header-titles ::ng-deep .novo-icon,:host.novo-accent-slate .header-title ::ng-deep .novo-icon{color:#707070}:host.novo-accent-slate>section:first-of-type{border-bottom:2px solid #707070}:host.novo-theme-slate>section:first-of-type{background:#707070;color:#fff;border-bottom:none}:host.novo-theme-slate ::ng-deep .novo-title{color:inherit}:host.novo-theme-slate ::ng-deep .novo-action button,:host.novo-theme-slate ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-onyx .header-titles ::ng-deep .novo-icon,:host.novo-accent-onyx .header-title ::ng-deep .novo-icon{color:#526980}:host.novo-accent-onyx>section:first-of-type{border-bottom:2px solid #526980}:host.novo-theme-onyx>section:first-of-type{background:#526980;color:#fff;border-bottom:none}:host.novo-theme-onyx ::ng-deep .novo-title{color:inherit}:host.novo-theme-onyx ::ng-deep .novo-action button,:host.novo-theme-onyx ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-charcoal .header-titles ::ng-deep .novo-icon,:host.novo-accent-charcoal .header-title ::ng-deep .novo-icon{color:#282828}:host.novo-accent-charcoal>section:first-of-type{border-bottom:2px solid #282828}:host.novo-theme-charcoal>section:first-of-type{background:#282828;color:#fff;border-bottom:none}:host.novo-theme-charcoal ::ng-deep .novo-title{color:inherit}:host.novo-theme-charcoal ::ng-deep .novo-action button,:host.novo-theme-charcoal ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-moonlight .header-titles ::ng-deep .novo-icon,:host.novo-accent-moonlight .header-title ::ng-deep .novo-icon{color:#1a242f}:host.novo-accent-moonlight>section:first-of-type{border-bottom:2px solid #1a242f}:host.novo-theme-moonlight>section:first-of-type{background:#1a242f;color:#fff;border-bottom:none}:host.novo-theme-moonlight ::ng-deep .novo-title{color:inherit}:host.novo-theme-moonlight ::ng-deep .novo-action button,:host.novo-theme-moonlight ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-midnight .header-titles ::ng-deep .novo-icon,:host.novo-accent-midnight .header-title ::ng-deep .novo-icon{color:#202945}:host.novo-accent-midnight>section:first-of-type{border-bottom:2px solid #202945}:host.novo-theme-midnight>section:first-of-type{background:#202945;color:#fff;border-bottom:none}:host.novo-theme-midnight ::ng-deep .novo-title{color:inherit}:host.novo-theme-midnight ::ng-deep .novo-action button,:host.novo-theme-midnight ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-darkness .header-titles ::ng-deep .novo-icon,:host.novo-accent-darkness .header-title ::ng-deep .novo-icon{color:#161f27}:host.novo-accent-darkness>section:first-of-type{border-bottom:2px solid #161f27}:host.novo-theme-darkness>section:first-of-type{background:#161f27;color:#fff;border-bottom:none}:host.novo-theme-darkness ::ng-deep .novo-title{color:inherit}:host.novo-theme-darkness ::ng-deep .novo-action button,:host.novo-theme-darkness ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-navy .header-titles ::ng-deep .novo-icon,:host.novo-accent-navy .header-title ::ng-deep .novo-icon{color:#0d2d42}:host.novo-accent-navy>section:first-of-type{border-bottom:2px solid #0d2d42}:host.novo-theme-navy>section:first-of-type{background:#0d2d42;color:#fff;border-bottom:none}:host.novo-theme-navy ::ng-deep .novo-title{color:inherit}:host.novo-theme-navy ::ng-deep .novo-action button,:host.novo-theme-navy ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-aqua .header-titles ::ng-deep .novo-icon,:host.novo-accent-aqua .header-title ::ng-deep .novo-icon{color:#3bafda}:host.novo-accent-aqua>section:first-of-type{border-bottom:2px solid #3bafda}:host.novo-theme-aqua>section:first-of-type{background:#3bafda;color:#3d464d;border-bottom:none}:host.novo-theme-aqua ::ng-deep .novo-title{color:inherit}:host.novo-theme-aqua ::ng-deep .novo-action button,:host.novo-theme-aqua ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-ocean .header-titles ::ng-deep .novo-icon,:host.novo-accent-ocean .header-title ::ng-deep .novo-icon{color:#4a89dc}:host.novo-accent-ocean>section:first-of-type{border-bottom:2px solid #4a89dc}:host.novo-theme-ocean>section:first-of-type{background:#4a89dc;color:#fff;border-bottom:none}:host.novo-theme-ocean ::ng-deep .novo-title{color:inherit}:host.novo-theme-ocean ::ng-deep .novo-action button,:host.novo-theme-ocean ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-mint .header-titles ::ng-deep .novo-icon,:host.novo-accent-mint .header-title ::ng-deep .novo-icon{color:#37bc9b}:host.novo-accent-mint>section:first-of-type{border-bottom:2px solid #37bc9b}:host.novo-theme-mint>section:first-of-type{background:#37bc9b;color:#3d464d;border-bottom:none}:host.novo-theme-mint ::ng-deep .novo-title{color:inherit}:host.novo-theme-mint ::ng-deep .novo-action button,:host.novo-theme-mint ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-grass .header-titles ::ng-deep .novo-icon,:host.novo-accent-grass .header-title ::ng-deep .novo-icon{color:#8cc152}:host.novo-accent-grass>section:first-of-type{border-bottom:2px solid #8cc152}:host.novo-theme-grass>section:first-of-type{background:#8cc152;color:#fff;border-bottom:none}:host.novo-theme-grass ::ng-deep .novo-title{color:inherit}:host.novo-theme-grass ::ng-deep .novo-action button,:host.novo-theme-grass ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-sunflower .header-titles ::ng-deep .novo-icon,:host.novo-accent-sunflower .header-title ::ng-deep .novo-icon{color:#f6b042}:host.novo-accent-sunflower>section:first-of-type{border-bottom:2px solid #f6b042}:host.novo-theme-sunflower>section:first-of-type{background:#f6b042;color:#fff;border-bottom:none}:host.novo-theme-sunflower ::ng-deep .novo-title{color:inherit}:host.novo-theme-sunflower ::ng-deep .novo-action button,:host.novo-theme-sunflower ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-bittersweet .header-titles ::ng-deep .novo-icon,:host.novo-accent-bittersweet .header-title ::ng-deep .novo-icon{color:#eb6845}:host.novo-accent-bittersweet>section:first-of-type{border-bottom:2px solid #eb6845}:host.novo-theme-bittersweet>section:first-of-type{background:#eb6845;color:#fff;border-bottom:none}:host.novo-theme-bittersweet ::ng-deep .novo-title{color:inherit}:host.novo-theme-bittersweet ::ng-deep .novo-action button,:host.novo-theme-bittersweet ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-grapefruit .header-titles ::ng-deep .novo-icon,:host.novo-accent-grapefruit .header-title ::ng-deep .novo-icon{color:#da4453}:host.novo-accent-grapefruit>section:first-of-type{border-bottom:2px solid #da4453}:host.novo-theme-grapefruit>section:first-of-type{background:#da4453;color:#fff;border-bottom:none}:host.novo-theme-grapefruit ::ng-deep .novo-title{color:inherit}:host.novo-theme-grapefruit ::ng-deep .novo-action button,:host.novo-theme-grapefruit ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-carnation .header-titles ::ng-deep .novo-icon,:host.novo-accent-carnation .header-title ::ng-deep .novo-icon{color:#d770ad}:host.novo-accent-carnation>section:first-of-type{border-bottom:2px solid #d770ad}:host.novo-theme-carnation>section:first-of-type{background:#d770ad;color:#fff;border-bottom:none}:host.novo-theme-carnation ::ng-deep .novo-title{color:inherit}:host.novo-theme-carnation ::ng-deep .novo-action button,:host.novo-theme-carnation ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-lavender .header-titles ::ng-deep .novo-icon,:host.novo-accent-lavender .header-title ::ng-deep .novo-icon{color:#967adc}:host.novo-accent-lavender>section:first-of-type{border-bottom:2px solid #967adc}:host.novo-theme-lavender>section:first-of-type{background:#967adc;color:#fff;border-bottom:none}:host.novo-theme-lavender ::ng-deep .novo-title{color:inherit}:host.novo-theme-lavender ::ng-deep .novo-action button,:host.novo-theme-lavender ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-mountain .header-titles ::ng-deep .novo-icon,:host.novo-accent-mountain .header-title ::ng-deep .novo-icon{color:#9678b6}:host.novo-accent-mountain>section:first-of-type{border-bottom:2px solid #9678b6}:host.novo-theme-mountain>section:first-of-type{background:#9678b6;color:#fff;border-bottom:none}:host.novo-theme-mountain ::ng-deep .novo-title{color:inherit}:host.novo-theme-mountain ::ng-deep .novo-action button,:host.novo-theme-mountain ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-info .header-titles ::ng-deep .novo-icon,:host.novo-accent-info .header-title ::ng-deep .novo-icon{color:#4a89dc}:host.novo-accent-info>section:first-of-type{border-bottom:2px solid #4a89dc}:host.novo-theme-info>section:first-of-type{background:#4a89dc;color:#fff;border-bottom:none}:host.novo-theme-info ::ng-deep .novo-title{color:inherit}:host.novo-theme-info ::ng-deep .novo-action button,:host.novo-theme-info ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-positive .header-titles ::ng-deep .novo-icon,:host.novo-accent-positive .header-title ::ng-deep .novo-icon{color:#4a89dc}:host.novo-accent-positive>section:first-of-type{border-bottom:2px solid #4a89dc}:host.novo-theme-positive>section:first-of-type{background:#4a89dc;color:#fff;border-bottom:none}:host.novo-theme-positive ::ng-deep .novo-title{color:inherit}:host.novo-theme-positive ::ng-deep .novo-action button,:host.novo-theme-positive ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-success .header-titles ::ng-deep .novo-icon,:host.novo-accent-success .header-title ::ng-deep .novo-icon{color:#8cc152}:host.novo-accent-success>section:first-of-type{border-bottom:2px solid #8cc152}:host.novo-theme-success>section:first-of-type{background:#8cc152;color:#fff;border-bottom:none}:host.novo-theme-success ::ng-deep .novo-title{color:inherit}:host.novo-theme-success ::ng-deep .novo-action button,:host.novo-theme-success ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-negative .header-titles ::ng-deep .novo-icon,:host.novo-accent-negative .header-title ::ng-deep .novo-icon{color:#da4453}:host.novo-accent-negative>section:first-of-type{border-bottom:2px solid #da4453}:host.novo-theme-negative>section:first-of-type{background:#da4453;color:#fff;border-bottom:none}:host.novo-theme-negative ::ng-deep .novo-title{color:inherit}:host.novo-theme-negative ::ng-deep .novo-action button,:host.novo-theme-negative ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-danger .header-titles ::ng-deep .novo-icon,:host.novo-accent-danger .header-title ::ng-deep .novo-icon{color:#da4453}:host.novo-accent-danger>section:first-of-type{border-bottom:2px solid #da4453}:host.novo-theme-danger>section:first-of-type{background:#da4453;color:#fff;border-bottom:none}:host.novo-theme-danger ::ng-deep .novo-title{color:inherit}:host.novo-theme-danger ::ng-deep .novo-action button,:host.novo-theme-danger ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-error .header-titles ::ng-deep .novo-icon,:host.novo-accent-error .header-title ::ng-deep .novo-icon{color:#da4453}:host.novo-accent-error>section:first-of-type{border-bottom:2px solid #da4453}:host.novo-theme-error>section:first-of-type{background:#da4453;color:#fff;border-bottom:none}:host.novo-theme-error ::ng-deep .novo-title{color:inherit}:host.novo-theme-error ::ng-deep .novo-action button,:host.novo-theme-error ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-warning .header-titles ::ng-deep .novo-icon,:host.novo-accent-warning .header-title ::ng-deep .novo-icon{color:#f6b042}:host.novo-accent-warning>section:first-of-type{border-bottom:2px solid #f6b042}:host.novo-theme-warning>section:first-of-type{background:#f6b042;color:#fff;border-bottom:none}:host.novo-theme-warning ::ng-deep .novo-title{color:inherit}:host.novo-theme-warning ::ng-deep .novo-action button,:host.novo-theme-warning ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-empty .header-titles ::ng-deep .novo-icon,:host.novo-accent-empty .header-title ::ng-deep .novo-icon{color:#cccdcc}:host.novo-accent-empty>section:first-of-type{border-bottom:2px solid #cccdcc}:host.novo-theme-empty>section:first-of-type{background:#cccdcc;color:#3d464d;border-bottom:none}:host.novo-theme-empty ::ng-deep .novo-title{color:inherit}:host.novo-theme-empty ::ng-deep .novo-action button,:host.novo-theme-empty ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-disabled .header-titles ::ng-deep .novo-icon,:host.novo-accent-disabled .header-title ::ng-deep .novo-icon{color:#bebebe}:host.novo-accent-disabled>section:first-of-type{border-bottom:2px solid #bebebe}:host.novo-theme-disabled>section:first-of-type{background:#bebebe;color:#3d464d;border-bottom:none}:host.novo-theme-disabled ::ng-deep .novo-title{color:inherit}:host.novo-theme-disabled ::ng-deep .novo-action button,:host.novo-theme-disabled ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-background .header-titles ::ng-deep .novo-icon,:host.novo-accent-background .header-title ::ng-deep .novo-icon{color:#f7f7f7}:host.novo-accent-background>section:first-of-type{border-bottom:2px solid #f7f7f7}:host.novo-theme-background>section:first-of-type{background:#f7f7f7;color:#3d464d;border-bottom:none}:host.novo-theme-background ::ng-deep .novo-title{color:inherit}:host.novo-theme-background ::ng-deep .novo-action button,:host.novo-theme-background ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-backgroundDark .header-titles ::ng-deep .novo-icon,:host.novo-accent-backgroundDark .header-title ::ng-deep .novo-icon{color:#e2e2e2}:host.novo-accent-backgroundDark>section:first-of-type{border-bottom:2px solid #e2e2e2}:host.novo-theme-backgroundDark>section:first-of-type{background:#e2e2e2;color:#3d464d;border-bottom:none}:host.novo-theme-backgroundDark ::ng-deep .novo-title{color:inherit}:host.novo-theme-backgroundDark ::ng-deep .novo-action button,:host.novo-theme-backgroundDark ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-presentation .header-titles ::ng-deep .novo-icon,:host.novo-accent-presentation .header-title ::ng-deep .novo-icon{color:#5b6770}:host.novo-accent-presentation>section:first-of-type{border-bottom:2px solid #5b6770}:host.novo-theme-presentation>section:first-of-type{background:#5b6770;color:#fff;border-bottom:none}:host.novo-theme-presentation ::ng-deep .novo-title{color:inherit}:host.novo-theme-presentation ::ng-deep .novo-action button,:host.novo-theme-presentation ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-bullhorn .header-titles ::ng-deep .novo-icon,:host.novo-accent-bullhorn .header-title ::ng-deep .novo-icon{color:#ff6900}:host.novo-accent-bullhorn>section:first-of-type{border-bottom:2px solid #ff6900}:host.novo-theme-bullhorn>section:first-of-type{background:#ff6900;color:#3d464d;border-bottom:none}:host.novo-theme-bullhorn ::ng-deep .novo-title{color:inherit}:host.novo-theme-bullhorn ::ng-deep .novo-action button,:host.novo-theme-bullhorn ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-pulse .header-titles ::ng-deep .novo-icon,:host.novo-accent-pulse .header-title ::ng-deep .novo-icon{color:#3bafda}:host.novo-accent-pulse>section:first-of-type{border-bottom:2px solid #3bafda}:host.novo-theme-pulse>section:first-of-type{background:#3bafda;color:#3d464d;border-bottom:none}:host.novo-theme-pulse ::ng-deep .novo-title{color:inherit}:host.novo-theme-pulse ::ng-deep .novo-action button,:host.novo-theme-pulse ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-company .header-titles ::ng-deep .novo-icon,:host.novo-accent-company .header-title ::ng-deep .novo-icon{color:#39d}:host.novo-accent-company>section:first-of-type{border-bottom:2px solid #3399dd}:host.novo-theme-company>section:first-of-type{background:#3399dd;color:#fff;border-bottom:none}:host.novo-theme-company ::ng-deep .novo-title{color:inherit}:host.novo-theme-company ::ng-deep .novo-action button,:host.novo-theme-company ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-candidate .header-titles ::ng-deep .novo-icon,:host.novo-accent-candidate .header-title ::ng-deep .novo-icon{color:#4b7}:host.novo-accent-candidate>section:first-of-type{border-bottom:2px solid #44bb77}:host.novo-theme-candidate>section:first-of-type{background:#44bb77;color:#fff;border-bottom:none}:host.novo-theme-candidate ::ng-deep .novo-title{color:inherit}:host.novo-theme-candidate ::ng-deep .novo-action button,:host.novo-theme-candidate ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-lead .header-titles ::ng-deep .novo-icon,:host.novo-accent-lead .header-title ::ng-deep .novo-icon{color:#a69}:host.novo-accent-lead>section:first-of-type{border-bottom:2px solid #aa6699}:host.novo-theme-lead>section:first-of-type{background:#aa6699;color:#fff;border-bottom:none}:host.novo-theme-lead ::ng-deep .novo-title{color:inherit}:host.novo-theme-lead ::ng-deep .novo-action button,:host.novo-theme-lead ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-contact .header-titles ::ng-deep .novo-icon,:host.novo-accent-contact .header-title ::ng-deep .novo-icon{color:#fa4}:host.novo-accent-contact>section:first-of-type{border-bottom:2px solid #ffaa44}:host.novo-theme-contact>section:first-of-type{background:#ffaa44;color:#fff;border-bottom:none}:host.novo-theme-contact ::ng-deep .novo-title{color:inherit}:host.novo-theme-contact ::ng-deep .novo-action button,:host.novo-theme-contact ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-clientcontact .header-titles ::ng-deep .novo-icon,:host.novo-accent-clientcontact .header-title ::ng-deep .novo-icon{color:#fa4}:host.novo-accent-clientcontact>section:first-of-type{border-bottom:2px solid #ffaa44}:host.novo-theme-clientcontact>section:first-of-type{background:#ffaa44;color:#fff;border-bottom:none}:host.novo-theme-clientcontact ::ng-deep .novo-title{color:inherit}:host.novo-theme-clientcontact ::ng-deep .novo-action button,:host.novo-theme-clientcontact ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-opportunity .header-titles ::ng-deep .novo-icon,:host.novo-accent-opportunity .header-title ::ng-deep .novo-icon{color:#625}:host.novo-accent-opportunity>section:first-of-type{border-bottom:2px solid #662255}:host.novo-theme-opportunity>section:first-of-type{background:#662255;color:#fff;border-bottom:none}:host.novo-theme-opportunity ::ng-deep .novo-title{color:inherit}:host.novo-theme-opportunity ::ng-deep .novo-action button,:host.novo-theme-opportunity ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-job .header-titles ::ng-deep .novo-icon,:host.novo-accent-job .header-title ::ng-deep .novo-icon{color:#b56}:host.novo-accent-job>section:first-of-type{border-bottom:2px solid #bb5566}:host.novo-theme-job>section:first-of-type{background:#bb5566;color:#fff;border-bottom:none}:host.novo-theme-job ::ng-deep .novo-title{color:inherit}:host.novo-theme-job ::ng-deep .novo-action button,:host.novo-theme-job ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-joborder .header-titles ::ng-deep .novo-icon,:host.novo-accent-joborder .header-title ::ng-deep .novo-icon{color:#b56}:host.novo-accent-joborder>section:first-of-type{border-bottom:2px solid #bb5566}:host.novo-theme-joborder>section:first-of-type{background:#bb5566;color:#fff;border-bottom:none}:host.novo-theme-joborder ::ng-deep .novo-title{color:inherit}:host.novo-theme-joborder ::ng-deep .novo-action button,:host.novo-theme-joborder ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-submission .header-titles ::ng-deep .novo-icon,:host.novo-accent-submission .header-title ::ng-deep .novo-icon{color:#a9adbb}:host.novo-accent-submission>section:first-of-type{border-bottom:2px solid #a9adbb}:host.novo-theme-submission>section:first-of-type{background:#a9adbb;color:#3d464d;border-bottom:none}:host.novo-theme-submission ::ng-deep .novo-title{color:inherit}:host.novo-theme-submission ::ng-deep .novo-action button,:host.novo-theme-submission ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-sendout .header-titles ::ng-deep .novo-icon,:host.novo-accent-sendout .header-title ::ng-deep .novo-icon{color:#747884}:host.novo-accent-sendout>section:first-of-type{border-bottom:2px solid #747884}:host.novo-theme-sendout>section:first-of-type{background:#747884;color:#fff;border-bottom:none}:host.novo-theme-sendout ::ng-deep .novo-title{color:inherit}:host.novo-theme-sendout ::ng-deep .novo-action button,:host.novo-theme-sendout ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-placement .header-titles ::ng-deep .novo-icon,:host.novo-accent-placement .header-title ::ng-deep .novo-icon{color:#0b344f}:host.novo-accent-placement>section:first-of-type{border-bottom:2px solid #0b344f}:host.novo-theme-placement>section:first-of-type{background:#0b344f;color:#fff;border-bottom:none}:host.novo-theme-placement ::ng-deep .novo-title{color:inherit}:host.novo-theme-placement ::ng-deep .novo-action button,:host.novo-theme-placement ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-note .header-titles ::ng-deep .novo-icon,:host.novo-accent-note .header-title ::ng-deep .novo-icon{color:#747884}:host.novo-accent-note>section:first-of-type{border-bottom:2px solid #747884}:host.novo-theme-note>section:first-of-type{background:#747884;color:#fff;border-bottom:none}:host.novo-theme-note ::ng-deep .novo-title{color:inherit}:host.novo-theme-note ::ng-deep .novo-action button,:host.novo-theme-note ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-contract .header-titles ::ng-deep .novo-icon,:host.novo-accent-contract .header-title ::ng-deep .novo-icon{color:#454ea0}:host.novo-accent-contract>section:first-of-type{border-bottom:2px solid #454ea0}:host.novo-theme-contract>section:first-of-type{background:#454ea0;color:#fff;border-bottom:none}:host.novo-theme-contract ::ng-deep .novo-title{color:inherit}:host.novo-theme-contract ::ng-deep .novo-action button,:host.novo-theme-contract ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-jobCode .header-titles ::ng-deep .novo-icon,:host.novo-accent-jobCode .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-jobCode>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-jobCode>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-jobCode ::ng-deep .novo-title{color:inherit}:host.novo-theme-jobCode ::ng-deep .novo-action button,:host.novo-theme-jobCode ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-earnCode .header-titles ::ng-deep .novo-icon,:host.novo-accent-earnCode .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-earnCode>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-earnCode>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-earnCode ::ng-deep .novo-title{color:inherit}:host.novo-theme-earnCode ::ng-deep .novo-action button,:host.novo-theme-earnCode ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-invoiceStatement .header-titles ::ng-deep .novo-icon,:host.novo-accent-invoiceStatement .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-invoiceStatement>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-invoiceStatement>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-invoiceStatement ::ng-deep .novo-title{color:inherit}:host.novo-theme-invoiceStatement ::ng-deep .novo-action button,:host.novo-theme-invoiceStatement ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-billableCharge .header-titles ::ng-deep .novo-icon,:host.novo-accent-billableCharge .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-billableCharge>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-billableCharge>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-billableCharge ::ng-deep .novo-title{color:inherit}:host.novo-theme-billableCharge ::ng-deep .novo-action button,:host.novo-theme-billableCharge ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-payableCharge .header-titles ::ng-deep .novo-icon,:host.novo-accent-payableCharge .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-payableCharge>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-payableCharge>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-payableCharge ::ng-deep .novo-title{color:inherit}:host.novo-theme-payableCharge ::ng-deep .novo-action button,:host.novo-theme-payableCharge ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-user .header-titles ::ng-deep .novo-icon,:host.novo-accent-user .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-user>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-user>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-user ::ng-deep .novo-title{color:inherit}:host.novo-theme-user ::ng-deep .novo-action button,:host.novo-theme-user ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-corporateUser .header-titles ::ng-deep .novo-icon,:host.novo-accent-corporateUser .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-corporateUser>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-corporateUser>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-corporateUser ::ng-deep .novo-title{color:inherit}:host.novo-theme-corporateUser ::ng-deep .novo-action button,:host.novo-theme-corporateUser ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-distributionList .header-titles ::ng-deep .novo-icon,:host.novo-accent-distributionList .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-distributionList>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-distributionList>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-distributionList ::ng-deep .novo-title{color:inherit}:host.novo-theme-distributionList ::ng-deep .novo-action button,:host.novo-theme-distributionList ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-credential .header-titles ::ng-deep .novo-icon,:host.novo-accent-credential .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-credential>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-credential>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-credential ::ng-deep .novo-title{color:inherit}:host.novo-theme-credential ::ng-deep .novo-action button,:host.novo-theme-credential ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-person .header-titles ::ng-deep .novo-icon,:host.novo-accent-person .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-person>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-person>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-person ::ng-deep .novo-title{color:inherit}:host.novo-theme-person ::ng-deep .novo-action button,:host.novo-theme-person ::ng-deep .novo-action .novo-button{color:inherit}:host>main{padding:4px 16px 4px 32px}:host>::ng-deep novo-nav{padding-left:16px}:host>::ng-deep novo-nav.block{padding-left:0}:host.condensed .header-title,:host.condensed .header-titles{line-height:1.375}:host.condensed>section{height:3.6rem}:host.condensed ::ng-deep .novo-icon{margin-right:.5rem!important;font-size:1.8rem}:host .header-actions{display:flex;flex-flow:row nowrap}\n"], components: [{ type: i3.NovoIconComponent, selector: "novo-icon", inputs: ["raised", "theme", "shape", "color", "size", "smaller", "larger", "alt", "name"] }, { type: i2.NovoTitle, selector: "novo-title,[novo-title]" }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
127
124
  __decorate([
128
125
  BooleanInput(),
129
126
  __metadata("design:type", Boolean)
130
127
  ], NovoHeaderComponent.prototype, "condensed", void 0);
131
128
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NovoHeaderComponent, decorators: [{
132
129
  type: Component,
133
- args: [{
134
- selector: 'novo-header,header[theme],header[accent]',
135
- template: `
130
+ args: [{ selector: 'novo-header,header[theme],header[accent]', template: `
136
131
  <section>
137
132
  <div class="header-title">
138
133
  <ng-content select="[prefix]"></ng-content>
@@ -159,8 +154,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
159
154
  <ng-content select="[suffix]"></ng-content>
160
155
  </section>
161
156
  <ng-content></ng-content>
162
- `,
163
- }]
157
+ `, styles: [":host{display:block;background-color:#fff;background-color:var(--background-bright, #ffffff)}:host .spacer{flex:1 1 0%}:host[size=small]>section{height:3.6rem}:host.header-size-small>section{height:3.2rem}:host.header-size-default>section{height:5rem}:host.header-size-large>section{height:6.4rem}:host>section{display:flex;flex-direction:row;align-items:center;padding:0 1.25rem;gap:.5rem;box-sizing:border-box}:host>section .header-icon{font-size:var(--font-size-2xl)}:host>section div.header-title{display:flex;align-items:center;max-width:calc(100% - 40px);gap:.5rem}:host>section div.header-title ::ng-deep novo-icon{margin-right:1rem}:host>section .header-titles{display:flex;flex-direction:column;max-width:100%}:host>section .header-titles .novo-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host>section .header-titles h1{font-weight:500;line-height:1.5;color:#3d464d;color:var(--text-main, #3d464d);font-size:var(--font-size-title);transition:color .2s ease-out,opacity .2s ease-out;vertical-align:middle;margin:0;padding:0 20px 0 0;display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host>section .header-titles h1.text-capitalize{text-transform:capitalize}:host>section .header-titles h1.text-uppercase{text-transform:uppercase}:host>section .header-titles h1.text-nowrap{white-space:nowrap}:host>section .header-titles h1.text-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host>section .header-titles h1.text-size-default{font-size:inherit}:host>section .header-titles h1.text-size-body{font-size:1.3rem}:host>section .header-titles h1.text-size-xs{font-size:1rem}:host>section .header-titles h1.text-size-sm{font-size:1.2rem}:host>section .header-titles h1.text-size-md{font-size:1.3rem}:host>section .header-titles h1.text-size-lg{font-size:1.6rem}:host>section .header-titles h1.text-size-xl{font-size:2rem}:host>section .header-titles h1.text-size-2xl{font-size:2.6rem}:host>section .header-titles h1.text-size-3xl{font-size:3.2rem}:host>section .header-titles h1.text-size-smaller{font-size:.8em}:host>section .header-titles h1.text-size-larger{font-size:1.2em}:host>section .header-titles h1.text-color-black{color:#000}:host>section .header-titles h1.text-color-white{color:#fff}:host>section .header-titles h1.text-color-gray{color:#9e9e9e}:host>section .header-titles h1.text-color-grey{color:#9e9e9e}:host>section .header-titles h1.text-color-offWhite{color:#f7f7f7}:host>section .header-titles h1.text-color-bright{color:#f7f7f7}:host>section .header-titles h1.text-color-light{color:#dbdbdb}:host>section .header-titles h1.text-color-neutral{color:#4f5361}:host>section .header-titles h1.text-color-dark{color:#3d464d}:host>section .header-titles h1.text-color-orange{color:#ff6900}:host>section .header-titles h1.text-color-navigation{color:#202945}:host>section .header-titles h1.text-color-skyBlue{color:#009bdf}:host>section .header-titles h1.text-color-steel{color:#5b6770}:host>section .header-titles h1.text-color-metal{color:#637893}:host>section .header-titles h1.text-color-sand{color:#f4f4f4}:host>section .header-titles h1.text-color-silver{color:#e2e2e2}:host>section .header-titles h1.text-color-stone{color:#bebebe}:host>section .header-titles h1.text-color-ash{color:#a0a0a0}:host>section .header-titles h1.text-color-slate{color:#707070}:host>section .header-titles h1.text-color-onyx{color:#526980}:host>section .header-titles h1.text-color-charcoal{color:#282828}:host>section .header-titles h1.text-color-moonlight{color:#1a242f}:host>section .header-titles h1.text-color-midnight{color:#202945}:host>section .header-titles h1.text-color-darkness{color:#161f27}:host>section .header-titles h1.text-color-navy{color:#0d2d42}:host>section .header-titles h1.text-color-aqua{color:#3bafda}:host>section .header-titles h1.text-color-ocean{color:#4a89dc}:host>section .header-titles h1.text-color-mint{color:#37bc9b}:host>section .header-titles h1.text-color-grass{color:#8cc152}:host>section .header-titles h1.text-color-sunflower{color:#f6b042}:host>section .header-titles h1.text-color-bittersweet{color:#eb6845}:host>section .header-titles h1.text-color-grapefruit{color:#da4453}:host>section .header-titles h1.text-color-carnation{color:#d770ad}:host>section .header-titles h1.text-color-lavender{color:#967adc}:host>section .header-titles h1.text-color-mountain{color:#9678b6}:host>section .header-titles h1.text-color-info{color:#4a89dc}:host>section .header-titles h1.text-color-positive{color:#4a89dc}:host>section .header-titles h1.text-color-success{color:#8cc152}:host>section .header-titles h1.text-color-negative{color:#da4453}:host>section .header-titles h1.text-color-danger{color:#da4453}:host>section .header-titles h1.text-color-error{color:#da4453}:host>section .header-titles h1.text-color-warning{color:#f6b042}:host>section .header-titles h1.text-color-empty{color:#cccdcc}:host>section .header-titles h1.text-color-disabled{color:#bebebe}:host>section .header-titles h1.text-color-background{color:#f7f7f7}:host>section .header-titles h1.text-color-backgroundDark{color:#e2e2e2}:host>section .header-titles h1.text-color-presentation{color:#5b6770}:host>section .header-titles h1.text-color-bullhorn{color:#ff6900}:host>section .header-titles h1.text-color-pulse{color:#3bafda}:host>section .header-titles h1.text-color-company{color:#39d}:host>section .header-titles h1.text-color-candidate{color:#4b7}:host>section .header-titles h1.text-color-lead{color:#a69}:host>section .header-titles h1.text-color-contact{color:#fa4}:host>section .header-titles h1.text-color-clientcontact{color:#fa4}:host>section .header-titles h1.text-color-opportunity{color:#625}:host>section .header-titles h1.text-color-job{color:#b56}:host>section .header-titles h1.text-color-joborder{color:#b56}:host>section .header-titles h1.text-color-submission{color:#a9adbb}:host>section .header-titles h1.text-color-sendout{color:#747884}:host>section .header-titles h1.text-color-placement{color:#0b344f}:host>section .header-titles h1.text-color-note{color:#747884}:host>section .header-titles h1.text-color-contract{color:#454ea0}:host>section .header-titles h1.text-color-jobCode{color:#696d79}:host>section .header-titles h1.text-color-earnCode{color:#696d79}:host>section .header-titles h1.text-color-invoiceStatement{color:#696d79}:host>section .header-titles h1.text-color-billableCharge{color:#696d79}:host>section .header-titles h1.text-color-payableCharge{color:#696d79}:host>section .header-titles h1.text-color-user{color:#696d79}:host>section .header-titles h1.text-color-corporateUser{color:#696d79}:host>section .header-titles h1.text-color-distributionList{color:#696d79}:host>section .header-titles h1.text-color-credential{color:#696d79}:host>section .header-titles h1.text-color-person{color:#696d79}:host>section .header-titles h1.margin-before{margin-top:.4rem}:host>section .header-titles h1.margin-after{margin-bottom:.8rem}:host>section .header-titles h1.text-length-small{max-width:40ch}:host>section .header-titles h1.text-length-medium{max-width:55ch}:host>section .header-titles h1.text-length-large{max-width:70ch}:host>section .header-titles h1.text-weight-hairline{font-weight:100}:host>section .header-titles h1.text-weight-thin{font-weight:200}:host>section .header-titles h1.text-weight-light{font-weight:300}:host>section .header-titles h1.text-weight-normal{font-weight:400}:host>section .header-titles h1.text-weight-medium{font-weight:500}:host>section .header-titles h1.text-weight-semibold{font-weight:600}:host>section .header-titles h1.text-weight-bold{font-weight:700}:host>section .header-titles h1.text-weight-extrabold{font-weight:800}:host>section .header-titles h1.text-weight-heavy{font-weight:900}:host>section .header-titles h1.text-weight-lighter{font-weight:lighter}:host>section .header-titles h1.text-weight-bolder{font-weight:bolder}:host>section>::ng-deep section{flex:2 2 250px;min-width:100px}:host>section ::ng-deep utils,:host>section ::ng-deep novo-utils{display:flex;align-items:center;justify-content:flex-start;gap:.5rem}:host>section ::ng-deep .novo-action{display:flex}:host.novo-accent-black .header-titles ::ng-deep .novo-icon,:host.novo-accent-black .header-title ::ng-deep .novo-icon{color:#000}:host.novo-accent-black>section:first-of-type{border-bottom:2px solid #000000}:host.novo-theme-black>section:first-of-type{background:#000000;color:#fff;border-bottom:none}:host.novo-theme-black ::ng-deep .novo-title{color:inherit}:host.novo-theme-black ::ng-deep .novo-action button,:host.novo-theme-black ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-white .header-titles ::ng-deep .novo-icon,:host.novo-accent-white .header-title ::ng-deep .novo-icon{color:#fff}:host.novo-accent-white>section:first-of-type{border-bottom:2px solid #ffffff}:host.novo-theme-white>section:first-of-type{background:#ffffff;color:#3d464d;border-bottom:none}:host.novo-theme-white ::ng-deep .novo-title{color:inherit}:host.novo-theme-white ::ng-deep .novo-action button,:host.novo-theme-white ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-gray .header-titles ::ng-deep .novo-icon,:host.novo-accent-gray .header-title ::ng-deep .novo-icon{color:#9e9e9e}:host.novo-accent-gray>section:first-of-type{border-bottom:2px solid #9e9e9e}:host.novo-theme-gray>section:first-of-type{background:#9e9e9e;color:#3d464d;border-bottom:none}:host.novo-theme-gray ::ng-deep .novo-title{color:inherit}:host.novo-theme-gray ::ng-deep .novo-action button,:host.novo-theme-gray ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-grey .header-titles ::ng-deep .novo-icon,:host.novo-accent-grey .header-title ::ng-deep .novo-icon{color:#9e9e9e}:host.novo-accent-grey>section:first-of-type{border-bottom:2px solid #9e9e9e}:host.novo-theme-grey>section:first-of-type{background:#9e9e9e;color:#3d464d;border-bottom:none}:host.novo-theme-grey ::ng-deep .novo-title{color:inherit}:host.novo-theme-grey ::ng-deep .novo-action button,:host.novo-theme-grey ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-offWhite .header-titles ::ng-deep .novo-icon,:host.novo-accent-offWhite .header-title ::ng-deep .novo-icon{color:#f7f7f7}:host.novo-accent-offWhite>section:first-of-type{border-bottom:2px solid #f7f7f7}:host.novo-theme-offWhite>section:first-of-type{background:#f7f7f7;color:#3d464d;border-bottom:none}:host.novo-theme-offWhite ::ng-deep .novo-title{color:inherit}:host.novo-theme-offWhite ::ng-deep .novo-action button,:host.novo-theme-offWhite ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-bright .header-titles ::ng-deep .novo-icon,:host.novo-accent-bright .header-title ::ng-deep .novo-icon{color:#f7f7f7}:host.novo-accent-bright>section:first-of-type{border-bottom:2px solid #f7f7f7}:host.novo-theme-bright>section:first-of-type{background:#f7f7f7;color:#3d464d;border-bottom:none}:host.novo-theme-bright ::ng-deep .novo-title{color:inherit}:host.novo-theme-bright ::ng-deep .novo-action button,:host.novo-theme-bright ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-light .header-titles ::ng-deep .novo-icon,:host.novo-accent-light .header-title ::ng-deep .novo-icon{color:#dbdbdb}:host.novo-accent-light>section:first-of-type{border-bottom:2px solid #dbdbdb}:host.novo-theme-light>section:first-of-type{background:#dbdbdb;color:#3d464d;border-bottom:none}:host.novo-theme-light ::ng-deep .novo-title{color:inherit}:host.novo-theme-light ::ng-deep .novo-action button,:host.novo-theme-light ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-neutral .header-titles ::ng-deep .novo-icon,:host.novo-accent-neutral .header-title ::ng-deep .novo-icon{color:#4f5361}:host.novo-accent-neutral>section:first-of-type{border-bottom:2px solid #4f5361}:host.novo-theme-neutral>section:first-of-type{background:#4f5361;color:#fff;border-bottom:none}:host.novo-theme-neutral ::ng-deep .novo-title{color:inherit}:host.novo-theme-neutral ::ng-deep .novo-action button,:host.novo-theme-neutral ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-dark .header-titles ::ng-deep .novo-icon,:host.novo-accent-dark .header-title ::ng-deep .novo-icon{color:#3d464d}:host.novo-accent-dark>section:first-of-type{border-bottom:2px solid #3d464d}:host.novo-theme-dark>section:first-of-type{background:#3d464d;color:#fff;border-bottom:none}:host.novo-theme-dark ::ng-deep .novo-title{color:inherit}:host.novo-theme-dark ::ng-deep .novo-action button,:host.novo-theme-dark ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-orange .header-titles ::ng-deep .novo-icon,:host.novo-accent-orange .header-title ::ng-deep .novo-icon{color:#ff6900}:host.novo-accent-orange>section:first-of-type{border-bottom:2px solid #ff6900}:host.novo-theme-orange>section:first-of-type{background:#ff6900;color:#3d464d;border-bottom:none}:host.novo-theme-orange ::ng-deep .novo-title{color:inherit}:host.novo-theme-orange ::ng-deep .novo-action button,:host.novo-theme-orange ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-navigation .header-titles ::ng-deep .novo-icon,:host.novo-accent-navigation .header-title ::ng-deep .novo-icon{color:#202945}:host.novo-accent-navigation>section:first-of-type{border-bottom:2px solid #202945}:host.novo-theme-navigation>section:first-of-type{background:#202945;color:#fff;border-bottom:none}:host.novo-theme-navigation ::ng-deep .novo-title{color:inherit}:host.novo-theme-navigation ::ng-deep .novo-action button,:host.novo-theme-navigation ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-skyBlue .header-titles ::ng-deep .novo-icon,:host.novo-accent-skyBlue .header-title ::ng-deep .novo-icon{color:#009bdf}:host.novo-accent-skyBlue>section:first-of-type{border-bottom:2px solid #009bdf}:host.novo-theme-skyBlue>section:first-of-type{background:#009bdf;color:#fff;border-bottom:none}:host.novo-theme-skyBlue ::ng-deep .novo-title{color:inherit}:host.novo-theme-skyBlue ::ng-deep .novo-action button,:host.novo-theme-skyBlue ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-steel .header-titles ::ng-deep .novo-icon,:host.novo-accent-steel .header-title ::ng-deep .novo-icon{color:#5b6770}:host.novo-accent-steel>section:first-of-type{border-bottom:2px solid #5b6770}:host.novo-theme-steel>section:first-of-type{background:#5b6770;color:#fff;border-bottom:none}:host.novo-theme-steel ::ng-deep .novo-title{color:inherit}:host.novo-theme-steel ::ng-deep .novo-action button,:host.novo-theme-steel ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-metal .header-titles ::ng-deep .novo-icon,:host.novo-accent-metal .header-title ::ng-deep .novo-icon{color:#637893}:host.novo-accent-metal>section:first-of-type{border-bottom:2px solid #637893}:host.novo-theme-metal>section:first-of-type{background:#637893;color:#fff;border-bottom:none}:host.novo-theme-metal ::ng-deep .novo-title{color:inherit}:host.novo-theme-metal ::ng-deep .novo-action button,:host.novo-theme-metal ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-sand .header-titles ::ng-deep .novo-icon,:host.novo-accent-sand .header-title ::ng-deep .novo-icon{color:#f4f4f4}:host.novo-accent-sand>section:first-of-type{border-bottom:2px solid #f4f4f4}:host.novo-theme-sand>section:first-of-type{background:#f4f4f4;color:#3d464d;border-bottom:none}:host.novo-theme-sand ::ng-deep .novo-title{color:inherit}:host.novo-theme-sand ::ng-deep .novo-action button,:host.novo-theme-sand ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-silver .header-titles ::ng-deep .novo-icon,:host.novo-accent-silver .header-title ::ng-deep .novo-icon{color:#e2e2e2}:host.novo-accent-silver>section:first-of-type{border-bottom:2px solid #e2e2e2}:host.novo-theme-silver>section:first-of-type{background:#e2e2e2;color:#3d464d;border-bottom:none}:host.novo-theme-silver ::ng-deep .novo-title{color:inherit}:host.novo-theme-silver ::ng-deep .novo-action button,:host.novo-theme-silver ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-stone .header-titles ::ng-deep .novo-icon,:host.novo-accent-stone .header-title ::ng-deep .novo-icon{color:#bebebe}:host.novo-accent-stone>section:first-of-type{border-bottom:2px solid #bebebe}:host.novo-theme-stone>section:first-of-type{background:#bebebe;color:#3d464d;border-bottom:none}:host.novo-theme-stone ::ng-deep .novo-title{color:inherit}:host.novo-theme-stone ::ng-deep .novo-action button,:host.novo-theme-stone ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-ash .header-titles ::ng-deep .novo-icon,:host.novo-accent-ash .header-title ::ng-deep .novo-icon{color:#a0a0a0}:host.novo-accent-ash>section:first-of-type{border-bottom:2px solid #a0a0a0}:host.novo-theme-ash>section:first-of-type{background:#a0a0a0;color:#3d464d;border-bottom:none}:host.novo-theme-ash ::ng-deep .novo-title{color:inherit}:host.novo-theme-ash ::ng-deep .novo-action button,:host.novo-theme-ash ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-slate .header-titles ::ng-deep .novo-icon,:host.novo-accent-slate .header-title ::ng-deep .novo-icon{color:#707070}:host.novo-accent-slate>section:first-of-type{border-bottom:2px solid #707070}:host.novo-theme-slate>section:first-of-type{background:#707070;color:#fff;border-bottom:none}:host.novo-theme-slate ::ng-deep .novo-title{color:inherit}:host.novo-theme-slate ::ng-deep .novo-action button,:host.novo-theme-slate ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-onyx .header-titles ::ng-deep .novo-icon,:host.novo-accent-onyx .header-title ::ng-deep .novo-icon{color:#526980}:host.novo-accent-onyx>section:first-of-type{border-bottom:2px solid #526980}:host.novo-theme-onyx>section:first-of-type{background:#526980;color:#fff;border-bottom:none}:host.novo-theme-onyx ::ng-deep .novo-title{color:inherit}:host.novo-theme-onyx ::ng-deep .novo-action button,:host.novo-theme-onyx ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-charcoal .header-titles ::ng-deep .novo-icon,:host.novo-accent-charcoal .header-title ::ng-deep .novo-icon{color:#282828}:host.novo-accent-charcoal>section:first-of-type{border-bottom:2px solid #282828}:host.novo-theme-charcoal>section:first-of-type{background:#282828;color:#fff;border-bottom:none}:host.novo-theme-charcoal ::ng-deep .novo-title{color:inherit}:host.novo-theme-charcoal ::ng-deep .novo-action button,:host.novo-theme-charcoal ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-moonlight .header-titles ::ng-deep .novo-icon,:host.novo-accent-moonlight .header-title ::ng-deep .novo-icon{color:#1a242f}:host.novo-accent-moonlight>section:first-of-type{border-bottom:2px solid #1a242f}:host.novo-theme-moonlight>section:first-of-type{background:#1a242f;color:#fff;border-bottom:none}:host.novo-theme-moonlight ::ng-deep .novo-title{color:inherit}:host.novo-theme-moonlight ::ng-deep .novo-action button,:host.novo-theme-moonlight ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-midnight .header-titles ::ng-deep .novo-icon,:host.novo-accent-midnight .header-title ::ng-deep .novo-icon{color:#202945}:host.novo-accent-midnight>section:first-of-type{border-bottom:2px solid #202945}:host.novo-theme-midnight>section:first-of-type{background:#202945;color:#fff;border-bottom:none}:host.novo-theme-midnight ::ng-deep .novo-title{color:inherit}:host.novo-theme-midnight ::ng-deep .novo-action button,:host.novo-theme-midnight ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-darkness .header-titles ::ng-deep .novo-icon,:host.novo-accent-darkness .header-title ::ng-deep .novo-icon{color:#161f27}:host.novo-accent-darkness>section:first-of-type{border-bottom:2px solid #161f27}:host.novo-theme-darkness>section:first-of-type{background:#161f27;color:#fff;border-bottom:none}:host.novo-theme-darkness ::ng-deep .novo-title{color:inherit}:host.novo-theme-darkness ::ng-deep .novo-action button,:host.novo-theme-darkness ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-navy .header-titles ::ng-deep .novo-icon,:host.novo-accent-navy .header-title ::ng-deep .novo-icon{color:#0d2d42}:host.novo-accent-navy>section:first-of-type{border-bottom:2px solid #0d2d42}:host.novo-theme-navy>section:first-of-type{background:#0d2d42;color:#fff;border-bottom:none}:host.novo-theme-navy ::ng-deep .novo-title{color:inherit}:host.novo-theme-navy ::ng-deep .novo-action button,:host.novo-theme-navy ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-aqua .header-titles ::ng-deep .novo-icon,:host.novo-accent-aqua .header-title ::ng-deep .novo-icon{color:#3bafda}:host.novo-accent-aqua>section:first-of-type{border-bottom:2px solid #3bafda}:host.novo-theme-aqua>section:first-of-type{background:#3bafda;color:#3d464d;border-bottom:none}:host.novo-theme-aqua ::ng-deep .novo-title{color:inherit}:host.novo-theme-aqua ::ng-deep .novo-action button,:host.novo-theme-aqua ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-ocean .header-titles ::ng-deep .novo-icon,:host.novo-accent-ocean .header-title ::ng-deep .novo-icon{color:#4a89dc}:host.novo-accent-ocean>section:first-of-type{border-bottom:2px solid #4a89dc}:host.novo-theme-ocean>section:first-of-type{background:#4a89dc;color:#fff;border-bottom:none}:host.novo-theme-ocean ::ng-deep .novo-title{color:inherit}:host.novo-theme-ocean ::ng-deep .novo-action button,:host.novo-theme-ocean ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-mint .header-titles ::ng-deep .novo-icon,:host.novo-accent-mint .header-title ::ng-deep .novo-icon{color:#37bc9b}:host.novo-accent-mint>section:first-of-type{border-bottom:2px solid #37bc9b}:host.novo-theme-mint>section:first-of-type{background:#37bc9b;color:#3d464d;border-bottom:none}:host.novo-theme-mint ::ng-deep .novo-title{color:inherit}:host.novo-theme-mint ::ng-deep .novo-action button,:host.novo-theme-mint ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-grass .header-titles ::ng-deep .novo-icon,:host.novo-accent-grass .header-title ::ng-deep .novo-icon{color:#8cc152}:host.novo-accent-grass>section:first-of-type{border-bottom:2px solid #8cc152}:host.novo-theme-grass>section:first-of-type{background:#8cc152;color:#fff;border-bottom:none}:host.novo-theme-grass ::ng-deep .novo-title{color:inherit}:host.novo-theme-grass ::ng-deep .novo-action button,:host.novo-theme-grass ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-sunflower .header-titles ::ng-deep .novo-icon,:host.novo-accent-sunflower .header-title ::ng-deep .novo-icon{color:#f6b042}:host.novo-accent-sunflower>section:first-of-type{border-bottom:2px solid #f6b042}:host.novo-theme-sunflower>section:first-of-type{background:#f6b042;color:#fff;border-bottom:none}:host.novo-theme-sunflower ::ng-deep .novo-title{color:inherit}:host.novo-theme-sunflower ::ng-deep .novo-action button,:host.novo-theme-sunflower ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-bittersweet .header-titles ::ng-deep .novo-icon,:host.novo-accent-bittersweet .header-title ::ng-deep .novo-icon{color:#eb6845}:host.novo-accent-bittersweet>section:first-of-type{border-bottom:2px solid #eb6845}:host.novo-theme-bittersweet>section:first-of-type{background:#eb6845;color:#fff;border-bottom:none}:host.novo-theme-bittersweet ::ng-deep .novo-title{color:inherit}:host.novo-theme-bittersweet ::ng-deep .novo-action button,:host.novo-theme-bittersweet ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-grapefruit .header-titles ::ng-deep .novo-icon,:host.novo-accent-grapefruit .header-title ::ng-deep .novo-icon{color:#da4453}:host.novo-accent-grapefruit>section:first-of-type{border-bottom:2px solid #da4453}:host.novo-theme-grapefruit>section:first-of-type{background:#da4453;color:#fff;border-bottom:none}:host.novo-theme-grapefruit ::ng-deep .novo-title{color:inherit}:host.novo-theme-grapefruit ::ng-deep .novo-action button,:host.novo-theme-grapefruit ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-carnation .header-titles ::ng-deep .novo-icon,:host.novo-accent-carnation .header-title ::ng-deep .novo-icon{color:#d770ad}:host.novo-accent-carnation>section:first-of-type{border-bottom:2px solid #d770ad}:host.novo-theme-carnation>section:first-of-type{background:#d770ad;color:#fff;border-bottom:none}:host.novo-theme-carnation ::ng-deep .novo-title{color:inherit}:host.novo-theme-carnation ::ng-deep .novo-action button,:host.novo-theme-carnation ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-lavender .header-titles ::ng-deep .novo-icon,:host.novo-accent-lavender .header-title ::ng-deep .novo-icon{color:#967adc}:host.novo-accent-lavender>section:first-of-type{border-bottom:2px solid #967adc}:host.novo-theme-lavender>section:first-of-type{background:#967adc;color:#fff;border-bottom:none}:host.novo-theme-lavender ::ng-deep .novo-title{color:inherit}:host.novo-theme-lavender ::ng-deep .novo-action button,:host.novo-theme-lavender ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-mountain .header-titles ::ng-deep .novo-icon,:host.novo-accent-mountain .header-title ::ng-deep .novo-icon{color:#9678b6}:host.novo-accent-mountain>section:first-of-type{border-bottom:2px solid #9678b6}:host.novo-theme-mountain>section:first-of-type{background:#9678b6;color:#fff;border-bottom:none}:host.novo-theme-mountain ::ng-deep .novo-title{color:inherit}:host.novo-theme-mountain ::ng-deep .novo-action button,:host.novo-theme-mountain ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-info .header-titles ::ng-deep .novo-icon,:host.novo-accent-info .header-title ::ng-deep .novo-icon{color:#4a89dc}:host.novo-accent-info>section:first-of-type{border-bottom:2px solid #4a89dc}:host.novo-theme-info>section:first-of-type{background:#4a89dc;color:#fff;border-bottom:none}:host.novo-theme-info ::ng-deep .novo-title{color:inherit}:host.novo-theme-info ::ng-deep .novo-action button,:host.novo-theme-info ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-positive .header-titles ::ng-deep .novo-icon,:host.novo-accent-positive .header-title ::ng-deep .novo-icon{color:#4a89dc}:host.novo-accent-positive>section:first-of-type{border-bottom:2px solid #4a89dc}:host.novo-theme-positive>section:first-of-type{background:#4a89dc;color:#fff;border-bottom:none}:host.novo-theme-positive ::ng-deep .novo-title{color:inherit}:host.novo-theme-positive ::ng-deep .novo-action button,:host.novo-theme-positive ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-success .header-titles ::ng-deep .novo-icon,:host.novo-accent-success .header-title ::ng-deep .novo-icon{color:#8cc152}:host.novo-accent-success>section:first-of-type{border-bottom:2px solid #8cc152}:host.novo-theme-success>section:first-of-type{background:#8cc152;color:#fff;border-bottom:none}:host.novo-theme-success ::ng-deep .novo-title{color:inherit}:host.novo-theme-success ::ng-deep .novo-action button,:host.novo-theme-success ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-negative .header-titles ::ng-deep .novo-icon,:host.novo-accent-negative .header-title ::ng-deep .novo-icon{color:#da4453}:host.novo-accent-negative>section:first-of-type{border-bottom:2px solid #da4453}:host.novo-theme-negative>section:first-of-type{background:#da4453;color:#fff;border-bottom:none}:host.novo-theme-negative ::ng-deep .novo-title{color:inherit}:host.novo-theme-negative ::ng-deep .novo-action button,:host.novo-theme-negative ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-danger .header-titles ::ng-deep .novo-icon,:host.novo-accent-danger .header-title ::ng-deep .novo-icon{color:#da4453}:host.novo-accent-danger>section:first-of-type{border-bottom:2px solid #da4453}:host.novo-theme-danger>section:first-of-type{background:#da4453;color:#fff;border-bottom:none}:host.novo-theme-danger ::ng-deep .novo-title{color:inherit}:host.novo-theme-danger ::ng-deep .novo-action button,:host.novo-theme-danger ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-error .header-titles ::ng-deep .novo-icon,:host.novo-accent-error .header-title ::ng-deep .novo-icon{color:#da4453}:host.novo-accent-error>section:first-of-type{border-bottom:2px solid #da4453}:host.novo-theme-error>section:first-of-type{background:#da4453;color:#fff;border-bottom:none}:host.novo-theme-error ::ng-deep .novo-title{color:inherit}:host.novo-theme-error ::ng-deep .novo-action button,:host.novo-theme-error ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-warning .header-titles ::ng-deep .novo-icon,:host.novo-accent-warning .header-title ::ng-deep .novo-icon{color:#f6b042}:host.novo-accent-warning>section:first-of-type{border-bottom:2px solid #f6b042}:host.novo-theme-warning>section:first-of-type{background:#f6b042;color:#fff;border-bottom:none}:host.novo-theme-warning ::ng-deep .novo-title{color:inherit}:host.novo-theme-warning ::ng-deep .novo-action button,:host.novo-theme-warning ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-empty .header-titles ::ng-deep .novo-icon,:host.novo-accent-empty .header-title ::ng-deep .novo-icon{color:#cccdcc}:host.novo-accent-empty>section:first-of-type{border-bottom:2px solid #cccdcc}:host.novo-theme-empty>section:first-of-type{background:#cccdcc;color:#3d464d;border-bottom:none}:host.novo-theme-empty ::ng-deep .novo-title{color:inherit}:host.novo-theme-empty ::ng-deep .novo-action button,:host.novo-theme-empty ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-disabled .header-titles ::ng-deep .novo-icon,:host.novo-accent-disabled .header-title ::ng-deep .novo-icon{color:#bebebe}:host.novo-accent-disabled>section:first-of-type{border-bottom:2px solid #bebebe}:host.novo-theme-disabled>section:first-of-type{background:#bebebe;color:#3d464d;border-bottom:none}:host.novo-theme-disabled ::ng-deep .novo-title{color:inherit}:host.novo-theme-disabled ::ng-deep .novo-action button,:host.novo-theme-disabled ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-background .header-titles ::ng-deep .novo-icon,:host.novo-accent-background .header-title ::ng-deep .novo-icon{color:#f7f7f7}:host.novo-accent-background>section:first-of-type{border-bottom:2px solid #f7f7f7}:host.novo-theme-background>section:first-of-type{background:#f7f7f7;color:#3d464d;border-bottom:none}:host.novo-theme-background ::ng-deep .novo-title{color:inherit}:host.novo-theme-background ::ng-deep .novo-action button,:host.novo-theme-background ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-backgroundDark .header-titles ::ng-deep .novo-icon,:host.novo-accent-backgroundDark .header-title ::ng-deep .novo-icon{color:#e2e2e2}:host.novo-accent-backgroundDark>section:first-of-type{border-bottom:2px solid #e2e2e2}:host.novo-theme-backgroundDark>section:first-of-type{background:#e2e2e2;color:#3d464d;border-bottom:none}:host.novo-theme-backgroundDark ::ng-deep .novo-title{color:inherit}:host.novo-theme-backgroundDark ::ng-deep .novo-action button,:host.novo-theme-backgroundDark ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-presentation .header-titles ::ng-deep .novo-icon,:host.novo-accent-presentation .header-title ::ng-deep .novo-icon{color:#5b6770}:host.novo-accent-presentation>section:first-of-type{border-bottom:2px solid #5b6770}:host.novo-theme-presentation>section:first-of-type{background:#5b6770;color:#fff;border-bottom:none}:host.novo-theme-presentation ::ng-deep .novo-title{color:inherit}:host.novo-theme-presentation ::ng-deep .novo-action button,:host.novo-theme-presentation ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-bullhorn .header-titles ::ng-deep .novo-icon,:host.novo-accent-bullhorn .header-title ::ng-deep .novo-icon{color:#ff6900}:host.novo-accent-bullhorn>section:first-of-type{border-bottom:2px solid #ff6900}:host.novo-theme-bullhorn>section:first-of-type{background:#ff6900;color:#3d464d;border-bottom:none}:host.novo-theme-bullhorn ::ng-deep .novo-title{color:inherit}:host.novo-theme-bullhorn ::ng-deep .novo-action button,:host.novo-theme-bullhorn ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-pulse .header-titles ::ng-deep .novo-icon,:host.novo-accent-pulse .header-title ::ng-deep .novo-icon{color:#3bafda}:host.novo-accent-pulse>section:first-of-type{border-bottom:2px solid #3bafda}:host.novo-theme-pulse>section:first-of-type{background:#3bafda;color:#3d464d;border-bottom:none}:host.novo-theme-pulse ::ng-deep .novo-title{color:inherit}:host.novo-theme-pulse ::ng-deep .novo-action button,:host.novo-theme-pulse ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-company .header-titles ::ng-deep .novo-icon,:host.novo-accent-company .header-title ::ng-deep .novo-icon{color:#39d}:host.novo-accent-company>section:first-of-type{border-bottom:2px solid #3399dd}:host.novo-theme-company>section:first-of-type{background:#3399dd;color:#fff;border-bottom:none}:host.novo-theme-company ::ng-deep .novo-title{color:inherit}:host.novo-theme-company ::ng-deep .novo-action button,:host.novo-theme-company ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-candidate .header-titles ::ng-deep .novo-icon,:host.novo-accent-candidate .header-title ::ng-deep .novo-icon{color:#4b7}:host.novo-accent-candidate>section:first-of-type{border-bottom:2px solid #44bb77}:host.novo-theme-candidate>section:first-of-type{background:#44bb77;color:#fff;border-bottom:none}:host.novo-theme-candidate ::ng-deep .novo-title{color:inherit}:host.novo-theme-candidate ::ng-deep .novo-action button,:host.novo-theme-candidate ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-lead .header-titles ::ng-deep .novo-icon,:host.novo-accent-lead .header-title ::ng-deep .novo-icon{color:#a69}:host.novo-accent-lead>section:first-of-type{border-bottom:2px solid #aa6699}:host.novo-theme-lead>section:first-of-type{background:#aa6699;color:#fff;border-bottom:none}:host.novo-theme-lead ::ng-deep .novo-title{color:inherit}:host.novo-theme-lead ::ng-deep .novo-action button,:host.novo-theme-lead ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-contact .header-titles ::ng-deep .novo-icon,:host.novo-accent-contact .header-title ::ng-deep .novo-icon{color:#fa4}:host.novo-accent-contact>section:first-of-type{border-bottom:2px solid #ffaa44}:host.novo-theme-contact>section:first-of-type{background:#ffaa44;color:#fff;border-bottom:none}:host.novo-theme-contact ::ng-deep .novo-title{color:inherit}:host.novo-theme-contact ::ng-deep .novo-action button,:host.novo-theme-contact ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-clientcontact .header-titles ::ng-deep .novo-icon,:host.novo-accent-clientcontact .header-title ::ng-deep .novo-icon{color:#fa4}:host.novo-accent-clientcontact>section:first-of-type{border-bottom:2px solid #ffaa44}:host.novo-theme-clientcontact>section:first-of-type{background:#ffaa44;color:#fff;border-bottom:none}:host.novo-theme-clientcontact ::ng-deep .novo-title{color:inherit}:host.novo-theme-clientcontact ::ng-deep .novo-action button,:host.novo-theme-clientcontact ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-opportunity .header-titles ::ng-deep .novo-icon,:host.novo-accent-opportunity .header-title ::ng-deep .novo-icon{color:#625}:host.novo-accent-opportunity>section:first-of-type{border-bottom:2px solid #662255}:host.novo-theme-opportunity>section:first-of-type{background:#662255;color:#fff;border-bottom:none}:host.novo-theme-opportunity ::ng-deep .novo-title{color:inherit}:host.novo-theme-opportunity ::ng-deep .novo-action button,:host.novo-theme-opportunity ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-job .header-titles ::ng-deep .novo-icon,:host.novo-accent-job .header-title ::ng-deep .novo-icon{color:#b56}:host.novo-accent-job>section:first-of-type{border-bottom:2px solid #bb5566}:host.novo-theme-job>section:first-of-type{background:#bb5566;color:#fff;border-bottom:none}:host.novo-theme-job ::ng-deep .novo-title{color:inherit}:host.novo-theme-job ::ng-deep .novo-action button,:host.novo-theme-job ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-joborder .header-titles ::ng-deep .novo-icon,:host.novo-accent-joborder .header-title ::ng-deep .novo-icon{color:#b56}:host.novo-accent-joborder>section:first-of-type{border-bottom:2px solid #bb5566}:host.novo-theme-joborder>section:first-of-type{background:#bb5566;color:#fff;border-bottom:none}:host.novo-theme-joborder ::ng-deep .novo-title{color:inherit}:host.novo-theme-joborder ::ng-deep .novo-action button,:host.novo-theme-joborder ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-submission .header-titles ::ng-deep .novo-icon,:host.novo-accent-submission .header-title ::ng-deep .novo-icon{color:#a9adbb}:host.novo-accent-submission>section:first-of-type{border-bottom:2px solid #a9adbb}:host.novo-theme-submission>section:first-of-type{background:#a9adbb;color:#3d464d;border-bottom:none}:host.novo-theme-submission ::ng-deep .novo-title{color:inherit}:host.novo-theme-submission ::ng-deep .novo-action button,:host.novo-theme-submission ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-sendout .header-titles ::ng-deep .novo-icon,:host.novo-accent-sendout .header-title ::ng-deep .novo-icon{color:#747884}:host.novo-accent-sendout>section:first-of-type{border-bottom:2px solid #747884}:host.novo-theme-sendout>section:first-of-type{background:#747884;color:#fff;border-bottom:none}:host.novo-theme-sendout ::ng-deep .novo-title{color:inherit}:host.novo-theme-sendout ::ng-deep .novo-action button,:host.novo-theme-sendout ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-placement .header-titles ::ng-deep .novo-icon,:host.novo-accent-placement .header-title ::ng-deep .novo-icon{color:#0b344f}:host.novo-accent-placement>section:first-of-type{border-bottom:2px solid #0b344f}:host.novo-theme-placement>section:first-of-type{background:#0b344f;color:#fff;border-bottom:none}:host.novo-theme-placement ::ng-deep .novo-title{color:inherit}:host.novo-theme-placement ::ng-deep .novo-action button,:host.novo-theme-placement ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-note .header-titles ::ng-deep .novo-icon,:host.novo-accent-note .header-title ::ng-deep .novo-icon{color:#747884}:host.novo-accent-note>section:first-of-type{border-bottom:2px solid #747884}:host.novo-theme-note>section:first-of-type{background:#747884;color:#fff;border-bottom:none}:host.novo-theme-note ::ng-deep .novo-title{color:inherit}:host.novo-theme-note ::ng-deep .novo-action button,:host.novo-theme-note ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-contract .header-titles ::ng-deep .novo-icon,:host.novo-accent-contract .header-title ::ng-deep .novo-icon{color:#454ea0}:host.novo-accent-contract>section:first-of-type{border-bottom:2px solid #454ea0}:host.novo-theme-contract>section:first-of-type{background:#454ea0;color:#fff;border-bottom:none}:host.novo-theme-contract ::ng-deep .novo-title{color:inherit}:host.novo-theme-contract ::ng-deep .novo-action button,:host.novo-theme-contract ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-jobCode .header-titles ::ng-deep .novo-icon,:host.novo-accent-jobCode .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-jobCode>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-jobCode>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-jobCode ::ng-deep .novo-title{color:inherit}:host.novo-theme-jobCode ::ng-deep .novo-action button,:host.novo-theme-jobCode ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-earnCode .header-titles ::ng-deep .novo-icon,:host.novo-accent-earnCode .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-earnCode>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-earnCode>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-earnCode ::ng-deep .novo-title{color:inherit}:host.novo-theme-earnCode ::ng-deep .novo-action button,:host.novo-theme-earnCode ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-invoiceStatement .header-titles ::ng-deep .novo-icon,:host.novo-accent-invoiceStatement .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-invoiceStatement>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-invoiceStatement>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-invoiceStatement ::ng-deep .novo-title{color:inherit}:host.novo-theme-invoiceStatement ::ng-deep .novo-action button,:host.novo-theme-invoiceStatement ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-billableCharge .header-titles ::ng-deep .novo-icon,:host.novo-accent-billableCharge .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-billableCharge>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-billableCharge>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-billableCharge ::ng-deep .novo-title{color:inherit}:host.novo-theme-billableCharge ::ng-deep .novo-action button,:host.novo-theme-billableCharge ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-payableCharge .header-titles ::ng-deep .novo-icon,:host.novo-accent-payableCharge .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-payableCharge>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-payableCharge>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-payableCharge ::ng-deep .novo-title{color:inherit}:host.novo-theme-payableCharge ::ng-deep .novo-action button,:host.novo-theme-payableCharge ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-user .header-titles ::ng-deep .novo-icon,:host.novo-accent-user .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-user>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-user>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-user ::ng-deep .novo-title{color:inherit}:host.novo-theme-user ::ng-deep .novo-action button,:host.novo-theme-user ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-corporateUser .header-titles ::ng-deep .novo-icon,:host.novo-accent-corporateUser .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-corporateUser>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-corporateUser>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-corporateUser ::ng-deep .novo-title{color:inherit}:host.novo-theme-corporateUser ::ng-deep .novo-action button,:host.novo-theme-corporateUser ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-distributionList .header-titles ::ng-deep .novo-icon,:host.novo-accent-distributionList .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-distributionList>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-distributionList>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-distributionList ::ng-deep .novo-title{color:inherit}:host.novo-theme-distributionList ::ng-deep .novo-action button,:host.novo-theme-distributionList ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-credential .header-titles ::ng-deep .novo-icon,:host.novo-accent-credential .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-credential>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-credential>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-credential ::ng-deep .novo-title{color:inherit}:host.novo-theme-credential ::ng-deep .novo-action button,:host.novo-theme-credential ::ng-deep .novo-action .novo-button{color:inherit}:host.novo-accent-person .header-titles ::ng-deep .novo-icon,:host.novo-accent-person .header-title ::ng-deep .novo-icon{color:#696d79}:host.novo-accent-person>section:first-of-type{border-bottom:2px solid #696d79}:host.novo-theme-person>section:first-of-type{background:#696d79;color:#fff;border-bottom:none}:host.novo-theme-person ::ng-deep .novo-title{color:inherit}:host.novo-theme-person ::ng-deep .novo-action button,:host.novo-theme-person ::ng-deep .novo-action .novo-button{color:inherit}:host>main{padding:4px 16px 4px 32px}:host>::ng-deep novo-nav{padding-left:16px}:host>::ng-deep novo-nav.block{padding-left:0}:host.condensed .header-title,:host.condensed .header-titles{line-height:1.375}:host.condensed>section{height:3.6rem}:host.condensed ::ng-deep .novo-icon{margin-right:.5rem!important;font-size:1.8rem}:host .header-actions{display:flex;flex-flow:row nowrap}\n"] }]
164
158
  }], propDecorators: { role: [{
165
159
  type: HostBinding,
166
160
  args: ['attr.role']