novo-elements 13.1.0 → 13.2.0-next.1

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 (230) hide show
  1. package/addons/ckeditor/index.d.ts +3 -1
  2. package/elements/agenda/common/AgendaDateChange.scss +3 -3
  3. package/elements/agenda/common/AgendaHoursLayout.scss +2 -2
  4. package/elements/agenda/day/AgendaDayView.scss +3 -3
  5. package/elements/agenda/month/AgendaMonthView.scss +8 -8
  6. package/elements/agenda/week/AgendaWeekView.scss +4 -4
  7. package/elements/aside/aside.component.scss +17 -2
  8. package/elements/aside/index.d.ts +16 -8
  9. package/elements/autocomplete/autocomplete.component.scss +4 -0
  10. package/elements/avatar/Avatar.scss +2 -2
  11. package/elements/breadcrumbs/Breadcrumb.scss +5 -0
  12. package/elements/breadcrumbs/breadcrumb-item/BreadcrumbItem.scss +3 -3
  13. package/elements/button/styles/button-dialogue.scss +6 -5
  14. package/elements/button/styles/button-fab.scss +1 -1
  15. package/elements/button/styles/button-icon.scss +5 -5
  16. package/elements/button/styles/button-other.scss +5 -5
  17. package/elements/button/styles/button-primary.scss +11 -9
  18. package/elements/button/styles/button-secondary.scss +8 -9
  19. package/elements/button/styles/button-standard.scss +2 -2
  20. package/elements/button/styles/button.scss +18 -12
  21. package/elements/calendar/calendar.component.scss +13 -13
  22. package/elements/calendar/month-select/month-select.component.scss +3 -3
  23. package/elements/calendar/month-view/month-view.component.scss +7 -7
  24. package/elements/calendar/year-select/year-select.component.scss +3 -3
  25. package/elements/card/Card.scss +55 -12
  26. package/elements/card/CardContent.scss +1 -1
  27. package/elements/card/CardFooter.scss +2 -2
  28. package/elements/card/CardHeader.scss +2 -2
  29. package/elements/category-dropdown/CategoryDropdown.scss +9 -9
  30. package/elements/checkbox/CheckList.scss +3 -3
  31. package/elements/checkbox/Checkbox.scss +3 -3
  32. package/elements/chips/Chip.scss +17 -17
  33. package/elements/chips/Chips.scss +9 -9
  34. package/elements/chips/RowChips.scss +2 -2
  35. package/elements/chips/index.d.ts +3 -1
  36. package/elements/color-picker/color-picker.component.scss +1 -1
  37. package/elements/common/index.d.ts +11 -3
  38. package/elements/common/option/option.component.scss +14 -19
  39. package/elements/common/selection/pseudo-checkbox/pseudo-checkbox.component.scss +2 -2
  40. package/elements/common/typography/text.mixins.scss +19 -19
  41. package/elements/data-table/data-table.component.scss +32 -23
  42. package/elements/data-table/index.d.ts +2 -1
  43. package/elements/data-table/pagination/data-table-pagination.component.scss +6 -6
  44. package/elements/date-picker/DatePicker.scss +18 -18
  45. package/elements/date-picker/DatePickerInput.scss +5 -5
  46. package/elements/date-picker/DateRangeInput.scss +1 -1
  47. package/elements/date-picker/MultiDateInput.scss +2 -2
  48. package/elements/date-time-picker/_DateTimePicker.scss +5 -5
  49. package/elements/divider/divider.component.scss +3 -3
  50. package/elements/dropdown/Dropdown.scss +7 -5
  51. package/elements/expansion/_expansion-theme.scss +1 -1
  52. package/elements/expansion/expansion-panel.scss +1 -0
  53. package/elements/field/error/error.scss +1 -1
  54. package/elements/field/field-fill.scss +4 -4
  55. package/elements/field/field-list.scss +4 -4
  56. package/elements/field/field-outline.scss +6 -6
  57. package/elements/field/field-standard.scss +3 -3
  58. package/elements/field/field.scss +14 -1
  59. package/elements/form/ControlGroup.scss +7 -7
  60. package/elements/form/Form.scss +40 -40
  61. package/elements/form/extras/address/Address.scss +6 -6
  62. package/elements/form/extras/file/FileInput.scss +4 -4
  63. package/elements/form/fieldset-header.scss +3 -3
  64. package/elements/form/index.d.ts +1 -1
  65. package/elements/header/Header.scss +45 -10
  66. package/elements/icon/Icon.scss +1 -1
  67. package/elements/layout/collapsible-nav/collapsible-nav.component.scss +20 -0
  68. package/elements/layout/index.d.ts +38 -5
  69. package/elements/list/list-item-content.scss +1 -1
  70. package/elements/list/list-item-header-avatar.scss +1 -1
  71. package/elements/list/list-item.scss +6 -6
  72. package/elements/loading/NovoSpinner.scss +1 -1
  73. package/elements/menu/menu-content.component.scss +8 -7
  74. package/elements/modal/modal.component.scss +8 -8
  75. package/elements/modal/notification.component.scss +21 -21
  76. package/elements/multi-picker/_MultiPicker.scss +2 -2
  77. package/elements/picker/Picker.scss +13 -13
  78. package/elements/picker/extras/grouped-multi-picker-results/GroupedMultiPickerResults.scss +14 -14
  79. package/elements/picker/extras/mixed-multi-picker-results/MixedMultiPickerResults.scss +17 -17
  80. package/elements/picker/extras/picker-results/PickerResult.scss +1 -1
  81. package/elements/picker/extras/picker-results/PickerResults.scss +25 -21
  82. package/elements/picker/extras/skills-picker-results/SkillsSpecialtyPickerResults.scss +3 -3
  83. package/elements/places/index.d.ts +24 -14
  84. package/elements/places/places.component.scss +3 -3
  85. package/elements/popover/PopOver.scss +2 -1
  86. package/elements/progress/Progress.scss +2 -2
  87. package/elements/progress/ProgressBar.scss +13 -3
  88. package/elements/query-builder/condition-builder/condition-builder.component.scss +1 -20
  89. package/elements/query-builder/index.d.ts +67 -35
  90. package/elements/radio/Radio.scss +8 -8
  91. package/elements/radio/radio-group.scss +2 -2
  92. package/elements/search/SearchBox.scss +8 -9
  93. package/elements/select/Select.scss +15 -14
  94. package/elements/select-search/select-search.component.scss +1 -1
  95. package/elements/simple-table/PaginationOld.scss +5 -5
  96. package/elements/simple-table/table.scss +15 -10
  97. package/elements/stepper/step-header.component.scss +9 -9
  98. package/elements/stepper/stepper.component.scss +25 -7
  99. package/elements/switch/Switch.scss +15 -7
  100. package/elements/tabbed-group-picker/TabbedGroupPicker.scss +17 -8
  101. package/elements/tabbed-group-picker/index.d.ts +27 -14
  102. package/elements/tabs/tab-nav.scss +3 -3
  103. package/elements/tabs/tab.scss +35 -5
  104. package/elements/tiles/Tiles.scss +24 -5
  105. package/elements/time-picker/TimePicker.scss +6 -6
  106. package/elements/time-picker/TimePickerInput.scss +1 -1
  107. package/elements/tip-well/TipWell.scss +5 -6
  108. package/elements/toast/Toast.scss +19 -18
  109. package/elements/toolbar/toolbar.component.scss +24 -6
  110. package/elements/tooltip/Tooltip.scss +2 -2
  111. package/elements/value/Value.scss +5 -4
  112. package/fesm2022/novo-elements-addons-ckeditor.mjs +22 -12
  113. package/fesm2022/novo-elements-addons-ckeditor.mjs.map +1 -1
  114. package/fesm2022/novo-elements-elements-agenda.mjs +8 -8
  115. package/fesm2022/novo-elements-elements-agenda.mjs.map +1 -1
  116. package/fesm2022/novo-elements-elements-aside.mjs +24 -9
  117. package/fesm2022/novo-elements-elements-aside.mjs.map +1 -1
  118. package/fesm2022/novo-elements-elements-autocomplete.mjs +2 -2
  119. package/fesm2022/novo-elements-elements-autocomplete.mjs.map +1 -1
  120. package/fesm2022/novo-elements-elements-avatar.mjs +4 -4
  121. package/fesm2022/novo-elements-elements-avatar.mjs.map +1 -1
  122. package/fesm2022/novo-elements-elements-breadcrumbs.mjs +4 -4
  123. package/fesm2022/novo-elements-elements-breadcrumbs.mjs.map +1 -1
  124. package/fesm2022/novo-elements-elements-button.mjs +2 -2
  125. package/fesm2022/novo-elements-elements-button.mjs.map +1 -1
  126. package/fesm2022/novo-elements-elements-calendar.mjs +8 -8
  127. package/fesm2022/novo-elements-elements-calendar.mjs.map +1 -1
  128. package/fesm2022/novo-elements-elements-card.mjs +8 -8
  129. package/fesm2022/novo-elements-elements-card.mjs.map +1 -1
  130. package/fesm2022/novo-elements-elements-category-dropdown.mjs +2 -2
  131. package/fesm2022/novo-elements-elements-category-dropdown.mjs.map +1 -1
  132. package/fesm2022/novo-elements-elements-checkbox.mjs +4 -4
  133. package/fesm2022/novo-elements-elements-checkbox.mjs.map +1 -1
  134. package/fesm2022/novo-elements-elements-chips.mjs +12 -8
  135. package/fesm2022/novo-elements-elements-chips.mjs.map +1 -1
  136. package/fesm2022/novo-elements-elements-color-picker.mjs +4 -4
  137. package/fesm2022/novo-elements-elements-color-picker.mjs.map +1 -1
  138. package/fesm2022/novo-elements-elements-common.mjs +61 -21
  139. package/fesm2022/novo-elements-elements-common.mjs.map +1 -1
  140. package/fesm2022/novo-elements-elements-data-table.mjs +4 -4
  141. package/fesm2022/novo-elements-elements-data-table.mjs.map +1 -1
  142. package/fesm2022/novo-elements-elements-date-picker.mjs +8 -8
  143. package/fesm2022/novo-elements-elements-date-picker.mjs.map +1 -1
  144. package/fesm2022/novo-elements-elements-date-time-picker.mjs +2 -2
  145. package/fesm2022/novo-elements-elements-date-time-picker.mjs.map +1 -1
  146. package/fesm2022/novo-elements-elements-divider.mjs +2 -2
  147. package/fesm2022/novo-elements-elements-divider.mjs.map +1 -1
  148. package/fesm2022/novo-elements-elements-dropdown.mjs +2 -2
  149. package/fesm2022/novo-elements-elements-dropdown.mjs.map +1 -1
  150. package/fesm2022/novo-elements-elements-expansion.mjs +2 -2
  151. package/fesm2022/novo-elements-elements-expansion.mjs.map +1 -1
  152. package/fesm2022/novo-elements-elements-field.mjs +6 -6
  153. package/fesm2022/novo-elements-elements-field.mjs.map +1 -1
  154. package/fesm2022/novo-elements-elements-form.mjs +17 -15
  155. package/fesm2022/novo-elements-elements-form.mjs.map +1 -1
  156. package/fesm2022/novo-elements-elements-header.mjs +2 -2
  157. package/fesm2022/novo-elements-elements-header.mjs.map +1 -1
  158. package/fesm2022/novo-elements-elements-icon.mjs +2 -2
  159. package/fesm2022/novo-elements-elements-icon.mjs.map +1 -1
  160. package/fesm2022/novo-elements-elements-layout.mjs +90 -9
  161. package/fesm2022/novo-elements-elements-layout.mjs.map +1 -1
  162. package/fesm2022/novo-elements-elements-list.mjs +10 -10
  163. package/fesm2022/novo-elements-elements-list.mjs.map +1 -1
  164. package/fesm2022/novo-elements-elements-loading.mjs +2 -2
  165. package/fesm2022/novo-elements-elements-loading.mjs.map +1 -1
  166. package/fesm2022/novo-elements-elements-menu.mjs +2 -2
  167. package/fesm2022/novo-elements-elements-menu.mjs.map +1 -1
  168. package/fesm2022/novo-elements-elements-modal.mjs +4 -4
  169. package/fesm2022/novo-elements-elements-modal.mjs.map +1 -1
  170. package/fesm2022/novo-elements-elements-multi-picker.mjs +2 -2
  171. package/fesm2022/novo-elements-elements-multi-picker.mjs.map +1 -1
  172. package/fesm2022/novo-elements-elements-picker.mjs +14 -14
  173. package/fesm2022/novo-elements-elements-picker.mjs.map +1 -1
  174. package/fesm2022/novo-elements-elements-places.mjs +195 -187
  175. package/fesm2022/novo-elements-elements-places.mjs.map +1 -1
  176. package/fesm2022/novo-elements-elements-popover.mjs +2 -2
  177. package/fesm2022/novo-elements-elements-popover.mjs.map +1 -1
  178. package/fesm2022/novo-elements-elements-progress.mjs +4 -4
  179. package/fesm2022/novo-elements-elements-progress.mjs.map +1 -1
  180. package/fesm2022/novo-elements-elements-query-builder.mjs +67 -19
  181. package/fesm2022/novo-elements-elements-query-builder.mjs.map +1 -1
  182. package/fesm2022/novo-elements-elements-radio.mjs +4 -4
  183. package/fesm2022/novo-elements-elements-radio.mjs.map +1 -1
  184. package/fesm2022/novo-elements-elements-search.mjs +2 -2
  185. package/fesm2022/novo-elements-elements-search.mjs.map +1 -1
  186. package/fesm2022/novo-elements-elements-select.mjs +2 -2
  187. package/fesm2022/novo-elements-elements-select.mjs.map +1 -1
  188. package/fesm2022/novo-elements-elements-simple-table.mjs +6 -6
  189. package/fesm2022/novo-elements-elements-simple-table.mjs.map +1 -1
  190. package/fesm2022/novo-elements-elements-stepper.mjs +8 -8
  191. package/fesm2022/novo-elements-elements-stepper.mjs.map +1 -1
  192. package/fesm2022/novo-elements-elements-switch.mjs +2 -2
  193. package/fesm2022/novo-elements-elements-switch.mjs.map +1 -1
  194. package/fesm2022/novo-elements-elements-tabbed-group-picker.mjs +70 -10
  195. package/fesm2022/novo-elements-elements-tabbed-group-picker.mjs.map +1 -1
  196. package/fesm2022/novo-elements-elements-tabs.mjs +6 -6
  197. package/fesm2022/novo-elements-elements-tabs.mjs.map +1 -1
  198. package/fesm2022/novo-elements-elements-tiles.mjs +2 -2
  199. package/fesm2022/novo-elements-elements-tiles.mjs.map +1 -1
  200. package/fesm2022/novo-elements-elements-time-picker.mjs +4 -4
  201. package/fesm2022/novo-elements-elements-time-picker.mjs.map +1 -1
  202. package/fesm2022/novo-elements-elements-tip-well.mjs +2 -2
  203. package/fesm2022/novo-elements-elements-tip-well.mjs.map +1 -1
  204. package/fesm2022/novo-elements-elements-toast.mjs +2 -2
  205. package/fesm2022/novo-elements-elements-toast.mjs.map +1 -1
  206. package/fesm2022/novo-elements-elements-toolbar.mjs +2 -2
  207. package/fesm2022/novo-elements-elements-toolbar.mjs.map +1 -1
  208. package/fesm2022/novo-elements-elements-tooltip.mjs +2 -2
  209. package/fesm2022/novo-elements-elements-tooltip.mjs.map +1 -1
  210. package/fesm2022/novo-elements-elements-value.mjs +2 -2
  211. package/fesm2022/novo-elements-elements-value.mjs.map +1 -1
  212. package/fesm2022/novo-elements-services.mjs +1 -0
  213. package/fesm2022/novo-elements-services.mjs.map +1 -1
  214. package/fesm2022/novo-elements.mjs +14 -0
  215. package/fesm2022/novo-elements.mjs.map +1 -1
  216. package/index.d.ts +14 -0
  217. package/novo-elements.scss +7 -7
  218. package/package.json +1 -1
  219. package/services/index.d.ts +1 -0
  220. package/styles/base.scss +1 -0
  221. package/styles/content/code.scss +2 -2
  222. package/styles/content/forms.scss +2 -2
  223. package/styles/content/misc.scss +3 -3
  224. package/styles/content/range.scss +3 -3
  225. package/styles/iconography.scss +3 -3
  226. package/styles/themes/bh2026.scss +134 -0
  227. package/styles/themes/dark.scss +6 -1
  228. package/styles/themes/light.scss +4 -0
  229. package/styles/typography.scss +3 -3
  230. package/styles/variables.scss +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-elements-places.mjs","sources":["../../../projects/novo-elements/src/elements/places/places.service.ts","../../../projects/novo-elements/src/elements/places/places.component.ts","../../../projects/novo-elements/src/elements/places/places.module.ts","../../../projects/novo-elements/src/elements/places/places.tokens.ts","../../../projects/novo-elements/src/elements/places/novo-elements-elements-places.ts"],"sourcesContent":["import { isPlatformBrowser } from '@angular/common';\nimport { HttpClient } from '@angular/common/http';\nimport { Inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport { GlobalRef, LocalStorageService } from 'novo-elements/services';\n\n@Injectable()\nexport class GooglePlacesService {\n constructor(\n private _http: HttpClient,\n @Inject(PLATFORM_ID) private platformId: Object,\n private _global: GlobalRef,\n private _localStorageService: LocalStorageService,\n ) {}\n\n getPredictions(url: string, query: string): Promise<any> {\n return new Promise((resolve) => {\n const separator = url.includes('?') ? '&' : '?';\n this._http.get(url + separator + 'query=' + query).subscribe((data: any) => {\n if (data) {\n resolve(data);\n } else {\n resolve(false);\n }\n });\n });\n }\n\n getLatLngDetail(url: string, lat: number, lng: number): Promise<any> {\n return new Promise((resolve) => {\n const separator = url.includes('?') ? '&' : '?';\n this._http.get(url + separator + 'lat=' + lat + '&lng=' + lng).subscribe((data: any) => {\n if (data) {\n resolve(data);\n } else {\n resolve(false);\n }\n });\n });\n }\n\n getPlaceDetails(url: string, placeId: string): Promise<any> {\n return new Promise((resolve) => {\n const separator = url.includes('?') ? '&' : '?';\n this._http.get(url + separator + 'query=' + placeId).subscribe((data: any) => {\n if (data) {\n resolve(data);\n } else {\n resolve(false);\n }\n });\n });\n }\n\n getGeoCurrentLocation(): Promise<any> {\n return new Promise((resolve) => {\n if (isPlatformBrowser(this.platformId)) {\n const _window: any = this._global.nativeGlobal;\n if (_window.navigator.geolocation) {\n _window.navigator.geolocation.getCurrentPosition((pos) => {\n const latlng: any = { lat: parseFloat(pos.coords.latitude + ''), lng: parseFloat(pos.coords.longitude + '') };\n resolve(latlng);\n });\n } else {\n resolve(false);\n }\n } else {\n resolve(false);\n }\n });\n }\n\n getGeoLatLngDetail(latlng: any): Promise<any> {\n return new Promise((resolve) => {\n if (isPlatformBrowser(this.platformId)) {\n const _window: any = this._global.nativeGlobal;\n const geocoder: any = new _window.google.maps.Geocoder();\n geocoder.geocode({ location: latlng }, (results, status) => {\n if (status === 'OK') {\n this.getGeoPlaceDetail(results[0].place_id).then((result) => {\n if (result) {\n resolve(result);\n } else {\n resolve(false);\n }\n });\n } else {\n resolve(false);\n }\n });\n } else {\n resolve(false);\n }\n });\n }\n\n getGeoPrediction(params: any): Promise<any> {\n return new Promise((resolve) => {\n if (isPlatformBrowser(this.platformId)) {\n const _window: any = this._global.nativeGlobal;\n const placesService: any = new _window.google.maps.places.AutocompleteService();\n let queryInput: any = {};\n const promiseArr: any = [];\n if (params.countryRestriction.length) {\n queryInput = {\n input: params.query,\n componentRestrictions: { country: params.countryRestriction },\n };\n } else {\n queryInput = {\n input: params.query,\n };\n }\n if (params.geoLocation) {\n queryInput.location = new _window.google.maps.LatLng(parseFloat(params.geoLocation[0]), parseFloat(params.geoLocation[1]));\n queryInput.radius = params.radius;\n }\n if (params.geoTypes.length) {\n for (let i: number = 0; i < params.geoTypes.length; i++) {\n const _tempQuery: any = queryInput;\n _tempQuery.types = new Array(params.geoTypes[i]);\n promiseArr.push(this.geoPredictionCall(placesService, _tempQuery));\n }\n } else {\n promiseArr.push(this.geoPredictionCall(placesService, queryInput));\n }\n\n Promise.all(promiseArr).then((values) => {\n const val: any = values;\n if (val.length > 1) {\n let _tempArr: any = [];\n for (let j: number = 0; j < val.length; j++) {\n if (val[j] && val[j].length) {\n _tempArr = _tempArr.concat(val[j]);\n }\n }\n _tempArr = this.getUniqueResults(_tempArr);\n resolve(_tempArr);\n } else {\n resolve(values[0]);\n }\n });\n } else {\n resolve(false);\n }\n });\n }\n\n async getGeoPlaceDetail(placeId: string): Promise<any> {\n const placeDetail: any = await new Promise((resolve) => {\n if (isPlatformBrowser(this.platformId)) {\n const _window: any = this._global.nativeGlobal;\n const placesService: any = new _window.google.maps.places.PlacesService(document.createElement('div'));\n placesService.getDetails({ placeId }, (result: any) => {\n if (result === null || result.length === 0) {\n this.getGeoPaceDetailByReferance(result.referance).then((referanceData: any) => {\n if (!referanceData) {\n resolve(false);\n } else {\n resolve(referanceData);\n }\n });\n } else {\n resolve(result);\n }\n });\n } else {\n resolve(false);\n }\n });\n\n if (placeDetail?.types?.includes('locality')) {\n placeDetail.postal_codes = await this.getPostalCodes(placeDetail);\n }\n\n return placeDetail;\n }\n\n getGeoPaceDetailByReferance(referance: string): Promise<any> {\n return new Promise((resolve) => {\n if (isPlatformBrowser(this.platformId)) {\n const _window: any = this._global.nativeGlobal;\n const placesService: any = new _window.google.maps.places.PlacesService();\n placesService.getDetails({ reference: referance }, (result: any, status: any) => {\n if (status === _window.google.maps.places.PlacesServiceStatus.OK) {\n resolve(result);\n } else {\n resolve(false);\n }\n });\n } else {\n resolve(false);\n }\n });\n }\n\n addRecentList(localStorageName: string, result: any, itemSavedLength: number): any {\n this.getRecentList(localStorageName).then((data: any) => {\n if (data) {\n for (let i: number = 0; i < data.length; i++) {\n if (data[i].description === result.description) {\n data.splice(i, 1);\n break;\n }\n }\n data.unshift(result);\n if (data.length > itemSavedLength) {\n data.pop();\n }\n this._localStorageService.setItem(localStorageName, JSON.stringify(data));\n }\n });\n }\n\n getRecentList(localStorageName: string): Promise<any> {\n return new Promise((resolve) => {\n let value: any = this._localStorageService.getItem(localStorageName);\n if (value) {\n value = JSON.parse(value);\n } else {\n value = [];\n }\n resolve(value);\n });\n }\n\n getPostalCodes(placeDetail: any): Promise<string> {\n const _window: any = this._global.nativeGlobal;\n const geocoder: any = new _window.google.maps.Geocoder();\n return new Promise((resolve) => {\n geocoder.geocode({ location: placeDetail.geometry.location }, (results, status) => {\n if (status === 'OK' && results.length) {\n resolve(\n results.reduce(\n (postalCodes: string[], result: any) => {\n const postalCodeComponent = result.address_components.find(item => item.types.includes('postal_code'));\n if (postalCodeComponent && !postalCodes.includes(postalCodeComponent.long_name)) {\n postalCodes.push(postalCodeComponent.long_name);\n }\n return postalCodes;\n },\n [],\n ),\n );\n } else {\n resolve(null);\n }\n });\n });\n }\n\n private getUniqueResults(arr: any): any {\n return Array.from(arr.reduce((m, t) => m.set(t.place_id, t), new Map()).values());\n }\n\n private geoPredictionCall(placesService: any, queryInput: any): Promise<any> {\n const _window: any = this._global.nativeGlobal;\n return new Promise((resolve) => {\n placesService.getPlacePredictions(queryInput, (result: any, status: any) => {\n if (status === _window.google.maps.places.PlacesServiceStatus.OK) {\n resolve(result);\n } else {\n resolve(false);\n }\n });\n });\n }\n}\n","// NG2\nimport { isPlatformBrowser } from '@angular/common';\nimport { ChangeDetectorRef, Component, ElementRef, EventEmitter, forwardRef, Inject, Input, OnChanges, OnInit, Output, PLATFORM_ID } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { BasePickerResults } from 'novo-elements/elements/picker';\nimport { GlobalRef } from 'novo-elements/services';\nimport { Key } from 'novo-elements/utils';\nimport { Observable } from 'rxjs';\nimport { GooglePlacesService } from './places.service';\n\nexport interface PlacesSettings {\n geoPredictionServerUrl?: string;\n geoLatLangServiceUrl?: string;\n geoLocDetailServerUrl?: string;\n geoCountryRestriction?: any;\n geoTypes?: any;\n geoLocation?: any;\n geoRadius?: number;\n serverResponseListHierarchy?: any;\n serverResponseatLangHierarchy?: any;\n serverResponseDetailHierarchy?: any;\n resOnSearchButtonClickOnly?: boolean;\n useGoogleGeoApi?: boolean;\n inputPlaceholderText?: string;\n inputString?: string;\n showSearchButton?: boolean;\n showRecentSearch?: boolean;\n showCurrentLocation?: boolean;\n recentStorageName?: string;\n noOfRecentSearchSave?: number;\n currentLocIconUrl?: string;\n searchIconUrl?: string;\n locationIconUrl?: string;\n}\n\n/** Normalized address prediction; raw provider records are mapped into this via normalizePrediction. */\nexport interface AddressLookupPrediction {\n placeId?: string;\n primaryText?: string;\n secondaryText?: string;\n displayAddress?: string;\n types?: string[];\n /** Original provider record, retained so recent-search selection re-emits full detail. */\n raw?: any;\n}\n\n// Value accessor for the component (supports ngModel)\nconst PLACES_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PlacesListComponent),\n multi: true,\n};\n\n@Component({\n selector: 'google-places-list',\n providers: [PLACES_VALUE_ACCESSOR],\n template: `\n <novo-list direction=\"vertical\">\n <novo-list-item *ngFor=\"let data of matches; let $index = index\" (click)=\"selectedListNode($event, $index)\" [ngClass]=\"{ active: data === activeMatch }\">\n <item-header>\n <item-avatar icon=\"location\"></item-avatar>\n <item-title>{{ data.primaryText }}</item-title>\n </item-header>\n <item-content>{{ data.secondaryText }}</item-content>\n </novo-list-item>\n </novo-list>\n `,\n styleUrls: ['./places.component.scss'],\n standalone: false,\n})\nexport class PlacesListComponent extends BasePickerResults implements OnInit, OnChanges, ControlValueAccessor {\n @Input()\n userSettings: PlacesSettings;\n @Output()\n termChange: EventEmitter<any> = new EventEmitter<any>();\n @Output()\n select: EventEmitter<any> = new EventEmitter<any>();\n @Output()\n matchesUpdated: EventEmitter<AddressLookupPrediction[]> = new EventEmitter<AddressLookupPrediction[]>();\n\n public locationInput: string = '';\n public gettingCurrentLocationFlag: boolean = false;\n public dropdownOpen: boolean = false;\n public recentDropdownOpen: boolean = false;\n public isSettingsError: boolean = false;\n public settingsErrorMsg: string = '';\n public settings: PlacesSettings = {};\n private moduleinit: boolean = false;\n private selectedDataIndex: number = -1;\n private recentSearchData: any = [];\n private userSelectedOption: any = '';\n private defaultSettings: PlacesSettings = {\n geoPredictionServerUrl: '',\n geoLatLangServiceUrl: '',\n geoLocDetailServerUrl: '',\n geoCountryRestriction: [],\n geoTypes: [],\n geoLocation: [],\n geoRadius: 0,\n serverResponseListHierarchy: [],\n serverResponseatLangHierarchy: [],\n serverResponseDetailHierarchy: [],\n resOnSearchButtonClickOnly: false,\n useGoogleGeoApi: true,\n inputPlaceholderText: 'Enter Area Name',\n inputString: '',\n showSearchButton: true,\n showRecentSearch: true,\n showCurrentLocation: true,\n recentStorageName: 'recentSearches',\n noOfRecentSearchSave: 5,\n currentLocIconUrl: '',\n searchIconUrl: '',\n locationIconUrl: '',\n };\n\n model: any;\n onModelChange: Function = () => {};\n onModelTouched: Function = () => {};\n\n constructor(\n @Inject(PLATFORM_ID) private platformId: Object,\n private _elmRef: ElementRef,\n private _global: GlobalRef,\n private _googlePlacesService: GooglePlacesService,\n private cdr: ChangeDetectorRef,\n ) {\n super(_elmRef, cdr);\n this.config = {};\n }\n\n ngOnInit(): any {\n if (!this.moduleinit) {\n this.moduleInit();\n }\n }\n\n ngOnChanges(): any {\n this.moduleinit = true;\n this.moduleInit();\n this.searchinputCallback(null);\n }\n\n writeValue(model: any): void {\n this.model = model;\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n // function called when click event happens in input box. (Binded with view)\n searchinputClickCallback(event: any): any {\n event.target.select();\n this.searchinputCallback(event);\n }\n\n // function called when there is a change in input. (Binded with view)\n searchinputCallback(event: any): any {\n const inputVal: any = this.locationInput;\n if (inputVal) {\n this.getListQuery(inputVal);\n } else {\n this.matches = [];\n if (this.userSelectedOption) {\n this.userQuerySubmit('false');\n }\n this.userSelectedOption = '';\n if (this.settings.showRecentSearch) {\n this.showRecentSearch();\n } else {\n this.dropdownOpen = false;\n }\n }\n }\n\n // function to execute when user hover over autocomplete list. (binded with view)\n activeListNode(index: number): any {\n for (let i: number = 0; i < this.matches.length; i++) {\n if (index === i) {\n this.matches[i].active = true;\n this.selectedDataIndex = index;\n } else {\n this.matches[i].active = false;\n }\n }\n }\n\n // function to execute when user selects a match from the autocomplete list. (binded with view)\n selectedListNode(event: MouseEvent, index: number): any {\n this.selectMatch(this.matches[index]);\n }\n\n // function to execute when user selects a match.\n selectMatch(match: AddressLookupPrediction): any {\n this.dropdownOpen = false;\n if (this.recentDropdownOpen) {\n // Recent items carry full detail on `raw`, which downstream consumers need.\n this.setRecentLocation(match.raw ?? match);\n } else {\n this.getPlaceLocationInfo(match);\n }\n }\n\n // function to close the autocomplete list when clicked outside. (binded with view)\n closeAutocomplete(event: any): any {\n if (!this._elmRef.nativeElement.contains(event.target)) {\n this.selectedDataIndex = -1;\n this.dropdownOpen = false;\n }\n }\n\n // function to manually trigger the callback to parent component when clicked search button.\n userQuerySubmit(selectedOption?: any): any {\n const _userOption: any = selectedOption === 'false' ? '' : this.userSelectedOption;\n if (_userOption) {\n this.select.emit(this.userSelectedOption);\n } else {\n // this.select.emit(false);\n }\n }\n\n // function to get user current location from the device.\n currentLocationSelected(): any {\n if (isPlatformBrowser(this.platformId)) {\n this.gettingCurrentLocationFlag = true;\n this.dropdownOpen = false;\n this._googlePlacesService.getGeoCurrentLocation().then((result: any) => {\n if (!result) {\n this.gettingCurrentLocationFlag = false;\n } else {\n this.getCurrentLocationInfo(result);\n }\n });\n }\n }\n\n // module initialization happens. function called by ngOninit and ngOnChange\n private moduleInit(): any {\n this.settings = this.setUserSettings();\n // condition to check if Radius is set without location detail.\n if (this.settings.geoRadius) {\n if (this.settings.geoLocation.length !== 2) {\n this.isSettingsError = true;\n this.settingsErrorMsg =\n this.settingsErrorMsg + 'Radius should be used with GeoLocation. Please use \"geoLocation\" key to set lat and lng. ';\n }\n }\n\n // condition to check if lat and lng is set and radious is not set then it will set to 20,000KM by default\n if (this.settings.geoLocation.length === 2 && !this.settings.geoRadius) {\n this.settings.geoRadius = 20000000;\n }\n if (this.settings.showRecentSearch) {\n this.getRecentLocations();\n }\n if (!this.settings.useGoogleGeoApi) {\n if (!this.settings.geoPredictionServerUrl) {\n this.isSettingsError = true;\n this.settingsErrorMsg =\n this.settingsErrorMsg + 'Prediction custom server url is not defined. Please use \"geoPredictionServerUrl\" key to set. ';\n }\n if (!this.settings.geoLatLangServiceUrl) {\n this.isSettingsError = true;\n this.settingsErrorMsg =\n this.settingsErrorMsg + 'Latitude and longitude custom server url is not defined. Please use \"geoLatLangServiceUrl\" key to set. ';\n }\n if (!this.settings.geoLocDetailServerUrl) {\n this.isSettingsError = true;\n this.settingsErrorMsg =\n this.settingsErrorMsg + 'Location detail custom server url is not defined. Please use \"geoLocDetailServerUrl\" key to set. ';\n }\n }\n this.locationInput = this.term;\n }\n\n // function to process the search query when pressed enter.\n private processSearchQuery(): any {\n if (this.matches.length) {\n if (this.selectedDataIndex > -1) {\n this.selectedListNode(null, this.selectedDataIndex);\n } else {\n this.selectedListNode(null, 0);\n }\n }\n }\n\n // function to set user settings if it is available.\n private setUserSettings(): PlacesSettings {\n const _tempObj: any = {};\n if (this.userSettings && typeof this.userSettings === 'object') {\n const keys: string[] = Object.keys(this.defaultSettings);\n for (const value of keys) {\n _tempObj[value] = this.userSettings[value] !== undefined ? this.userSettings[value] : this.defaultSettings[value];\n }\n return _tempObj;\n } else {\n return this.defaultSettings;\n }\n }\n\n // function to get the autocomplete list based on user input.\n private getListQuery(value: string): any {\n this.recentDropdownOpen = false;\n if (this.settings.useGoogleGeoApi) {\n const _tempParams: any = {\n query: value,\n countryRestriction: this.settings.geoCountryRestriction,\n geoTypes: this.settings.geoTypes,\n };\n if (this.settings.geoLocation.length === 2) {\n _tempParams.geoLocation = this.settings.geoLocation;\n _tempParams.radius = this.settings.geoRadius;\n }\n this._googlePlacesService.getGeoPrediction(_tempParams).then((result) => {\n this.updateListItem(result);\n });\n } else {\n this._googlePlacesService.getPredictions(this.settings.geoPredictionServerUrl, value).then((result) => {\n result = this.extractServerList(this.settings.serverResponseListHierarchy, result);\n this.updateListItem(result);\n });\n }\n }\n\n // function to extratc custom data which is send by the server.\n private extractServerList(arrayList: any, data: any): any {\n if (arrayList.length) {\n let _tempData: any = data;\n for (const key of arrayList) {\n _tempData = _tempData[key];\n }\n return _tempData;\n } else {\n return data;\n }\n }\n\n // function to update the predicted list.\n private updateListItem(listData: any): any {\n this.matches = (listData || []).map((item: any) => this.normalizePrediction(item));\n // Reset highlight so Enter can't act on a stale prediction.\n this.activeMatch = undefined;\n this.dropdownOpen = true;\n this.cdr.detectChanges();\n this.matchesUpdated.emit(this.matches);\n }\n\n // function to show the recent search result.\n private showRecentSearch(): any {\n this.recentDropdownOpen = true;\n this.dropdownOpen = true;\n this._googlePlacesService.getRecentList(this.settings.recentStorageName).then((result: any) => {\n this.matches = (result || []).map((item: any) => this.normalizePrediction(item));\n });\n }\n\n // function to execute to get location detail based on latitude and longitude.\n private getCurrentLocationInfo(latlng: any): any {\n if (this.settings.useGoogleGeoApi) {\n this._googlePlacesService.getGeoLatLngDetail(latlng).then((result: any) => {\n if (result) {\n this.setRecentLocation(result);\n }\n this.gettingCurrentLocationFlag = false;\n });\n } else {\n this._googlePlacesService.getLatLngDetail(this.settings.geoLatLangServiceUrl, latlng.lat, latlng.lng).then((result: any) => {\n if (result) {\n result = this.extractServerList(this.settings.serverResponseatLangHierarchy, result);\n this.setRecentLocation(result);\n }\n this.gettingCurrentLocationFlag = false;\n });\n }\n }\n\n // function to retrieve the location info based on google place id.\n private getPlaceLocationInfo(selectedData: AddressLookupPrediction): any {\n const placeId = selectedData.placeId;\n if (this.settings.useGoogleGeoApi) {\n this._googlePlacesService.getGeoPlaceDetail(placeId).then((data: any) => {\n if (data) {\n this.setRecentLocation(data);\n }\n });\n } else {\n this._googlePlacesService.getPlaceDetails(this.settings.geoLocDetailServerUrl, placeId).then((result: any) => {\n if (result) {\n result = this.extractServerList(this.settings.serverResponseDetailHierarchy, result);\n this.setRecentLocation(result);\n }\n });\n }\n }\n\n // function to store the selected user search in the localstorage.\n private setRecentLocation(data: any): any {\n data = JSON.parse(JSON.stringify(data));\n data.description = data.description ? data.description : (data.formattedAddress || data.formatted_address);\n data.active = false;\n this.selectedDataIndex = -1;\n this.locationInput = data.description;\n if (this.settings.showRecentSearch) {\n this._googlePlacesService.addRecentList(this.settings.recentStorageName, data, this.settings.noOfRecentSearchSave);\n this.getRecentLocations();\n }\n this.userSelectedOption = data;\n // below code will execute only when user press enter or select any option selection and it emit a callback to the parent component.\n if (!this.settings.resOnSearchButtonClickOnly) {\n this.select.emit(data);\n this.termChange.emit(data);\n }\n }\n\n // function to retrive the stored recent user search from the localstorage.\n private getRecentLocations(): any {\n this._googlePlacesService.getRecentList(this.settings.recentStorageName).then((data: any) => {\n this.recentSearchData = data && data.length ? data : [];\n });\n }\n\n // Fold a raw Google/REST/recent record into the internal AddressLookupPrediction shape.\n normalizePrediction(raw: any): AddressLookupPrediction {\n return {\n placeId: raw?.placeId || raw?.place_id,\n primaryText: raw?.primaryText || raw?.structured_formatting?.main_text || raw?.displayAddress || raw?.description || '',\n secondaryText: raw?.secondaryText || raw?.structured_formatting?.secondary_text || '',\n displayAddress: raw?.displayAddress || raw?.description,\n types: raw?.types,\n raw,\n };\n }\n\n onKeyDown(event: KeyboardEvent) {\n if (this.dropdownOpen) {\n if (event.key === Key.ArrowUp) {\n this.prevActiveMatch();\n return;\n }\n if (event.key === Key.ArrowDown) {\n this.nextActiveMatch();\n return;\n }\n if (event.key === Key.Enter) {\n // Only select when a prediction is highlighted.\n if (this.activeMatch) {\n this.selectMatch(this.activeMatch);\n }\n return;\n }\n }\n }\n\n search(term, mode?): Observable<any> {\n // Disable the base search term functionality here since it is handled by the places picker separately\n return new Observable();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { provideHttpClient, withInterceptorsFromDi } from '@angular/common/http';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { NovoListModule } from 'novo-elements/elements/list';\nimport { PlacesListComponent } from './places.component';\nimport { GooglePlacesService } from './places.service';\n\n@NgModule({ declarations: [PlacesListComponent],\n exports: [PlacesListComponent], imports: [CommonModule, FormsModule, NovoListModule], providers: [GooglePlacesService, provideHttpClient(withInterceptorsFromDi())] })\nexport class GooglePlacesModule {}\n","import { InjectionToken } from '@angular/core';\nimport type { PlacesSettings } from './places.component';\n\n/** App-wide address-lookup config; when provided, every novo-address enables autocomplete on Address 1. */\nexport const NOVO_ADDRESS_CONFIG = new InjectionToken<PlacesSettings>('NOVO_ADDRESS_CONFIG');\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.GooglePlacesService"],"mappings":"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"}
1
+ {"version":3,"file":"novo-elements-elements-places.mjs","sources":["../../../projects/novo-elements/src/elements/places/places.service.ts","../../../projects/novo-elements/src/elements/places/places.tokens.ts","../../../projects/novo-elements/src/elements/places/places.component.ts","../../../projects/novo-elements/src/elements/places/places.component.html","../../../projects/novo-elements/src/elements/places/places.module.ts","../../../projects/novo-elements/src/elements/places/novo-elements-elements-places.ts"],"sourcesContent":["import { isPlatformBrowser } from '@angular/common';\nimport { HttpClient } from '@angular/common/http';\nimport { Inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport { GlobalRef, LocalStorageService } from 'novo-elements/services';\nimport type { PlacesSettings } from './places.component';\n\n@Injectable()\nexport class GooglePlacesService {\n // Shared across the address fields that use this singleton so the SDK is injected at most once.\n private mapsLoad?: Promise<void>;\n // The key the SDK was (or is being) loaded with; the Maps JS API can only be loaded once per page.\n private mapsLoadKey?: string;\n\n constructor(\n private _http: HttpClient,\n @Inject(PLATFORM_ID) private platformId: Object,\n private _global: GlobalRef,\n private _localStorageService: LocalStorageService,\n ) {}\n\n // Ensure the Google Maps JS SDK is available before any window.google usage.\n // No-ops when the SDK is already present (host script tag) or no key is configured (search-service path).\n loadGoogleMaps(settings: PlacesSettings): Promise<void> {\n const _window: any = this._global.nativeGlobal;\n if (_window?.google?.maps?.places) {\n return Promise.resolve();\n }\n if (!isPlatformBrowser(this.platformId) || !settings?.googleApiKey) {\n return Promise.resolve();\n }\n if (!this.mapsLoad) {\n this.mapsLoadKey = settings.googleApiKey;\n this.mapsLoad = this.injectGoogleMapsScript(settings);\n } else if (this.mapsLoadKey && this.mapsLoadKey !== settings.googleApiKey) {\n // The Maps JS API can only be loaded once per page; a second, different key is ignored.\n console.warn(\n 'GooglePlacesService: the Google Maps SDK is already loading with a different key; ignoring the new googleApiKey.',\n );\n }\n return this.mapsLoad;\n }\n\n private injectGoogleMapsScript(settings: PlacesSettings): Promise<void> {\n return new Promise<void>((resolve, reject) => {\n const _window: any = this._global.nativeGlobal;\n // Build params one at a time so undefined override values are dropped instead of serialized as \"undefined\".\n // The component uses the legacy Places API (AutocompleteService, PlacesService) which requires the\n // synchronous library load — google.maps.places is fully populated when onload fires.\n const params = new URLSearchParams();\n params.set('key', settings.googleApiKey);\n params.set('libraries', 'places');\n for (const [key, value] of Object.entries(settings.googleMapsLoaderParams ?? {})) {\n if (value !== undefined && value !== null) {\n params.set(key, value);\n }\n }\n const script = document.createElement('script');\n script.src = `https://maps.googleapis.com/maps/api/js?${params.toString()}`;\n script.async = true;\n script.onload = () => resolve();\n script.onerror = () => {\n // Clear both cached fields so a later attempt can retry with any key.\n this.mapsLoad = undefined;\n this.mapsLoadKey = undefined;\n reject(new Error('Failed to load the Google Maps JavaScript API.'));\n };\n document.head.appendChild(script);\n });\n }\n\n getPredictions(url: string, query: string, sessionToken?: string): Promise<any> {\n return new Promise((resolve) => {\n const separator = url.includes('?') ? '&' : '?';\n const sessionParam = sessionToken ? '&sessionToken=' + sessionToken : '';\n this._http.get(url + separator + 'query=' + query + sessionParam).subscribe((data: any) => {\n if (data) {\n resolve(data);\n } else {\n resolve(false);\n }\n });\n });\n }\n\n getPlaceDetails(url: string, placeId: string, sessionToken?: string): Promise<any> {\n return new Promise((resolve) => {\n const separator = url.includes('?') ? '&' : '?';\n const sessionParam = sessionToken ? '&sessionToken=' + sessionToken : '';\n this._http.get(url + separator + 'query=' + placeId + sessionParam).subscribe((data: any) => {\n if (data) {\n resolve(data);\n } else {\n resolve(false);\n }\n });\n });\n }\n\n getGeoPrediction(params: any): Promise<any> {\n return new Promise((resolve) => {\n if (isPlatformBrowser(this.platformId)) {\n const _window: any = this._global.nativeGlobal;\n const placesService: any = new _window.google.maps.places.AutocompleteService();\n let queryInput: any = {};\n const promiseArr: any = [];\n if (params.countryRestriction.length) {\n queryInput = {\n input: params.query,\n componentRestrictions: { country: params.countryRestriction },\n };\n } else {\n queryInput = {\n input: params.query,\n };\n }\n if (params.geoLocation) {\n queryInput.location = new _window.google.maps.LatLng(parseFloat(params.geoLocation[0]), parseFloat(params.geoLocation[1]));\n queryInput.radius = params.radius;\n }\n if (params.geoTypes.length) {\n for (let i: number = 0; i < params.geoTypes.length; i++) {\n const _tempQuery: any = queryInput;\n _tempQuery.types = new Array(params.geoTypes[i]);\n promiseArr.push(this.geoPredictionCall(placesService, _tempQuery));\n }\n } else {\n promiseArr.push(this.geoPredictionCall(placesService, queryInput));\n }\n\n Promise.all(promiseArr).then((values) => {\n const val: any = values;\n if (val.length > 1) {\n let _tempArr: any = [];\n for (let j: number = 0; j < val.length; j++) {\n if (val[j] && val[j].length) {\n _tempArr = _tempArr.concat(val[j]);\n }\n }\n _tempArr = this.getUniqueResults(_tempArr);\n resolve(_tempArr);\n } else {\n resolve(values[0]);\n }\n });\n } else {\n resolve(false);\n }\n });\n }\n\n async getGeoPlaceDetail(placeId: string): Promise<any> {\n const placeDetail: any = await new Promise((resolve) => {\n if (isPlatformBrowser(this.platformId)) {\n const _window: any = this._global.nativeGlobal;\n const placesService: any = new _window.google.maps.places.PlacesService(document.createElement('div'));\n placesService.getDetails({ placeId }, (result: any) => {\n if (result === null) {\n resolve(false);\n } else if (result.length === 0) {\n this.getGeoPaceDetailByReferance(result.referance).then((referanceData: any) => {\n resolve(referanceData || false);\n });\n } else {\n resolve(result);\n }\n });\n } else {\n resolve(false);\n }\n });\n\n if (placeDetail?.types?.includes('locality')) {\n placeDetail.postal_codes = await this.getPostalCodes(placeDetail);\n }\n\n return placeDetail;\n }\n\n getGeoPaceDetailByReferance(referance: string): Promise<any> {\n return new Promise((resolve) => {\n if (isPlatformBrowser(this.platformId)) {\n const _window: any = this._global.nativeGlobal;\n const placesService: any = new _window.google.maps.places.PlacesService();\n placesService.getDetails({ reference: referance }, (result: any, status: any) => {\n if (status === _window.google.maps.places.PlacesServiceStatus.OK) {\n resolve(result);\n } else {\n resolve(false);\n }\n });\n } else {\n resolve(false);\n }\n });\n }\n\n addRecentList(localStorageName: string, result: any, itemSavedLength: number): any {\n this.getRecentList(localStorageName).then((data: any) => {\n if (data) {\n for (let i: number = 0; i < data.length; i++) {\n if (data[i].description === result.description) {\n data.splice(i, 1);\n break;\n }\n }\n data.unshift(result);\n if (data.length > itemSavedLength) {\n data.pop();\n }\n this._localStorageService.setItem(localStorageName, JSON.stringify(data));\n }\n });\n }\n\n getRecentList(localStorageName: string): Promise<any> {\n return new Promise((resolve) => {\n let value: any = this._localStorageService.getItem(localStorageName);\n if (value) {\n value = JSON.parse(value);\n } else {\n value = [];\n }\n resolve(value);\n });\n }\n\n getPostalCodes(placeDetail: any): Promise<string> {\n const _window: any = this._global.nativeGlobal;\n const geocoder: any = new _window.google.maps.Geocoder();\n return new Promise((resolve) => {\n geocoder.geocode({ location: placeDetail.geometry.location }, (results, status) => {\n if (status === 'OK' && results.length) {\n resolve(\n results.reduce((postalCodes: string[], result: any) => {\n const postalCodeComponent = result.address_components.find((item) => item.types.includes('postal_code'));\n if (postalCodeComponent && !postalCodes.includes(postalCodeComponent.long_name)) {\n postalCodes.push(postalCodeComponent.long_name);\n }\n return postalCodes;\n }, []),\n );\n } else {\n resolve(null);\n }\n });\n });\n }\n\n private getUniqueResults(arr: any): any {\n return Array.from(arr.reduce((m, t) => m.set(t.place_id, t), new Map()).values());\n }\n\n private geoPredictionCall(placesService: any, queryInput: any): Promise<any> {\n const _window: any = this._global.nativeGlobal;\n return new Promise((resolve) => {\n placesService.getPlacePredictions(queryInput, (result: any, status: any) => {\n if (status === _window.google.maps.places.PlacesServiceStatus.OK) {\n resolve(result);\n } else {\n resolve(false);\n }\n });\n });\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport type { PlacesSettings } from './places.component';\n\n/** App-wide address-lookup config; when provided, every novo-address enables autocomplete on Address 1. */\nexport const NOVO_ADDRESS_CONFIG = new InjectionToken<PlacesSettings>('NOVO_ADDRESS_CONFIG');\n","// NG2\nimport {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Inject,\n Input,\n OnChanges,\n OnInit,\n Optional,\n Output,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { BasePickerResults } from 'novo-elements/elements/picker';\nimport { GlobalRef } from 'novo-elements/services';\nimport { Key } from 'novo-elements/utils';\nimport { NEVER, Observable } from 'rxjs';\nimport { GooglePlacesService } from './places.service';\nimport { NOVO_ADDRESS_CONFIG } from './places.tokens';\n\nexport interface PlacesSettings {\n geoPredictionServerUrl?: string;\n geoLatLangServiceUrl?: string;\n geoLocDetailServerUrl?: string;\n geoCountryRestriction?: any;\n geoTypes?: any;\n geoLocation?: any;\n geoRadius?: number;\n serverResponseListHierarchy?: any;\n serverResponseatLangHierarchy?: any;\n serverResponseDetailHierarchy?: any;\n resOnSearchButtonClickOnly?: boolean;\n useGoogleGeoApi?: boolean;\n inputPlaceholderText?: string;\n inputString?: string;\n showSearchButton?: boolean;\n showRecentSearch?: boolean;\n showCurrentLocation?: boolean;\n recentStorageName?: string;\n noOfRecentSearchSave?: number;\n currentLocIconUrl?: string;\n searchIconUrl?: string;\n locationIconUrl?: string;\n /** Bullhorn-managed key; when set, the library lazy-loads the Maps JS SDK with it instead of relying on a host script tag. */\n googleApiKey?: string;\n /** Extra Maps JS loader query params, merged over the defaults (libraries=places, loading=async). */\n googleMapsLoaderParams?: Record<string, string>;\n /** When false/undefined, the address-block inline autocomplete overlay is suppressed even when this config is present. */\n addressBlockEnabled?: boolean;\n}\n\n/** Normalized address prediction; raw provider records are mapped into this via normalizePrediction. */\nexport interface AddressLookupPrediction {\n placeId?: string;\n primaryText?: string;\n secondaryText?: string;\n displayAddress?: string;\n types?: string[];\n /** Original provider record, retained so recent-search selection re-emits full detail. */\n raw?: any;\n}\n\n// Value accessor for the component (supports ngModel)\nconst PLACES_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PlacesListComponent),\n multi: true,\n};\n\n@Component({\n selector: 'google-places-list',\n providers: [PLACES_VALUE_ACCESSOR],\n templateUrl: './places.component.html',\n styleUrls: ['./places.component.scss'],\n standalone: false,\n})\nexport class PlacesListComponent extends BasePickerResults implements OnInit, OnChanges, ControlValueAccessor {\n private static readonly SESSION_TOKEN_TIMEOUT_MS: number = 3 * 60 * 1000;\n\n @Input()\n userSettings: PlacesSettings;\n @Output()\n termChange: EventEmitter<any> = new EventEmitter<any>();\n @Output()\n select: EventEmitter<any> = new EventEmitter<any>();\n @Output()\n matchesUpdated: EventEmitter<AddressLookupPrediction[]> = new EventEmitter<AddressLookupPrediction[]>();\n\n public locationInput: string = '';\n public dropdownOpen: boolean = false;\n public recentDropdownOpen: boolean = false;\n public isSettingsError: boolean = false;\n public settingsErrorMsg: string = '';\n public settings: PlacesSettings = {};\n private moduleinit: boolean = false;\n private selectedDataIndex: number = -1;\n private recentSearchData: any = [];\n private userSelectedOption: any = '';\n private sessionToken: string = '';\n private sessionTokenStartedAt: number = 0;\n private defaultSettings: PlacesSettings = {\n geoPredictionServerUrl: '',\n geoLatLangServiceUrl: '',\n geoLocDetailServerUrl: '',\n geoCountryRestriction: [],\n geoTypes: [],\n geoLocation: [],\n geoRadius: 0,\n serverResponseListHierarchy: [],\n serverResponseatLangHierarchy: [],\n serverResponseDetailHierarchy: [],\n resOnSearchButtonClickOnly: false,\n useGoogleGeoApi: true,\n inputPlaceholderText: 'Enter Area Name',\n inputString: '',\n showSearchButton: true,\n showRecentSearch: true,\n showCurrentLocation: true,\n recentStorageName: 'recentSearches',\n noOfRecentSearchSave: 5,\n currentLocIconUrl: '',\n searchIconUrl: '',\n locationIconUrl: '',\n googleApiKey: '',\n googleMapsLoaderParams: {},\n };\n\n model: any;\n onModelChange: Function = () => {};\n onModelTouched: Function = () => {};\n\n constructor(\n private _elmRef: ElementRef,\n private _global: GlobalRef,\n private _googlePlacesService: GooglePlacesService,\n private cdr: ChangeDetectorRef,\n // Fallback config from the app-wide token; used when [userSettings] does not provide a field.\n @Optional() @Inject(NOVO_ADDRESS_CONFIG) private addressConfig: PlacesSettings = null,\n ) {\n super(_elmRef, cdr);\n this.config = {};\n }\n\n ngOnInit(): any {\n if (!this.moduleinit) {\n this.moduleInit();\n }\n }\n\n ngOnChanges(): any {\n this.moduleinit = true;\n this.moduleInit();\n this.searchinputCallback(null);\n }\n\n writeValue(model: any): void {\n this.model = model;\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n // function called when click event happens in input box. (Binded with view)\n searchinputClickCallback(event: any): any {\n event.target.select();\n this.searchinputCallback(event);\n }\n\n // function called when there is a change in input. (Binded with view)\n searchinputCallback(event: any): any {\n const inputVal: any = this.locationInput;\n if (inputVal) {\n this.getListQuery(inputVal);\n } else {\n this.matches = [];\n this.clearSessionToken();\n if (this.userSelectedOption) {\n this.userQuerySubmit('false');\n }\n this.userSelectedOption = '';\n if (this.settings.showRecentSearch) {\n this.showRecentSearch();\n } else {\n this.dropdownOpen = false;\n }\n }\n }\n\n // function to execute when user hover over autocomplete list. (binded with view)\n activeListNode(index: number): any {\n for (let i: number = 0; i < this.matches.length; i++) {\n if (index === i) {\n this.matches[i].active = true;\n this.selectedDataIndex = index;\n } else {\n this.matches[i].active = false;\n }\n }\n }\n\n // function to execute when user selects a match from the autocomplete list. (binded with view)\n selectedListNode(event: MouseEvent, index: number): any {\n this.selectMatch(this.matches[index]);\n }\n\n // function to execute when user selects a match.\n selectMatch(match: AddressLookupPrediction): any {\n this.dropdownOpen = false;\n if (this.recentDropdownOpen) {\n // Recent items carry full detail on `raw`, which downstream consumers need.\n this.setRecentLocation(match.raw ?? match);\n } else {\n this.getPlaceLocationInfo(match);\n }\n }\n\n // function to close the autocomplete list when clicked outside. (binded with view)\n closeAutocomplete(event: any): any {\n if (!this._elmRef.nativeElement.contains(event.target)) {\n this.selectedDataIndex = -1;\n this.dropdownOpen = false;\n }\n }\n\n // function to manually trigger the callback to parent component when clicked search button.\n userQuerySubmit(selectedOption?: any): any {\n const _userOption: any = selectedOption === 'false' ? '' : this.userSelectedOption;\n if (_userOption) {\n this.select.emit(this.userSelectedOption);\n } else {\n // this.select.emit(false);\n }\n }\n\n // Fold a raw Google/REST/recent record into the internal AddressLookupPrediction shape.\n normalizePrediction(raw: any): AddressLookupPrediction {\n return {\n placeId: raw?.placeId || raw?.place_id,\n primaryText: raw?.primaryText || raw?.structured_formatting?.main_text || raw?.displayAddress || raw?.description || '',\n secondaryText: raw?.secondaryText || raw?.structured_formatting?.secondary_text || '',\n displayAddress: raw?.displayAddress || raw?.description,\n types: raw?.types,\n raw,\n };\n }\n\n onKeyDown(event: KeyboardEvent) {\n if (this.dropdownOpen) {\n if (event.key === Key.ArrowUp) {\n this.prevActiveMatch();\n return;\n }\n if (event.key === Key.ArrowDown) {\n this.nextActiveMatch();\n return;\n }\n if (event.key === Key.Enter) {\n // Only select when a prediction is highlighted.\n if (this.activeMatch) {\n this.selectMatch(this.activeMatch);\n }\n return;\n }\n }\n }\n\n override search(term, mode?): Observable<any> {\n // Disable the base search term functionality here since it is handled by the places picker separately\n return NEVER;\n }\n\n // module initialization happens. function called by ngOninit and ngOnChange\n private moduleInit(): any {\n this.settings = this.setUserSettings();\n // condition to check if Radius is set without location detail.\n if (this.settings.geoRadius) {\n if (this.settings.geoLocation.length !== 2) {\n this.isSettingsError = true;\n this.settingsErrorMsg =\n this.settingsErrorMsg + 'Radius should be used with GeoLocation. Please use \"geoLocation\" key to set lat and lng. ';\n }\n }\n\n // condition to check if lat and lng is set and radious is not set then it will set to 20,000KM by default\n if (this.settings.geoLocation.length === 2 && !this.settings.geoRadius) {\n this.settings.geoRadius = 20000000;\n }\n if (this.settings.showRecentSearch) {\n this.getRecentLocations();\n }\n if (this.settings.useGoogleGeoApi && !this.settings.googleApiKey) {\n console.warn(\n 'google-places-list: No googleApiKey configured — Google Places autocomplete is disabled. ' +\n 'Pass address.googleApiKey to NovoElementProviders.forRoot() to enable it.',\n );\n }\n if (!this.settings.useGoogleGeoApi) {\n if (!this.settings.geoPredictionServerUrl) {\n this.isSettingsError = true;\n this.settingsErrorMsg =\n this.settingsErrorMsg + 'Prediction custom server url is not defined. Please use \"geoPredictionServerUrl\" key to set. ';\n }\n if (!this.settings.geoLatLangServiceUrl) {\n this.isSettingsError = true;\n this.settingsErrorMsg =\n this.settingsErrorMsg + 'Latitude and longitude custom server url is not defined. Please use \"geoLatLangServiceUrl\" key to set. ';\n }\n if (!this.settings.geoLocDetailServerUrl) {\n this.isSettingsError = true;\n this.settingsErrorMsg =\n this.settingsErrorMsg + 'Location detail custom server url is not defined. Please use \"geoLocDetailServerUrl\" key to set. ';\n }\n }\n this.locationInput = this.term;\n }\n\n // function to process the search query when pressed enter.\n private processSearchQuery(): any {\n if (this.matches.length) {\n if (this.selectedDataIndex > -1) {\n this.selectedListNode(null, this.selectedDataIndex);\n } else {\n this.selectedListNode(null, 0);\n }\n }\n }\n\n // function to set user settings if it is available.\n // Priority: [userSettings] input > NOVO_ADDRESS_CONFIG token > defaultSettings.\n private setUserSettings(): PlacesSettings {\n const _tempObj: any = {};\n const keys: string[] = Object.keys(this.defaultSettings);\n for (const value of keys) {\n if (this.userSettings?.[value] !== undefined) {\n _tempObj[value] = this.userSettings[value];\n } else if (this.addressConfig?.[value] !== undefined) {\n _tempObj[value] = this.addressConfig[value];\n } else {\n _tempObj[value] = this.defaultSettings[value];\n }\n }\n return _tempObj;\n }\n\n // function to get the autocomplete list based on user input.\n private async getListQuery(value: string): Promise<void> {\n this.recentDropdownOpen = false;\n if (this.settings.useGoogleGeoApi) {\n const _tempParams: any = {\n query: value,\n countryRestriction: this.settings.geoCountryRestriction,\n geoTypes: this.settings.geoTypes,\n };\n if (this.settings.geoLocation.length === 2) {\n _tempParams.geoLocation = this.settings.geoLocation;\n _tempParams.radius = this.settings.geoRadius;\n }\n try {\n await this._googlePlacesService.loadGoogleMaps(this.settings);\n if (!(this._global.nativeGlobal as any)?.google?.maps?.places) {\n this.updateListItem([]);\n return;\n }\n const result = await this._googlePlacesService.getGeoPrediction(_tempParams);\n this.updateListItem(result);\n } catch (err) {\n console.error('Failed to load Google Maps for address predictions', err);\n this.updateListItem([]);\n }\n } else {\n this._googlePlacesService.getPredictions(this.settings.geoPredictionServerUrl, value, this.ensureSessionToken()).then((result) => {\n result = this.extractServerList(this.settings.serverResponseListHierarchy, result);\n this.updateListItem(result);\n }).catch((err) => {\n console.error('Failed to load address predictions from server', err);\n this.updateListItem([]);\n });\n }\n }\n\n // Returns the active billing-session token for prediction calls, minting a fresh UUID v4 when\n // none exists or the previous one has gone stale (~3 min of inactivity). Each call refreshes the\n // inactivity window.\n private ensureSessionToken(): string {\n const now = Date.now();\n if (!this.sessionToken || now - this.sessionTokenStartedAt > PlacesListComponent.SESSION_TOKEN_TIMEOUT_MS) {\n this.sessionToken = this.generateSessionToken();\n }\n this.sessionTokenStartedAt = now;\n return this.sessionToken;\n }\n\n // Mints a v4 UUID for the Google Places billing session. Prefers the built-in crypto.randomUUID(),\n // which exists only in secure contexts (HTTPS / localhost). Falls back to a locally generated UUID for\n // insecure-context local development (e.g. localhost development); the token only needs to be a unique\n // opaque string, so Math.random() is acceptable there.\n private generateSessionToken(): string {\n if (typeof crypto !== 'undefined' && typeof crypto.randomUUID === 'function') {\n return crypto.randomUUID();\n }\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (char) => {\n const random: number = (Math.random() * 16) | 0;\n const value: number = char === 'x' ? random : (random & 0x3) | 0x8;\n return value.toString(16);\n });\n }\n\n private clearSessionToken(): void {\n this.sessionToken = '';\n this.sessionTokenStartedAt = 0;\n }\n\n // function to extratc custom data which is send by the server.\n private extractServerList(arrayList: any, data: any): any {\n if (arrayList.length) {\n let _tempData: any = data;\n for (const key of arrayList) {\n _tempData = _tempData[key];\n }\n return _tempData;\n } else {\n return data;\n }\n }\n\n // function to update the predicted list.\n private updateListItem(listData: any): any {\n this.matches = (listData || []).map((item: any) => this.normalizePrediction(item));\n // Reset highlight so Enter can't act on a stale prediction.\n this.activeMatch = undefined;\n this.dropdownOpen = true;\n this.cdr.detectChanges();\n this.matchesUpdated.emit(this.matches);\n }\n\n // function to show the recent search result.\n private showRecentSearch(): any {\n this.recentDropdownOpen = true;\n this.dropdownOpen = true;\n this._googlePlacesService.getRecentList(this.settings.recentStorageName).then((result: any) => {\n this.matches = (result || []).map((item: any) => this.normalizePrediction(item));\n });\n }\n\n // function to retrieve the location info based on google place id.\n private async getPlaceLocationInfo(selectedData: AddressLookupPrediction): Promise<void> {\n const placeId = selectedData.placeId;\n if (this.settings.useGoogleGeoApi) {\n try {\n // Ensure the SDK is loaded before getGeoPlaceDetail touches window.google.\n await this._googlePlacesService.loadGoogleMaps(this.settings);\n const data = await this._googlePlacesService.getGeoPlaceDetail(placeId);\n if (data) {\n this.setRecentLocation(data);\n }\n } catch (err) {\n console.error('Failed to load Google Maps for place details', err);\n }\n } else {\n try {\n let result = await this._googlePlacesService.getPlaceDetails(this.settings.geoLocDetailServerUrl, placeId, this.sessionToken);\n if (result) {\n result = this.extractServerList(this.settings.serverResponseDetailHierarchy, result);\n this.setRecentLocation(result);\n }\n } catch (err) {\n console.error('Failed to load place details from server', err);\n } finally {\n // The details call ends the Google billing session; clear the token even if the request\n // failed so the next interaction starts a fresh session.\n this.clearSessionToken();\n }\n }\n }\n\n // function to store the selected user search in the localstorage.\n private setRecentLocation(data: any): any {\n data = JSON.parse(JSON.stringify(data));\n data.description = data.description ? data.description : data.formattedAddress || data.formatted_address;\n data.active = false;\n this.selectedDataIndex = -1;\n this.locationInput = data.description;\n if (this.settings.showRecentSearch) {\n this._googlePlacesService.addRecentList(this.settings.recentStorageName, data, this.settings.noOfRecentSearchSave);\n this.getRecentLocations();\n }\n this.userSelectedOption = data;\n // below code will execute only when user press enter or select any option selection and it emit a callback to the parent component.\n if (!this.settings.resOnSearchButtonClickOnly) {\n this.select.emit(data);\n this.termChange.emit(data);\n }\n }\n\n // function to retrive the stored recent user search from the localstorage.\n private getRecentLocations(): any {\n this._googlePlacesService.getRecentList(this.settings.recentStorageName).then((data: any) => {\n this.recentSearchData = data && data.length ? data : [];\n });\n }\n}\n","<novo-list direction=\"vertical\">\n @for (data of matches; track $index) {\n <novo-list-item (click)=\"selectedListNode($event, $index)\" [ngClass]=\"{ active: data === activeMatch }\">\n <item-header>\n <item-avatar icon=\"location\"></item-avatar>\n <item-title>{{ data.primaryText }}</item-title>\n </item-header>\n <item-content>{{ data.secondaryText }}</item-content>\n </novo-list-item>\n }\n</novo-list>\n","import { CommonModule } from '@angular/common';\nimport { provideHttpClient, withInterceptorsFromDi } from '@angular/common/http';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { NovoListModule } from 'novo-elements/elements/list';\nimport { PlacesListComponent } from './places.component';\nimport { GooglePlacesService } from './places.service';\n\n@NgModule({ declarations: [PlacesListComponent],\n exports: [PlacesListComponent], imports: [CommonModule, FormsModule, NovoListModule], providers: [GooglePlacesService, provideHttpClient(withInterceptorsFromDi())] })\nexport class GooglePlacesModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -186,7 +186,7 @@ class PopOverContent {
186
186
  <div *ngIf="!htmlContent" class="popover-content-text">{{ content }}</div>
187
187
  </div>
188
188
  </div>
189
- `, isInline: true, styles: [":host .popover{position:absolute;top:0;left:0;z-index:1000;display:none;width:40rem;padding:2rem;background-color:var(--background-bright, #ffffff);color:var(--text-main, #3d464d);background-clip:padding-box;box-shadow:0 1px 2px #00000026}:host .popover.top{margin-top:-1rem}:host .popover.top.virtual-area{bottom:-1.1rem}:host .popover.right{margin-left:1rem}:host .popover.right.virtual-area{left:-1.1rem}:host .popover.bottom{margin-top:1rem}:host .popover.bottom.virtual-area{top:-1.1rem}:host .popover.left{margin-left:-1rem}:host .popover.left.virtual-area{right:-1.1rem}:host .popover .virtual-area{height:1.1rem;width:100%;position:absolute}:host .popover.top>.arrow{margin-left:-9px;border-bottom-width:0;border-top-color:#0000001a;bottom:-9px}:host .popover.top>.arrow:before{content:\" \";bottom:1px;margin-left:-1rem;border-bottom-width:0;border-top-color:var(--background-bright, #ffffff)}:host .popover.top>.arrow.center{left:50%}:host .popover.top>.arrow.left{left:91%}:host .popover.top>.arrow.right{left:9%}:host .popover.right>.arrow{left:-9px;margin-top:-9px;border-left-width:0;border-right-color:#0000001a}:host .popover.right>.arrow:before{content:\" \";left:1px;bottom:-1rem;border-left-width:0;border-right-color:var(--background-bright, #ffffff)}:host .popover.right>.arrow.center{top:50%}:host .popover.right>.arrow.top{top:91%}:host .popover.right>.arrow.bottom{top:9%}:host .popover.bottom>.arrow{margin-left:-9px;border-top-width:0;border-bottom-color:#0000001a;top:-9px}:host .popover.bottom>.arrow:before{content:\" \";top:1px;margin-left:-1rem;border-top-width:0;border-bottom-color:var(--background-bright, #ffffff)}:host .popover.bottom>.arrow.center{left:50%}:host .popover.bottom>.arrow.left{left:91%}:host .popover.bottom>.arrow.right{left:9%}:host .popover.left>.arrow{right:-9px;margin-top:-9px;border-right-width:0;border-left-color:#0000001a}:host .popover.left>.arrow:before{content:\" \";right:1px;border-right-width:0;border-left-color:var(--background-bright, #ffffff);bottom:-1rem}:host .popover.left>.arrow.center{top:50%}:host .popover.left>.arrow.top{top:91%}:host .popover.left>.arrow.bottom{top:9%}:host .popover>.arrow{border-width:9px}:host .popover>.arrow,:host .popover>.arrow:before{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}:host .popover>.arrow:before{border-width:1rem;content:\"\"}:host .popover-title{font-weight:500;line-height:1.5;color:var(--text-main, #3d464d);white-space:nowrap;text-overflow:ellipsis;font-size:var(--font-size-title);transition:color .2s ease-out,opacity .2s ease-out;vertical-align:middle;margin-bottom:1rem;white-space:normal;overflow:hidden;max-width:100%}:host .popover-title.text-capitalize{text-transform:capitalize}:host .popover-title.text-uppercase{text-transform:uppercase}:host .popover-title.text-nowrap{white-space:nowrap}:host .popover-title.text-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host .popover-title.text-size-default{font-size:inherit}:host .popover-title.text-size-body{font-size:1.3rem}:host .popover-title.text-size-xs{font-size:1rem}:host .popover-title.text-size-sm{font-size:1.2rem}:host .popover-title.text-size-md{font-size:1.3rem}:host .popover-title.text-size-lg{font-size:1.6rem}:host .popover-title.text-size-xl{font-size:2rem}:host .popover-title.text-size-2xl{font-size:2.6rem}:host .popover-title.text-size-3xl{font-size:3.2rem}:host .popover-title.text-size-smaller{font-size:.8em}:host .popover-title.text-size-larger{font-size:1.2em}:host .popover-title.text-color-black{color:#000}:host .popover-title.text-color-white{color:#fff}:host .popover-title.text-color-gray{color:#9e9e9e}:host .popover-title.text-color-grey{color:#9e9e9e}:host .popover-title.text-color-offWhite{color:#f7f7f7}:host .popover-title.text-color-bright{color:#f7f7f7}:host .popover-title.text-color-light{color:#dbdbdb}:host .popover-title.text-color-neutral{color:#4f5361}:host .popover-title.text-color-dark{color:#3d464d}:host .popover-title.text-color-orange{color:#ff6900}:host .popover-title.text-color-navigation{color:#202945}:host .popover-title.text-color-skyBlue{color:#009bdf}:host .popover-title.text-color-steel{color:#5b6770}:host .popover-title.text-color-metal{color:#637893}:host .popover-title.text-color-sand{color:#f4f4f4}:host .popover-title.text-color-silver{color:#e2e2e2}:host .popover-title.text-color-stone{color:#bebebe}:host .popover-title.text-color-ash{color:#a0a0a0}:host .popover-title.text-color-slate{color:#707070}:host .popover-title.text-color-onyx{color:#526980}:host .popover-title.text-color-charcoal{color:#282828}:host .popover-title.text-color-moonlight{color:#1a242f}:host .popover-title.text-color-midnight{color:#202945}:host .popover-title.text-color-darkness{color:#161f27}:host .popover-title.text-color-navy{color:#0d2d42}:host .popover-title.text-color-aqua{color:#3bafda}:host .popover-title.text-color-ocean{color:#4a89dc}:host .popover-title.text-color-mint{color:#37bc9b}:host .popover-title.text-color-grass{color:#8cc152}:host .popover-title.text-color-sunflower{color:#f6b042}:host .popover-title.text-color-bittersweet{color:#eb6845}:host .popover-title.text-color-grapefruit{color:#da4453}:host .popover-title.text-color-carnation{color:#d770ad}:host .popover-title.text-color-lavender{color:#967adc}:host .popover-title.text-color-mountain{color:#9678b6}:host .popover-title.text-color-info{color:#4a89dc}:host .popover-title.text-color-positive{color:#4a89dc}:host .popover-title.text-color-success{color:#8cc152}:host .popover-title.text-color-negative{color:#da4453}:host .popover-title.text-color-danger{color:#da4453}:host .popover-title.text-color-error{color:#da4453}:host .popover-title.text-color-warning{color:#f6b042}:host .popover-title.text-color-empty{color:#cccdcc}:host .popover-title.text-color-disabled{color:#bebebe}:host .popover-title.text-color-background{color:#f7f7f7}:host .popover-title.text-color-backgroundDark{color:#e2e2e2}:host .popover-title.text-color-presentation{color:#5b6770}:host .popover-title.text-color-bullhorn{color:#ff6900}:host .popover-title.text-color-pulse{color:#3bafda}:host .popover-title.text-color-company{color:#39d}:host .popover-title.text-color-candidate{color:#4b7}:host .popover-title.text-color-lead{color:#a69}:host .popover-title.text-color-contact{color:#fa4}:host .popover-title.text-color-clientcontact{color:#fa4}:host .popover-title.text-color-opportunity{color:#625}:host .popover-title.text-color-job{color:#b56}:host .popover-title.text-color-joborder{color:#b56}:host .popover-title.text-color-submission{color:#a9adbb}:host .popover-title.text-color-sendout{color:#747884}:host .popover-title.text-color-placement{color:#0b344f}:host .popover-title.text-color-note{color:#747884}:host .popover-title.text-color-contract{color:#454ea0}:host .popover-title.text-color-task{color:#4f5361}:host .popover-title.text-color-jobCode{color:#696d79}:host .popover-title.text-color-earnCode{color:#696d79}:host .popover-title.text-color-invoiceStatement{color:#696d79}:host .popover-title.text-color-billableCharge{color:#696d79}:host .popover-title.text-color-payableCharge{color:#696d79}:host .popover-title.text-color-user{color:#696d79}:host .popover-title.text-color-corporateUser{color:#696d79}:host .popover-title.text-color-distributionList{color:#696d79}:host .popover-title.text-color-credential{color:#696d79}:host .popover-title.text-color-person{color:#696d79}:host .popover-title.margin-before{margin-top:.4rem}:host .popover-title.margin-after{margin-bottom:.8rem}:host .popover-title.text-length-small{max-width:40ch}:host .popover-title.text-length-medium{max-width:55ch}:host .popover-title.text-length-large{max-width:70ch}:host .popover-title.text-weight-hairline{font-weight:100}:host .popover-title.text-weight-thin{font-weight:200}:host .popover-title.text-weight-light{font-weight:300}:host .popover-title.text-weight-normal{font-weight:400}:host .popover-title.text-weight-medium{font-weight:500}:host .popover-title.text-weight-semibold{font-weight:600}:host .popover-title.text-weight-bold{font-weight:700}:host .popover-title.text-weight-extrabold{font-weight:800}:host .popover-title.text-weight-heavy{font-weight:900}:host .popover-title.text-weight-lighter{font-weight:lighter}:host .popover-title.text-weight-bolder{font-weight:bolder}:host .popover-content{display:inline;font-weight:400;color:inherit;font-size:var(--font-size-text);transition:color .2s ease-out,opacity .2s ease-out;vertical-align:middle}:host .popover-content.text-capitalize{text-transform:capitalize}:host .popover-content.text-uppercase{text-transform:uppercase}:host .popover-content.text-nowrap{white-space:nowrap}:host .popover-content.text-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host .popover-content.text-size-default{font-size:inherit}:host .popover-content.text-size-body{font-size:1.3rem}:host .popover-content.text-size-xs{font-size:1rem}:host .popover-content.text-size-sm{font-size:1.2rem}:host .popover-content.text-size-md{font-size:1.3rem}:host .popover-content.text-size-lg{font-size:1.6rem}:host .popover-content.text-size-xl{font-size:2rem}:host .popover-content.text-size-2xl{font-size:2.6rem}:host .popover-content.text-size-3xl{font-size:3.2rem}:host .popover-content.text-size-smaller{font-size:.8em}:host .popover-content.text-size-larger{font-size:1.2em}:host .popover-content.text-color-black{color:#000}:host .popover-content.text-color-white{color:#fff}:host .popover-content.text-color-gray{color:#9e9e9e}:host .popover-content.text-color-grey{color:#9e9e9e}:host .popover-content.text-color-offWhite{color:#f7f7f7}:host .popover-content.text-color-bright{color:#f7f7f7}:host .popover-content.text-color-light{color:#dbdbdb}:host .popover-content.text-color-neutral{color:#4f5361}:host .popover-content.text-color-dark{color:#3d464d}:host .popover-content.text-color-orange{color:#ff6900}:host .popover-content.text-color-navigation{color:#202945}:host .popover-content.text-color-skyBlue{color:#009bdf}:host .popover-content.text-color-steel{color:#5b6770}:host .popover-content.text-color-metal{color:#637893}:host .popover-content.text-color-sand{color:#f4f4f4}:host .popover-content.text-color-silver{color:#e2e2e2}:host .popover-content.text-color-stone{color:#bebebe}:host .popover-content.text-color-ash{color:#a0a0a0}:host .popover-content.text-color-slate{color:#707070}:host .popover-content.text-color-onyx{color:#526980}:host .popover-content.text-color-charcoal{color:#282828}:host .popover-content.text-color-moonlight{color:#1a242f}:host .popover-content.text-color-midnight{color:#202945}:host .popover-content.text-color-darkness{color:#161f27}:host .popover-content.text-color-navy{color:#0d2d42}:host .popover-content.text-color-aqua{color:#3bafda}:host .popover-content.text-color-ocean{color:#4a89dc}:host .popover-content.text-color-mint{color:#37bc9b}:host .popover-content.text-color-grass{color:#8cc152}:host .popover-content.text-color-sunflower{color:#f6b042}:host .popover-content.text-color-bittersweet{color:#eb6845}:host .popover-content.text-color-grapefruit{color:#da4453}:host .popover-content.text-color-carnation{color:#d770ad}:host .popover-content.text-color-lavender{color:#967adc}:host .popover-content.text-color-mountain{color:#9678b6}:host .popover-content.text-color-info{color:#4a89dc}:host .popover-content.text-color-positive{color:#4a89dc}:host .popover-content.text-color-success{color:#8cc152}:host .popover-content.text-color-negative{color:#da4453}:host .popover-content.text-color-danger{color:#da4453}:host .popover-content.text-color-error{color:#da4453}:host .popover-content.text-color-warning{color:#f6b042}:host .popover-content.text-color-empty{color:#cccdcc}:host .popover-content.text-color-disabled{color:#bebebe}:host .popover-content.text-color-background{color:#f7f7f7}:host .popover-content.text-color-backgroundDark{color:#e2e2e2}:host .popover-content.text-color-presentation{color:#5b6770}:host .popover-content.text-color-bullhorn{color:#ff6900}:host .popover-content.text-color-pulse{color:#3bafda}:host .popover-content.text-color-company{color:#39d}:host .popover-content.text-color-candidate{color:#4b7}:host .popover-content.text-color-lead{color:#a69}:host .popover-content.text-color-contact{color:#fa4}:host .popover-content.text-color-clientcontact{color:#fa4}:host .popover-content.text-color-opportunity{color:#625}:host .popover-content.text-color-job{color:#b56}:host .popover-content.text-color-joborder{color:#b56}:host .popover-content.text-color-submission{color:#a9adbb}:host .popover-content.text-color-sendout{color:#747884}:host .popover-content.text-color-placement{color:#0b344f}:host .popover-content.text-color-note{color:#747884}:host .popover-content.text-color-contract{color:#454ea0}:host .popover-content.text-color-task{color:#4f5361}:host .popover-content.text-color-jobCode{color:#696d79}:host .popover-content.text-color-earnCode{color:#696d79}:host .popover-content.text-color-invoiceStatement{color:#696d79}:host .popover-content.text-color-billableCharge{color:#696d79}:host .popover-content.text-color-payableCharge{color:#696d79}:host .popover-content.text-color-user{color:#696d79}:host .popover-content.text-color-corporateUser{color:#696d79}:host .popover-content.text-color-distributionList{color:#696d79}:host .popover-content.text-color-credential{color:#696d79}:host .popover-content.text-color-person{color:#696d79}:host .popover-content.margin-before{margin-top:.4rem}:host .popover-content.margin-after{margin-bottom:.8rem}:host .popover-content.text-length-small{max-width:40ch}:host .popover-content.text-length-medium{max-width:55ch}:host .popover-content.text-length-large{max-width:70ch}:host .popover-content.text-weight-hairline{font-weight:100}:host .popover-content.text-weight-thin{font-weight:200}:host .popover-content.text-weight-light{font-weight:300}:host .popover-content.text-weight-normal{font-weight:400}:host .popover-content.text-weight-medium{font-weight:500}:host .popover-content.text-weight-semibold{font-weight:600}:host .popover-content.text-weight-bold{font-weight:700}:host .popover-content.text-weight-extrabold{font-weight:800}:host .popover-content.text-weight-heavy{font-weight:900}:host .popover-content.text-weight-lighter{font-weight:lighter}:host .popover-content.text-weight-bolder{font-weight:bolder}:host .popover-content .popover-content-text{white-space:pre-line}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
189
+ `, isInline: true, styles: [":host .popover{position:absolute;top:0;left:0;z-index:1000;display:none;width:40rem;padding:2rem;background-color:var(--background-bright, #fff);color:var(--text-main, #3d464d);background-clip:padding-box;box-shadow:0 1px 2px #00000026;border-radius:var(--border-radius-sm)}:host .popover.top{margin-top:-1rem}:host .popover.top.virtual-area{bottom:-1.1rem}:host .popover.right{margin-left:var(--spacing-md)}:host .popover.right.virtual-area{left:-1.1rem}:host .popover.bottom{margin-top:1rem}:host .popover.bottom.virtual-area{top:-1.1rem}:host .popover.left{margin-left:-1rem}:host .popover.left.virtual-area{right:-1.1rem}:host .popover .virtual-area{height:1.1rem;width:100%;position:absolute}:host .popover.top>.arrow{margin-left:-9px;border-bottom-width:0;border-top-color:#0000001a;bottom:-9px}:host .popover.top>.arrow:before{content:\" \";bottom:1px;margin-left:-1rem;border-bottom-width:0;border-top-color:var(--background-bright, #fff)}:host .popover.top>.arrow.center{left:50%}:host .popover.top>.arrow.left{left:91%}:host .popover.top>.arrow.right{left:9%}:host .popover.right>.arrow{left:-9px;margin-top:-9px;border-left-width:0;border-right-color:#0000001a}:host .popover.right>.arrow:before{content:\" \";left:1px;bottom:-1rem;border-left-width:0;border-right-color:var(--background-bright, #fff)}:host .popover.right>.arrow.center{top:50%}:host .popover.right>.arrow.top{top:91%}:host .popover.right>.arrow.bottom{top:9%}:host .popover.bottom>.arrow{margin-left:-9px;border-top-width:0;border-bottom-color:#0000001a;top:-9px}:host .popover.bottom>.arrow:before{content:\" \";top:1px;margin-left:-1rem;border-top-width:0;border-bottom-color:var(--background-bright, #fff)}:host .popover.bottom>.arrow.center{left:50%}:host .popover.bottom>.arrow.left{left:91%}:host .popover.bottom>.arrow.right{left:9%}:host .popover.left>.arrow{right:-9px;margin-top:-9px;border-right-width:0;border-left-color:#0000001a}:host .popover.left>.arrow:before{content:\" \";right:1px;border-right-width:0;border-left-color:var(--background-bright, #fff);bottom:-1rem}:host .popover.left>.arrow.center{top:50%}:host .popover.left>.arrow.top{top:91%}:host .popover.left>.arrow.bottom{top:9%}:host .popover>.arrow{border-width:9px}:host .popover>.arrow,:host .popover>.arrow:before{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}:host .popover>.arrow:before{border-width:1rem;content:\"\"}:host .popover-title{font-weight:500;line-height:1.5;color:var(--text-main, #3d464d);white-space:nowrap;text-overflow:ellipsis;font-size:var(--font-size-title);transition:color .2s ease-out,opacity .2s ease-out;vertical-align:middle;margin-bottom:1rem;white-space:normal;overflow:hidden;max-width:100%}:host .popover-title.text-capitalize{text-transform:capitalize}:host .popover-title.text-uppercase{text-transform:uppercase}:host .popover-title.text-nowrap{white-space:nowrap}:host .popover-title.text-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host .popover-title.text-size-default{font-size:inherit}:host .popover-title.text-size-body{font-size:var(--font-size-body)}:host .popover-title.text-size-xs{font-size:var(--font-size-xs)}:host .popover-title.text-size-sm{font-size:var(--font-size-sm)}:host .popover-title.text-size-md{font-size:var(--font-size-md)}:host .popover-title.text-size-lg{font-size:var(--font-size-lg)}:host .popover-title.text-size-xl{font-size:var(--font-size-xl)}:host .popover-title.text-size-2xl{font-size:var(--font-size-2xl)}:host .popover-title.text-size-3xl{font-size:var(--font-size-3xl)}:host .popover-title.text-size-smaller{font-size:.8em}:host .popover-title.text-size-larger{font-size:1.2em}:host .popover-title.text-color-black{color:var(--color-black)}:host .popover-title.text-color-white{color:var(--color-white)}:host .popover-title.text-color-gray{color:var(--color-gray)}:host .popover-title.text-color-grey{color:var(--color-grey)}:host .popover-title.text-color-offWhite{color:var(--color-off-white)}:host .popover-title.text-color-bright{color:var(--color-bright)}:host .popover-title.text-color-light{color:var(--color-light)}:host .popover-title.text-color-neutral{color:var(--color-neutral)}:host .popover-title.text-color-dark{color:var(--color-dark)}:host .popover-title.text-color-orange{color:var(--color-orange)}:host .popover-title.text-color-navigation{color:var(--color-navigation)}:host .popover-title.text-color-skyBlue{color:var(--color-sky-blue)}:host .popover-title.text-color-steel{color:var(--color-steel)}:host .popover-title.text-color-metal{color:var(--color-metal)}:host .popover-title.text-color-sand{color:var(--color-sand)}:host .popover-title.text-color-silver{color:var(--color-silver)}:host .popover-title.text-color-stone{color:var(--color-stone)}:host .popover-title.text-color-ash{color:var(--color-ash)}:host .popover-title.text-color-anonymous{color:var(--color-anonymous)}:host .popover-title.text-color-slate{color:var(--color-slate)}:host .popover-title.text-color-onyx{color:var(--color-onyx)}:host .popover-title.text-color-charcoal{color:var(--color-charcoal)}:host .popover-title.text-color-moonlight{color:var(--color-moonlight)}:host .popover-title.text-color-midnight{color:var(--color-midnight)}:host .popover-title.text-color-darkness{color:var(--color-darkness)}:host .popover-title.text-color-navy{color:var(--color-navy)}:host .popover-title.text-color-aqua{color:var(--color-aqua)}:host .popover-title.text-color-ocean{color:var(--color-ocean)}:host .popover-title.text-color-mint{color:var(--color-mint)}:host .popover-title.text-color-grass{color:var(--color-grass)}:host .popover-title.text-color-sunflower{color:var(--color-sunflower)}:host .popover-title.text-color-bittersweet{color:var(--color-bittersweet)}:host .popover-title.text-color-grapefruit{color:var(--color-grapefruit)}:host .popover-title.text-color-carnation{color:var(--color-carnation)}:host .popover-title.text-color-lavender{color:var(--color-lavender)}:host .popover-title.text-color-mountain{color:var(--color-mountain)}:host .popover-title.text-color-info{color:var(--color-info)}:host .popover-title.text-color-positive{color:var(--color-positive)}:host .popover-title.text-color-success{color:var(--color-success)}:host .popover-title.text-color-negative{color:var(--color-negative)}:host .popover-title.text-color-danger{color:var(--color-danger)}:host .popover-title.text-color-error{color:var(--color-error)}:host .popover-title.text-color-warning{color:var(--color-warning)}:host .popover-title.text-color-empty{color:var(--color-empty)}:host .popover-title.text-color-disabled{color:var(--color-disabled)}:host .popover-title.text-color-background{color:var(--color-background)}:host .popover-title.text-color-backgroundDark{color:var(--color-background-dark)}:host .popover-title.text-color-border{color:var(--color-border)}:host .popover-title.text-color-border2{color:var(--color-border2)}:host .popover-title.text-color-text{color:var(--color-text)}:host .popover-title.text-color-presentation{color:var(--color-presentation)}:host .popover-title.text-color-bullhorn{color:var(--color-bullhorn)}:host .popover-title.text-color-pulse{color:var(--color-pulse)}:host .popover-title.text-color-fastFind{color:var(--color-fast-find)}:host .popover-title.text-color-toast{color:var(--color-toast)}:host .popover-title.text-color-company{color:var(--color-company)}:host .popover-title.text-color-candidate{color:var(--color-candidate)}:host .popover-title.text-color-lead{color:var(--color-lead)}:host .popover-title.text-color-contact{color:var(--color-contact)}:host .popover-title.text-color-clientcontact{color:var(--color-clientcontact)}:host .popover-title.text-color-opportunity{color:var(--color-opportunity)}:host .popover-title.text-color-job{color:var(--color-job)}:host .popover-title.text-color-joborder{color:var(--color-joborder)}:host .popover-title.text-color-submission{color:var(--color-submission)}:host .popover-title.text-color-sendout{color:var(--color-sendout)}:host .popover-title.text-color-placement{color:var(--color-placement)}:host .popover-title.text-color-note{color:var(--color-note)}:host .popover-title.text-color-contract{color:var(--color-contract)}:host .popover-title.text-color-task{color:var(--color-task)}:host .popover-title.text-color-jobCode{color:var(--color-job-code)}:host .popover-title.text-color-earnCode{color:var(--color-earn-code)}:host .popover-title.text-color-invoiceStatement{color:var(--color-invoice-statement)}:host .popover-title.text-color-billableCharge{color:var(--color-billable-charge)}:host .popover-title.text-color-payableCharge{color:var(--color-payable-charge)}:host .popover-title.text-color-user{color:var(--color-user)}:host .popover-title.text-color-corporateUser{color:var(--color-corporate-user)}:host .popover-title.text-color-distributionList{color:var(--color-distribution-list)}:host .popover-title.text-color-credential{color:var(--color-credential)}:host .popover-title.text-color-person{color:var(--color-person)}:host .popover-title.margin-before{margin-top:.4rem}:host .popover-title.margin-after{margin-bottom:.8rem}:host .popover-title.text-length-small{max-width:40ch}:host .popover-title.text-length-medium{max-width:55ch}:host .popover-title.text-length-large{max-width:70ch}:host .popover-title.text-weight-hairline{font-weight:var(--font-weight-hairline)}:host .popover-title.text-weight-thin{font-weight:var(--font-weight-thin)}:host .popover-title.text-weight-light{font-weight:var(--font-weight-light)}:host .popover-title.text-weight-normal{font-weight:var(--font-weight-normal)}:host .popover-title.text-weight-medium{font-weight:var(--font-weight-medium)}:host .popover-title.text-weight-semibold{font-weight:var(--font-weight-semibold)}:host .popover-title.text-weight-bold{font-weight:var(--font-weight-bold)}:host .popover-title.text-weight-extrabold{font-weight:var(--font-weight-extrabold)}:host .popover-title.text-weight-heavy{font-weight:var(--font-weight-heavy)}:host .popover-title.text-weight-lighter{font-weight:lighter}:host .popover-title.text-weight-bolder{font-weight:bolder}:host .popover-content{display:inline;font-weight:400;color:inherit;font-size:var(--font-size-text);transition:color .2s ease-out,opacity .2s ease-out;vertical-align:middle}:host .popover-content.text-capitalize{text-transform:capitalize}:host .popover-content.text-uppercase{text-transform:uppercase}:host .popover-content.text-nowrap{white-space:nowrap}:host .popover-content.text-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host .popover-content.text-size-default{font-size:inherit}:host .popover-content.text-size-body{font-size:var(--font-size-body)}:host .popover-content.text-size-xs{font-size:var(--font-size-xs)}:host .popover-content.text-size-sm{font-size:var(--font-size-sm)}:host .popover-content.text-size-md{font-size:var(--font-size-md)}:host .popover-content.text-size-lg{font-size:var(--font-size-lg)}:host .popover-content.text-size-xl{font-size:var(--font-size-xl)}:host .popover-content.text-size-2xl{font-size:var(--font-size-2xl)}:host .popover-content.text-size-3xl{font-size:var(--font-size-3xl)}:host .popover-content.text-size-smaller{font-size:.8em}:host .popover-content.text-size-larger{font-size:1.2em}:host .popover-content.text-color-black{color:var(--color-black)}:host .popover-content.text-color-white{color:var(--color-white)}:host .popover-content.text-color-gray{color:var(--color-gray)}:host .popover-content.text-color-grey{color:var(--color-grey)}:host .popover-content.text-color-offWhite{color:var(--color-off-white)}:host .popover-content.text-color-bright{color:var(--color-bright)}:host .popover-content.text-color-light{color:var(--color-light)}:host .popover-content.text-color-neutral{color:var(--color-neutral)}:host .popover-content.text-color-dark{color:var(--color-dark)}:host .popover-content.text-color-orange{color:var(--color-orange)}:host .popover-content.text-color-navigation{color:var(--color-navigation)}:host .popover-content.text-color-skyBlue{color:var(--color-sky-blue)}:host .popover-content.text-color-steel{color:var(--color-steel)}:host .popover-content.text-color-metal{color:var(--color-metal)}:host .popover-content.text-color-sand{color:var(--color-sand)}:host .popover-content.text-color-silver{color:var(--color-silver)}:host .popover-content.text-color-stone{color:var(--color-stone)}:host .popover-content.text-color-ash{color:var(--color-ash)}:host .popover-content.text-color-anonymous{color:var(--color-anonymous)}:host .popover-content.text-color-slate{color:var(--color-slate)}:host .popover-content.text-color-onyx{color:var(--color-onyx)}:host .popover-content.text-color-charcoal{color:var(--color-charcoal)}:host .popover-content.text-color-moonlight{color:var(--color-moonlight)}:host .popover-content.text-color-midnight{color:var(--color-midnight)}:host .popover-content.text-color-darkness{color:var(--color-darkness)}:host .popover-content.text-color-navy{color:var(--color-navy)}:host .popover-content.text-color-aqua{color:var(--color-aqua)}:host .popover-content.text-color-ocean{color:var(--color-ocean)}:host .popover-content.text-color-mint{color:var(--color-mint)}:host .popover-content.text-color-grass{color:var(--color-grass)}:host .popover-content.text-color-sunflower{color:var(--color-sunflower)}:host .popover-content.text-color-bittersweet{color:var(--color-bittersweet)}:host .popover-content.text-color-grapefruit{color:var(--color-grapefruit)}:host .popover-content.text-color-carnation{color:var(--color-carnation)}:host .popover-content.text-color-lavender{color:var(--color-lavender)}:host .popover-content.text-color-mountain{color:var(--color-mountain)}:host .popover-content.text-color-info{color:var(--color-info)}:host .popover-content.text-color-positive{color:var(--color-positive)}:host .popover-content.text-color-success{color:var(--color-success)}:host .popover-content.text-color-negative{color:var(--color-negative)}:host .popover-content.text-color-danger{color:var(--color-danger)}:host .popover-content.text-color-error{color:var(--color-error)}:host .popover-content.text-color-warning{color:var(--color-warning)}:host .popover-content.text-color-empty{color:var(--color-empty)}:host .popover-content.text-color-disabled{color:var(--color-disabled)}:host .popover-content.text-color-background{color:var(--color-background)}:host .popover-content.text-color-backgroundDark{color:var(--color-background-dark)}:host .popover-content.text-color-border{color:var(--color-border)}:host .popover-content.text-color-border2{color:var(--color-border2)}:host .popover-content.text-color-text{color:var(--color-text)}:host .popover-content.text-color-presentation{color:var(--color-presentation)}:host .popover-content.text-color-bullhorn{color:var(--color-bullhorn)}:host .popover-content.text-color-pulse{color:var(--color-pulse)}:host .popover-content.text-color-fastFind{color:var(--color-fast-find)}:host .popover-content.text-color-toast{color:var(--color-toast)}:host .popover-content.text-color-company{color:var(--color-company)}:host .popover-content.text-color-candidate{color:var(--color-candidate)}:host .popover-content.text-color-lead{color:var(--color-lead)}:host .popover-content.text-color-contact{color:var(--color-contact)}:host .popover-content.text-color-clientcontact{color:var(--color-clientcontact)}:host .popover-content.text-color-opportunity{color:var(--color-opportunity)}:host .popover-content.text-color-job{color:var(--color-job)}:host .popover-content.text-color-joborder{color:var(--color-joborder)}:host .popover-content.text-color-submission{color:var(--color-submission)}:host .popover-content.text-color-sendout{color:var(--color-sendout)}:host .popover-content.text-color-placement{color:var(--color-placement)}:host .popover-content.text-color-note{color:var(--color-note)}:host .popover-content.text-color-contract{color:var(--color-contract)}:host .popover-content.text-color-task{color:var(--color-task)}:host .popover-content.text-color-jobCode{color:var(--color-job-code)}:host .popover-content.text-color-earnCode{color:var(--color-earn-code)}:host .popover-content.text-color-invoiceStatement{color:var(--color-invoice-statement)}:host .popover-content.text-color-billableCharge{color:var(--color-billable-charge)}:host .popover-content.text-color-payableCharge{color:var(--color-payable-charge)}:host .popover-content.text-color-user{color:var(--color-user)}:host .popover-content.text-color-corporateUser{color:var(--color-corporate-user)}:host .popover-content.text-color-distributionList{color:var(--color-distribution-list)}:host .popover-content.text-color-credential{color:var(--color-credential)}:host .popover-content.text-color-person{color:var(--color-person)}:host .popover-content.margin-before{margin-top:.4rem}:host .popover-content.margin-after{margin-bottom:.8rem}:host .popover-content.text-length-small{max-width:40ch}:host .popover-content.text-length-medium{max-width:55ch}:host .popover-content.text-length-large{max-width:70ch}:host .popover-content.text-weight-hairline{font-weight:var(--font-weight-hairline)}:host .popover-content.text-weight-thin{font-weight:var(--font-weight-thin)}:host .popover-content.text-weight-light{font-weight:var(--font-weight-light)}:host .popover-content.text-weight-normal{font-weight:var(--font-weight-normal)}:host .popover-content.text-weight-medium{font-weight:var(--font-weight-medium)}:host .popover-content.text-weight-semibold{font-weight:var(--font-weight-semibold)}:host .popover-content.text-weight-bold{font-weight:var(--font-weight-bold)}:host .popover-content.text-weight-extrabold{font-weight:var(--font-weight-extrabold)}:host .popover-content.text-weight-heavy{font-weight:var(--font-weight-heavy)}:host .popover-content.text-weight-lighter{font-weight:lighter}:host .popover-content.text-weight-bolder{font-weight:bolder}:host .popover-content .popover-content-text{white-space:pre-line}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
190
190
  }
191
191
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: PopOverContent, decorators: [{
192
192
  type: Component,
@@ -208,7 +208,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
208
208
  <div *ngIf="!htmlContent" class="popover-content-text">{{ content }}</div>
209
209
  </div>
210
210
  </div>
211
- `, standalone: false, styles: [":host .popover{position:absolute;top:0;left:0;z-index:1000;display:none;width:40rem;padding:2rem;background-color:var(--background-bright, #ffffff);color:var(--text-main, #3d464d);background-clip:padding-box;box-shadow:0 1px 2px #00000026}:host .popover.top{margin-top:-1rem}:host .popover.top.virtual-area{bottom:-1.1rem}:host .popover.right{margin-left:1rem}:host .popover.right.virtual-area{left:-1.1rem}:host .popover.bottom{margin-top:1rem}:host .popover.bottom.virtual-area{top:-1.1rem}:host .popover.left{margin-left:-1rem}:host .popover.left.virtual-area{right:-1.1rem}:host .popover .virtual-area{height:1.1rem;width:100%;position:absolute}:host .popover.top>.arrow{margin-left:-9px;border-bottom-width:0;border-top-color:#0000001a;bottom:-9px}:host .popover.top>.arrow:before{content:\" \";bottom:1px;margin-left:-1rem;border-bottom-width:0;border-top-color:var(--background-bright, #ffffff)}:host .popover.top>.arrow.center{left:50%}:host .popover.top>.arrow.left{left:91%}:host .popover.top>.arrow.right{left:9%}:host .popover.right>.arrow{left:-9px;margin-top:-9px;border-left-width:0;border-right-color:#0000001a}:host .popover.right>.arrow:before{content:\" \";left:1px;bottom:-1rem;border-left-width:0;border-right-color:var(--background-bright, #ffffff)}:host .popover.right>.arrow.center{top:50%}:host .popover.right>.arrow.top{top:91%}:host .popover.right>.arrow.bottom{top:9%}:host .popover.bottom>.arrow{margin-left:-9px;border-top-width:0;border-bottom-color:#0000001a;top:-9px}:host .popover.bottom>.arrow:before{content:\" \";top:1px;margin-left:-1rem;border-top-width:0;border-bottom-color:var(--background-bright, #ffffff)}:host .popover.bottom>.arrow.center{left:50%}:host .popover.bottom>.arrow.left{left:91%}:host .popover.bottom>.arrow.right{left:9%}:host .popover.left>.arrow{right:-9px;margin-top:-9px;border-right-width:0;border-left-color:#0000001a}:host .popover.left>.arrow:before{content:\" \";right:1px;border-right-width:0;border-left-color:var(--background-bright, #ffffff);bottom:-1rem}:host .popover.left>.arrow.center{top:50%}:host .popover.left>.arrow.top{top:91%}:host .popover.left>.arrow.bottom{top:9%}:host .popover>.arrow{border-width:9px}:host .popover>.arrow,:host .popover>.arrow:before{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}:host .popover>.arrow:before{border-width:1rem;content:\"\"}:host .popover-title{font-weight:500;line-height:1.5;color:var(--text-main, #3d464d);white-space:nowrap;text-overflow:ellipsis;font-size:var(--font-size-title);transition:color .2s ease-out,opacity .2s ease-out;vertical-align:middle;margin-bottom:1rem;white-space:normal;overflow:hidden;max-width:100%}:host .popover-title.text-capitalize{text-transform:capitalize}:host .popover-title.text-uppercase{text-transform:uppercase}:host .popover-title.text-nowrap{white-space:nowrap}:host .popover-title.text-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host .popover-title.text-size-default{font-size:inherit}:host .popover-title.text-size-body{font-size:1.3rem}:host .popover-title.text-size-xs{font-size:1rem}:host .popover-title.text-size-sm{font-size:1.2rem}:host .popover-title.text-size-md{font-size:1.3rem}:host .popover-title.text-size-lg{font-size:1.6rem}:host .popover-title.text-size-xl{font-size:2rem}:host .popover-title.text-size-2xl{font-size:2.6rem}:host .popover-title.text-size-3xl{font-size:3.2rem}:host .popover-title.text-size-smaller{font-size:.8em}:host .popover-title.text-size-larger{font-size:1.2em}:host .popover-title.text-color-black{color:#000}:host .popover-title.text-color-white{color:#fff}:host .popover-title.text-color-gray{color:#9e9e9e}:host .popover-title.text-color-grey{color:#9e9e9e}:host .popover-title.text-color-offWhite{color:#f7f7f7}:host .popover-title.text-color-bright{color:#f7f7f7}:host .popover-title.text-color-light{color:#dbdbdb}:host .popover-title.text-color-neutral{color:#4f5361}:host .popover-title.text-color-dark{color:#3d464d}:host .popover-title.text-color-orange{color:#ff6900}:host .popover-title.text-color-navigation{color:#202945}:host .popover-title.text-color-skyBlue{color:#009bdf}:host .popover-title.text-color-steel{color:#5b6770}:host .popover-title.text-color-metal{color:#637893}:host .popover-title.text-color-sand{color:#f4f4f4}:host .popover-title.text-color-silver{color:#e2e2e2}:host .popover-title.text-color-stone{color:#bebebe}:host .popover-title.text-color-ash{color:#a0a0a0}:host .popover-title.text-color-slate{color:#707070}:host .popover-title.text-color-onyx{color:#526980}:host .popover-title.text-color-charcoal{color:#282828}:host .popover-title.text-color-moonlight{color:#1a242f}:host .popover-title.text-color-midnight{color:#202945}:host .popover-title.text-color-darkness{color:#161f27}:host .popover-title.text-color-navy{color:#0d2d42}:host .popover-title.text-color-aqua{color:#3bafda}:host .popover-title.text-color-ocean{color:#4a89dc}:host .popover-title.text-color-mint{color:#37bc9b}:host .popover-title.text-color-grass{color:#8cc152}:host .popover-title.text-color-sunflower{color:#f6b042}:host .popover-title.text-color-bittersweet{color:#eb6845}:host .popover-title.text-color-grapefruit{color:#da4453}:host .popover-title.text-color-carnation{color:#d770ad}:host .popover-title.text-color-lavender{color:#967adc}:host .popover-title.text-color-mountain{color:#9678b6}:host .popover-title.text-color-info{color:#4a89dc}:host .popover-title.text-color-positive{color:#4a89dc}:host .popover-title.text-color-success{color:#8cc152}:host .popover-title.text-color-negative{color:#da4453}:host .popover-title.text-color-danger{color:#da4453}:host .popover-title.text-color-error{color:#da4453}:host .popover-title.text-color-warning{color:#f6b042}:host .popover-title.text-color-empty{color:#cccdcc}:host .popover-title.text-color-disabled{color:#bebebe}:host .popover-title.text-color-background{color:#f7f7f7}:host .popover-title.text-color-backgroundDark{color:#e2e2e2}:host .popover-title.text-color-presentation{color:#5b6770}:host .popover-title.text-color-bullhorn{color:#ff6900}:host .popover-title.text-color-pulse{color:#3bafda}:host .popover-title.text-color-company{color:#39d}:host .popover-title.text-color-candidate{color:#4b7}:host .popover-title.text-color-lead{color:#a69}:host .popover-title.text-color-contact{color:#fa4}:host .popover-title.text-color-clientcontact{color:#fa4}:host .popover-title.text-color-opportunity{color:#625}:host .popover-title.text-color-job{color:#b56}:host .popover-title.text-color-joborder{color:#b56}:host .popover-title.text-color-submission{color:#a9adbb}:host .popover-title.text-color-sendout{color:#747884}:host .popover-title.text-color-placement{color:#0b344f}:host .popover-title.text-color-note{color:#747884}:host .popover-title.text-color-contract{color:#454ea0}:host .popover-title.text-color-task{color:#4f5361}:host .popover-title.text-color-jobCode{color:#696d79}:host .popover-title.text-color-earnCode{color:#696d79}:host .popover-title.text-color-invoiceStatement{color:#696d79}:host .popover-title.text-color-billableCharge{color:#696d79}:host .popover-title.text-color-payableCharge{color:#696d79}:host .popover-title.text-color-user{color:#696d79}:host .popover-title.text-color-corporateUser{color:#696d79}:host .popover-title.text-color-distributionList{color:#696d79}:host .popover-title.text-color-credential{color:#696d79}:host .popover-title.text-color-person{color:#696d79}:host .popover-title.margin-before{margin-top:.4rem}:host .popover-title.margin-after{margin-bottom:.8rem}:host .popover-title.text-length-small{max-width:40ch}:host .popover-title.text-length-medium{max-width:55ch}:host .popover-title.text-length-large{max-width:70ch}:host .popover-title.text-weight-hairline{font-weight:100}:host .popover-title.text-weight-thin{font-weight:200}:host .popover-title.text-weight-light{font-weight:300}:host .popover-title.text-weight-normal{font-weight:400}:host .popover-title.text-weight-medium{font-weight:500}:host .popover-title.text-weight-semibold{font-weight:600}:host .popover-title.text-weight-bold{font-weight:700}:host .popover-title.text-weight-extrabold{font-weight:800}:host .popover-title.text-weight-heavy{font-weight:900}:host .popover-title.text-weight-lighter{font-weight:lighter}:host .popover-title.text-weight-bolder{font-weight:bolder}:host .popover-content{display:inline;font-weight:400;color:inherit;font-size:var(--font-size-text);transition:color .2s ease-out,opacity .2s ease-out;vertical-align:middle}:host .popover-content.text-capitalize{text-transform:capitalize}:host .popover-content.text-uppercase{text-transform:uppercase}:host .popover-content.text-nowrap{white-space:nowrap}:host .popover-content.text-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host .popover-content.text-size-default{font-size:inherit}:host .popover-content.text-size-body{font-size:1.3rem}:host .popover-content.text-size-xs{font-size:1rem}:host .popover-content.text-size-sm{font-size:1.2rem}:host .popover-content.text-size-md{font-size:1.3rem}:host .popover-content.text-size-lg{font-size:1.6rem}:host .popover-content.text-size-xl{font-size:2rem}:host .popover-content.text-size-2xl{font-size:2.6rem}:host .popover-content.text-size-3xl{font-size:3.2rem}:host .popover-content.text-size-smaller{font-size:.8em}:host .popover-content.text-size-larger{font-size:1.2em}:host .popover-content.text-color-black{color:#000}:host .popover-content.text-color-white{color:#fff}:host .popover-content.text-color-gray{color:#9e9e9e}:host .popover-content.text-color-grey{color:#9e9e9e}:host .popover-content.text-color-offWhite{color:#f7f7f7}:host .popover-content.text-color-bright{color:#f7f7f7}:host .popover-content.text-color-light{color:#dbdbdb}:host .popover-content.text-color-neutral{color:#4f5361}:host .popover-content.text-color-dark{color:#3d464d}:host .popover-content.text-color-orange{color:#ff6900}:host .popover-content.text-color-navigation{color:#202945}:host .popover-content.text-color-skyBlue{color:#009bdf}:host .popover-content.text-color-steel{color:#5b6770}:host .popover-content.text-color-metal{color:#637893}:host .popover-content.text-color-sand{color:#f4f4f4}:host .popover-content.text-color-silver{color:#e2e2e2}:host .popover-content.text-color-stone{color:#bebebe}:host .popover-content.text-color-ash{color:#a0a0a0}:host .popover-content.text-color-slate{color:#707070}:host .popover-content.text-color-onyx{color:#526980}:host .popover-content.text-color-charcoal{color:#282828}:host .popover-content.text-color-moonlight{color:#1a242f}:host .popover-content.text-color-midnight{color:#202945}:host .popover-content.text-color-darkness{color:#161f27}:host .popover-content.text-color-navy{color:#0d2d42}:host .popover-content.text-color-aqua{color:#3bafda}:host .popover-content.text-color-ocean{color:#4a89dc}:host .popover-content.text-color-mint{color:#37bc9b}:host .popover-content.text-color-grass{color:#8cc152}:host .popover-content.text-color-sunflower{color:#f6b042}:host .popover-content.text-color-bittersweet{color:#eb6845}:host .popover-content.text-color-grapefruit{color:#da4453}:host .popover-content.text-color-carnation{color:#d770ad}:host .popover-content.text-color-lavender{color:#967adc}:host .popover-content.text-color-mountain{color:#9678b6}:host .popover-content.text-color-info{color:#4a89dc}:host .popover-content.text-color-positive{color:#4a89dc}:host .popover-content.text-color-success{color:#8cc152}:host .popover-content.text-color-negative{color:#da4453}:host .popover-content.text-color-danger{color:#da4453}:host .popover-content.text-color-error{color:#da4453}:host .popover-content.text-color-warning{color:#f6b042}:host .popover-content.text-color-empty{color:#cccdcc}:host .popover-content.text-color-disabled{color:#bebebe}:host .popover-content.text-color-background{color:#f7f7f7}:host .popover-content.text-color-backgroundDark{color:#e2e2e2}:host .popover-content.text-color-presentation{color:#5b6770}:host .popover-content.text-color-bullhorn{color:#ff6900}:host .popover-content.text-color-pulse{color:#3bafda}:host .popover-content.text-color-company{color:#39d}:host .popover-content.text-color-candidate{color:#4b7}:host .popover-content.text-color-lead{color:#a69}:host .popover-content.text-color-contact{color:#fa4}:host .popover-content.text-color-clientcontact{color:#fa4}:host .popover-content.text-color-opportunity{color:#625}:host .popover-content.text-color-job{color:#b56}:host .popover-content.text-color-joborder{color:#b56}:host .popover-content.text-color-submission{color:#a9adbb}:host .popover-content.text-color-sendout{color:#747884}:host .popover-content.text-color-placement{color:#0b344f}:host .popover-content.text-color-note{color:#747884}:host .popover-content.text-color-contract{color:#454ea0}:host .popover-content.text-color-task{color:#4f5361}:host .popover-content.text-color-jobCode{color:#696d79}:host .popover-content.text-color-earnCode{color:#696d79}:host .popover-content.text-color-invoiceStatement{color:#696d79}:host .popover-content.text-color-billableCharge{color:#696d79}:host .popover-content.text-color-payableCharge{color:#696d79}:host .popover-content.text-color-user{color:#696d79}:host .popover-content.text-color-corporateUser{color:#696d79}:host .popover-content.text-color-distributionList{color:#696d79}:host .popover-content.text-color-credential{color:#696d79}:host .popover-content.text-color-person{color:#696d79}:host .popover-content.margin-before{margin-top:.4rem}:host .popover-content.margin-after{margin-bottom:.8rem}:host .popover-content.text-length-small{max-width:40ch}:host .popover-content.text-length-medium{max-width:55ch}:host .popover-content.text-length-large{max-width:70ch}:host .popover-content.text-weight-hairline{font-weight:100}:host .popover-content.text-weight-thin{font-weight:200}:host .popover-content.text-weight-light{font-weight:300}:host .popover-content.text-weight-normal{font-weight:400}:host .popover-content.text-weight-medium{font-weight:500}:host .popover-content.text-weight-semibold{font-weight:600}:host .popover-content.text-weight-bold{font-weight:700}:host .popover-content.text-weight-extrabold{font-weight:800}:host .popover-content.text-weight-heavy{font-weight:900}:host .popover-content.text-weight-lighter{font-weight:lighter}:host .popover-content.text-weight-bolder{font-weight:bolder}:host .popover-content .popover-content-text{white-space:pre-line}\n"] }]
211
+ `, standalone: false, styles: [":host .popover{position:absolute;top:0;left:0;z-index:1000;display:none;width:40rem;padding:2rem;background-color:var(--background-bright, #fff);color:var(--text-main, #3d464d);background-clip:padding-box;box-shadow:0 1px 2px #00000026;border-radius:var(--border-radius-sm)}:host .popover.top{margin-top:-1rem}:host .popover.top.virtual-area{bottom:-1.1rem}:host .popover.right{margin-left:var(--spacing-md)}:host .popover.right.virtual-area{left:-1.1rem}:host .popover.bottom{margin-top:1rem}:host .popover.bottom.virtual-area{top:-1.1rem}:host .popover.left{margin-left:-1rem}:host .popover.left.virtual-area{right:-1.1rem}:host .popover .virtual-area{height:1.1rem;width:100%;position:absolute}:host .popover.top>.arrow{margin-left:-9px;border-bottom-width:0;border-top-color:#0000001a;bottom:-9px}:host .popover.top>.arrow:before{content:\" \";bottom:1px;margin-left:-1rem;border-bottom-width:0;border-top-color:var(--background-bright, #fff)}:host .popover.top>.arrow.center{left:50%}:host .popover.top>.arrow.left{left:91%}:host .popover.top>.arrow.right{left:9%}:host .popover.right>.arrow{left:-9px;margin-top:-9px;border-left-width:0;border-right-color:#0000001a}:host .popover.right>.arrow:before{content:\" \";left:1px;bottom:-1rem;border-left-width:0;border-right-color:var(--background-bright, #fff)}:host .popover.right>.arrow.center{top:50%}:host .popover.right>.arrow.top{top:91%}:host .popover.right>.arrow.bottom{top:9%}:host .popover.bottom>.arrow{margin-left:-9px;border-top-width:0;border-bottom-color:#0000001a;top:-9px}:host .popover.bottom>.arrow:before{content:\" \";top:1px;margin-left:-1rem;border-top-width:0;border-bottom-color:var(--background-bright, #fff)}:host .popover.bottom>.arrow.center{left:50%}:host .popover.bottom>.arrow.left{left:91%}:host .popover.bottom>.arrow.right{left:9%}:host .popover.left>.arrow{right:-9px;margin-top:-9px;border-right-width:0;border-left-color:#0000001a}:host .popover.left>.arrow:before{content:\" \";right:1px;border-right-width:0;border-left-color:var(--background-bright, #fff);bottom:-1rem}:host .popover.left>.arrow.center{top:50%}:host .popover.left>.arrow.top{top:91%}:host .popover.left>.arrow.bottom{top:9%}:host .popover>.arrow{border-width:9px}:host .popover>.arrow,:host .popover>.arrow:before{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}:host .popover>.arrow:before{border-width:1rem;content:\"\"}:host .popover-title{font-weight:500;line-height:1.5;color:var(--text-main, #3d464d);white-space:nowrap;text-overflow:ellipsis;font-size:var(--font-size-title);transition:color .2s ease-out,opacity .2s ease-out;vertical-align:middle;margin-bottom:1rem;white-space:normal;overflow:hidden;max-width:100%}:host .popover-title.text-capitalize{text-transform:capitalize}:host .popover-title.text-uppercase{text-transform:uppercase}:host .popover-title.text-nowrap{white-space:nowrap}:host .popover-title.text-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host .popover-title.text-size-default{font-size:inherit}:host .popover-title.text-size-body{font-size:var(--font-size-body)}:host .popover-title.text-size-xs{font-size:var(--font-size-xs)}:host .popover-title.text-size-sm{font-size:var(--font-size-sm)}:host .popover-title.text-size-md{font-size:var(--font-size-md)}:host .popover-title.text-size-lg{font-size:var(--font-size-lg)}:host .popover-title.text-size-xl{font-size:var(--font-size-xl)}:host .popover-title.text-size-2xl{font-size:var(--font-size-2xl)}:host .popover-title.text-size-3xl{font-size:var(--font-size-3xl)}:host .popover-title.text-size-smaller{font-size:.8em}:host .popover-title.text-size-larger{font-size:1.2em}:host .popover-title.text-color-black{color:var(--color-black)}:host .popover-title.text-color-white{color:var(--color-white)}:host .popover-title.text-color-gray{color:var(--color-gray)}:host .popover-title.text-color-grey{color:var(--color-grey)}:host .popover-title.text-color-offWhite{color:var(--color-off-white)}:host .popover-title.text-color-bright{color:var(--color-bright)}:host .popover-title.text-color-light{color:var(--color-light)}:host .popover-title.text-color-neutral{color:var(--color-neutral)}:host .popover-title.text-color-dark{color:var(--color-dark)}:host .popover-title.text-color-orange{color:var(--color-orange)}:host .popover-title.text-color-navigation{color:var(--color-navigation)}:host .popover-title.text-color-skyBlue{color:var(--color-sky-blue)}:host .popover-title.text-color-steel{color:var(--color-steel)}:host .popover-title.text-color-metal{color:var(--color-metal)}:host .popover-title.text-color-sand{color:var(--color-sand)}:host .popover-title.text-color-silver{color:var(--color-silver)}:host .popover-title.text-color-stone{color:var(--color-stone)}:host .popover-title.text-color-ash{color:var(--color-ash)}:host .popover-title.text-color-anonymous{color:var(--color-anonymous)}:host .popover-title.text-color-slate{color:var(--color-slate)}:host .popover-title.text-color-onyx{color:var(--color-onyx)}:host .popover-title.text-color-charcoal{color:var(--color-charcoal)}:host .popover-title.text-color-moonlight{color:var(--color-moonlight)}:host .popover-title.text-color-midnight{color:var(--color-midnight)}:host .popover-title.text-color-darkness{color:var(--color-darkness)}:host .popover-title.text-color-navy{color:var(--color-navy)}:host .popover-title.text-color-aqua{color:var(--color-aqua)}:host .popover-title.text-color-ocean{color:var(--color-ocean)}:host .popover-title.text-color-mint{color:var(--color-mint)}:host .popover-title.text-color-grass{color:var(--color-grass)}:host .popover-title.text-color-sunflower{color:var(--color-sunflower)}:host .popover-title.text-color-bittersweet{color:var(--color-bittersweet)}:host .popover-title.text-color-grapefruit{color:var(--color-grapefruit)}:host .popover-title.text-color-carnation{color:var(--color-carnation)}:host .popover-title.text-color-lavender{color:var(--color-lavender)}:host .popover-title.text-color-mountain{color:var(--color-mountain)}:host .popover-title.text-color-info{color:var(--color-info)}:host .popover-title.text-color-positive{color:var(--color-positive)}:host .popover-title.text-color-success{color:var(--color-success)}:host .popover-title.text-color-negative{color:var(--color-negative)}:host .popover-title.text-color-danger{color:var(--color-danger)}:host .popover-title.text-color-error{color:var(--color-error)}:host .popover-title.text-color-warning{color:var(--color-warning)}:host .popover-title.text-color-empty{color:var(--color-empty)}:host .popover-title.text-color-disabled{color:var(--color-disabled)}:host .popover-title.text-color-background{color:var(--color-background)}:host .popover-title.text-color-backgroundDark{color:var(--color-background-dark)}:host .popover-title.text-color-border{color:var(--color-border)}:host .popover-title.text-color-border2{color:var(--color-border2)}:host .popover-title.text-color-text{color:var(--color-text)}:host .popover-title.text-color-presentation{color:var(--color-presentation)}:host .popover-title.text-color-bullhorn{color:var(--color-bullhorn)}:host .popover-title.text-color-pulse{color:var(--color-pulse)}:host .popover-title.text-color-fastFind{color:var(--color-fast-find)}:host .popover-title.text-color-toast{color:var(--color-toast)}:host .popover-title.text-color-company{color:var(--color-company)}:host .popover-title.text-color-candidate{color:var(--color-candidate)}:host .popover-title.text-color-lead{color:var(--color-lead)}:host .popover-title.text-color-contact{color:var(--color-contact)}:host .popover-title.text-color-clientcontact{color:var(--color-clientcontact)}:host .popover-title.text-color-opportunity{color:var(--color-opportunity)}:host .popover-title.text-color-job{color:var(--color-job)}:host .popover-title.text-color-joborder{color:var(--color-joborder)}:host .popover-title.text-color-submission{color:var(--color-submission)}:host .popover-title.text-color-sendout{color:var(--color-sendout)}:host .popover-title.text-color-placement{color:var(--color-placement)}:host .popover-title.text-color-note{color:var(--color-note)}:host .popover-title.text-color-contract{color:var(--color-contract)}:host .popover-title.text-color-task{color:var(--color-task)}:host .popover-title.text-color-jobCode{color:var(--color-job-code)}:host .popover-title.text-color-earnCode{color:var(--color-earn-code)}:host .popover-title.text-color-invoiceStatement{color:var(--color-invoice-statement)}:host .popover-title.text-color-billableCharge{color:var(--color-billable-charge)}:host .popover-title.text-color-payableCharge{color:var(--color-payable-charge)}:host .popover-title.text-color-user{color:var(--color-user)}:host .popover-title.text-color-corporateUser{color:var(--color-corporate-user)}:host .popover-title.text-color-distributionList{color:var(--color-distribution-list)}:host .popover-title.text-color-credential{color:var(--color-credential)}:host .popover-title.text-color-person{color:var(--color-person)}:host .popover-title.margin-before{margin-top:.4rem}:host .popover-title.margin-after{margin-bottom:.8rem}:host .popover-title.text-length-small{max-width:40ch}:host .popover-title.text-length-medium{max-width:55ch}:host .popover-title.text-length-large{max-width:70ch}:host .popover-title.text-weight-hairline{font-weight:var(--font-weight-hairline)}:host .popover-title.text-weight-thin{font-weight:var(--font-weight-thin)}:host .popover-title.text-weight-light{font-weight:var(--font-weight-light)}:host .popover-title.text-weight-normal{font-weight:var(--font-weight-normal)}:host .popover-title.text-weight-medium{font-weight:var(--font-weight-medium)}:host .popover-title.text-weight-semibold{font-weight:var(--font-weight-semibold)}:host .popover-title.text-weight-bold{font-weight:var(--font-weight-bold)}:host .popover-title.text-weight-extrabold{font-weight:var(--font-weight-extrabold)}:host .popover-title.text-weight-heavy{font-weight:var(--font-weight-heavy)}:host .popover-title.text-weight-lighter{font-weight:lighter}:host .popover-title.text-weight-bolder{font-weight:bolder}:host .popover-content{display:inline;font-weight:400;color:inherit;font-size:var(--font-size-text);transition:color .2s ease-out,opacity .2s ease-out;vertical-align:middle}:host .popover-content.text-capitalize{text-transform:capitalize}:host .popover-content.text-uppercase{text-transform:uppercase}:host .popover-content.text-nowrap{white-space:nowrap}:host .popover-content.text-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host .popover-content.text-size-default{font-size:inherit}:host .popover-content.text-size-body{font-size:var(--font-size-body)}:host .popover-content.text-size-xs{font-size:var(--font-size-xs)}:host .popover-content.text-size-sm{font-size:var(--font-size-sm)}:host .popover-content.text-size-md{font-size:var(--font-size-md)}:host .popover-content.text-size-lg{font-size:var(--font-size-lg)}:host .popover-content.text-size-xl{font-size:var(--font-size-xl)}:host .popover-content.text-size-2xl{font-size:var(--font-size-2xl)}:host .popover-content.text-size-3xl{font-size:var(--font-size-3xl)}:host .popover-content.text-size-smaller{font-size:.8em}:host .popover-content.text-size-larger{font-size:1.2em}:host .popover-content.text-color-black{color:var(--color-black)}:host .popover-content.text-color-white{color:var(--color-white)}:host .popover-content.text-color-gray{color:var(--color-gray)}:host .popover-content.text-color-grey{color:var(--color-grey)}:host .popover-content.text-color-offWhite{color:var(--color-off-white)}:host .popover-content.text-color-bright{color:var(--color-bright)}:host .popover-content.text-color-light{color:var(--color-light)}:host .popover-content.text-color-neutral{color:var(--color-neutral)}:host .popover-content.text-color-dark{color:var(--color-dark)}:host .popover-content.text-color-orange{color:var(--color-orange)}:host .popover-content.text-color-navigation{color:var(--color-navigation)}:host .popover-content.text-color-skyBlue{color:var(--color-sky-blue)}:host .popover-content.text-color-steel{color:var(--color-steel)}:host .popover-content.text-color-metal{color:var(--color-metal)}:host .popover-content.text-color-sand{color:var(--color-sand)}:host .popover-content.text-color-silver{color:var(--color-silver)}:host .popover-content.text-color-stone{color:var(--color-stone)}:host .popover-content.text-color-ash{color:var(--color-ash)}:host .popover-content.text-color-anonymous{color:var(--color-anonymous)}:host .popover-content.text-color-slate{color:var(--color-slate)}:host .popover-content.text-color-onyx{color:var(--color-onyx)}:host .popover-content.text-color-charcoal{color:var(--color-charcoal)}:host .popover-content.text-color-moonlight{color:var(--color-moonlight)}:host .popover-content.text-color-midnight{color:var(--color-midnight)}:host .popover-content.text-color-darkness{color:var(--color-darkness)}:host .popover-content.text-color-navy{color:var(--color-navy)}:host .popover-content.text-color-aqua{color:var(--color-aqua)}:host .popover-content.text-color-ocean{color:var(--color-ocean)}:host .popover-content.text-color-mint{color:var(--color-mint)}:host .popover-content.text-color-grass{color:var(--color-grass)}:host .popover-content.text-color-sunflower{color:var(--color-sunflower)}:host .popover-content.text-color-bittersweet{color:var(--color-bittersweet)}:host .popover-content.text-color-grapefruit{color:var(--color-grapefruit)}:host .popover-content.text-color-carnation{color:var(--color-carnation)}:host .popover-content.text-color-lavender{color:var(--color-lavender)}:host .popover-content.text-color-mountain{color:var(--color-mountain)}:host .popover-content.text-color-info{color:var(--color-info)}:host .popover-content.text-color-positive{color:var(--color-positive)}:host .popover-content.text-color-success{color:var(--color-success)}:host .popover-content.text-color-negative{color:var(--color-negative)}:host .popover-content.text-color-danger{color:var(--color-danger)}:host .popover-content.text-color-error{color:var(--color-error)}:host .popover-content.text-color-warning{color:var(--color-warning)}:host .popover-content.text-color-empty{color:var(--color-empty)}:host .popover-content.text-color-disabled{color:var(--color-disabled)}:host .popover-content.text-color-background{color:var(--color-background)}:host .popover-content.text-color-backgroundDark{color:var(--color-background-dark)}:host .popover-content.text-color-border{color:var(--color-border)}:host .popover-content.text-color-border2{color:var(--color-border2)}:host .popover-content.text-color-text{color:var(--color-text)}:host .popover-content.text-color-presentation{color:var(--color-presentation)}:host .popover-content.text-color-bullhorn{color:var(--color-bullhorn)}:host .popover-content.text-color-pulse{color:var(--color-pulse)}:host .popover-content.text-color-fastFind{color:var(--color-fast-find)}:host .popover-content.text-color-toast{color:var(--color-toast)}:host .popover-content.text-color-company{color:var(--color-company)}:host .popover-content.text-color-candidate{color:var(--color-candidate)}:host .popover-content.text-color-lead{color:var(--color-lead)}:host .popover-content.text-color-contact{color:var(--color-contact)}:host .popover-content.text-color-clientcontact{color:var(--color-clientcontact)}:host .popover-content.text-color-opportunity{color:var(--color-opportunity)}:host .popover-content.text-color-job{color:var(--color-job)}:host .popover-content.text-color-joborder{color:var(--color-joborder)}:host .popover-content.text-color-submission{color:var(--color-submission)}:host .popover-content.text-color-sendout{color:var(--color-sendout)}:host .popover-content.text-color-placement{color:var(--color-placement)}:host .popover-content.text-color-note{color:var(--color-note)}:host .popover-content.text-color-contract{color:var(--color-contract)}:host .popover-content.text-color-task{color:var(--color-task)}:host .popover-content.text-color-jobCode{color:var(--color-job-code)}:host .popover-content.text-color-earnCode{color:var(--color-earn-code)}:host .popover-content.text-color-invoiceStatement{color:var(--color-invoice-statement)}:host .popover-content.text-color-billableCharge{color:var(--color-billable-charge)}:host .popover-content.text-color-payableCharge{color:var(--color-payable-charge)}:host .popover-content.text-color-user{color:var(--color-user)}:host .popover-content.text-color-corporateUser{color:var(--color-corporate-user)}:host .popover-content.text-color-distributionList{color:var(--color-distribution-list)}:host .popover-content.text-color-credential{color:var(--color-credential)}:host .popover-content.text-color-person{color:var(--color-person)}:host .popover-content.margin-before{margin-top:.4rem}:host .popover-content.margin-after{margin-bottom:.8rem}:host .popover-content.text-length-small{max-width:40ch}:host .popover-content.text-length-medium{max-width:55ch}:host .popover-content.text-length-large{max-width:70ch}:host .popover-content.text-weight-hairline{font-weight:var(--font-weight-hairline)}:host .popover-content.text-weight-thin{font-weight:var(--font-weight-thin)}:host .popover-content.text-weight-light{font-weight:var(--font-weight-light)}:host .popover-content.text-weight-normal{font-weight:var(--font-weight-normal)}:host .popover-content.text-weight-medium{font-weight:var(--font-weight-medium)}:host .popover-content.text-weight-semibold{font-weight:var(--font-weight-semibold)}:host .popover-content.text-weight-bold{font-weight:var(--font-weight-bold)}:host .popover-content.text-weight-extrabold{font-weight:var(--font-weight-extrabold)}:host .popover-content.text-weight-heavy{font-weight:var(--font-weight-heavy)}:host .popover-content.text-weight-lighter{font-weight:lighter}:host .popover-content.text-weight-bolder{font-weight:bolder}:host .popover-content .popover-content-text{white-space:pre-line}\n"] }]
212
212
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }], propDecorators: { content: [{
213
213
  type: Input
214
214
  }], htmlContent: [{
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-elements-popover.mjs","sources":["../../../projects/novo-elements/src/elements/popover/PopOverContent.ts","../../../projects/novo-elements/src/elements/popover/PopOver.ts","../../../projects/novo-elements/src/elements/popover/PopOver.module.ts","../../../projects/novo-elements/src/elements/popover/novo-elements-elements-popover.ts"],"sourcesContent":["import { AfterViewInit, ChangeDetectorRef, Component, ElementRef, EventEmitter, Input, ViewChild } from '@angular/core';\nimport { PopOverDirective } from './PopOver';\n\n@Component({\n selector: 'popover-content',\n template: `\n <div\n #popoverDiv\n class=\"popover {{ effectivePlacement }}\"\n [style.top]=\"top + 'px'\"\n [style.left]=\"left + 'px'\"\n [class.fade]=\"animation\"\n style=\"display: block\"\n role=\"popover\"\n >\n <div class=\"arrow {{ effectiveAlignment }}\"></div>\n <div class=\"popover-title\" [hidden]=\"!title\">{{ title }}</div>\n <div class=\"popover-content\">\n <ng-content></ng-content>\n <div *ngIf=\"htmlContent\" class=\"popover-content-text\" [innerHTML]=\"htmlContent\"></div>\n <div *ngIf=\"!htmlContent\" class=\"popover-content-text\">{{ content }}</div>\n </div>\n </div>\n `,\n styleUrls: ['./PopOver.scss'],\n standalone: false,\n})\nexport class PopOverContent implements AfterViewInit {\n @Input()\n content: string;\n @Input()\n htmlContent: string;\n @Input()\n placement: string = 'top';\n @Input()\n title: string;\n @Input()\n animation: boolean = true;\n\n @ViewChild('popoverDiv')\n popoverDiv: ElementRef;\n popover: PopOverDirective;\n onCloseFromOutside = new EventEmitter();\n top: number = -10000;\n left: number = -10000;\n displayType: string = 'none';\n effectivePlacement: string;\n effectiveAlignment: string;\n isHidden: boolean = false;\n\n constructor(protected element: ElementRef, protected cdr: ChangeDetectorRef) {}\n\n ngAfterViewInit(): void {\n this.show();\n this.cdr.detectChanges();\n }\n\n toggle(): void {\n if (this.isHidden) {\n this.show();\n } else {\n this.hide();\n }\n }\n\n show(): void {\n if (!this.popover || !this.popover.getElement()) {\n return;\n }\n\n const p = this.positionElements(this.popover.getElement(), this.popoverDiv.nativeElement, this.placement);\n this.displayType = 'block';\n this.top = p.top;\n this.left = p.left;\n this.isHidden = false;\n }\n\n hide(): void {\n this.top = -10000;\n this.left = -10000;\n this.isHidden = true;\n this.popover.hide();\n }\n\n hideFromPopover() {\n this.top = -10000;\n this.left = -10000;\n }\n\n protected positionElements(\n hostEl: HTMLElement,\n targetEl: HTMLElement,\n positionStr: string,\n appendToBody = false,\n ): { top: number; left: number } {\n const positionStrParts = positionStr.split('-');\n const mainSide = (this.effectivePlacement = this.getEffectivePlacement(positionStrParts[0] || 'right', hostEl, targetEl));\n const orientation = (this.effectiveAlignment = positionStrParts[1] || 'center');\n const hostElPos = appendToBody ? this.offset(hostEl) : this.position(hostEl);\n const targetElWidth = targetEl.offsetWidth;\n const targetElHeight = targetEl.offsetHeight;\n\n const shiftWidth: any = {\n center(): number {\n return hostElPos.left + (hostElPos.width - targetElWidth) / 2;\n },\n right(): number {\n return hostElPos.left;\n },\n left(): number {\n return hostElPos.left + (hostElPos.width - targetElWidth);\n },\n };\n\n const shiftHeight: any = {\n center(): number {\n return hostElPos.top + (hostElPos.height - targetElHeight) / 2;\n },\n bottom(): number {\n return hostElPos.top;\n },\n top(): number {\n return hostElPos.top + (hostElPos.height - targetElHeight);\n },\n };\n\n let targetElPos: { top: number; left: number };\n switch (mainSide) {\n case 'right':\n targetElPos = {\n top: shiftHeight[orientation](),\n left: hostElPos.left + hostElPos.width,\n };\n break;\n\n case 'left':\n targetElPos = {\n top: shiftHeight[orientation](),\n left: hostElPos.left - targetElWidth,\n };\n break;\n\n case 'bottom':\n targetElPos = {\n top: hostElPos.top + hostElPos.height,\n left: shiftWidth[orientation](),\n };\n break;\n\n default:\n targetElPos = {\n top: hostElPos.top - targetElHeight,\n left: shiftWidth[orientation](),\n };\n break;\n }\n\n return targetElPos;\n }\n\n protected position(nativeEl: HTMLElement): { width: number; height: number; top: number; left: number } {\n let offsetParentBCR = { top: 0, left: 0 };\n const elBCR = this.offset(nativeEl);\n const offsetParentEl = this.parentOffsetEl(nativeEl);\n if (offsetParentEl !== window.document) {\n offsetParentBCR = this.offset(offsetParentEl);\n offsetParentBCR.top += offsetParentEl.clientTop - offsetParentEl.scrollTop;\n offsetParentBCR.left += offsetParentEl.clientLeft - offsetParentEl.scrollLeft;\n }\n\n const boundingClientRect = nativeEl.getBoundingClientRect();\n return {\n width: boundingClientRect.width || nativeEl.offsetWidth,\n height: boundingClientRect.height || nativeEl.offsetHeight,\n top: elBCR.top - offsetParentBCR.top,\n left: elBCR.left - offsetParentBCR.left,\n };\n }\n\n protected offset(nativeEl: any): { width: number; height: number; top: number; left: number } {\n const boundingClientRect = nativeEl.getBoundingClientRect();\n return {\n width: boundingClientRect.width || nativeEl.offsetWidth,\n height: boundingClientRect.height || nativeEl.offsetHeight,\n top: boundingClientRect.top + (window.pageYOffset || window.document.documentElement.scrollTop),\n left: boundingClientRect.left + (window.pageXOffset || window.document.documentElement.scrollLeft),\n };\n }\n\n protected getStyle(nativeEl: HTMLElement, cssProp: string): string {\n if ((nativeEl as any).currentStyle) {\n return (nativeEl as any).currentStyle[cssProp];\n }\n\n if (window.getComputedStyle) {\n return (window.getComputedStyle as any)(nativeEl)[cssProp];\n }\n\n return (nativeEl.style as any)[cssProp];\n }\n\n protected isStaticPositioned(nativeEl: HTMLElement): boolean {\n return (this.getStyle(nativeEl, 'position') || 'static') === 'static';\n }\n\n protected parentOffsetEl(nativeEl: HTMLElement): any {\n let offsetParent: any = nativeEl.offsetParent || window.document;\n while (offsetParent && offsetParent !== window.document && this.isStaticPositioned(offsetParent)) {\n offsetParent = offsetParent.offsetParent;\n }\n return offsetParent || window.document;\n }\n\n protected getEffectivePlacement(desiredPlacement: string, hostElement: HTMLElement, targetElement: HTMLElement): string {\n const hostElBoundingRect = hostElement.getBoundingClientRect();\n\n if (desiredPlacement === 'top' && hostElBoundingRect.top - targetElement.offsetHeight < 0) {\n return 'bottom';\n }\n if (desiredPlacement === 'bottom' && hostElBoundingRect.bottom + targetElement.offsetHeight > window.innerHeight) {\n return 'top';\n }\n if (desiredPlacement === 'left' && hostElBoundingRect.left - targetElement.offsetWidth < 0) {\n return 'right';\n }\n if (desiredPlacement === 'right' && hostElBoundingRect.right + targetElement.offsetWidth > window.innerWidth) {\n return 'left';\n }\n\n return desiredPlacement;\n }\n}\n","// NG2\nimport {\n ComponentFactoryResolver,\n ComponentRef,\n Directive,\n EventEmitter,\n HostListener,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n SimpleChange,\n ViewContainerRef,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { PopOverContent } from './PopOverContent';\n\n@Directive({\n /**\n * [popover] selector retained for backwards compatability, but should be avoived as\n * it interferes with the newly added (2023) HTML standard spec popover attribute.\n */\n selector: '[popover], [novoPopover]',\n standalone: false,\n})\nexport class PopOverDirective implements OnChanges, OnDestroy {\n protected PopoverComponent = PopOverContent;\n protected popover: ComponentRef<PopOverContent>;\n protected visible: boolean;\n private subscriptions = new Subscription();\n\n constructor(protected viewContainerRef: ViewContainerRef, protected resolver: ComponentFactoryResolver) {}\n\n @Input('popover')\n content: string | PopOverContent;\n @Input('novoPopover')\n set novoPopover(content: string | PopOverContent) {\n this.content = content;\n }\n @Input()\n popoverHtmlContent: string;\n @Input()\n popoverDisabled: boolean;\n @Input()\n popoverAlways: boolean;\n @Input()\n popoverAnimation: boolean;\n @Input()\n popoverPlacement: string;\n @Input()\n popoverTitle: string;\n @Input()\n popoverOnHover: boolean = false;\n @Input()\n popoverDismissTimeout: number = 0;\n\n @Output()\n onShown = new EventEmitter<PopOverDirective>();\n @Output()\n onHidden = new EventEmitter<PopOverDirective>();\n\n // ---------------------------------------------------\n // Event listeners\n // ---------------------------------------------------\n @HostListener('click')\n showOrHideOnClick(): void {\n if (this.popoverOnHover || this.popoverDisabled) {\n return;\n }\n this.toggle();\n }\n\n @HostListener('focusin')\n @HostListener('mouseenter')\n showOnHover(): void {\n if (!this.popoverOnHover || this.popoverDisabled) {\n return;\n }\n this.show();\n }\n\n @HostListener('focusout')\n @HostListener('mouseleave')\n hideOnHover(): void {\n if (!this.popoverOnHover || this.popoverDisabled) {\n return;\n }\n this.hide();\n }\n\n ngOnChanges(changes: { [propertyName: string]: SimpleChange }) {\n if (changes.popoverDisabled) {\n if (changes.popoverDisabled.currentValue) {\n this.hide();\n }\n }\n if (changes.popoverAlways) {\n if (changes.popoverAlways.currentValue) {\n this.show();\n }\n }\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n toggle() {\n if (!this.visible) {\n this.show();\n } else {\n this.hide();\n }\n }\n\n show() {\n if (this.visible || (!this.content && !this.popoverHtmlContent)) {\n return;\n }\n\n this.visible = true;\n if (typeof this.content === 'string' || this.popoverHtmlContent) {\n const factory = this.resolver.resolveComponentFactory(this.PopoverComponent);\n if (!this.visible) {\n return;\n }\n\n this.popover = this.viewContainerRef.createComponent(factory);\n const popover = this.popover.instance as PopOverContent;\n popover.popover = this;\n if (this.content) {\n popover.content = this.content as string;\n }\n if (this.popoverHtmlContent) {\n popover.htmlContent = this.popoverHtmlContent;\n }\n if (this.popoverPlacement !== undefined) {\n popover.placement = this.popoverPlacement;\n }\n if (this.popoverAnimation !== undefined) {\n popover.animation = this.popoverAnimation;\n }\n if (this.popoverTitle !== undefined) {\n popover.title = this.popoverTitle;\n }\n\n this.subscriptions.add(popover.onCloseFromOutside.subscribe(() => this.hide()));\n if (this.popoverDismissTimeout > 0) {\n setTimeout(() => this.hide(), this.popoverDismissTimeout);\n }\n } else {\n const popover = this.content as PopOverContent;\n popover.popover = this;\n if (this.popoverPlacement !== undefined) {\n popover.placement = this.popoverPlacement;\n }\n if (this.popoverAnimation !== undefined) {\n popover.animation = this.popoverAnimation;\n }\n if (this.popoverTitle !== undefined) {\n popover.title = this.popoverTitle;\n }\n\n this.subscriptions.add(popover.onCloseFromOutside.subscribe(() => this.hide()));\n if (this.popoverDismissTimeout > 0) {\n setTimeout(() => this.hide(), this.popoverDismissTimeout);\n }\n popover.show();\n }\n\n this.onShown.emit(this);\n }\n\n hide() {\n if (!this.visible) {\n return;\n }\n\n this.visible = false;\n if (this.popover) {\n this.popover.destroy();\n }\n\n if (this.content instanceof PopOverContent) {\n (this.content as PopOverContent).hideFromPopover();\n }\n\n this.onHidden.emit(this);\n }\n\n getElement() {\n return this.viewContainerRef.element.nativeElement;\n }\n}\n","// NG2\nimport { NgModule } from '@angular/core';\nimport { PopOverDirective } from './PopOver';\n// APP\nimport { PopOverContent } from './PopOverContent';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [PopOverContent, PopOverDirective],\n exports: [PopOverContent, PopOverDirective],\n imports: [\n CommonModule,\n ],\n})\nexport class NovoPopOverModule {}\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-popover.mjs","sources":["../../../projects/novo-elements/src/elements/popover/PopOverContent.ts","../../../projects/novo-elements/src/elements/popover/PopOver.ts","../../../projects/novo-elements/src/elements/popover/PopOver.module.ts","../../../projects/novo-elements/src/elements/popover/novo-elements-elements-popover.ts"],"sourcesContent":["import { AfterViewInit, ChangeDetectorRef, Component, ElementRef, EventEmitter, Input, ViewChild } from '@angular/core';\nimport { PopOverDirective } from './PopOver';\n\n@Component({\n selector: 'popover-content',\n template: `\n <div\n #popoverDiv\n class=\"popover {{ effectivePlacement }}\"\n [style.top]=\"top + 'px'\"\n [style.left]=\"left + 'px'\"\n [class.fade]=\"animation\"\n style=\"display: block\"\n role=\"popover\"\n >\n <div class=\"arrow {{ effectiveAlignment }}\"></div>\n <div class=\"popover-title\" [hidden]=\"!title\">{{ title }}</div>\n <div class=\"popover-content\">\n <ng-content></ng-content>\n <div *ngIf=\"htmlContent\" class=\"popover-content-text\" [innerHTML]=\"htmlContent\"></div>\n <div *ngIf=\"!htmlContent\" class=\"popover-content-text\">{{ content }}</div>\n </div>\n </div>\n `,\n styleUrls: ['./PopOver.scss'],\n standalone: false,\n})\nexport class PopOverContent implements AfterViewInit {\n @Input()\n content: string;\n @Input()\n htmlContent: string;\n @Input()\n placement: string = 'top';\n @Input()\n title: string;\n @Input()\n animation: boolean = true;\n\n @ViewChild('popoverDiv')\n popoverDiv: ElementRef;\n popover: PopOverDirective;\n onCloseFromOutside = new EventEmitter();\n top: number = -10000;\n left: number = -10000;\n displayType: string = 'none';\n effectivePlacement: string;\n effectiveAlignment: string;\n isHidden: boolean = false;\n\n constructor(protected element: ElementRef, protected cdr: ChangeDetectorRef) {}\n\n ngAfterViewInit(): void {\n this.show();\n this.cdr.detectChanges();\n }\n\n toggle(): void {\n if (this.isHidden) {\n this.show();\n } else {\n this.hide();\n }\n }\n\n show(): void {\n if (!this.popover || !this.popover.getElement()) {\n return;\n }\n\n const p = this.positionElements(this.popover.getElement(), this.popoverDiv.nativeElement, this.placement);\n this.displayType = 'block';\n this.top = p.top;\n this.left = p.left;\n this.isHidden = false;\n }\n\n hide(): void {\n this.top = -10000;\n this.left = -10000;\n this.isHidden = true;\n this.popover.hide();\n }\n\n hideFromPopover() {\n this.top = -10000;\n this.left = -10000;\n }\n\n protected positionElements(\n hostEl: HTMLElement,\n targetEl: HTMLElement,\n positionStr: string,\n appendToBody = false,\n ): { top: number; left: number } {\n const positionStrParts = positionStr.split('-');\n const mainSide = (this.effectivePlacement = this.getEffectivePlacement(positionStrParts[0] || 'right', hostEl, targetEl));\n const orientation = (this.effectiveAlignment = positionStrParts[1] || 'center');\n const hostElPos = appendToBody ? this.offset(hostEl) : this.position(hostEl);\n const targetElWidth = targetEl.offsetWidth;\n const targetElHeight = targetEl.offsetHeight;\n\n const shiftWidth: any = {\n center(): number {\n return hostElPos.left + (hostElPos.width - targetElWidth) / 2;\n },\n right(): number {\n return hostElPos.left;\n },\n left(): number {\n return hostElPos.left + (hostElPos.width - targetElWidth);\n },\n };\n\n const shiftHeight: any = {\n center(): number {\n return hostElPos.top + (hostElPos.height - targetElHeight) / 2;\n },\n bottom(): number {\n return hostElPos.top;\n },\n top(): number {\n return hostElPos.top + (hostElPos.height - targetElHeight);\n },\n };\n\n let targetElPos: { top: number; left: number };\n switch (mainSide) {\n case 'right':\n targetElPos = {\n top: shiftHeight[orientation](),\n left: hostElPos.left + hostElPos.width,\n };\n break;\n\n case 'left':\n targetElPos = {\n top: shiftHeight[orientation](),\n left: hostElPos.left - targetElWidth,\n };\n break;\n\n case 'bottom':\n targetElPos = {\n top: hostElPos.top + hostElPos.height,\n left: shiftWidth[orientation](),\n };\n break;\n\n default:\n targetElPos = {\n top: hostElPos.top - targetElHeight,\n left: shiftWidth[orientation](),\n };\n break;\n }\n\n return targetElPos;\n }\n\n protected position(nativeEl: HTMLElement): { width: number; height: number; top: number; left: number } {\n let offsetParentBCR = { top: 0, left: 0 };\n const elBCR = this.offset(nativeEl);\n const offsetParentEl = this.parentOffsetEl(nativeEl);\n if (offsetParentEl !== window.document) {\n offsetParentBCR = this.offset(offsetParentEl);\n offsetParentBCR.top += offsetParentEl.clientTop - offsetParentEl.scrollTop;\n offsetParentBCR.left += offsetParentEl.clientLeft - offsetParentEl.scrollLeft;\n }\n\n const boundingClientRect = nativeEl.getBoundingClientRect();\n return {\n width: boundingClientRect.width || nativeEl.offsetWidth,\n height: boundingClientRect.height || nativeEl.offsetHeight,\n top: elBCR.top - offsetParentBCR.top,\n left: elBCR.left - offsetParentBCR.left,\n };\n }\n\n protected offset(nativeEl: any): { width: number; height: number; top: number; left: number } {\n const boundingClientRect = nativeEl.getBoundingClientRect();\n return {\n width: boundingClientRect.width || nativeEl.offsetWidth,\n height: boundingClientRect.height || nativeEl.offsetHeight,\n top: boundingClientRect.top + (window.pageYOffset || window.document.documentElement.scrollTop),\n left: boundingClientRect.left + (window.pageXOffset || window.document.documentElement.scrollLeft),\n };\n }\n\n protected getStyle(nativeEl: HTMLElement, cssProp: string): string {\n if ((nativeEl as any).currentStyle) {\n return (nativeEl as any).currentStyle[cssProp];\n }\n\n if (window.getComputedStyle) {\n return (window.getComputedStyle as any)(nativeEl)[cssProp];\n }\n\n return (nativeEl.style as any)[cssProp];\n }\n\n protected isStaticPositioned(nativeEl: HTMLElement): boolean {\n return (this.getStyle(nativeEl, 'position') || 'static') === 'static';\n }\n\n protected parentOffsetEl(nativeEl: HTMLElement): any {\n let offsetParent: any = nativeEl.offsetParent || window.document;\n while (offsetParent && offsetParent !== window.document && this.isStaticPositioned(offsetParent)) {\n offsetParent = offsetParent.offsetParent;\n }\n return offsetParent || window.document;\n }\n\n protected getEffectivePlacement(desiredPlacement: string, hostElement: HTMLElement, targetElement: HTMLElement): string {\n const hostElBoundingRect = hostElement.getBoundingClientRect();\n\n if (desiredPlacement === 'top' && hostElBoundingRect.top - targetElement.offsetHeight < 0) {\n return 'bottom';\n }\n if (desiredPlacement === 'bottom' && hostElBoundingRect.bottom + targetElement.offsetHeight > window.innerHeight) {\n return 'top';\n }\n if (desiredPlacement === 'left' && hostElBoundingRect.left - targetElement.offsetWidth < 0) {\n return 'right';\n }\n if (desiredPlacement === 'right' && hostElBoundingRect.right + targetElement.offsetWidth > window.innerWidth) {\n return 'left';\n }\n\n return desiredPlacement;\n }\n}\n","// NG2\nimport {\n ComponentFactoryResolver,\n ComponentRef,\n Directive,\n EventEmitter,\n HostListener,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n SimpleChange,\n ViewContainerRef,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { PopOverContent } from './PopOverContent';\n\n@Directive({\n /**\n * [popover] selector retained for backwards compatability, but should be avoived as\n * it interferes with the newly added (2023) HTML standard spec popover attribute.\n */\n selector: '[popover], [novoPopover]',\n standalone: false,\n})\nexport class PopOverDirective implements OnChanges, OnDestroy {\n protected PopoverComponent = PopOverContent;\n protected popover: ComponentRef<PopOverContent>;\n protected visible: boolean;\n private subscriptions = new Subscription();\n\n constructor(protected viewContainerRef: ViewContainerRef, protected resolver: ComponentFactoryResolver) {}\n\n @Input('popover')\n content: string | PopOverContent;\n @Input('novoPopover')\n set novoPopover(content: string | PopOverContent) {\n this.content = content;\n }\n @Input()\n popoverHtmlContent: string;\n @Input()\n popoverDisabled: boolean;\n @Input()\n popoverAlways: boolean;\n @Input()\n popoverAnimation: boolean;\n @Input()\n popoverPlacement: string;\n @Input()\n popoverTitle: string;\n @Input()\n popoverOnHover: boolean = false;\n @Input()\n popoverDismissTimeout: number = 0;\n\n @Output()\n onShown = new EventEmitter<PopOverDirective>();\n @Output()\n onHidden = new EventEmitter<PopOverDirective>();\n\n // ---------------------------------------------------\n // Event listeners\n // ---------------------------------------------------\n @HostListener('click')\n showOrHideOnClick(): void {\n if (this.popoverOnHover || this.popoverDisabled) {\n return;\n }\n this.toggle();\n }\n\n @HostListener('focusin')\n @HostListener('mouseenter')\n showOnHover(): void {\n if (!this.popoverOnHover || this.popoverDisabled) {\n return;\n }\n this.show();\n }\n\n @HostListener('focusout')\n @HostListener('mouseleave')\n hideOnHover(): void {\n if (!this.popoverOnHover || this.popoverDisabled) {\n return;\n }\n this.hide();\n }\n\n ngOnChanges(changes: { [propertyName: string]: SimpleChange }) {\n if (changes.popoverDisabled) {\n if (changes.popoverDisabled.currentValue) {\n this.hide();\n }\n }\n if (changes.popoverAlways) {\n if (changes.popoverAlways.currentValue) {\n this.show();\n }\n }\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n toggle() {\n if (!this.visible) {\n this.show();\n } else {\n this.hide();\n }\n }\n\n show() {\n if (this.visible || (!this.content && !this.popoverHtmlContent)) {\n return;\n }\n\n this.visible = true;\n if (typeof this.content === 'string' || this.popoverHtmlContent) {\n const factory = this.resolver.resolveComponentFactory(this.PopoverComponent);\n if (!this.visible) {\n return;\n }\n\n this.popover = this.viewContainerRef.createComponent(factory);\n const popover = this.popover.instance as PopOverContent;\n popover.popover = this;\n if (this.content) {\n popover.content = this.content as string;\n }\n if (this.popoverHtmlContent) {\n popover.htmlContent = this.popoverHtmlContent;\n }\n if (this.popoverPlacement !== undefined) {\n popover.placement = this.popoverPlacement;\n }\n if (this.popoverAnimation !== undefined) {\n popover.animation = this.popoverAnimation;\n }\n if (this.popoverTitle !== undefined) {\n popover.title = this.popoverTitle;\n }\n\n this.subscriptions.add(popover.onCloseFromOutside.subscribe(() => this.hide()));\n if (this.popoverDismissTimeout > 0) {\n setTimeout(() => this.hide(), this.popoverDismissTimeout);\n }\n } else {\n const popover = this.content as PopOverContent;\n popover.popover = this;\n if (this.popoverPlacement !== undefined) {\n popover.placement = this.popoverPlacement;\n }\n if (this.popoverAnimation !== undefined) {\n popover.animation = this.popoverAnimation;\n }\n if (this.popoverTitle !== undefined) {\n popover.title = this.popoverTitle;\n }\n\n this.subscriptions.add(popover.onCloseFromOutside.subscribe(() => this.hide()));\n if (this.popoverDismissTimeout > 0) {\n setTimeout(() => this.hide(), this.popoverDismissTimeout);\n }\n popover.show();\n }\n\n this.onShown.emit(this);\n }\n\n hide() {\n if (!this.visible) {\n return;\n }\n\n this.visible = false;\n if (this.popover) {\n this.popover.destroy();\n }\n\n if (this.content instanceof PopOverContent) {\n (this.content as PopOverContent).hideFromPopover();\n }\n\n this.onHidden.emit(this);\n }\n\n getElement() {\n return this.viewContainerRef.element.nativeElement;\n }\n}\n","// NG2\nimport { NgModule } from '@angular/core';\nimport { PopOverDirective } from './PopOver';\n// APP\nimport { PopOverContent } from './PopOverContent';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [PopOverContent, PopOverDirective],\n exports: [PopOverContent, PopOverDirective],\n imports: [\n CommonModule,\n ],\n})\nexport class NovoPopOverModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}