novo-elements 11.4.0 → 12.0.0

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 (680) hide show
  1. package/addons/ace-editor/index.d.ts +49 -2
  2. package/addons/ckeditor/index.d.ts +58 -2
  3. package/addons/code-editor/index.d.ts +43 -2
  4. package/elements/agenda/index.d.ts +601 -6
  5. package/elements/aside/index.d.ts +61 -5
  6. package/elements/autocomplete/index.d.ts +105 -2
  7. package/elements/avatar/index.d.ts +42 -3
  8. package/elements/breadcrumbs/index.d.ts +87 -6
  9. package/elements/button/index.d.ts +65 -2
  10. package/elements/calendar/index.d.ts +200 -6
  11. package/elements/card/index.d.ts +69 -2
  12. package/elements/category-dropdown/index.d.ts +44 -2
  13. package/elements/checkbox/index.d.ts +117 -3
  14. package/elements/chips/index.d.ts +665 -9
  15. package/elements/color-picker/index.d.ts +142 -4
  16. package/elements/common/index.d.ts +745 -19
  17. package/elements/data-table/index.d.ts +939 -15
  18. package/elements/date-picker/index.d.ts +410 -5
  19. package/elements/date-time-picker/index.d.ts +113 -3
  20. package/elements/divider/index.d.ts +25 -2
  21. package/elements/drag-drop/index.d.ts +74 -2
  22. package/elements/dropdown/index.d.ts +117 -2
  23. package/elements/expansion/index.d.ts +161 -6
  24. package/elements/field/index.d.ts +513 -14
  25. package/elements/flex/index.d.ts +53 -4
  26. package/elements/form/index.d.ts +1312 -17
  27. package/elements/header/index.d.ts +51 -2
  28. package/elements/icon/index.d.ts +37 -2
  29. package/elements/layout/index.d.ts +306 -6
  30. package/elements/list/index.d.ts +59 -2
  31. package/elements/loading/index.d.ts +64 -2
  32. package/elements/menu/index.d.ts +202 -8
  33. package/elements/modal/index.d.ts +96 -6
  34. package/elements/multi-picker/index.d.ts +122 -2
  35. package/elements/non-ideal-state/index.d.ts +22 -2
  36. package/elements/picker/index.d.ts +387 -3
  37. package/elements/places/index.d.ts +121 -3
  38. package/elements/popover/index.d.ts +93 -3
  39. package/elements/progress/index.d.ts +85 -4
  40. package/elements/query-builder/index.d.ts +625 -17
  41. package/elements/quick-note/index.d.ts +187 -3
  42. package/elements/radio/index.d.ts +147 -4
  43. package/elements/search/index.d.ts +85 -2
  44. package/elements/select/index.d.ts +248 -3
  45. package/elements/select-search/index.d.ts +268 -3
  46. package/elements/simple-table/index.d.ts +544 -12
  47. package/elements/simple-table/table.scss +10 -10
  48. package/elements/slider/index.d.ts +32 -2
  49. package/elements/stepper/index.d.ts +134 -7
  50. package/elements/switch/index.d.ts +35 -2
  51. package/elements/tabbed-group-picker/index.d.ts +147 -2
  52. package/elements/tabs/index.d.ts +105 -2
  53. package/elements/tiles/index.d.ts +45 -2
  54. package/elements/time-picker/index.d.ts +141 -3
  55. package/elements/tip-well/index.d.ts +37 -2
  56. package/elements/toast/index.d.ts +94 -3
  57. package/elements/toolbar/index.d.ts +32 -2
  58. package/elements/tooltip/index.d.ts +70 -3
  59. package/elements/unless/index.d.ts +26 -2
  60. package/elements/value/index.d.ts +142 -4
  61. package/fesm2022/novo-elements-addons-ace-editor.mjs +7 -7
  62. package/fesm2022/novo-elements-addons-ace-editor.mjs.map +1 -1
  63. package/fesm2022/novo-elements-addons-ckeditor.mjs +7 -7
  64. package/fesm2022/novo-elements-addons-ckeditor.mjs.map +1 -1
  65. package/fesm2022/novo-elements-addons-code-editor.mjs +7 -7
  66. package/fesm2022/novo-elements-addons-code-editor.mjs.map +1 -1
  67. package/fesm2022/novo-elements-elements-agenda.mjs +61 -61
  68. package/fesm2022/novo-elements-elements-agenda.mjs.map +1 -1
  69. package/fesm2022/novo-elements-elements-aside.mjs +17 -16
  70. package/fesm2022/novo-elements-elements-aside.mjs.map +1 -1
  71. package/fesm2022/novo-elements-elements-autocomplete.mjs +7 -7
  72. package/fesm2022/novo-elements-elements-autocomplete.mjs.map +1 -1
  73. package/fesm2022/novo-elements-elements-avatar.mjs +10 -10
  74. package/fesm2022/novo-elements-elements-avatar.mjs.map +1 -1
  75. package/fesm2022/novo-elements-elements-breadcrumbs.mjs +13 -13
  76. package/fesm2022/novo-elements-elements-breadcrumbs.mjs.map +1 -1
  77. package/fesm2022/novo-elements-elements-button.mjs +12 -12
  78. package/fesm2022/novo-elements-elements-button.mjs.map +1 -1
  79. package/fesm2022/novo-elements-elements-calendar.mjs +25 -25
  80. package/fesm2022/novo-elements-elements-calendar.mjs.map +1 -1
  81. package/fesm2022/novo-elements-elements-card.mjs +19 -19
  82. package/fesm2022/novo-elements-elements-card.mjs.map +1 -1
  83. package/fesm2022/novo-elements-elements-category-dropdown.mjs +7 -7
  84. package/fesm2022/novo-elements-elements-category-dropdown.mjs.map +1 -1
  85. package/fesm2022/novo-elements-elements-checkbox.mjs +10 -10
  86. package/fesm2022/novo-elements-elements-checkbox.mjs.map +1 -1
  87. package/fesm2022/novo-elements-elements-chips.mjs +47 -39
  88. package/fesm2022/novo-elements-elements-chips.mjs.map +1 -1
  89. package/fesm2022/novo-elements-elements-color-picker.mjs +13 -13
  90. package/fesm2022/novo-elements-elements-color-picker.mjs.map +1 -1
  91. package/fesm2022/novo-elements-elements-common.mjs +116 -107
  92. package/fesm2022/novo-elements-elements-common.mjs.map +1 -1
  93. package/fesm2022/novo-elements-elements-data-table.mjs +77 -77
  94. package/fesm2022/novo-elements-elements-data-table.mjs.map +1 -1
  95. package/fesm2022/novo-elements-elements-date-picker.mjs +17 -17
  96. package/fesm2022/novo-elements-elements-date-picker.mjs.map +1 -1
  97. package/fesm2022/novo-elements-elements-date-time-picker.mjs +11 -11
  98. package/fesm2022/novo-elements-elements-date-time-picker.mjs.map +1 -1
  99. package/fesm2022/novo-elements-elements-divider.mjs +7 -7
  100. package/fesm2022/novo-elements-elements-divider.mjs.map +1 -1
  101. package/fesm2022/novo-elements-elements-drag-drop.mjs +11 -11
  102. package/fesm2022/novo-elements-elements-drag-drop.mjs.map +1 -1
  103. package/fesm2022/novo-elements-elements-dropdown.mjs +19 -19
  104. package/fesm2022/novo-elements-elements-dropdown.mjs.map +1 -1
  105. package/fesm2022/novo-elements-elements-expansion.mjs +26 -26
  106. package/fesm2022/novo-elements-elements-expansion.mjs.map +1 -1
  107. package/fesm2022/novo-elements-elements-field.mjs +46 -46
  108. package/fesm2022/novo-elements-elements-field.mjs.map +1 -1
  109. package/fesm2022/novo-elements-elements-flex.mjs +16 -16
  110. package/fesm2022/novo-elements-elements-flex.mjs.map +1 -1
  111. package/fesm2022/novo-elements-elements-form.mjs +53 -53
  112. package/fesm2022/novo-elements-elements-form.mjs.map +1 -1
  113. package/fesm2022/novo-elements-elements-header.mjs +16 -16
  114. package/fesm2022/novo-elements-elements-header.mjs.map +1 -1
  115. package/fesm2022/novo-elements-elements-icon.mjs +7 -7
  116. package/fesm2022/novo-elements-elements-icon.mjs.map +1 -1
  117. package/fesm2022/novo-elements-elements-layout.mjs +19 -19
  118. package/fesm2022/novo-elements-elements-layout.mjs.map +1 -1
  119. package/fesm2022/novo-elements-elements-list.mjs +28 -28
  120. package/fesm2022/novo-elements-elements-list.mjs.map +1 -1
  121. package/fesm2022/novo-elements-elements-loading.mjs +19 -19
  122. package/fesm2022/novo-elements-elements-loading.mjs.map +1 -1
  123. package/fesm2022/novo-elements-elements-menu.mjs +19 -19
  124. package/fesm2022/novo-elements-elements-menu.mjs.map +1 -1
  125. package/fesm2022/novo-elements-elements-modal.mjs +26 -23
  126. package/fesm2022/novo-elements-elements-modal.mjs.map +1 -1
  127. package/fesm2022/novo-elements-elements-multi-picker.mjs +7 -7
  128. package/fesm2022/novo-elements-elements-multi-picker.mjs.map +1 -1
  129. package/fesm2022/novo-elements-elements-non-ideal-state.mjs +7 -7
  130. package/fesm2022/novo-elements-elements-non-ideal-state.mjs.map +1 -1
  131. package/fesm2022/novo-elements-elements-picker.mjs +42 -39
  132. package/fesm2022/novo-elements-elements-picker.mjs.map +1 -1
  133. package/fesm2022/novo-elements-elements-places.mjs +10 -10
  134. package/fesm2022/novo-elements-elements-places.mjs.map +1 -1
  135. package/fesm2022/novo-elements-elements-popover.mjs +10 -10
  136. package/fesm2022/novo-elements-elements-popover.mjs.map +1 -1
  137. package/fesm2022/novo-elements-elements-progress.mjs +10 -10
  138. package/fesm2022/novo-elements-elements-progress.mjs.map +1 -1
  139. package/fesm2022/novo-elements-elements-query-builder.mjs +88 -88
  140. package/fesm2022/novo-elements-elements-query-builder.mjs.map +1 -1
  141. package/fesm2022/novo-elements-elements-quick-note.mjs +10 -10
  142. package/fesm2022/novo-elements-elements-quick-note.mjs.map +1 -1
  143. package/fesm2022/novo-elements-elements-radio.mjs +10 -10
  144. package/fesm2022/novo-elements-elements-radio.mjs.map +1 -1
  145. package/fesm2022/novo-elements-elements-search.mjs +7 -7
  146. package/fesm2022/novo-elements-elements-search.mjs.map +1 -1
  147. package/fesm2022/novo-elements-elements-select-search.mjs +10 -10
  148. package/fesm2022/novo-elements-elements-select-search.mjs.map +1 -1
  149. package/fesm2022/novo-elements-elements-select.mjs +23 -19
  150. package/fesm2022/novo-elements-elements-select.mjs.map +1 -1
  151. package/fesm2022/novo-elements-elements-simple-table.mjs +119 -93
  152. package/fesm2022/novo-elements-elements-simple-table.mjs.map +1 -1
  153. package/fesm2022/novo-elements-elements-slider.mjs +7 -7
  154. package/fesm2022/novo-elements-elements-slider.mjs.map +1 -1
  155. package/fesm2022/novo-elements-elements-stepper.mjs +34 -34
  156. package/fesm2022/novo-elements-elements-stepper.mjs.map +1 -1
  157. package/fesm2022/novo-elements-elements-switch.mjs +7 -7
  158. package/fesm2022/novo-elements-elements-switch.mjs.map +1 -1
  159. package/fesm2022/novo-elements-elements-tabbed-group-picker.mjs +7 -7
  160. package/fesm2022/novo-elements-elements-tabbed-group-picker.mjs.map +1 -1
  161. package/fesm2022/novo-elements-elements-tabs.mjs +26 -26
  162. package/fesm2022/novo-elements-elements-tabs.mjs.map +1 -1
  163. package/fesm2022/novo-elements-elements-tiles.mjs +7 -7
  164. package/fesm2022/novo-elements-elements-tiles.mjs.map +1 -1
  165. package/fesm2022/novo-elements-elements-time-picker.mjs +10 -10
  166. package/fesm2022/novo-elements-elements-time-picker.mjs.map +1 -1
  167. package/fesm2022/novo-elements-elements-tip-well.mjs +7 -7
  168. package/fesm2022/novo-elements-elements-tip-well.mjs.map +1 -1
  169. package/fesm2022/novo-elements-elements-toast.mjs +10 -10
  170. package/fesm2022/novo-elements-elements-toast.mjs.map +1 -1
  171. package/fesm2022/novo-elements-elements-toolbar.mjs +10 -10
  172. package/fesm2022/novo-elements-elements-toolbar.mjs.map +1 -1
  173. package/fesm2022/novo-elements-elements-tooltip.mjs +12 -12
  174. package/fesm2022/novo-elements-elements-tooltip.mjs.map +1 -1
  175. package/fesm2022/novo-elements-elements-unless.mjs +7 -7
  176. package/fesm2022/novo-elements-elements-unless.mjs.map +1 -1
  177. package/fesm2022/novo-elements-elements-value.mjs +14 -14
  178. package/fesm2022/novo-elements-elements-value.mjs.map +1 -1
  179. package/fesm2022/novo-elements-pipes.mjs +35 -35
  180. package/fesm2022/novo-elements-pipes.mjs.map +1 -1
  181. package/fesm2022/novo-elements-services.mjs +24 -24
  182. package/fesm2022/novo-elements-services.mjs.map +1 -1
  183. package/fesm2022/novo-elements-utils.mjs +4 -4
  184. package/fesm2022/novo-elements-utils.mjs.map +1 -1
  185. package/fesm2022/novo-elements.mjs +9 -8
  186. package/fesm2022/novo-elements.mjs.map +1 -1
  187. package/index.d.ts +27 -3
  188. package/package.json +17 -17
  189. package/pipes/index.d.ts +75 -7
  190. package/services/index.d.ts +602 -9
  191. package/utils/index.d.ts +1631 -12
  192. package/addons/ace-editor/AceEditor.d.ts +0 -42
  193. package/addons/ace-editor/AceEditor.module.d.ts +0 -8
  194. package/addons/ckeditor/CKEditor.d.ts +0 -52
  195. package/addons/ckeditor/CKEditor.module.d.ts +0 -9
  196. package/addons/code-editor/CodeEditor.d.ts +0 -32
  197. package/addons/code-editor/CodeEditor.module.d.ts +0 -9
  198. package/elements/agenda/Agenda.module.d.ts +0 -29
  199. package/elements/agenda/common/AgendaDateChange.d.ts +0 -28
  200. package/elements/agenda/common/EventTypeLegend.d.ts +0 -10
  201. package/elements/agenda/common/index.d.ts +0 -2
  202. package/elements/agenda/day/AgendaAllDayEvent.d.ts +0 -10
  203. package/elements/agenda/day/AgendaDayEvent.d.ts +0 -11
  204. package/elements/agenda/day/AgendaDayView.d.ts +0 -151
  205. package/elements/agenda/day/AgendaHourSegment.d.ts +0 -10
  206. package/elements/agenda/day/index.d.ts +0 -4
  207. package/elements/agenda/month/AgendaMonthDay.d.ts +0 -17
  208. package/elements/agenda/month/AgendaMonthHeader.d.ts +0 -17
  209. package/elements/agenda/month/AgendaMonthView.d.ts +0 -113
  210. package/elements/agenda/month/index.d.ts +0 -3
  211. package/elements/agenda/pipe/DayOfMonth.pipe.d.ts +0 -9
  212. package/elements/agenda/pipe/EndOfWeekDisplayPipe.pipe.d.ts +0 -9
  213. package/elements/agenda/pipe/Hours.pipe.d.ts +0 -9
  214. package/elements/agenda/pipe/Month.pipe.d.ts +0 -9
  215. package/elements/agenda/pipe/MonthDay.pipe.d.ts +0 -9
  216. package/elements/agenda/pipe/Weekday.pipe.d.ts +0 -9
  217. package/elements/agenda/pipe/Year.pipe.d.ts +0 -9
  218. package/elements/agenda/pipe/index.d.ts +0 -7
  219. package/elements/agenda/week/AgendaWeekEvent.d.ts +0 -11
  220. package/elements/agenda/week/AgendaWeekHeader.d.ts +0 -17
  221. package/elements/agenda/week/AgendaWeekView.d.ts +0 -159
  222. package/elements/agenda/week/index.d.ts +0 -3
  223. package/elements/aside/aside-ref.d.ts +0 -17
  224. package/elements/aside/aside.animation.d.ts +0 -1
  225. package/elements/aside/aside.component.d.ts +0 -18
  226. package/elements/aside/aside.module.d.ts +0 -9
  227. package/elements/aside/aside.service.d.ts +0 -16
  228. package/elements/autocomplete/autocomplete.component.d.ts +0 -92
  229. package/elements/autocomplete/autocomplete.module.d.ts +0 -12
  230. package/elements/avatar/Avatar.d.ts +0 -22
  231. package/elements/avatar/Avatar.module.d.ts +0 -9
  232. package/elements/avatar/AvatarStack.d.ts +0 -12
  233. package/elements/breadcrumbs/Breadcrumb.d.ts +0 -13
  234. package/elements/breadcrumbs/Breadcrumb.module.d.ts +0 -15
  235. package/elements/breadcrumbs/Breadcrumb.service.d.ts +0 -9
  236. package/elements/breadcrumbs/Breadcrumb.tokens.d.ts +0 -13
  237. package/elements/breadcrumbs/Breadcrumb.types.d.ts +0 -18
  238. package/elements/breadcrumbs/breadcrumb-item/BreadcrumbItem.d.ts +0 -23
  239. package/elements/breadcrumbs/breadcrumb-item/index.d.ts +0 -1
  240. package/elements/button/Button.d.ts +0 -55
  241. package/elements/button/Button.module.d.ts +0 -8
  242. package/elements/calendar/Calendar.module.d.ts +0 -15
  243. package/elements/calendar/calendar.component.d.ts +0 -57
  244. package/elements/calendar/month-select/month-select.component.d.ts +0 -18
  245. package/elements/calendar/month-view/month-view.component.d.ts +0 -60
  246. package/elements/calendar/strategies/default-selection.strategy.d.ts +0 -17
  247. package/elements/calendar/strategies/index.d.ts +0 -4
  248. package/elements/calendar/strategies/multi-date-selection.strategy.d.ts +0 -9
  249. package/elements/calendar/strategies/range-selection.strategy.d.ts +0 -9
  250. package/elements/calendar/strategies/week-selection.strategy.d.ts +0 -9
  251. package/elements/calendar/year-select/year-select.component.d.ts +0 -20
  252. package/elements/card/Card.d.ts +0 -55
  253. package/elements/card/Card.module.d.ts +0 -12
  254. package/elements/category-dropdown/CategoryDropdown.d.ts +0 -32
  255. package/elements/category-dropdown/CategoryDropdown.module.d.ts +0 -10
  256. package/elements/checkbox/CheckList.d.ts +0 -23
  257. package/elements/checkbox/Checkbox.d.ts +0 -84
  258. package/elements/checkbox/Checkbox.module.d.ts +0 -11
  259. package/elements/chips/Chip.d.ts +0 -164
  260. package/elements/chips/ChipDefaults.d.ts +0 -8
  261. package/elements/chips/ChipInput.d.ts +0 -77
  262. package/elements/chips/ChipList.d.ts +0 -293
  263. package/elements/chips/ChipTextControl.d.ts +0 -14
  264. package/elements/chips/Chips.d.ts +0 -91
  265. package/elements/chips/Chips.module.d.ts +0 -19
  266. package/elements/chips/RowChips.d.ts +0 -17
  267. package/elements/chips/pipe/AvatarType.pipe.d.ts +0 -7
  268. package/elements/chips/pipe/index.d.ts +0 -1
  269. package/elements/color-picker/color-input.component.d.ts +0 -57
  270. package/elements/color-picker/color-picker.component.d.ts +0 -41
  271. package/elements/color-picker/color-picker.module.d.ts +0 -15
  272. package/elements/color-picker/color-swatch.component.d.ts +0 -31
  273. package/elements/common/common.module.d.ts +0 -24
  274. package/elements/common/directives/accent.directive.d.ts +0 -14
  275. package/elements/common/directives/bg.directive.d.ts +0 -11
  276. package/elements/common/directives/border.directive.d.ts +0 -29
  277. package/elements/common/directives/color.directive.d.ts +0 -11
  278. package/elements/common/directives/fill.directive.d.ts +0 -10
  279. package/elements/common/directives/flex.directive.d.ts +0 -12
  280. package/elements/common/directives/space.directive.d.ts +0 -54
  281. package/elements/common/directives/switch-cases.directive.d.ts +0 -16
  282. package/elements/common/directives/theme.directive.d.ts +0 -10
  283. package/elements/common/directives/visible.directive.d.ts +0 -10
  284. package/elements/common/error/error-options.d.ts +0 -14
  285. package/elements/common/mixins/color.mixin.d.ts +0 -15
  286. package/elements/common/mixins/constructor.d.ts +0 -9
  287. package/elements/common/mixins/disabled.mixin.d.ts +0 -10
  288. package/elements/common/mixins/error-state.mixin.d.ts +0 -25
  289. package/elements/common/mixins/index.d.ts +0 -9
  290. package/elements/common/mixins/overlay.mixin.d.ts +0 -17
  291. package/elements/common/mixins/required.mixin.d.ts +0 -10
  292. package/elements/common/mixins/size.mixin.d.ts +0 -15
  293. package/elements/common/mixins/tab-index.mixin.d.ts +0 -13
  294. package/elements/common/mixins/types.d.ts +0 -5
  295. package/elements/common/novo-template/index.d.ts +0 -1
  296. package/elements/common/novo-template/novo-template.directive.d.ts +0 -11
  297. package/elements/common/option/index.d.ts +0 -13
  298. package/elements/common/option/optgroup.component.d.ts +0 -32
  299. package/elements/common/option/option-parent.d.ts +0 -14
  300. package/elements/common/option/option.component.d.ts +0 -140
  301. package/elements/common/overlay/Overlay.d.ts +0 -71
  302. package/elements/common/overlay/Overlay.module.d.ts +0 -11
  303. package/elements/common/overlay/index.d.ts +0 -2
  304. package/elements/common/selection/index.d.ts +0 -8
  305. package/elements/common/selection/pseudo-checkbox/pseudo-checkbox.component.d.ts +0 -32
  306. package/elements/common/theme/theme-options.d.ts +0 -25
  307. package/elements/common/typography/base/base-text.component.d.ts +0 -33
  308. package/elements/common/typography/caption/caption.component.d.ts +0 -16
  309. package/elements/common/typography/index.d.ts +0 -7
  310. package/elements/common/typography/label/label.component.d.ts +0 -10
  311. package/elements/common/typography/link/link.component.d.ts +0 -17
  312. package/elements/common/typography/text/text.component.d.ts +0 -17
  313. package/elements/common/typography/text.types.d.ts +0 -3
  314. package/elements/common/typography/title/title.component.d.ts +0 -18
  315. package/elements/data-table/ListInteractionTypes.d.ts +0 -10
  316. package/elements/data-table/cell-headers/data-table-checkbox-header-cell.component.d.ts +0 -24
  317. package/elements/data-table/cell-headers/data-table-expand-header-cell.component.d.ts +0 -16
  318. package/elements/data-table/cell-headers/data-table-header-cell-filter-header.component.d.ts +0 -16
  319. package/elements/data-table/cell-headers/data-table-header-cell.component.d.ts +0 -91
  320. package/elements/data-table/cell-headers/data-table-header-cell.directive.d.ts +0 -14
  321. package/elements/data-table/cell-headers/index.d.ts +0 -5
  322. package/elements/data-table/cells/data-table-cell.component.d.ts +0 -20
  323. package/elements/data-table/cells/data-table-checkbox-cell.component.d.ts +0 -23
  324. package/elements/data-table/cells/data-table-expand-cell.component.d.ts +0 -19
  325. package/elements/data-table/cells/index.d.ts +0 -3
  326. package/elements/data-table/data-table-clear-button.component.d.ts +0 -23
  327. package/elements/data-table/data-table-expand.directive.d.ts +0 -21
  328. package/elements/data-table/data-table.component.d.ts +0 -126
  329. package/elements/data-table/data-table.module.d.ts +0 -42
  330. package/elements/data-table/data-table.pipes.d.ts +0 -52
  331. package/elements/data-table/data-table.source.d.ts +0 -22
  332. package/elements/data-table/data-table.token.d.ts +0 -27
  333. package/elements/data-table/interfaces.d.ts +0 -268
  334. package/elements/data-table/pagination/data-table-pagination.component.d.ts +0 -62
  335. package/elements/data-table/pagination/index.d.ts +0 -1
  336. package/elements/data-table/rows/data-table-header-row.component.d.ts +0 -9
  337. package/elements/data-table/rows/data-table-row.component.d.ts +0 -10
  338. package/elements/data-table/rows/index.d.ts +0 -2
  339. package/elements/data-table/services/data-table-filter-utils.d.ts +0 -3
  340. package/elements/data-table/services/index.d.ts +0 -3
  341. package/elements/data-table/services/remote-data-table.service.d.ts +0 -11
  342. package/elements/data-table/services/static-data-table.service.d.ts +0 -15
  343. package/elements/data-table/sort-filter/index.d.ts +0 -3
  344. package/elements/data-table/sort-filter/sort-button.animations.d.ts +0 -5
  345. package/elements/data-table/sort-filter/sort-button.component.d.ts +0 -21
  346. package/elements/data-table/sort-filter/sort-direction.d.ts +0 -5
  347. package/elements/data-table/sort-filter/sort-filter.directive.d.ts +0 -11
  348. package/elements/data-table/state/data-table-state.service.d.ts +0 -52
  349. package/elements/data-table/state/index.d.ts +0 -1
  350. package/elements/date-picker/DatePicker.d.ts +0 -113
  351. package/elements/date-picker/DatePicker.module.d.ts +0 -19
  352. package/elements/date-picker/DatePickerInput.d.ts +0 -146
  353. package/elements/date-picker/DateRangeInput.d.ts +0 -77
  354. package/elements/date-picker/MultiDateInput.d.ts +0 -67
  355. package/elements/date-time-picker/DateTimePicker.d.ts +0 -51
  356. package/elements/date-time-picker/DateTimePicker.module.d.ts +0 -14
  357. package/elements/date-time-picker/DateTimePickerInput.d.ts +0 -50
  358. package/elements/divider/divider.component.d.ts +0 -16
  359. package/elements/divider/divider.module.d.ts +0 -7
  360. package/elements/drag-drop/drag-drop-box.d.ts +0 -65
  361. package/elements/drag-drop/drag-drop.module.d.ts +0 -7
  362. package/elements/dropdown/Dropdown.d.ts +0 -108
  363. package/elements/dropdown/Dropdown.module.d.ts +0 -8
  364. package/elements/expansion/accordion.d.ts +0 -24
  365. package/elements/expansion/expansion-animations.d.ts +0 -9
  366. package/elements/expansion/expansion-panel-content.d.ts +0 -12
  367. package/elements/expansion/expansion-panel-header.d.ts +0 -52
  368. package/elements/expansion/expansion-panel.d.ts +0 -57
  369. package/elements/expansion/expansion.module.d.ts +0 -13
  370. package/elements/field/error/error.d.ts +0 -10
  371. package/elements/field/error/index.d.ts +0 -1
  372. package/elements/field/field-control.d.ts +0 -54
  373. package/elements/field/field.d.ts +0 -59
  374. package/elements/field/field.module.d.ts +0 -20
  375. package/elements/field/fieldset.d.ts +0 -18
  376. package/elements/field/formats/base-format.d.ts +0 -13
  377. package/elements/field/formats/date-format.d.ts +0 -26
  378. package/elements/field/formats/date-range-format.d.ts +0 -36
  379. package/elements/field/formats/date-time-format.d.ts +0 -35
  380. package/elements/field/formats/time-format.d.ts +0 -38
  381. package/elements/field/hint/hint.d.ts +0 -11
  382. package/elements/field/hint/index.d.ts +0 -1
  383. package/elements/field/input.d.ts +0 -165
  384. package/elements/field/picker.directive.d.ts +0 -22
  385. package/elements/field/toggle/picker-toggle.component.d.ts +0 -48
  386. package/elements/flex/Box.d.ts +0 -11
  387. package/elements/flex/Flex.d.ts +0 -17
  388. package/elements/flex/Flex.module.d.ts +0 -10
  389. package/elements/flex/Grid.d.ts +0 -14
  390. package/elements/form/Control.d.ts +0 -116
  391. package/elements/form/ControlGroup.d.ts +0 -111
  392. package/elements/form/ControlTemplates.d.ts +0 -12
  393. package/elements/form/DynamicForm.d.ts +0 -54
  394. package/elements/form/FieldInteractionApi.d.ts +0 -177
  395. package/elements/form/FieldInteractionApiTypes.d.ts +0 -29
  396. package/elements/form/FieldInteractionModals.d.ts +0 -21
  397. package/elements/form/Form.d.ts +0 -24
  398. package/elements/form/Form.module.d.ts +0 -39
  399. package/elements/form/FormControls.d.ts +0 -24
  400. package/elements/form/FormInterfaces.d.ts +0 -29
  401. package/elements/form/FormValidators.d.ts +0 -22
  402. package/elements/form/NovoFormControl.d.ts +0 -112
  403. package/elements/form/NovoFormGroup.d.ts +0 -19
  404. package/elements/form/controls/BaseControl.d.ts +0 -119
  405. package/elements/form/controls/ControlFactory.d.ts +0 -4
  406. package/elements/form/controls/ace-editor/AceEditorControl.d.ts +0 -5
  407. package/elements/form/controls/ace-editor/index.d.ts +0 -1
  408. package/elements/form/controls/address/AddressControl.d.ts +0 -5
  409. package/elements/form/controls/address/index.d.ts +0 -1
  410. package/elements/form/controls/check-list/CheckListControl.d.ts +0 -5
  411. package/elements/form/controls/check-list/index.d.ts +0 -1
  412. package/elements/form/controls/checkbox/CheckboxControl.d.ts +0 -5
  413. package/elements/form/controls/checkbox/index.d.ts +0 -1
  414. package/elements/form/controls/code-editor/CodeEditorControl.d.ts +0 -5
  415. package/elements/form/controls/code-editor/index.d.ts +0 -1
  416. package/elements/form/controls/custom/CustomControl.d.ts +0 -5
  417. package/elements/form/controls/custom/index.d.ts +0 -1
  418. package/elements/form/controls/date/DateControl.d.ts +0 -5
  419. package/elements/form/controls/date/index.d.ts +0 -1
  420. package/elements/form/controls/date-time/DateTimeControl.d.ts +0 -5
  421. package/elements/form/controls/date-time/index.d.ts +0 -1
  422. package/elements/form/controls/editor/EditorControl.d.ts +0 -6
  423. package/elements/form/controls/editor/index.d.ts +0 -1
  424. package/elements/form/controls/file/FileControl.d.ts +0 -5
  425. package/elements/form/controls/file/index.d.ts +0 -1
  426. package/elements/form/controls/grouped/GroupedControl.d.ts +0 -6
  427. package/elements/form/controls/grouped/index.d.ts +0 -1
  428. package/elements/form/controls/index.d.ts +0 -24
  429. package/elements/form/controls/native-select/NativeSelectControl.d.ts +0 -6
  430. package/elements/form/controls/native-select/index.d.ts +0 -1
  431. package/elements/form/controls/picker/PickerControl.d.ts +0 -9
  432. package/elements/form/controls/picker/index.d.ts +0 -1
  433. package/elements/form/controls/quick-note/QuickNoteControl.d.ts +0 -6
  434. package/elements/form/controls/quick-note/index.d.ts +0 -1
  435. package/elements/form/controls/radio/RadioControl.d.ts +0 -6
  436. package/elements/form/controls/radio/index.d.ts +0 -1
  437. package/elements/form/controls/read-only/ReadOnlyControl.d.ts +0 -5
  438. package/elements/form/controls/read-only/index.d.ts +0 -1
  439. package/elements/form/controls/select/SelectControl.d.ts +0 -6
  440. package/elements/form/controls/select/index.d.ts +0 -1
  441. package/elements/form/controls/switch/SwitchControl.d.ts +0 -5
  442. package/elements/form/controls/switch/index.d.ts +0 -1
  443. package/elements/form/controls/text-area/TextAreaControl.d.ts +0 -5
  444. package/elements/form/controls/text-area/index.d.ts +0 -1
  445. package/elements/form/controls/textbox/TextBoxControl.d.ts +0 -9
  446. package/elements/form/controls/textbox/index.d.ts +0 -1
  447. package/elements/form/controls/tiles/TilesControl.d.ts +0 -6
  448. package/elements/form/controls/tiles/index.d.ts +0 -1
  449. package/elements/form/controls/time/TimeControl.d.ts +0 -5
  450. package/elements/form/controls/time/index.d.ts +0 -1
  451. package/elements/form/controls/timezone/TimezoneControl.d.ts +0 -7
  452. package/elements/form/controls/timezone/index.d.ts +0 -1
  453. package/elements/form/extras/FormExtras.module.d.ts +0 -21
  454. package/elements/form/extras/address/Address.d.ts +0 -70
  455. package/elements/form/extras/address/index.d.ts +0 -1
  456. package/elements/form/extras/file/FileInput.d.ts +0 -134
  457. package/elements/form/extras/file/extras/file/File.d.ts +0 -22
  458. package/elements/form/extras/file/extras/file/index.d.ts +0 -1
  459. package/elements/form/extras/file/extras/index.d.ts +0 -1
  460. package/elements/form/extras/file/index.d.ts +0 -2
  461. package/elements/form/extras/index.d.ts +0 -4
  462. package/elements/form/extras/number-range/index.d.ts +0 -1
  463. package/elements/form/extras/number-range/number-range.component.d.ts +0 -27
  464. package/elements/form/utils/FormUtils.d.ts +0 -79
  465. package/elements/form/utils/index.d.ts +0 -1
  466. package/elements/header/Header.d.ts +0 -38
  467. package/elements/header/Header.module.d.ts +0 -11
  468. package/elements/icon/Icon.d.ts +0 -27
  469. package/elements/icon/Icon.module.d.ts +0 -8
  470. package/elements/layout/container/layout-container.component.d.ts +0 -118
  471. package/elements/layout/content/layout-content.component.d.ts +0 -13
  472. package/elements/layout/layout.constants.d.ts +0 -19
  473. package/elements/layout/layout.module.d.ts +0 -11
  474. package/elements/layout/rail/rail.component.d.ts +0 -9
  475. package/elements/layout/sidenav/sidenav.animations.d.ts +0 -8
  476. package/elements/layout/sidenav/sidenav.component.d.ts +0 -147
  477. package/elements/list/List.d.ts +0 -47
  478. package/elements/list/List.module.d.ts +0 -10
  479. package/elements/loading/Loading.d.ts +0 -54
  480. package/elements/loading/Loading.module.d.ts +0 -8
  481. package/elements/menu/menu-content.component.d.ts +0 -45
  482. package/elements/menu/menu-item.directive.d.ts +0 -21
  483. package/elements/menu/menu.component.d.ts +0 -39
  484. package/elements/menu/menu.directive.d.ts +0 -29
  485. package/elements/menu/menu.module.d.ts +0 -17
  486. package/elements/menu/menu.service.d.ts +0 -60
  487. package/elements/menu/menu.tokens.d.ts +0 -3
  488. package/elements/menu/menu.types.d.ts +0 -8
  489. package/elements/modal/modal-container.component.d.ts +0 -20
  490. package/elements/modal/modal-ref.d.ts +0 -25
  491. package/elements/modal/modal.animation.d.ts +0 -1
  492. package/elements/modal/modal.component.d.ts +0 -21
  493. package/elements/modal/modal.module.d.ts +0 -12
  494. package/elements/modal/modal.service.d.ts +0 -19
  495. package/elements/multi-picker/MultiPicker.d.ts +0 -110
  496. package/elements/multi-picker/MultiPicker.module.d.ts +0 -11
  497. package/elements/non-ideal-state/NonIdealState.d.ts +0 -10
  498. package/elements/non-ideal-state/NonIdealState.module.d.ts +0 -10
  499. package/elements/picker/Picker.d.ts +0 -78
  500. package/elements/picker/Picker.module.d.ts +0 -22
  501. package/elements/picker/extras/base-picker-results/BasePickerResults.d.ts +0 -96
  502. package/elements/picker/extras/base-picker-results/index.d.ts +0 -1
  503. package/elements/picker/extras/checklist-picker-results/ChecklistPickerResults.d.ts +0 -24
  504. package/elements/picker/extras/checklist-picker-results/index.d.ts +0 -1
  505. package/elements/picker/extras/distributionlist-picker-results/DistributionListPickerResults.d.ts +0 -16
  506. package/elements/picker/extras/distributionlist-picker-results/index.d.ts +0 -1
  507. package/elements/picker/extras/entity-picker-results/EntityPickerResults.d.ts +0 -37
  508. package/elements/picker/extras/entity-picker-results/index.d.ts +0 -1
  509. package/elements/picker/extras/grouped-multi-picker-results/GroupedMultiPickerResults.d.ts +0 -45
  510. package/elements/picker/extras/grouped-multi-picker-results/index.d.ts +0 -1
  511. package/elements/picker/extras/index.d.ts +0 -9
  512. package/elements/picker/extras/mixed-multi-picker-results/MixedMultiPickerResults.d.ts +0 -50
  513. package/elements/picker/extras/mixed-multi-picker-results/index.d.ts +0 -1
  514. package/elements/picker/extras/picker-results/PickerResults.d.ts +0 -14
  515. package/elements/picker/extras/picker-results/index.d.ts +0 -1
  516. package/elements/picker/extras/skills-picker-results/SkillsSpecialtyPickerResults.d.ts +0 -24
  517. package/elements/picker/extras/skills-picker-results/index.d.ts +0 -1
  518. package/elements/picker/extras/workers-comp-codes-picker-results/WorkersCompCodesPickerResults.d.ts +0 -13
  519. package/elements/picker/extras/workers-comp-codes-picker-results/index.d.ts +0 -1
  520. package/elements/places/places.component.d.ts +0 -85
  521. package/elements/places/places.module.d.ts +0 -10
  522. package/elements/places/places.service.d.ts +0 -25
  523. package/elements/popover/PopOver.d.ts +0 -37
  524. package/elements/popover/PopOver.module.d.ts +0 -9
  525. package/elements/popover/PopOverContent.d.ts +0 -49
  526. package/elements/progress/Progress.d.ts +0 -24
  527. package/elements/progress/Progress.module.d.ts +0 -9
  528. package/elements/progress/ProgressBar.d.ts +0 -45
  529. package/elements/progress/ProgressConstants.d.ts +0 -10
  530. package/elements/query-builder/condition-builder/condition-builder.component.d.ts +0 -94
  531. package/elements/query-builder/condition-definitions/abstract-condition.definition.d.ts +0 -35
  532. package/elements/query-builder/condition-definitions/address-condition.definition.d.ts +0 -45
  533. package/elements/query-builder/condition-definitions/boolean-condition.definition.d.ts +0 -14
  534. package/elements/query-builder/condition-definitions/date-condition.definition.d.ts +0 -19
  535. package/elements/query-builder/condition-definitions/date-time-condition.definition.d.ts +0 -19
  536. package/elements/query-builder/condition-definitions/id-condition.definition.d.ts +0 -11
  537. package/elements/query-builder/condition-definitions/number-condition.definition.d.ts +0 -14
  538. package/elements/query-builder/condition-definitions/picker-condition.definition.d.ts +0 -23
  539. package/elements/query-builder/condition-definitions/string-condition.definition.d.ts +0 -21
  540. package/elements/query-builder/condition-group/condition-group.component.d.ts +0 -37
  541. package/elements/query-builder/condition-templates/condition-templates.component.d.ts +0 -8
  542. package/elements/query-builder/criteria-builder/criteria-builder.component.d.ts +0 -54
  543. package/elements/query-builder/query-builder.directives.d.ts +0 -66
  544. package/elements/query-builder/query-builder.module.d.ts +0 -46
  545. package/elements/query-builder/query-builder.service.d.ts +0 -54
  546. package/elements/query-builder/query-builder.tokens.d.ts +0 -4
  547. package/elements/query-builder/query-builder.types.d.ts +0 -128
  548. package/elements/quick-note/QuickNote.d.ts +0 -142
  549. package/elements/quick-note/QuickNote.module.d.ts +0 -13
  550. package/elements/quick-note/extras/index.d.ts +0 -1
  551. package/elements/quick-note/extras/quick-note-results/QuickNoteResults.d.ts +0 -33
  552. package/elements/quick-note/extras/quick-note-results/index.d.ts +0 -1
  553. package/elements/radio/Radio.d.ts +0 -40
  554. package/elements/radio/Radio.module.d.ts +0 -10
  555. package/elements/radio/RadioGroup.d.ts +0 -91
  556. package/elements/radio/tokens.d.ts +0 -9
  557. package/elements/search/SearchBox.d.ts +0 -71
  558. package/elements/search/SearchBox.module.d.ts +0 -12
  559. package/elements/select/Select.d.ts +0 -216
  560. package/elements/select/Select.extupdatefix.directive.d.ts +0 -17
  561. package/elements/select/Select.module.d.ts +0 -17
  562. package/elements/select-search/select-search-clear.directive.d.ts +0 -12
  563. package/elements/select-search/select-search.component.d.ts +0 -239
  564. package/elements/select-search/select-search.module.d.ts +0 -17
  565. package/elements/simple-table/PaginationOld.d.ts +0 -42
  566. package/elements/simple-table/activity-table-renderers.d.ts +0 -4
  567. package/elements/simple-table/cell-header.d.ts +0 -67
  568. package/elements/simple-table/cell.d.ts +0 -100
  569. package/elements/simple-table/interfaces.d.ts +0 -81
  570. package/elements/simple-table/pagination.d.ts +0 -40
  571. package/elements/simple-table/row.d.ts +0 -29
  572. package/elements/simple-table/simple-table.module.d.ts +0 -26
  573. package/elements/simple-table/sort.d.ts +0 -25
  574. package/elements/simple-table/state.d.ts +0 -25
  575. package/elements/simple-table/table-source.d.ts +0 -62
  576. package/elements/simple-table/table.d.ts +0 -72
  577. package/elements/slider/Slider.d.ts +0 -21
  578. package/elements/slider/Slider.module.d.ts +0 -9
  579. package/elements/stepper/step-header.component.d.ts +0 -48
  580. package/elements/stepper/step-label.component.d.ts +0 -8
  581. package/elements/stepper/step-status.component.d.ts +0 -7
  582. package/elements/stepper/stepper-buttons.component.d.ts +0 -12
  583. package/elements/stepper/stepper.animations.d.ts +0 -6
  584. package/elements/stepper/stepper.component.d.ts +0 -44
  585. package/elements/stepper/stepper.module.d.ts +0 -17
  586. package/elements/switch/Switch.d.ts +0 -23
  587. package/elements/switch/Switch.module.d.ts +0 -10
  588. package/elements/tabbed-group-picker/TabbedGroupPicker.d.ts +0 -128
  589. package/elements/tabbed-group-picker/TabbedGroupPicker.module.d.ts +0 -17
  590. package/elements/tabs/Tabs.d.ts +0 -95
  591. package/elements/tabs/Tabs.module.d.ts +0 -8
  592. package/elements/tiles/Tiles.d.ts +0 -33
  593. package/elements/tiles/Tiles.module.d.ts +0 -10
  594. package/elements/time-picker/TimePicker.d.ts +0 -58
  595. package/elements/time-picker/TimePicker.module.d.ts +0 -14
  596. package/elements/time-picker/TimePickerInput.d.ts +0 -71
  597. package/elements/tip-well/TipWell.d.ts +0 -26
  598. package/elements/tip-well/TipWell.module.d.ts +0 -9
  599. package/elements/toast/Toast.d.ts +0 -37
  600. package/elements/toast/Toast.module.d.ts +0 -9
  601. package/elements/toast/ToastService.d.ts +0 -45
  602. package/elements/toolbar/toolbar.component.d.ts +0 -22
  603. package/elements/toolbar/toolbar.module.d.ts +0 -8
  604. package/elements/tooltip/Tooltip.component.d.ts +0 -16
  605. package/elements/tooltip/Tooltip.directive.d.ts +0 -44
  606. package/elements/tooltip/Tooltip.module.d.ts +0 -9
  607. package/elements/unless/Unless.d.ts +0 -16
  608. package/elements/unless/Unless.module.d.ts +0 -8
  609. package/elements/value/EntityList.d.ts +0 -16
  610. package/elements/value/Render.d.ts +0 -70
  611. package/elements/value/Value.d.ts +0 -46
  612. package/elements/value/Value.module.d.ts +0 -12
  613. package/novo-elements.module.d.ts +0 -11
  614. package/novo-elements.providers.d.ts +0 -12
  615. package/pipes/Pipes.module.d.ts +0 -15
  616. package/pipes/decode-uri/DecodeURI.d.ts +0 -8
  617. package/pipes/decode-uri/index.d.ts +0 -1
  618. package/pipes/default/Default.d.ts +0 -8
  619. package/pipes/default/index.d.ts +0 -1
  620. package/pipes/group-by/GroupBy.d.ts +0 -7
  621. package/pipes/group-by/index.d.ts +0 -1
  622. package/pipes/highlight/Highlight.d.ts +0 -9
  623. package/pipes/highlight/index.d.ts +0 -1
  624. package/pipes/iso8601/index.d.ts +0 -4
  625. package/pipes/iso8601/iso-date-range.pipe.d.ts +0 -10
  626. package/pipes/iso8601/iso-date.pipe.d.ts +0 -8
  627. package/pipes/iso8601/iso-time-range.pipe.d.ts +0 -10
  628. package/pipes/iso8601/iso-time.pipe.d.ts +0 -8
  629. package/pipes/plural/Plural.d.ts +0 -8
  630. package/pipes/plural/index.d.ts +0 -1
  631. package/services/component-utils/ComponentUtils.d.ts +0 -7
  632. package/services/component-utils/index.d.ts +0 -1
  633. package/services/data-provider/ArrayCollection.d.ts +0 -168
  634. package/services/data-provider/Collection.d.ts +0 -78
  635. package/services/data-provider/CollectionEvent.d.ts +0 -17
  636. package/services/data-provider/PagedArrayCollection.d.ts +0 -18
  637. package/services/data-provider/PagedCollection.d.ts +0 -15
  638. package/services/data-provider/index.d.ts +0 -5
  639. package/services/date-format/DateFormat.d.ts +0 -28
  640. package/services/date-format/index.d.ts +0 -1
  641. package/services/global/global.service.d.ts +0 -17
  642. package/services/global/index.d.ts +0 -1
  643. package/services/novo-label-service.d.ts +0 -202
  644. package/services/options/OptionsService.d.ts +0 -12
  645. package/services/options/index.d.ts +0 -1
  646. package/services/security/Security.d.ts +0 -23
  647. package/services/security/index.d.ts +0 -1
  648. package/services/storage/index.d.ts +0 -1
  649. package/services/storage/storage.service.d.ts +0 -8
  650. package/services/template/NovoTemplateService.d.ts +0 -10
  651. package/services/template/index.d.ts +0 -1
  652. package/utils/Helpers.d.ts +0 -188
  653. package/utils/app-bridge/AppBridge.d.ts +0 -178
  654. package/utils/app-bridge/index.d.ts +0 -2
  655. package/utils/app-bridge/interfaces.d.ts +0 -58
  656. package/utils/base-renderer/BaseRenderer.d.ts +0 -9
  657. package/utils/base-renderer/index.d.ts +0 -1
  658. package/utils/calendar-utils/CalendarUtils.d.ts +0 -151
  659. package/utils/calendar-utils/index.d.ts +0 -1
  660. package/utils/color-utils/ColorUtils.d.ts +0 -40
  661. package/utils/color-utils/index.d.ts +0 -1
  662. package/utils/countries/Countries.d.ts +0 -47
  663. package/utils/countries/index.d.ts +0 -1
  664. package/utils/date/Date.d.ts +0 -50
  665. package/utils/date/Date.types.d.ts +0 -71
  666. package/utils/date/convert-tokens.d.ts +0 -5
  667. package/utils/date/index.d.ts +0 -5
  668. package/utils/date/legacy-parse.d.ts +0 -15
  669. package/utils/date/timezone-support.d.ts +0 -5
  670. package/utils/decorators/BooleanInput.d.ts +0 -1
  671. package/utils/decorators/index.d.ts +0 -1
  672. package/utils/deferred/Deferred.d.ts +0 -8
  673. package/utils/deferred/index.d.ts +0 -1
  674. package/utils/key-codes/Key.d.ts +0 -669
  675. package/utils/key-codes/KeyCodes.d.ts +0 -93
  676. package/utils/key-codes/index.d.ts +0 -2
  677. package/utils/notifier/index.d.ts +0 -1
  678. package/utils/notifier/notifier.util.d.ts +0 -1
  679. package/utils/outside-click/OutsideClick.d.ts +0 -27
  680. package/utils/outside-click/index.d.ts +0 -1
@@ -112,8 +112,8 @@ class QuickNoteResults extends PickerResults {
112
112
  }
113
113
  return false;
114
114
  }
115
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: QuickNoteResults, deps: [{ token: i0.ElementRef }, { token: i1.NovoLabelService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
116
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: QuickNoteResults, isStandalone: false, selector: "quick-note-results", host: { classAttribute: "active" }, usesInheritance: true, ngImport: i0, template: `
115
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: QuickNoteResults, deps: [{ token: i0.ElementRef }, { token: i1.NovoLabelService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
116
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.17", type: QuickNoteResults, isStandalone: false, selector: "quick-note-results", host: { classAttribute: "active" }, usesInheritance: true, ngImport: i0, template: `
117
117
  <novo-loading theme="line" *ngIf="isLoading && !matches.length"></novo-loading>
118
118
  <novo-list *ngIf="matches.length > 0">
119
119
  <novo-list-item
@@ -131,7 +131,7 @@ class QuickNoteResults extends PickerResults {
131
131
  <p class="picker-null" *ngIf="!isLoading && !matches.length && !hasError">{{ labels.quickNoteEmpty }}</p>
132
132
  `, isInline: true, styles: [":host{position:absolute;z-index:z(overlay);box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;top:0;left:0;right:0;max-width:100%;min-width:100%;align-items:center;display:flex;justify-content:center;padding:0!important;border:none!important}:host novo-list{box-shadow:none}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.NovoLoadingElement, selector: "novo-loading", inputs: ["theme", "color", "size"] }, { kind: "component", type: i4.NovoListElement, selector: "novo-list", inputs: ["theme", "direction"] }, { kind: "component", type: i4.NovoListItemElement, selector: "novo-list-item, a[list-item], button[list-item]" }, { kind: "component", type: i4.NovoItemContentElement, selector: "item-content, novo-item-content", inputs: ["direction"] }, { kind: "pipe", type: i5.HighlightPipe, name: "highlight" }] }); }
133
133
  }
134
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: QuickNoteResults, decorators: [{
134
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: QuickNoteResults, decorators: [{
135
135
  type: Component,
136
136
  args: [{ selector: 'quick-note-results', host: {
137
137
  class: 'active',
@@ -686,10 +686,10 @@ class QuickNoteElement extends OutsideClick {
686
686
  }
687
687
  return this._placeholderElement;
688
688
  }
689
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: QuickNoteElement, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: i1.ComponentUtils }], target: i0.ɵɵFactoryTarget.Component }); }
690
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: QuickNoteElement, isStandalone: false, selector: "novo-quick-note", inputs: { config: "config", startupFocus: "startupFocus", placeholder: "placeholder" }, outputs: { focus: "focus", blur: "blur", change: "change" }, providers: [QUICK_NOTE_VALUE_ACCESSOR], viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true, static: true }, { propertyName: "host", first: true, predicate: ["host"], descendants: true, static: true }, { propertyName: "results", first: true, predicate: ["results"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: ' <div class="quick-note-wrapper" #wrapper><textarea #host></textarea> <span #results></span></div> ', isInline: true, styles: [":host,.quick-note-wrapper{width:100%;height:200px;position:relative}:host ::ng-deep .cke_top,.quick-note-wrapper ::ng-deep .cke_top{padding:4px 3px 0}:host ::ng-deep .cke_top .cke_toolbar .cke_combo_text,.quick-note-wrapper ::ng-deep .cke_top .cke_toolbar .cke_combo_text{padding-left:7px}:host ::ng-deep .cke_top .cke_toolbar .cke_combo_open,.quick-note-wrapper ::ng-deep .cke_top .cke_toolbar .cke_combo_open{margin-left:4px}:host ::ng-deep .cke_top .cke_toolbar .cke_combo__fontsize .cke_combo_text,.quick-note-wrapper ::ng-deep .cke_top .cke_toolbar .cke_combo__fontsize .cke_combo_text{width:27px}\n"] }); }
689
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: QuickNoteElement, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: i1.ComponentUtils }], target: i0.ɵɵFactoryTarget.Component }); }
690
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.17", type: QuickNoteElement, isStandalone: false, selector: "novo-quick-note", inputs: { config: "config", startupFocus: "startupFocus", placeholder: "placeholder" }, outputs: { focus: "focus", blur: "blur", change: "change" }, providers: [QUICK_NOTE_VALUE_ACCESSOR], viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true, static: true }, { propertyName: "host", first: true, predicate: ["host"], descendants: true, static: true }, { propertyName: "results", first: true, predicate: ["results"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: ' <div class="quick-note-wrapper" #wrapper><textarea #host></textarea> <span #results></span></div> ', isInline: true, styles: [":host,.quick-note-wrapper{width:100%;height:200px;position:relative}:host ::ng-deep .cke_top,.quick-note-wrapper ::ng-deep .cke_top{padding:4px 3px 0}:host ::ng-deep .cke_top .cke_toolbar .cke_combo_text,.quick-note-wrapper ::ng-deep .cke_top .cke_toolbar .cke_combo_text{padding-left:7px}:host ::ng-deep .cke_top .cke_toolbar .cke_combo_open,.quick-note-wrapper ::ng-deep .cke_top .cke_toolbar .cke_combo_open{margin-left:4px}:host ::ng-deep .cke_top .cke_toolbar .cke_combo__fontsize .cke_combo_text,.quick-note-wrapper ::ng-deep .cke_top .cke_toolbar .cke_combo__fontsize .cke_combo_text{width:27px}\n"] }); }
691
691
  }
692
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: QuickNoteElement, decorators: [{
692
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: QuickNoteElement, decorators: [{
693
693
  type: Component,
694
694
  args: [{ selector: 'novo-quick-note', providers: [QUICK_NOTE_VALUE_ACCESSOR], template: ' <div class="quick-note-wrapper" #wrapper><textarea #host></textarea> <span #results></span></div> ', standalone: false, styles: [":host,.quick-note-wrapper{width:100%;height:200px;position:relative}:host ::ng-deep .cke_top,.quick-note-wrapper ::ng-deep .cke_top{padding:4px 3px 0}:host ::ng-deep .cke_top .cke_toolbar .cke_combo_text,.quick-note-wrapper ::ng-deep .cke_top .cke_toolbar .cke_combo_text{padding-left:7px}:host ::ng-deep .cke_top .cke_toolbar .cke_combo_open,.quick-note-wrapper ::ng-deep .cke_top .cke_toolbar .cke_combo_open{margin-left:4px}:host ::ng-deep .cke_top .cke_toolbar .cke_combo__fontsize .cke_combo_text,.quick-note-wrapper ::ng-deep .cke_top .cke_toolbar .cke_combo__fontsize .cke_combo_text{width:27px}\n"] }]
695
695
  }], ctorParameters: () => [{ type: i0.NgZone }, { type: i0.ElementRef }, { type: i1.ComponentUtils }], propDecorators: { wrapper: [{
@@ -717,11 +717,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
717
717
 
718
718
  // NG2
719
719
  class NovoQuickNoteModule {
720
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoQuickNoteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
721
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: NovoQuickNoteModule, declarations: [QuickNoteElement, QuickNoteResults], imports: [CommonModule, FormsModule, NovoLoadingModule, NovoListModule, NovoPipesModule], exports: [QuickNoteElement, QuickNoteResults] }); }
722
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoQuickNoteModule, imports: [CommonModule, FormsModule, NovoLoadingModule, NovoListModule, NovoPipesModule] }); }
720
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoQuickNoteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
721
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.17", ngImport: i0, type: NovoQuickNoteModule, declarations: [QuickNoteElement, QuickNoteResults], imports: [CommonModule, FormsModule, NovoLoadingModule, NovoListModule, NovoPipesModule], exports: [QuickNoteElement, QuickNoteResults] }); }
722
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoQuickNoteModule, imports: [CommonModule, FormsModule, NovoLoadingModule, NovoListModule, NovoPipesModule] }); }
723
723
  }
724
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoQuickNoteModule, decorators: [{
724
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoQuickNoteModule, decorators: [{
725
725
  type: NgModule,
726
726
  args: [{
727
727
  imports: [CommonModule, FormsModule, NovoLoadingModule, NovoListModule, NovoPipesModule],
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-elements-quick-note.mjs","sources":["../../../projects/novo-elements/src/elements/quick-note/extras/quick-note-results/QuickNoteResults.ts","../../../projects/novo-elements/src/elements/quick-note/QuickNote.ts","../../../projects/novo-elements/src/elements/quick-note/QuickNote.module.ts","../../../projects/novo-elements/src/elements/quick-note/novo-elements-elements-quick-note.ts"],"sourcesContent":["// NG2\nimport { ChangeDetectorRef, Component, ElementRef } from '@angular/core';\n// Vendor\nimport { from, Observable } from 'rxjs';\n// APP\nimport { NovoLabelService } from 'novo-elements/services';\nimport { Helpers } from 'novo-elements/utils';\nimport { PickerResults } from 'novo-elements/elements/picker';\n\n@Component({\n selector: 'quick-note-results',\n host: {\n class: 'active',\n },\n template: `\n <novo-loading theme=\"line\" *ngIf=\"isLoading && !matches.length\"></novo-loading>\n <novo-list *ngIf=\"matches.length > 0\">\n <novo-list-item\n *ngFor=\"let match of matches\"\n (click)=\"selectMatch($event)\"\n [class.active]=\"match === activeMatch\"\n (mouseenter)=\"selectActive(match)\"\n >\n <item-content>\n <p [innerHtml]=\"match.label | highlight:term\"></p>\n </item-content>\n </novo-list-item>\n </novo-list>\n <p class=\"picker-error\" *ngIf=\"hasError\">{{ labels.quickNoteError }}</p>\n <p class=\"picker-null\" *ngIf=\"!isLoading && !matches.length && !hasError\">{{ labels.quickNoteEmpty }}</p>\n `,\n styleUrls: ['./QuickNoteResults.scss'],\n standalone: false,\n})\nexport class QuickNoteResults extends PickerResults {\n // Mode that the quick note is in for tagging\n taggingMode: string = '';\n\n constructor(element: ElementRef, public labels: NovoLabelService, ref: ChangeDetectorRef) {\n super(element, labels, ref);\n }\n\n get term() {\n return this._term;\n }\n\n set term(value: any) {\n this._term = value.searchTerm;\n this.taggingMode = value.taggingMode;\n this.hasError = false;\n this.isLoading = true;\n this.search(value, this.taggingMode).subscribe(\n (results) => {\n this.matches = this.isStatic ? this.filterData(results) : results;\n this.isLoading = false;\n },\n () => {\n this.hasError = true;\n this.isLoading = false;\n },\n );\n }\n\n search(term: string, taggingMode): Observable<any> {\n const searchCall = this.config.options[taggingMode];\n return from(\n new Promise((resolve, reject) => {\n // Check if there is match data\n if (searchCall) {\n // Resolve the data\n if (Array.isArray(searchCall)) {\n this.isStatic = true;\n // Arrays are returned immediately\n resolve(this.structureArray(searchCall));\n } else if (\n (searchCall.hasOwnProperty('reject') && searchCall.hasOwnProperty('resolve')) ||\n Object.getPrototypeOf(searchCall).hasOwnProperty('then')\n ) {\n this.isStatic = false;\n // Promises (ES6 or Deferred) are resolved whenever they resolve\n searchCall.then(this.structureArray.bind(this)).then(resolve, reject);\n } else if (typeof searchCall === 'function') {\n this.isStatic = false;\n // Promises (ES6 or Deferred) are resolved whenever they resolve\n searchCall(term).then(this.structureArray.bind(this)).then(resolve, reject);\n } else {\n // All other kinds of data are rejected\n reject('The data provided is not an array or a promise');\n throw new Error('The data provided is not an array or a promise');\n }\n } else {\n // No data gets rejected\n reject('error');\n }\n }),\n );\n }\n\n /**\n * @name structureArray\n * @param collection - the data once getData resolves it\n *\n * @description This function structures an array of nodes into an array of objects with a\n * 'name' field by default.\n */\n structureArray(collection: Array<any>) {\n if (collection && (typeof collection[0] === 'string' || typeof collection[0] === 'number')) {\n return collection.map((item) => {\n return {\n value: item,\n label: item,\n };\n });\n }\n return collection.map((data) => {\n const value = this.config.field ? data[this.config.field[this.taggingMode]] : data.value || data;\n const label = this.config.format ? Helpers.interpolate(this.config.format[this.taggingMode], data) : data.label || String(value);\n return { value, label, data };\n });\n }\n\n /**\n * @name selectMatch\n * @param event\n *\n * @description\n */\n selectMatch(event: KeyboardEvent) {\n if (event) {\n event.stopPropagation();\n event.preventDefault();\n }\n\n const selected = this.activeMatch;\n if (selected) {\n this.parent.onSelected(this.taggingMode, selected);\n this.parent.hideResults();\n }\n return false;\n }\n}\n","// NG2\nimport {\n AfterViewInit,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ComponentUtils } from 'novo-elements/services';\nimport { Key, OutsideClick } from 'novo-elements/utils';\n// APP\nimport { QuickNoteResults } from './extras/quick-note-results/QuickNoteResults';\n\n// Value accessor for the component (supports ngModel)\nconst QUICK_NOTE_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => QuickNoteElement),\n multi: true,\n};\n\ndeclare const CKEDITOR: any;\n\n@Component({\n selector: 'novo-quick-note',\n providers: [QUICK_NOTE_VALUE_ACCESSOR],\n template: ' <div class=\"quick-note-wrapper\" #wrapper><textarea #host></textarea> <span #results></span></div> ',\n styleUrls: ['./QuickNote.scss'],\n standalone: false,\n})\nexport class QuickNoteElement extends OutsideClick implements OnInit, OnDestroy, AfterViewInit {\n @ViewChild('wrapper', { static: true })\n public wrapper: ElementRef;\n @ViewChild('host', { static: true })\n public host: ElementRef;\n @ViewChild('results', { read: ViewContainerRef, static: true })\n results: ViewContainerRef;\n\n @Input()\n config: any;\n @Input()\n startupFocus: boolean = false;\n @Input()\n placeholder: string;\n\n // Emitter for selects\n @Output()\n focus: EventEmitter<any> = new EventEmitter();\n @Output()\n blur: EventEmitter<any> = new EventEmitter();\n @Output()\n change: EventEmitter<any> = new EventEmitter();\n\n // The characters that the user enters in order to search for a person/thing to tag\n private resultsComponent: any;\n private quickNoteResults: any;\n private isTagging: boolean;\n private taggingMode: string;\n private model: any;\n private ckeInstance: any;\n private debounceTimeout: any;\n private placeholderVisible: boolean = false;\n private _placeholderElement: any = null;\n\n private static TOOLBAR_HEIGHT = 40; // in pixels - configured by stylesheet\n\n private onModelChange: Function = () => {};\n private onModelTouched: Function = () => {};\n\n constructor(private zone: NgZone, element: ElementRef, private componentUtils: ComponentUtils) {\n super(element);\n // Bind to the active change event from the OutsideClick\n this.onActiveChange.subscribe((active) => {\n if (!active) {\n setTimeout(() => {\n this.hideResults();\n });\n }\n });\n }\n\n public ngOnInit(): void {\n // Make sure we have a proper config\n if (!this.config) {\n throw new Error('No config set for QuickNote!');\n }\n // Make sure that we have triggers\n if (!this.config.triggers) {\n throw new Error('QuickNote config must supply triggers!');\n }\n // Make sure that we have options\n if (!this.config.options) {\n throw new Error('QuickNote config must supply options!');\n }\n // Allow for callers to use a custom results template class in the config\n this.resultsComponent = this.config.resultsTemplate || QuickNoteResults;\n }\n\n public ngOnDestroy(): void {\n // Tear down the CKEditor instance\n if (this.ckeInstance) {\n this.ckeInstance.focusManager.blur(true); // Remove focus from editor\n setTimeout(() => {\n this.ckeInstance.removeAllListeners();\n CKEDITOR.instances[this.ckeInstance.name].destroy();\n this.ckeInstance.destroy();\n this.ckeInstance = null;\n });\n }\n }\n\n /**\n * Connect to key/mouse events from CKEditor after the editor has been initialized\n */\n public ngAfterViewInit(): void {\n if (!CKEDITOR) {\n console.error('Make sure to include CKEditor sources in your dependencies!');\n return;\n }\n\n // Replace the textarea with an instance of CKEditor\n this.ckeInstance = CKEDITOR.replace(this.host.nativeElement, this.getCKEditorConfig());\n\n // Set initial value of the note in the editor\n this.writeValue(this.model);\n\n // Connect to the key event in CKEditor for showing results dropdown\n this.ckeInstance.on('key', (event: any) => {\n if (!this.onKey(event.data.domEvent.$)) {\n event.cancel();\n }\n });\n\n // Connect to the change event in CKEditor for debouncing user modifications\n this.ckeInstance.on('change', () => {\n // Debounce update\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n this.debounceTimeout = setTimeout(() => {\n // Run within the context of this angular element since we don't need to cancel event\n this.zone.run(() => {\n this.onValueChange();\n });\n this.debounceTimeout = null;\n }, 250);\n });\n\n // Propagate blur events from CKEditor to the Element's listeners\n this.ckeInstance.on('blur', (event: any) => {\n this.showPlaceholder();\n this.blur.emit(event);\n });\n\n // Propagate blur events from CKEditor to the Element's listeners\n this.ckeInstance.on('focus', (event: any) => {\n this.hidePlaceholder();\n this.focus.emit(event);\n });\n\n // Show placeholder if the note is empty, after the editor is instantiated\n this.ckeInstance.on('instanceReady', (event: any) => {\n this.showPlaceholder();\n // Set editor to readOnly\n if (this.config.readOnly) {\n this.ckeInstance.setReadOnly(this.config.readOnly);\n }\n });\n }\n\n // Set touched on blur\n public onTouched(event?: any) {\n this.onModelTouched();\n }\n\n /**\n * Handles setting the model and the view from the outside caller or the user's typing\n *\n * @param model A model that has a note (html content) and references (array of objects)\n */\n public writeValue(model: any): void {\n // Set value of the model\n if (model && (model.references || model.note)) {\n this.model = {\n note: model.note || '',\n references: model.references || {},\n };\n } else {\n this.model = {\n note: model,\n references: {},\n };\n }\n\n // Set the note html value in the editor\n if (this.ckeInstance) {\n this.ckeInstance.setData(this.model.note);\n }\n }\n\n public registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n public registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n /**\n * If a renderer is not provided, the QuickNote will default to using this one, an anchor tag with no href\n */\n private static defaultRenderer(symbol: string, item: any): string {\n return `<a>${symbol}${item.label}</a>`;\n }\n\n /**\n * Returns the renderer for a given tagging mode if it exists in the config, otherwise the default.\n */\n private getRenderer(taggingMode: string): any {\n return this.config.renderer ? this.config.renderer[taggingMode] : QuickNoteElement.defaultRenderer;\n }\n\n /**\n * Called every time a keystroke is made in the editor. Listens for particular keys (e.g. UP arrow, ESC, etc.)\n * to handle certain behaviors of the picker.\n *\n * Runs within the context of the CKEditor, so actions that affect the view have to be run back inside of the\n * Angular zone of this class.\n *\n * @param event The key press event\n * @return true to allow the event to occur, false to cancel the event\n */\n private onKey(event: KeyboardEvent): boolean {\n if (event.key) {\n if (this.quickNoteResults) {\n // Hide results on escape key\n if (event.key === Key.Escape) {\n this.zone.run(() => {\n this.hideResults();\n });\n return false;\n }\n\n // Navigation inside the results\n if (event.key === Key.ArrowUp) {\n this.zone.run(() => {\n this.quickNoteResults.instance.prevActiveMatch();\n });\n return false;\n }\n\n if (event.key === Key.ArrowDown) {\n this.zone.run(() => {\n this.quickNoteResults.instance.nextActiveMatch();\n });\n return false;\n }\n\n if (event.key === Key.Enter) {\n this.zone.run(() => {\n this.quickNoteResults.instance.selectActiveMatch();\n });\n return false;\n }\n } else {\n // Loop through all triggers and turn on tagging mode if the user just pressed a trigger character\n const triggers = this.config.triggers || {};\n Object.keys(triggers).forEach((key) => {\n const trigger = triggers[key] || {};\n if (event.key === trigger) {\n this.isTagging = true;\n this.taggingMode = key;\n }\n });\n }\n }\n return true;\n }\n\n /**\n * Debounced method that is run in the proper Angular context when the user has modified the CKEditor.\n * After the value has been updated in CKEditor, this will propagate that change to the model and listeners.\n */\n private onValueChange(): void {\n // Get the html text in CKEditor\n let value = this.ckeInstance.getData();\n\n // Remove empty 'ZERO WIDTH SPACE' characters that can get added erroneously by the editor\n const regex = new RegExp(String.fromCharCode(8203), 'g');\n value = value.replace(regex, '');\n\n // Make sure that any references in the model are still valid\n this.validateReferences();\n\n // Possibly show results if the user has entered a search term\n this.showResults();\n\n // Propagate change to ngModel for form validation, and send null if the note is empty\n let newModel = null;\n if (value) {\n newModel = {\n note: value,\n references: this.model.references,\n };\n }\n\n // Inform listeners to the ngModel change event that something has changed\n this.onModelChange(newModel);\n\n // Inform listeners of the `@Output() change` event that the model has been updated\n this.change.emit(newModel);\n\n // Inform listeners to the ngModel touched event that something has changed\n this.onTouched();\n }\n\n /**\n * Creates an instance of the results (called popup) and adds all the bindings to that instance.\n */\n private showResults(): void {\n if (this.isTagging) {\n const searchTerm = this.getSearchTerm();\n if (searchTerm.length) {\n // Update Matches\n if (this.quickNoteResults) {\n // Update existing list\n this.quickNoteResults.instance.term = {\n searchTerm,\n taggingMode: this.taggingMode,\n };\n } else {\n // Create the results DOM element\n this.quickNoteResults = this.componentUtils.append(this.resultsComponent, this.results);\n this.quickNoteResults.instance.parent = this;\n this.quickNoteResults.instance.config = this.config;\n this.quickNoteResults.instance.term = {\n searchTerm,\n taggingMode: this.taggingMode,\n };\n this.positionResultsDropdown();\n }\n } else if (this.quickNoteResults) {\n this.quickNoteResults.destroy();\n this.quickNoteResults = null;\n }\n\n // Tell the OutsideClick base class to start listening for an outside clicks\n this.toggleActive(null, true);\n }\n }\n\n /**\n * Deletes the picker results from the DOM.\n */\n private hideResults(): void {\n this.isTagging = false;\n if (this.quickNoteResults) {\n this.quickNoteResults.destroy();\n this.quickNoteResults = null;\n }\n }\n\n /**\n * Handles the selection from the QuickNoteResults Component. Called by the QuickNoteResults component on it's\n * parent (this element).\n *\n * @param taggingMode - type of tags we are looking for\n * @param selected - selected object from the picker that has a label and value\n */\n private onSelected(taggingMode: string, selected: any): void {\n // Turn off tagging\n this.isTagging = false;\n\n // Replace searchTerm with link\n const symbol = this.config.triggers[taggingMode];\n const renderer = this.getRenderer(taggingMode);\n const renderedText = renderer(symbol, selected);\n\n this.replaceWordAtCursor(renderedText);\n\n // Add the new reference, if it doesn't already exist\n this.model.references = this.model.references || {};\n this.model.references[taggingMode] = this.model.references[taggingMode] || [];\n const matchingItems = this.model.references[taggingMode].filter((item) => JSON.stringify(item) === JSON.stringify(selected));\n if (matchingItems.length === 0) {\n this.model.references[taggingMode].push(selected);\n }\n\n // Update the quick note with the changes due to the user's selection of an item in the dropdown\n this.onValueChange();\n }\n\n /**\n * Convenience method that gets the current word that the cursor is on, minus the tag.\n * Also, trims any whitespace before/after the term to aid in searching.\n */\n private getSearchTerm(): string {\n let word = this.getWordAtCursor().trim();\n if (this.isTagging) {\n const symbol = this.config.triggers[this.taggingMode];\n if (!word.includes(symbol)) {\n this.hideResults();\n return '';\n }\n word = word.slice(word.indexOf(symbol) + symbol.length);\n }\n return word;\n }\n\n /**\n * Gets the current word that the cursor is on CKEditor. Current word starts at the beginning of the line or a\n * tag character if we are in tagging mode. Current word ends at the end of the line or an empty space.\n *\n * @returns plain text string (removes all html formatting)\n */\n private getWordAtCursor(): string {\n const range = this.ckeInstance.getSelection().getRanges()[0];\n const start = range.startContainer;\n\n if (start.type === CKEDITOR.NODE_TEXT && range.startOffset) {\n const text = start.getText();\n const symbol = this.config.triggers[this.taggingMode];\n let wordStart = text.lastIndexOf(symbol, range.startOffset - 1);\n\n if (wordStart > 0) {\n const beforeSymbol: string = text.charAt(wordStart - 1);\n // We don't want to trigger the lookup call unless the symbol was preceded by whitespace\n if (beforeSymbol !== '\\u200B' && /\\S/.test(beforeSymbol)) {\n return '';\n }\n } else if (start.hasPrevious() && /\\S$/.test(start.getPrevious().getText())) {\n // When wordStart is <= 0, we need to check the previous node's text to see if it ended with whitespace or not\n return '';\n }\n\n let wordEnd = text.indexOf(' ', range.startOffset + 1);\n if (wordStart === -1) {\n wordStart = 0;\n }\n if (wordEnd === -1) {\n wordEnd = text.length;\n }\n\n return text.substring(wordStart, wordEnd);\n }\n\n // Selection starts at the 0 index of the text node or there's no previous text node in contents\n return '';\n }\n\n /**\n * Replaces the word that the user is on with the given html.\n *\n * CKEditor gives us access to the current line of html in the editor, so we replace the content of\n * the line, replacing only the current word.\n */\n private replaceWordAtCursor(newWord: string): void {\n const originalWord = this.getWordAtCursor().trim();\n const range = this.ckeInstance.getSelection().getRanges()[0];\n const start = range.startContainer;\n const parentNode = start.getParent();\n\n if (start.type === CKEDITOR.NODE_TEXT && parentNode) {\n const line = parentNode.getHtml();\n const index = line.lastIndexOf(originalWord);\n\n if (index >= 0) {\n // Add a space after the replaced word so that multiple references can be added back to back\n const newLine = line.substring(0, index) + newWord + ' ' + line.substring(index + originalWord.length);\n parentNode.setHtml(newLine);\n\n // Place selection at the end of the line\n range.moveToPosition(parentNode, CKEDITOR.POSITION_BEFORE_END);\n this.ckeInstance.getSelection().selectRanges([range]);\n }\n }\n }\n\n /**\n * Returns current references, minus any from the model that have been removed from the editor.\n */\n private validateReferences(): void {\n let html = this.ckeInstance.document.getBody().getHtml();\n\n // CKEditor stopped supporting the config.forceSimpleAmpersand setting, so we have to convert '&amp;' to '&'\n // when we pull html from the editor - see: https://dev.ckeditor.com/ticket/13723\n const ampRegex = new RegExp('&amp;', 'g');\n html = html.replace(ampRegex, '&');\n\n Object.keys(this.model.references).forEach((taggingMode) => {\n const array = this.model.references[taggingMode] || [];\n const symbol = this.config.triggers[taggingMode];\n const renderer = this.getRenderer(taggingMode);\n\n this.model.references[taggingMode] = array.filter((item) => {\n const renderedText = renderer(symbol, item);\n return html.includes(renderedText);\n });\n\n // If no references, then delete the key\n if (this.model.references[taggingMode].length === 0) {\n delete this.model.references[taggingMode];\n }\n });\n }\n\n /**\n * Configures the CKEditor for QuickNote functionality.\n *\n * Sets the height of the CKEditor dynamically to the height of the wrapper upon initialization.\n * Removes the toolbar on the bottom and configures a slimmed down version of the toolbar.\n * Removes plugins and turns off setting to allow browser based spell checking.\n */\n private getCKEditorConfig(): any {\n // Use the height of the wrapper element to set the initial height of the editor, then\n // set it to 100% to allow the editor to resize using the grippy.\n const editorHeight = this.wrapper.nativeElement.clientHeight - QuickNoteElement.TOOLBAR_HEIGHT;\n this.wrapper.nativeElement.style.setProperty('height', '100%');\n\n return {\n enterMode: CKEDITOR.ENTER_BR,\n shiftEnterMode: CKEDITOR.ENTER_P,\n disableNativeSpellChecker: false,\n height: editorHeight,\n startupFocus: this.startupFocus,\n removePlugins: 'liststyle,tabletools,contextmenu,tableselection', // allows browser based spell checking\n toolbar: [\n {\n name: 'basicstyles',\n items: [\n 'Styles',\n 'FontSize',\n 'Bold',\n 'Italic',\n 'Underline',\n 'TextColor',\n '-',\n 'NumberedList',\n 'BulletedList',\n 'Outdent',\n 'Indent',\n 'Link',\n ],\n },\n ],\n };\n }\n\n /**\n * Returns the current screen position of the cursor in CKEditor, accounting for any scrolling in the editor.\n */\n private getCursorPosition(): any {\n const range = this.ckeInstance.getSelection().getRanges()[0];\n const parentElement = range.startContainer.$.parentElement;\n const editorElement = this.ckeInstance.editable().$;\n\n // Since the editor is a text node in the DOM that does not know about it's position, a temporary element has to\n // be inserted in order to locate the cursor position.\n const cursorElement = document.createElement('img');\n cursorElement.setAttribute('src', 'null');\n cursorElement.setAttribute('width', '0');\n cursorElement.setAttribute('height', '0');\n\n parentElement.appendChild(cursorElement);\n const cursorPosition = {\n top: cursorElement.offsetTop - editorElement.scrollTop,\n left: cursorElement.offsetLeft - editorElement.scrollLeft,\n };\n cursorElement.remove();\n\n return cursorPosition;\n }\n\n /**\n * Positions the results dropdown based on the location of the cursor in the text field\n */\n private positionResultsDropdown(): void {\n const MIN_MARGIN_TOP: number = QuickNoteElement.TOOLBAR_HEIGHT * 2;\n const MAX_MARGIN_TOP: number = this.getContentHeight() + QuickNoteElement.TOOLBAR_HEIGHT;\n\n const cursorPosition = this.getCursorPosition();\n let marginTop: number = cursorPosition.top + QuickNoteElement.TOOLBAR_HEIGHT;\n\n // Check that the margin is within the visible bounds\n marginTop = Math.max(marginTop, MIN_MARGIN_TOP);\n marginTop = Math.min(marginTop, MAX_MARGIN_TOP);\n\n // Set the margin-top of the dropdown\n this.quickNoteResults.instance.element.nativeElement.style.setProperty('margin-top', marginTop + 'px');\n }\n\n /**\n * Returns the height in pixels of the content area - the text that the user has entered.\n */\n private getContentHeight(): number {\n let contentHeight: number = 0;\n if (\n this.ckeInstance.ui &&\n this.ckeInstance.ui.contentsElement &&\n this.ckeInstance.ui.contentsElement.$ &&\n this.ckeInstance.ui.contentsElement.$.style\n ) {\n const cssText: string = this.ckeInstance.ui.contentsElement.$.style.cssText;\n if (cssText.indexOf('height: ') !== -1) {\n let height: string = cssText.split('height: ')[1];\n height = height.split('px')[0];\n contentHeight = parseInt(height, 10);\n }\n }\n return contentHeight;\n }\n\n /**\n * Show the placeholder text if the editor is empty\n */\n private showPlaceholder(): void {\n if (!this.ckeInstance.getData() && !this.startupFocus) {\n this.ckeInstance.editable().getParent().$.appendChild(this.placeholderElement);\n this.placeholderVisible = true;\n }\n }\n\n /**\n * Hide the placeholder text by removing the placeholder element from the DOM\n */\n private hidePlaceholder(): void {\n if (this.placeholderVisible) {\n this.ckeInstance.editable().getParent().$.removeChild(this.placeholderElement);\n this.placeholderVisible = false;\n }\n }\n\n /**\n * Get or create the single placeholder object that is constructed only when needed.\n */\n private get placeholderElement(): any {\n if (!this._placeholderElement) {\n this._placeholderElement = document.createElement('div');\n this._placeholderElement.className = 'placeholder';\n this._placeholderElement.style.cssText =\n 'margin: 20px; color: #AAAAAA; font-family: sans-serif; font-size: 13px; line-height: 20px; position: absolute; top: 0; pointer-events: none';\n this._placeholderElement.textContent = this.placeholder;\n }\n return this._placeholderElement;\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n// APP\nimport { NovoListModule } from 'novo-elements/elements/list';\nimport { NovoPipesModule } from 'novo-elements/pipes';\nimport { NovoLoadingModule } from 'novo-elements/elements/loading';\nimport { QuickNoteResults } from './extras/quick-note-results/QuickNoteResults';\nimport { QuickNoteElement } from './QuickNote';\n\n@NgModule({\n imports: [CommonModule, FormsModule, NovoLoadingModule, NovoListModule, NovoPipesModule],\n declarations: [QuickNoteElement, QuickNoteResults],\n exports: [QuickNoteElement, QuickNoteResults],\n})\nexport class NovoQuickNoteModule {}\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-quick-note.mjs","sources":["../../../projects/novo-elements/src/elements/quick-note/extras/quick-note-results/QuickNoteResults.ts","../../../projects/novo-elements/src/elements/quick-note/QuickNote.ts","../../../projects/novo-elements/src/elements/quick-note/QuickNote.module.ts","../../../projects/novo-elements/src/elements/quick-note/novo-elements-elements-quick-note.ts"],"sourcesContent":["// NG2\nimport { ChangeDetectorRef, Component, ElementRef } from '@angular/core';\n// Vendor\nimport { from, Observable } from 'rxjs';\n// APP\nimport { NovoLabelService } from 'novo-elements/services';\nimport { Helpers } from 'novo-elements/utils';\nimport { PickerResults } from 'novo-elements/elements/picker';\n\n@Component({\n selector: 'quick-note-results',\n host: {\n class: 'active',\n },\n template: `\n <novo-loading theme=\"line\" *ngIf=\"isLoading && !matches.length\"></novo-loading>\n <novo-list *ngIf=\"matches.length > 0\">\n <novo-list-item\n *ngFor=\"let match of matches\"\n (click)=\"selectMatch($event)\"\n [class.active]=\"match === activeMatch\"\n (mouseenter)=\"selectActive(match)\"\n >\n <item-content>\n <p [innerHtml]=\"match.label | highlight:term\"></p>\n </item-content>\n </novo-list-item>\n </novo-list>\n <p class=\"picker-error\" *ngIf=\"hasError\">{{ labels.quickNoteError }}</p>\n <p class=\"picker-null\" *ngIf=\"!isLoading && !matches.length && !hasError\">{{ labels.quickNoteEmpty }}</p>\n `,\n styleUrls: ['./QuickNoteResults.scss'],\n standalone: false,\n})\nexport class QuickNoteResults extends PickerResults {\n // Mode that the quick note is in for tagging\n taggingMode: string = '';\n\n constructor(element: ElementRef, public labels: NovoLabelService, ref: ChangeDetectorRef) {\n super(element, labels, ref);\n }\n\n get term() {\n return this._term;\n }\n\n set term(value: any) {\n this._term = value.searchTerm;\n this.taggingMode = value.taggingMode;\n this.hasError = false;\n this.isLoading = true;\n this.search(value, this.taggingMode).subscribe(\n (results) => {\n this.matches = this.isStatic ? this.filterData(results) : results;\n this.isLoading = false;\n },\n () => {\n this.hasError = true;\n this.isLoading = false;\n },\n );\n }\n\n search(term: string, taggingMode): Observable<any> {\n const searchCall = this.config.options[taggingMode];\n return from(\n new Promise((resolve, reject) => {\n // Check if there is match data\n if (searchCall) {\n // Resolve the data\n if (Array.isArray(searchCall)) {\n this.isStatic = true;\n // Arrays are returned immediately\n resolve(this.structureArray(searchCall));\n } else if (\n (searchCall.hasOwnProperty('reject') && searchCall.hasOwnProperty('resolve')) ||\n Object.getPrototypeOf(searchCall).hasOwnProperty('then')\n ) {\n this.isStatic = false;\n // Promises (ES6 or Deferred) are resolved whenever they resolve\n searchCall.then(this.structureArray.bind(this)).then(resolve, reject);\n } else if (typeof searchCall === 'function') {\n this.isStatic = false;\n // Promises (ES6 or Deferred) are resolved whenever they resolve\n searchCall(term).then(this.structureArray.bind(this)).then(resolve, reject);\n } else {\n // All other kinds of data are rejected\n reject('The data provided is not an array or a promise');\n throw new Error('The data provided is not an array or a promise');\n }\n } else {\n // No data gets rejected\n reject('error');\n }\n }),\n );\n }\n\n /**\n * @name structureArray\n * @param collection - the data once getData resolves it\n *\n * @description This function structures an array of nodes into an array of objects with a\n * 'name' field by default.\n */\n structureArray(collection: Array<any>) {\n if (collection && (typeof collection[0] === 'string' || typeof collection[0] === 'number')) {\n return collection.map((item) => {\n return {\n value: item,\n label: item,\n };\n });\n }\n return collection.map((data) => {\n const value = this.config.field ? data[this.config.field[this.taggingMode]] : data.value || data;\n const label = this.config.format ? Helpers.interpolate(this.config.format[this.taggingMode], data) : data.label || String(value);\n return { value, label, data };\n });\n }\n\n /**\n * @name selectMatch\n * @param event\n *\n * @description\n */\n selectMatch(event: KeyboardEvent) {\n if (event) {\n event.stopPropagation();\n event.preventDefault();\n }\n\n const selected = this.activeMatch;\n if (selected) {\n this.parent.onSelected(this.taggingMode, selected);\n this.parent.hideResults();\n }\n return false;\n }\n}\n","// NG2\nimport {\n AfterViewInit,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ComponentUtils } from 'novo-elements/services';\nimport { Key, OutsideClick } from 'novo-elements/utils';\n// APP\nimport { QuickNoteResults } from './extras/quick-note-results/QuickNoteResults';\n\n// Value accessor for the component (supports ngModel)\nconst QUICK_NOTE_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => QuickNoteElement),\n multi: true,\n};\n\ndeclare const CKEDITOR: any;\n\n@Component({\n selector: 'novo-quick-note',\n providers: [QUICK_NOTE_VALUE_ACCESSOR],\n template: ' <div class=\"quick-note-wrapper\" #wrapper><textarea #host></textarea> <span #results></span></div> ',\n styleUrls: ['./QuickNote.scss'],\n standalone: false,\n})\nexport class QuickNoteElement extends OutsideClick implements OnInit, OnDestroy, AfterViewInit {\n @ViewChild('wrapper', { static: true })\n public wrapper: ElementRef;\n @ViewChild('host', { static: true })\n public host: ElementRef;\n @ViewChild('results', { read: ViewContainerRef, static: true })\n results: ViewContainerRef;\n\n @Input()\n config: any;\n @Input()\n startupFocus: boolean = false;\n @Input()\n placeholder: string;\n\n // Emitter for selects\n @Output()\n focus: EventEmitter<any> = new EventEmitter();\n @Output()\n blur: EventEmitter<any> = new EventEmitter();\n @Output()\n change: EventEmitter<any> = new EventEmitter();\n\n // The characters that the user enters in order to search for a person/thing to tag\n private resultsComponent: any;\n private quickNoteResults: any;\n private isTagging: boolean;\n private taggingMode: string;\n private model: any;\n private ckeInstance: any;\n private debounceTimeout: any;\n private placeholderVisible: boolean = false;\n private _placeholderElement: any = null;\n\n private static TOOLBAR_HEIGHT = 40; // in pixels - configured by stylesheet\n\n private onModelChange: Function = () => {};\n private onModelTouched: Function = () => {};\n\n constructor(private zone: NgZone, element: ElementRef, private componentUtils: ComponentUtils) {\n super(element);\n // Bind to the active change event from the OutsideClick\n this.onActiveChange.subscribe((active) => {\n if (!active) {\n setTimeout(() => {\n this.hideResults();\n });\n }\n });\n }\n\n public ngOnInit(): void {\n // Make sure we have a proper config\n if (!this.config) {\n throw new Error('No config set for QuickNote!');\n }\n // Make sure that we have triggers\n if (!this.config.triggers) {\n throw new Error('QuickNote config must supply triggers!');\n }\n // Make sure that we have options\n if (!this.config.options) {\n throw new Error('QuickNote config must supply options!');\n }\n // Allow for callers to use a custom results template class in the config\n this.resultsComponent = this.config.resultsTemplate || QuickNoteResults;\n }\n\n public ngOnDestroy(): void {\n // Tear down the CKEditor instance\n if (this.ckeInstance) {\n this.ckeInstance.focusManager.blur(true); // Remove focus from editor\n setTimeout(() => {\n this.ckeInstance.removeAllListeners();\n CKEDITOR.instances[this.ckeInstance.name].destroy();\n this.ckeInstance.destroy();\n this.ckeInstance = null;\n });\n }\n }\n\n /**\n * Connect to key/mouse events from CKEditor after the editor has been initialized\n */\n public ngAfterViewInit(): void {\n if (!CKEDITOR) {\n console.error('Make sure to include CKEditor sources in your dependencies!');\n return;\n }\n\n // Replace the textarea with an instance of CKEditor\n this.ckeInstance = CKEDITOR.replace(this.host.nativeElement, this.getCKEditorConfig());\n\n // Set initial value of the note in the editor\n this.writeValue(this.model);\n\n // Connect to the key event in CKEditor for showing results dropdown\n this.ckeInstance.on('key', (event: any) => {\n if (!this.onKey(event.data.domEvent.$)) {\n event.cancel();\n }\n });\n\n // Connect to the change event in CKEditor for debouncing user modifications\n this.ckeInstance.on('change', () => {\n // Debounce update\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n this.debounceTimeout = setTimeout(() => {\n // Run within the context of this angular element since we don't need to cancel event\n this.zone.run(() => {\n this.onValueChange();\n });\n this.debounceTimeout = null;\n }, 250);\n });\n\n // Propagate blur events from CKEditor to the Element's listeners\n this.ckeInstance.on('blur', (event: any) => {\n this.showPlaceholder();\n this.blur.emit(event);\n });\n\n // Propagate blur events from CKEditor to the Element's listeners\n this.ckeInstance.on('focus', (event: any) => {\n this.hidePlaceholder();\n this.focus.emit(event);\n });\n\n // Show placeholder if the note is empty, after the editor is instantiated\n this.ckeInstance.on('instanceReady', (event: any) => {\n this.showPlaceholder();\n // Set editor to readOnly\n if (this.config.readOnly) {\n this.ckeInstance.setReadOnly(this.config.readOnly);\n }\n });\n }\n\n // Set touched on blur\n public onTouched(event?: any) {\n this.onModelTouched();\n }\n\n /**\n * Handles setting the model and the view from the outside caller or the user's typing\n *\n * @param model A model that has a note (html content) and references (array of objects)\n */\n public writeValue(model: any): void {\n // Set value of the model\n if (model && (model.references || model.note)) {\n this.model = {\n note: model.note || '',\n references: model.references || {},\n };\n } else {\n this.model = {\n note: model,\n references: {},\n };\n }\n\n // Set the note html value in the editor\n if (this.ckeInstance) {\n this.ckeInstance.setData(this.model.note);\n }\n }\n\n public registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n public registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n /**\n * If a renderer is not provided, the QuickNote will default to using this one, an anchor tag with no href\n */\n private static defaultRenderer(symbol: string, item: any): string {\n return `<a>${symbol}${item.label}</a>`;\n }\n\n /**\n * Returns the renderer for a given tagging mode if it exists in the config, otherwise the default.\n */\n private getRenderer(taggingMode: string): any {\n return this.config.renderer ? this.config.renderer[taggingMode] : QuickNoteElement.defaultRenderer;\n }\n\n /**\n * Called every time a keystroke is made in the editor. Listens for particular keys (e.g. UP arrow, ESC, etc.)\n * to handle certain behaviors of the picker.\n *\n * Runs within the context of the CKEditor, so actions that affect the view have to be run back inside of the\n * Angular zone of this class.\n *\n * @param event The key press event\n * @return true to allow the event to occur, false to cancel the event\n */\n private onKey(event: KeyboardEvent): boolean {\n if (event.key) {\n if (this.quickNoteResults) {\n // Hide results on escape key\n if (event.key === Key.Escape) {\n this.zone.run(() => {\n this.hideResults();\n });\n return false;\n }\n\n // Navigation inside the results\n if (event.key === Key.ArrowUp) {\n this.zone.run(() => {\n this.quickNoteResults.instance.prevActiveMatch();\n });\n return false;\n }\n\n if (event.key === Key.ArrowDown) {\n this.zone.run(() => {\n this.quickNoteResults.instance.nextActiveMatch();\n });\n return false;\n }\n\n if (event.key === Key.Enter) {\n this.zone.run(() => {\n this.quickNoteResults.instance.selectActiveMatch();\n });\n return false;\n }\n } else {\n // Loop through all triggers and turn on tagging mode if the user just pressed a trigger character\n const triggers = this.config.triggers || {};\n Object.keys(triggers).forEach((key) => {\n const trigger = triggers[key] || {};\n if (event.key === trigger) {\n this.isTagging = true;\n this.taggingMode = key;\n }\n });\n }\n }\n return true;\n }\n\n /**\n * Debounced method that is run in the proper Angular context when the user has modified the CKEditor.\n * After the value has been updated in CKEditor, this will propagate that change to the model and listeners.\n */\n private onValueChange(): void {\n // Get the html text in CKEditor\n let value = this.ckeInstance.getData();\n\n // Remove empty 'ZERO WIDTH SPACE' characters that can get added erroneously by the editor\n const regex = new RegExp(String.fromCharCode(8203), 'g');\n value = value.replace(regex, '');\n\n // Make sure that any references in the model are still valid\n this.validateReferences();\n\n // Possibly show results if the user has entered a search term\n this.showResults();\n\n // Propagate change to ngModel for form validation, and send null if the note is empty\n let newModel = null;\n if (value) {\n newModel = {\n note: value,\n references: this.model.references,\n };\n }\n\n // Inform listeners to the ngModel change event that something has changed\n this.onModelChange(newModel);\n\n // Inform listeners of the `@Output() change` event that the model has been updated\n this.change.emit(newModel);\n\n // Inform listeners to the ngModel touched event that something has changed\n this.onTouched();\n }\n\n /**\n * Creates an instance of the results (called popup) and adds all the bindings to that instance.\n */\n private showResults(): void {\n if (this.isTagging) {\n const searchTerm = this.getSearchTerm();\n if (searchTerm.length) {\n // Update Matches\n if (this.quickNoteResults) {\n // Update existing list\n this.quickNoteResults.instance.term = {\n searchTerm,\n taggingMode: this.taggingMode,\n };\n } else {\n // Create the results DOM element\n this.quickNoteResults = this.componentUtils.append(this.resultsComponent, this.results);\n this.quickNoteResults.instance.parent = this;\n this.quickNoteResults.instance.config = this.config;\n this.quickNoteResults.instance.term = {\n searchTerm,\n taggingMode: this.taggingMode,\n };\n this.positionResultsDropdown();\n }\n } else if (this.quickNoteResults) {\n this.quickNoteResults.destroy();\n this.quickNoteResults = null;\n }\n\n // Tell the OutsideClick base class to start listening for an outside clicks\n this.toggleActive(null, true);\n }\n }\n\n /**\n * Deletes the picker results from the DOM.\n */\n private hideResults(): void {\n this.isTagging = false;\n if (this.quickNoteResults) {\n this.quickNoteResults.destroy();\n this.quickNoteResults = null;\n }\n }\n\n /**\n * Handles the selection from the QuickNoteResults Component. Called by the QuickNoteResults component on it's\n * parent (this element).\n *\n * @param taggingMode - type of tags we are looking for\n * @param selected - selected object from the picker that has a label and value\n */\n private onSelected(taggingMode: string, selected: any): void {\n // Turn off tagging\n this.isTagging = false;\n\n // Replace searchTerm with link\n const symbol = this.config.triggers[taggingMode];\n const renderer = this.getRenderer(taggingMode);\n const renderedText = renderer(symbol, selected);\n\n this.replaceWordAtCursor(renderedText);\n\n // Add the new reference, if it doesn't already exist\n this.model.references = this.model.references || {};\n this.model.references[taggingMode] = this.model.references[taggingMode] || [];\n const matchingItems = this.model.references[taggingMode].filter((item) => JSON.stringify(item) === JSON.stringify(selected));\n if (matchingItems.length === 0) {\n this.model.references[taggingMode].push(selected);\n }\n\n // Update the quick note with the changes due to the user's selection of an item in the dropdown\n this.onValueChange();\n }\n\n /**\n * Convenience method that gets the current word that the cursor is on, minus the tag.\n * Also, trims any whitespace before/after the term to aid in searching.\n */\n private getSearchTerm(): string {\n let word = this.getWordAtCursor().trim();\n if (this.isTagging) {\n const symbol = this.config.triggers[this.taggingMode];\n if (!word.includes(symbol)) {\n this.hideResults();\n return '';\n }\n word = word.slice(word.indexOf(symbol) + symbol.length);\n }\n return word;\n }\n\n /**\n * Gets the current word that the cursor is on CKEditor. Current word starts at the beginning of the line or a\n * tag character if we are in tagging mode. Current word ends at the end of the line or an empty space.\n *\n * @returns plain text string (removes all html formatting)\n */\n private getWordAtCursor(): string {\n const range = this.ckeInstance.getSelection().getRanges()[0];\n const start = range.startContainer;\n\n if (start.type === CKEDITOR.NODE_TEXT && range.startOffset) {\n const text = start.getText();\n const symbol = this.config.triggers[this.taggingMode];\n let wordStart = text.lastIndexOf(symbol, range.startOffset - 1);\n\n if (wordStart > 0) {\n const beforeSymbol: string = text.charAt(wordStart - 1);\n // We don't want to trigger the lookup call unless the symbol was preceded by whitespace\n if (beforeSymbol !== '\\u200B' && /\\S/.test(beforeSymbol)) {\n return '';\n }\n } else if (start.hasPrevious() && /\\S$/.test(start.getPrevious().getText())) {\n // When wordStart is <= 0, we need to check the previous node's text to see if it ended with whitespace or not\n return '';\n }\n\n let wordEnd = text.indexOf(' ', range.startOffset + 1);\n if (wordStart === -1) {\n wordStart = 0;\n }\n if (wordEnd === -1) {\n wordEnd = text.length;\n }\n\n return text.substring(wordStart, wordEnd);\n }\n\n // Selection starts at the 0 index of the text node or there's no previous text node in contents\n return '';\n }\n\n /**\n * Replaces the word that the user is on with the given html.\n *\n * CKEditor gives us access to the current line of html in the editor, so we replace the content of\n * the line, replacing only the current word.\n */\n private replaceWordAtCursor(newWord: string): void {\n const originalWord = this.getWordAtCursor().trim();\n const range = this.ckeInstance.getSelection().getRanges()[0];\n const start = range.startContainer;\n const parentNode = start.getParent();\n\n if (start.type === CKEDITOR.NODE_TEXT && parentNode) {\n const line = parentNode.getHtml();\n const index = line.lastIndexOf(originalWord);\n\n if (index >= 0) {\n // Add a space after the replaced word so that multiple references can be added back to back\n const newLine = line.substring(0, index) + newWord + ' ' + line.substring(index + originalWord.length);\n parentNode.setHtml(newLine);\n\n // Place selection at the end of the line\n range.moveToPosition(parentNode, CKEDITOR.POSITION_BEFORE_END);\n this.ckeInstance.getSelection().selectRanges([range]);\n }\n }\n }\n\n /**\n * Returns current references, minus any from the model that have been removed from the editor.\n */\n private validateReferences(): void {\n let html = this.ckeInstance.document.getBody().getHtml();\n\n // CKEditor stopped supporting the config.forceSimpleAmpersand setting, so we have to convert '&amp;' to '&'\n // when we pull html from the editor - see: https://dev.ckeditor.com/ticket/13723\n const ampRegex = new RegExp('&amp;', 'g');\n html = html.replace(ampRegex, '&');\n\n Object.keys(this.model.references).forEach((taggingMode) => {\n const array = this.model.references[taggingMode] || [];\n const symbol = this.config.triggers[taggingMode];\n const renderer = this.getRenderer(taggingMode);\n\n this.model.references[taggingMode] = array.filter((item) => {\n const renderedText = renderer(symbol, item);\n return html.includes(renderedText);\n });\n\n // If no references, then delete the key\n if (this.model.references[taggingMode].length === 0) {\n delete this.model.references[taggingMode];\n }\n });\n }\n\n /**\n * Configures the CKEditor for QuickNote functionality.\n *\n * Sets the height of the CKEditor dynamically to the height of the wrapper upon initialization.\n * Removes the toolbar on the bottom and configures a slimmed down version of the toolbar.\n * Removes plugins and turns off setting to allow browser based spell checking.\n */\n private getCKEditorConfig(): any {\n // Use the height of the wrapper element to set the initial height of the editor, then\n // set it to 100% to allow the editor to resize using the grippy.\n const editorHeight = this.wrapper.nativeElement.clientHeight - QuickNoteElement.TOOLBAR_HEIGHT;\n this.wrapper.nativeElement.style.setProperty('height', '100%');\n\n return {\n enterMode: CKEDITOR.ENTER_BR,\n shiftEnterMode: CKEDITOR.ENTER_P,\n disableNativeSpellChecker: false,\n height: editorHeight,\n startupFocus: this.startupFocus,\n removePlugins: 'liststyle,tabletools,contextmenu,tableselection', // allows browser based spell checking\n toolbar: [\n {\n name: 'basicstyles',\n items: [\n 'Styles',\n 'FontSize',\n 'Bold',\n 'Italic',\n 'Underline',\n 'TextColor',\n '-',\n 'NumberedList',\n 'BulletedList',\n 'Outdent',\n 'Indent',\n 'Link',\n ],\n },\n ],\n };\n }\n\n /**\n * Returns the current screen position of the cursor in CKEditor, accounting for any scrolling in the editor.\n */\n private getCursorPosition(): any {\n const range = this.ckeInstance.getSelection().getRanges()[0];\n const parentElement = range.startContainer.$.parentElement;\n const editorElement = this.ckeInstance.editable().$;\n\n // Since the editor is a text node in the DOM that does not know about it's position, a temporary element has to\n // be inserted in order to locate the cursor position.\n const cursorElement = document.createElement('img');\n cursorElement.setAttribute('src', 'null');\n cursorElement.setAttribute('width', '0');\n cursorElement.setAttribute('height', '0');\n\n parentElement.appendChild(cursorElement);\n const cursorPosition = {\n top: cursorElement.offsetTop - editorElement.scrollTop,\n left: cursorElement.offsetLeft - editorElement.scrollLeft,\n };\n cursorElement.remove();\n\n return cursorPosition;\n }\n\n /**\n * Positions the results dropdown based on the location of the cursor in the text field\n */\n private positionResultsDropdown(): void {\n const MIN_MARGIN_TOP: number = QuickNoteElement.TOOLBAR_HEIGHT * 2;\n const MAX_MARGIN_TOP: number = this.getContentHeight() + QuickNoteElement.TOOLBAR_HEIGHT;\n\n const cursorPosition = this.getCursorPosition();\n let marginTop: number = cursorPosition.top + QuickNoteElement.TOOLBAR_HEIGHT;\n\n // Check that the margin is within the visible bounds\n marginTop = Math.max(marginTop, MIN_MARGIN_TOP);\n marginTop = Math.min(marginTop, MAX_MARGIN_TOP);\n\n // Set the margin-top of the dropdown\n this.quickNoteResults.instance.element.nativeElement.style.setProperty('margin-top', marginTop + 'px');\n }\n\n /**\n * Returns the height in pixels of the content area - the text that the user has entered.\n */\n private getContentHeight(): number {\n let contentHeight: number = 0;\n if (\n this.ckeInstance.ui &&\n this.ckeInstance.ui.contentsElement &&\n this.ckeInstance.ui.contentsElement.$ &&\n this.ckeInstance.ui.contentsElement.$.style\n ) {\n const cssText: string = this.ckeInstance.ui.contentsElement.$.style.cssText;\n if (cssText.indexOf('height: ') !== -1) {\n let height: string = cssText.split('height: ')[1];\n height = height.split('px')[0];\n contentHeight = parseInt(height, 10);\n }\n }\n return contentHeight;\n }\n\n /**\n * Show the placeholder text if the editor is empty\n */\n private showPlaceholder(): void {\n if (!this.ckeInstance.getData() && !this.startupFocus) {\n this.ckeInstance.editable().getParent().$.appendChild(this.placeholderElement);\n this.placeholderVisible = true;\n }\n }\n\n /**\n * Hide the placeholder text by removing the placeholder element from the DOM\n */\n private hidePlaceholder(): void {\n if (this.placeholderVisible) {\n this.ckeInstance.editable().getParent().$.removeChild(this.placeholderElement);\n this.placeholderVisible = false;\n }\n }\n\n /**\n * Get or create the single placeholder object that is constructed only when needed.\n */\n private get placeholderElement(): any {\n if (!this._placeholderElement) {\n this._placeholderElement = document.createElement('div');\n this._placeholderElement.className = 'placeholder';\n this._placeholderElement.style.cssText =\n 'margin: 20px; color: #AAAAAA; font-family: sans-serif; font-size: 13px; line-height: 20px; position: absolute; top: 0; pointer-events: none';\n this._placeholderElement.textContent = this.placeholder;\n }\n return this._placeholderElement;\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n// APP\nimport { NovoListModule } from 'novo-elements/elements/list';\nimport { NovoPipesModule } from 'novo-elements/pipes';\nimport { NovoLoadingModule } from 'novo-elements/elements/loading';\nimport { QuickNoteResults } from './extras/quick-note-results/QuickNoteResults';\nimport { QuickNoteElement } from './QuickNote';\n\n@NgModule({\n imports: [CommonModule, FormsModule, NovoLoadingModule, NovoListModule, NovoPipesModule],\n declarations: [QuickNoteElement, QuickNoteResults],\n exports: [QuickNoteElement, QuickNoteResults],\n})\nexport class NovoQuickNoteModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;AAkCM,MAAO,gBAAiB,SAAQ,aAAa,CAAA;AAIjD,IAAA,WAAA,CAAY,OAAmB,EAAS,MAAwB,EAAE,GAAsB,EAAA;AACtF,QAAA,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC;QADW,IAAA,CAAA,MAAM,GAAN,MAAM;;QAF9C,IAAA,CAAA,WAAW,GAAW,EAAE;IAIxB;AAEA,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK;IACnB;IAEA,IAAI,IAAI,CAAC,KAAU,EAAA;AACjB,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,UAAU;AAC7B,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW;AACpC,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;AACrB,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI;AACrB,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,SAAS,CAC5C,CAAC,OAAO,KAAI;AACV,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,OAAO;AACjE,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK;QACxB,CAAC,EACD,MAAK;AACH,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;AACpB,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACxB,QAAA,CAAC,CACF;IACH;IAEA,MAAM,CAAC,IAAY,EAAE,WAAW,EAAA;QAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;QACnD,OAAO,IAAI,CACT,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;;YAE9B,IAAI,UAAU,EAAE;;AAEd,gBAAA,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;AAC7B,oBAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;;oBAEpB,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;gBAC1C;AAAO,qBAAA,IACL,CAAC,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC;oBAC5E,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,EACxD;AACA,oBAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;;AAErB,oBAAA,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC;gBACvE;AAAO,qBAAA,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;AAC3C,oBAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;;oBAErB,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC;gBAC7E;qBAAO;;oBAEL,MAAM,CAAC,gDAAgD,CAAC;AACxD,oBAAA,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC;gBACnE;YACF;iBAAO;;gBAEL,MAAM,CAAC,OAAO,CAAC;YACjB;QACF,CAAC,CAAC,CACH;IACH;AAEA;;;;;;AAMG;AACH,IAAA,cAAc,CAAC,UAAsB,EAAA;QACnC,IAAI,UAAU,KAAK,OAAO,UAAU,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,OAAO,UAAU,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,EAAE;AAC1F,YAAA,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,KAAI;gBAC7B,OAAO;AACL,oBAAA,KAAK,EAAE,IAAI;AACX,oBAAA,KAAK,EAAE,IAAI;iBACZ;AACH,YAAA,CAAC,CAAC;QACJ;AACA,QAAA,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,KAAI;AAC7B,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI;AAChG,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC;AAChI,YAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE;AAC/B,QAAA,CAAC,CAAC;IACJ;AAEA;;;;;AAKG;AACH,IAAA,WAAW,CAAC,KAAoB,EAAA;QAC9B,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,eAAe,EAAE;YACvB,KAAK,CAAC,cAAc,EAAE;QACxB;AAEA,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW;QACjC,IAAI,QAAQ,EAAE;YACZ,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC;AAClD,YAAA,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;QAC3B;AACA,QAAA,OAAO,KAAK;IACd;+GAzGW,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,QAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EApBf;;;;;;;;;;;;;;;;AAgBX,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,2SAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,iDAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAIU,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAzB5B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,oBAAoB,EAAA,IAAA,EACxB;AACF,wBAAA,KAAK,EAAE,QAAQ;qBAClB,EAAA,QAAA,EACS;;;;;;;;;;;;;;;;AAgBX,EAAA,CAAA,EAAA,UAAA,EAEa,KAAK,EAAA,MAAA,EAAA,CAAA,2SAAA,CAAA,EAAA;;;AChCrB;AAqBA;AACA,MAAM,yBAAyB,GAAG;AAChC,IAAA,OAAO,EAAE,iBAAiB;AAC1B,IAAA,WAAW,EAAE,UAAU,CAAC,MAAM,gBAAgB,CAAC;AAC/C,IAAA,KAAK,EAAE,IAAI;CACZ;AAWK,MAAO,gBAAiB,SAAQ,YAAY,CAAA;AAkCjC,IAAA,SAAA,IAAA,CAAA,cAAc,GAAG,EAAE,CAAC;AAKnC,IAAA,WAAA,CAAoB,IAAY,EAAE,OAAmB,EAAU,cAA8B,EAAA;QAC3F,KAAK,CAAC,OAAO,CAAC;QADI,IAAA,CAAA,IAAI,GAAJ,IAAI;QAAuC,IAAA,CAAA,cAAc,GAAd,cAAc;QA5B7E,IAAA,CAAA,YAAY,GAAY,KAAK;;AAM7B,QAAA,IAAA,CAAA,KAAK,GAAsB,IAAI,YAAY,EAAE;AAE7C,QAAA,IAAA,CAAA,IAAI,GAAsB,IAAI,YAAY,EAAE;AAE5C,QAAA,IAAA,CAAA,MAAM,GAAsB,IAAI,YAAY,EAAE;QAUtC,IAAA,CAAA,kBAAkB,GAAY,KAAK;QACnC,IAAA,CAAA,mBAAmB,GAAQ,IAAI;AAI/B,QAAA,IAAA,CAAA,aAAa,GAAa,MAAK,EAAE,CAAC;AAClC,QAAA,IAAA,CAAA,cAAc,GAAa,MAAK,EAAE,CAAC;;QAKzC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,KAAI;YACvC,IAAI,CAAC,MAAM,EAAE;gBACX,UAAU,CAAC,MAAK;oBACd,IAAI,CAAC,WAAW,EAAE;AACpB,gBAAA,CAAC,CAAC;YACJ;AACF,QAAA,CAAC,CAAC;IACJ;IAEO,QAAQ,GAAA;;AAEb,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;AAChB,YAAA,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC;QACjD;;AAEA,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;AACzB,YAAA,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC;QAC3D;;AAEA,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;AACxB,YAAA,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC;QAC1D;;QAEA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,IAAI,gBAAgB;IACzE;IAEO,WAAW,GAAA;;AAEhB,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,UAAU,CAAC,MAAK;AACd,gBAAA,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE;AACrC,gBAAA,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE;AACnD,gBAAA,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE;AAC1B,gBAAA,IAAI,CAAC,WAAW,GAAG,IAAI;AACzB,YAAA,CAAC,CAAC;QACJ;IACF;AAEA;;AAEG;IACI,eAAe,GAAA;QACpB,IAAI,CAAC,QAAQ,EAAE;AACb,YAAA,OAAO,CAAC,KAAK,CAAC,6DAA6D,CAAC;YAC5E;QACF;;AAGA,QAAA,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC;;AAGtF,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;;QAG3B,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAU,KAAI;AACxC,YAAA,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;gBACtC,KAAK,CAAC,MAAM,EAAE;YAChB;AACF,QAAA,CAAC,CAAC;;QAGF,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAK;;AAEjC,YAAA,IAAI,IAAI,CAAC,eAAe,EAAE;AACxB,gBAAA,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC;YACpC;AACA,YAAA,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,MAAK;;AAErC,gBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAK;oBACjB,IAAI,CAAC,aAAa,EAAE;AACtB,gBAAA,CAAC,CAAC;AACF,gBAAA,IAAI,CAAC,eAAe,GAAG,IAAI;YAC7B,CAAC,EAAE,GAAG,CAAC;AACT,QAAA,CAAC,CAAC;;QAGF,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAU,KAAI;YACzC,IAAI,CAAC,eAAe,EAAE;AACtB,YAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;AACvB,QAAA,CAAC,CAAC;;QAGF,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAU,KAAI;YAC1C,IAAI,CAAC,eAAe,EAAE;AACtB,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;AACxB,QAAA,CAAC,CAAC;;QAGF,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,KAAU,KAAI;YAClD,IAAI,CAAC,eAAe,EAAE;;AAEtB,YAAA,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;gBACxB,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;YACpD;AACF,QAAA,CAAC,CAAC;IACJ;;AAGO,IAAA,SAAS,CAAC,KAAW,EAAA;QAC1B,IAAI,CAAC,cAAc,EAAE;IACvB;AAEA;;;;AAIG;AACI,IAAA,UAAU,CAAC,KAAU,EAAA;;AAE1B,QAAA,IAAI,KAAK,KAAK,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE;YAC7C,IAAI,CAAC,KAAK,GAAG;AACX,gBAAA,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;AACtB,gBAAA,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,EAAE;aACnC;QACH;aAAO;YACL,IAAI,CAAC,KAAK,GAAG;AACX,gBAAA,IAAI,EAAE,KAAK;AACX,gBAAA,UAAU,EAAE,EAAE;aACf;QACH;;AAGA,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAC3C;IACF;AAEO,IAAA,gBAAgB,CAAC,EAAY,EAAA;AAClC,QAAA,IAAI,CAAC,aAAa,GAAG,EAAE;IACzB;AAEO,IAAA,iBAAiB,CAAC,EAAY,EAAA;AACnC,QAAA,IAAI,CAAC,cAAc,GAAG,EAAE;IAC1B;AAEA;;AAEG;AACK,IAAA,OAAO,eAAe,CAAC,MAAc,EAAE,IAAS,EAAA;AACtD,QAAA,OAAO,MAAM,MAAM,CAAA,EAAG,IAAI,CAAC,KAAK,MAAM;IACxC;AAEA;;AAEG;AACK,IAAA,WAAW,CAAC,WAAmB,EAAA;QACrC,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,gBAAgB,CAAC,eAAe;IACpG;AAEA;;;;;;;;;AASG;AACK,IAAA,KAAK,CAAC,KAAoB,EAAA;AAChC,QAAA,IAAI,KAAK,CAAC,GAAG,EAAE;AACb,YAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;;AAEzB,gBAAA,IAAI,KAAK,CAAC,GAAG,KAAA,QAAA,mBAAiB;AAC5B,oBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAK;wBACjB,IAAI,CAAC,WAAW,EAAE;AACpB,oBAAA,CAAC,CAAC;AACF,oBAAA,OAAO,KAAK;gBACd;;AAGA,gBAAA,IAAI,KAAK,CAAC,GAAG,KAAA,SAAA,oBAAkB;AAC7B,oBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAK;AACjB,wBAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,eAAe,EAAE;AAClD,oBAAA,CAAC,CAAC;AACF,oBAAA,OAAO,KAAK;gBACd;AAEA,gBAAA,IAAI,KAAK,CAAC,GAAG,KAAA,WAAA,sBAAoB;AAC/B,oBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAK;AACjB,wBAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,eAAe,EAAE;AAClD,oBAAA,CAAC,CAAC;AACF,oBAAA,OAAO,KAAK;gBACd;AAEA,gBAAA,IAAI,KAAK,CAAC,GAAG,KAAA,OAAA,kBAAgB;AAC3B,oBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAK;AACjB,wBAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,iBAAiB,EAAE;AACpD,oBAAA,CAAC,CAAC;AACF,oBAAA,OAAO,KAAK;gBACd;YACF;iBAAO;;gBAEL,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE;gBAC3C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;oBACpC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE;AACnC,oBAAA,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,EAAE;AACzB,wBAAA,IAAI,CAAC,SAAS,GAAG,IAAI;AACrB,wBAAA,IAAI,CAAC,WAAW,GAAG,GAAG;oBACxB;AACF,gBAAA,CAAC,CAAC;YACJ;QACF;AACA,QAAA,OAAO,IAAI;IACb;AAEA;;;AAGG;IACK,aAAa,GAAA;;QAEnB,IAAI,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE;;AAGtC,QAAA,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC;QACxD,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;;QAGhC,IAAI,CAAC,kBAAkB,EAAE;;QAGzB,IAAI,CAAC,WAAW,EAAE;;QAGlB,IAAI,QAAQ,GAAG,IAAI;QACnB,IAAI,KAAK,EAAE;AACT,YAAA,QAAQ,GAAG;AACT,gBAAA,IAAI,EAAE,KAAK;AACX,gBAAA,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU;aAClC;QACH;;AAGA,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;;AAG5B,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;;QAG1B,IAAI,CAAC,SAAS,EAAE;IAClB;AAEA;;AAEG;IACK,WAAW,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE;AACvC,YAAA,IAAI,UAAU,CAAC,MAAM,EAAE;;AAErB,gBAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;;AAEzB,oBAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,GAAG;wBACpC,UAAU;wBACV,WAAW,EAAE,IAAI,CAAC,WAAW;qBAC9B;gBACH;qBAAO;;AAEL,oBAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC;oBACvF,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI;oBAC5C,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM;AACnD,oBAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,GAAG;wBACpC,UAAU;wBACV,WAAW,EAAE,IAAI,CAAC,WAAW;qBAC9B;oBACD,IAAI,CAAC,uBAAuB,EAAE;gBAChC;YACF;AAAO,iBAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;AAChC,gBAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE;AAC/B,gBAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI;YAC9B;;AAGA,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC;QAC/B;IACF;AAEA;;AAEG;IACK,WAAW,GAAA;AACjB,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,QAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACzB,YAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE;AAC/B,YAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI;QAC9B;IACF;AAEA;;;;;;AAMG;IACK,UAAU,CAAC,WAAmB,EAAE,QAAa,EAAA;;AAEnD,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;;QAGtB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC;QAC9C,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;AAE/C,QAAA,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC;;AAGtC,QAAA,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE;AACnD,QAAA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,EAAE;AAC7E,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AAC5H,QAAA,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;AAC9B,YAAA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QACnD;;QAGA,IAAI,CAAC,aAAa,EAAE;IACtB;AAEA;;;AAGG;IACK,aAAa,GAAA;QACnB,IAAI,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE;AACxC,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;YACrD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAC1B,IAAI,CAAC,WAAW,EAAE;AAClB,gBAAA,OAAO,EAAE;YACX;AACA,YAAA,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;QACzD;AACA,QAAA,OAAO,IAAI;IACb;AAEA;;;;;AAKG;IACK,eAAe,GAAA;AACrB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;AAC5D,QAAA,MAAM,KAAK,GAAG,KAAK,CAAC,cAAc;AAElC,QAAA,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,SAAS,IAAI,KAAK,CAAC,WAAW,EAAE;AAC1D,YAAA,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE;AAC5B,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;AACrD,YAAA,IAAI,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;AAE/D,YAAA,IAAI,SAAS,GAAG,CAAC,EAAE;gBACjB,MAAM,YAAY,GAAW,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC;;gBAEvD,IAAI,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;AACxD,oBAAA,OAAO,EAAE;gBACX;YACF;AAAO,iBAAA,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE;;AAE3E,gBAAA,OAAO,EAAE;YACX;AAEA,YAAA,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;AACtD,YAAA,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE;gBACpB,SAAS,GAAG,CAAC;YACf;AACA,YAAA,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE;AAClB,gBAAA,OAAO,GAAG,IAAI,CAAC,MAAM;YACvB;YAEA,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC;QAC3C;;AAGA,QAAA,OAAO,EAAE;IACX;AAEA;;;;;AAKG;AACK,IAAA,mBAAmB,CAAC,OAAe,EAAA;QACzC,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE;AAClD,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;AAC5D,QAAA,MAAM,KAAK,GAAG,KAAK,CAAC,cAAc;AAClC,QAAA,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,EAAE;QAEpC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,SAAS,IAAI,UAAU,EAAE;AACnD,YAAA,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,EAAE;YACjC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC;AAE5C,YAAA,IAAI,KAAK,IAAI,CAAC,EAAE;;gBAEd,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC;AACtG,gBAAA,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC;;gBAG3B,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,QAAQ,CAAC,mBAAmB,CAAC;AAC9D,gBAAA,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC;YACvD;QACF;IACF;AAEA;;AAEG;IACK,kBAAkB,GAAA;AACxB,QAAA,IAAI,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE;;;QAIxD,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC;QACzC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;AAElC,QAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,KAAI;AACzD,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,EAAE;YACtD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;YAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC;AAE9C,YAAA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,KAAI;gBACzD,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;AAC3C,gBAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;AACpC,YAAA,CAAC,CAAC;;AAGF,YAAA,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;gBACnD,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC;YAC3C;AACF,QAAA,CAAC,CAAC;IACJ;AAEA;;;;;;AAMG;IACK,iBAAiB,GAAA;;;AAGvB,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,YAAY,GAAG,gBAAgB,CAAC,cAAc;AAC9F,QAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC;QAE9D,OAAO;YACL,SAAS,EAAE,QAAQ,CAAC,QAAQ;YAC5B,cAAc,EAAE,QAAQ,CAAC,OAAO;AAChC,YAAA,yBAAyB,EAAE,KAAK;AAChC,YAAA,MAAM,EAAE,YAAY;YACpB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,aAAa,EAAE,iDAAiD;AAChE,YAAA,OAAO,EAAE;AACP,gBAAA;AACE,oBAAA,IAAI,EAAE,aAAa;AACnB,oBAAA,KAAK,EAAE;wBACL,QAAQ;wBACR,UAAU;wBACV,MAAM;wBACN,QAAQ;wBACR,WAAW;wBACX,WAAW;wBACX,GAAG;wBACH,cAAc;wBACd,cAAc;wBACd,SAAS;wBACT,QAAQ;wBACR,MAAM;AACP,qBAAA;AACF,iBAAA;AACF,aAAA;SACF;IACH;AAEA;;AAEG;IACK,iBAAiB,GAAA;AACvB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,aAAa,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa;QAC1D,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;;;QAInD,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;AACnD,QAAA,aAAa,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC;AACzC,QAAA,aAAa,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC;AACxC,QAAA,aAAa,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG,CAAC;AAEzC,QAAA,aAAa,CAAC,WAAW,CAAC,aAAa,CAAC;AACxC,QAAA,MAAM,cAAc,GAAG;AACrB,YAAA,GAAG,EAAE,aAAa,CAAC,SAAS,GAAG,aAAa,CAAC,SAAS;AACtD,YAAA,IAAI,EAAE,aAAa,CAAC,UAAU,GAAG,aAAa,CAAC,UAAU;SAC1D;QACD,aAAa,CAAC,MAAM,EAAE;AAEtB,QAAA,OAAO,cAAc;IACvB;AAEA;;AAEG;IACK,uBAAuB,GAAA;AAC7B,QAAA,MAAM,cAAc,GAAW,gBAAgB,CAAC,cAAc,GAAG,CAAC;QAClE,MAAM,cAAc,GAAW,IAAI,CAAC,gBAAgB,EAAE,GAAG,gBAAgB,CAAC,cAAc;AAExF,QAAA,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE;QAC/C,IAAI,SAAS,GAAW,cAAc,CAAC,GAAG,GAAG,gBAAgB,CAAC,cAAc;;QAG5E,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,cAAc,CAAC;QAC/C,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,cAAc,CAAC;;AAG/C,QAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,EAAE,SAAS,GAAG,IAAI,CAAC;IACxG;AAEA;;AAEG;IACK,gBAAgB,GAAA;QACtB,IAAI,aAAa,GAAW,CAAC;AAC7B,QAAA,IACE,IAAI,CAAC,WAAW,CAAC,EAAE;AACnB,YAAA,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,eAAe;AACnC,YAAA,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC;YACrC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,EAC3C;AACA,YAAA,MAAM,OAAO,GAAW,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO;YAC3E,IAAI,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE;gBACtC,IAAI,MAAM,GAAW,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACjD,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC9B,gBAAA,aAAa,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YACtC;QACF;AACA,QAAA,OAAO,aAAa;IACtB;AAEA;;AAEG;IACK,eAAe,GAAA;AACrB,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;AACrD,YAAA,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC;AAC9E,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI;QAChC;IACF;AAEA;;AAEG;IACK,eAAe,GAAA;AACrB,QAAA,IAAI,IAAI,CAAC,kBAAkB,EAAE;AAC3B,YAAA,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC;AAC9E,YAAA,IAAI,CAAC,kBAAkB,GAAG,KAAK;QACjC;IACF;AAEA;;AAEG;AACH,IAAA,IAAY,kBAAkB,GAAA;AAC5B,QAAA,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC7B,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;AACxD,YAAA,IAAI,CAAC,mBAAmB,CAAC,SAAS,GAAG,aAAa;AAClD,YAAA,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,OAAO;AACpC,gBAAA,6IAA6I;YAC/I,IAAI,CAAC,mBAAmB,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW;QACzD;QACA,OAAO,IAAI,CAAC,mBAAmB;IACjC;+GAtmBW,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,oNALd,CAAC,yBAAyB,CAAC,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,SAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,MAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,MAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,SAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAUV,gBAAgB,kEATlC,qGAAqG,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,8lBAAA,CAAA,EAAA,CAAA,CAAA;;4FAItG,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAP5B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,aAChB,CAAC,yBAAyB,CAAC,EAAA,QAAA,EAC5B,qGAAqG,cAEnG,KAAK,EAAA,MAAA,EAAA,CAAA,8lBAAA,CAAA,EAAA;;sBAGlB,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;sBAErC,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;sBAElC,SAAS;uBAAC,SAAS,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE;;sBAG7D;;sBAEA;;sBAEA;;sBAIA;;sBAEA;;sBAEA;;;ACzDH;MAgBa,mBAAmB,CAAA;+GAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,iBAHf,gBAAgB,EAAE,gBAAgB,CAAA,EAAA,OAAA,EAAA,CADvC,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,CAAA,EAAA,OAAA,EAAA,CAE7E,gBAAgB,EAAE,gBAAgB,CAAA,EAAA,CAAA,CAAA;gHAEjC,mBAAmB,EAAA,OAAA,EAAA,CAJpB,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,CAAA,EAAA,CAAA,CAAA;;4FAI5E,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,CAAC;AACxF,oBAAA,YAAY,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;AAClD,oBAAA,OAAO,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;AAC9C,iBAAA;;;ACfD;;AAEG;;;;"}
@@ -98,8 +98,8 @@ class NovoRadioElement {
98
98
  setDisabledState(disabled) {
99
99
  this.disabled = disabled;
100
100
  }
101
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoRadioElement, deps: [{ token: NOVO_RADIO_GROUP, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
102
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: NovoRadioElement, isStandalone: false, selector: "novo-radio", inputs: { id: "id", name: "name", tabindex: "tabindex", vertical: "vertical", label: "label", button: "button", theme: "theme", size: "size", icon: "icon", color: "color", disabled: "disabled", checked: "checked", value: "value" }, outputs: { change: "change", blur: "blur", focus: "focus" }, host: { properties: { "class.vertical": "vertical" } }, providers: [RADIO_VALUE_ACCESSOR], ngImport: i0, template: `
101
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoRadioElement, deps: [{ token: NOVO_RADIO_GROUP, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
102
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.17", type: NovoRadioElement, isStandalone: false, selector: "novo-radio", inputs: { id: "id", name: "name", tabindex: "tabindex", vertical: "vertical", label: "label", button: "button", theme: "theme", size: "size", icon: "icon", color: "color", disabled: "disabled", checked: "checked", value: "value" }, outputs: { change: "change", blur: "blur", focus: "focus" }, host: { properties: { "class.vertical": "vertical" } }, providers: [RADIO_VALUE_ACCESSOR], ngImport: i0, template: `
103
103
  <input
104
104
  type="radio"
105
105
  [id]="id"
@@ -130,7 +130,7 @@ class NovoRadioElement {
130
130
  </label>
131
131
  `, isInline: true, styles: [":host-context(novo-radio-group){margin:0}:host-context(novo-radio-group) novo-button{pointer-events:none;border-radius:0!important}:host-context(novo-radio-group) novo-button.unchecked{opacity:.6}:host-context(novo-radio-group) novo-button[theme=icon]{margin-right:0;border:1px solid #4a89dc}:host-context(novo-radio-group):first-child novo-button{border-top-left-radius:3px!important;border-bottom-left-radius:3px!important}:host-context(novo-radio-group):first-child novo-button[theme=icon]{border-right-width:0px!important}:host-context(novo-radio-group):last-child novo-button{border-top-right-radius:3px!important;border-bottom-right-radius:3px!important;border-right-width:1px!important;border-right-style:solid!important}:host-context(novo-radio-group):last-child novo-button[theme=icon]{border-left-width:0px!important}:host-context(novo-radio-group.novo-radio-group-appearance-horizontal) :host:not(:last-child) .novo-radio-button-label{margin-right:1rem}:host{margin-right:10px;position:relative}:host.vertical{display:block}:host>input{position:absolute;z-index:-1;opacity:0}:host>input:focus+label i.bhi-radio-empty,:host>input:focus+label i.bhi-radio-filled{color:#4a89dc}:host>label{cursor:pointer}:host>label .novo-radio-button-label{font-weight:400;color:inherit;font-size:var(--font-size-text);transition:color .2s ease-out,opacity .2s ease-out;vertical-align:middle;display:inline}:host>label .novo-radio-button-label.text-capitalize{text-transform:capitalize}:host>label .novo-radio-button-label.text-uppercase{text-transform:uppercase}:host>label .novo-radio-button-label.text-nowrap{white-space:nowrap}:host>label .novo-radio-button-label.text-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host>label .novo-radio-button-label.text-size-default{font-size:inherit}:host>label .novo-radio-button-label.text-size-body{font-size:1.3rem}:host>label .novo-radio-button-label.text-size-xs{font-size:1rem}:host>label .novo-radio-button-label.text-size-sm{font-size:1.2rem}:host>label .novo-radio-button-label.text-size-md{font-size:1.3rem}:host>label .novo-radio-button-label.text-size-lg{font-size:1.6rem}:host>label .novo-radio-button-label.text-size-xl{font-size:2rem}:host>label .novo-radio-button-label.text-size-2xl{font-size:2.6rem}:host>label .novo-radio-button-label.text-size-3xl{font-size:3.2rem}:host>label .novo-radio-button-label.text-size-smaller{font-size:.8em}:host>label .novo-radio-button-label.text-size-larger{font-size:1.2em}:host>label .novo-radio-button-label.text-color-black{color:#000}:host>label .novo-radio-button-label.text-color-white{color:#fff}:host>label .novo-radio-button-label.text-color-gray{color:#9e9e9e}:host>label .novo-radio-button-label.text-color-grey{color:#9e9e9e}:host>label .novo-radio-button-label.text-color-offWhite{color:#f7f7f7}:host>label .novo-radio-button-label.text-color-bright{color:#f7f7f7}:host>label .novo-radio-button-label.text-color-light{color:#dbdbdb}:host>label .novo-radio-button-label.text-color-neutral{color:#4f5361}:host>label .novo-radio-button-label.text-color-dark{color:#3d464d}:host>label .novo-radio-button-label.text-color-orange{color:#ff6900}:host>label .novo-radio-button-label.text-color-navigation{color:#202945}:host>label .novo-radio-button-label.text-color-skyBlue{color:#009bdf}:host>label .novo-radio-button-label.text-color-steel{color:#5b6770}:host>label .novo-radio-button-label.text-color-metal{color:#637893}:host>label .novo-radio-button-label.text-color-sand{color:#f4f4f4}:host>label .novo-radio-button-label.text-color-silver{color:#e2e2e2}:host>label .novo-radio-button-label.text-color-stone{color:#bebebe}:host>label .novo-radio-button-label.text-color-ash{color:#a0a0a0}:host>label .novo-radio-button-label.text-color-slate{color:#707070}:host>label .novo-radio-button-label.text-color-onyx{color:#526980}:host>label .novo-radio-button-label.text-color-charcoal{color:#282828}:host>label .novo-radio-button-label.text-color-moonlight{color:#1a242f}:host>label .novo-radio-button-label.text-color-midnight{color:#202945}:host>label .novo-radio-button-label.text-color-darkness{color:#161f27}:host>label .novo-radio-button-label.text-color-navy{color:#0d2d42}:host>label .novo-radio-button-label.text-color-aqua{color:#3bafda}:host>label .novo-radio-button-label.text-color-ocean{color:#4a89dc}:host>label .novo-radio-button-label.text-color-mint{color:#37bc9b}:host>label .novo-radio-button-label.text-color-grass{color:#8cc152}:host>label .novo-radio-button-label.text-color-sunflower{color:#f6b042}:host>label .novo-radio-button-label.text-color-bittersweet{color:#eb6845}:host>label .novo-radio-button-label.text-color-grapefruit{color:#da4453}:host>label .novo-radio-button-label.text-color-carnation{color:#d770ad}:host>label .novo-radio-button-label.text-color-lavender{color:#967adc}:host>label .novo-radio-button-label.text-color-mountain{color:#9678b6}:host>label .novo-radio-button-label.text-color-info{color:#4a89dc}:host>label .novo-radio-button-label.text-color-positive{color:#4a89dc}:host>label .novo-radio-button-label.text-color-success{color:#8cc152}:host>label .novo-radio-button-label.text-color-negative{color:#da4453}:host>label .novo-radio-button-label.text-color-danger{color:#da4453}:host>label .novo-radio-button-label.text-color-error{color:#da4453}:host>label .novo-radio-button-label.text-color-warning{color:#f6b042}:host>label .novo-radio-button-label.text-color-empty{color:#cccdcc}:host>label .novo-radio-button-label.text-color-disabled{color:#bebebe}:host>label .novo-radio-button-label.text-color-background{color:#f7f7f7}:host>label .novo-radio-button-label.text-color-backgroundDark{color:#e2e2e2}:host>label .novo-radio-button-label.text-color-presentation{color:#5b6770}:host>label .novo-radio-button-label.text-color-bullhorn{color:#ff6900}:host>label .novo-radio-button-label.text-color-pulse{color:#3bafda}:host>label .novo-radio-button-label.text-color-company{color:#39d}:host>label .novo-radio-button-label.text-color-candidate{color:#4b7}:host>label .novo-radio-button-label.text-color-lead{color:#a69}:host>label .novo-radio-button-label.text-color-contact{color:#fa4}:host>label .novo-radio-button-label.text-color-clientcontact{color:#fa4}:host>label .novo-radio-button-label.text-color-opportunity{color:#625}:host>label .novo-radio-button-label.text-color-job{color:#b56}:host>label .novo-radio-button-label.text-color-joborder{color:#b56}:host>label .novo-radio-button-label.text-color-submission{color:#a9adbb}:host>label .novo-radio-button-label.text-color-sendout{color:#747884}:host>label .novo-radio-button-label.text-color-placement{color:#0b344f}:host>label .novo-radio-button-label.text-color-note{color:#747884}:host>label .novo-radio-button-label.text-color-contract{color:#454ea0}:host>label .novo-radio-button-label.text-color-task{color:#4f5361}:host>label .novo-radio-button-label.text-color-jobCode{color:#696d79}:host>label .novo-radio-button-label.text-color-earnCode{color:#696d79}:host>label .novo-radio-button-label.text-color-invoiceStatement{color:#696d79}:host>label .novo-radio-button-label.text-color-billableCharge{color:#696d79}:host>label .novo-radio-button-label.text-color-payableCharge{color:#696d79}:host>label .novo-radio-button-label.text-color-user{color:#696d79}:host>label .novo-radio-button-label.text-color-corporateUser{color:#696d79}:host>label .novo-radio-button-label.text-color-distributionList{color:#696d79}:host>label .novo-radio-button-label.text-color-credential{color:#696d79}:host>label .novo-radio-button-label.text-color-person{color:#696d79}:host>label .novo-radio-button-label.margin-before{margin-top:.4rem}:host>label .novo-radio-button-label.margin-after{margin-bottom:.8rem}:host>label .novo-radio-button-label.text-length-small{max-width:40ch}:host>label .novo-radio-button-label.text-length-medium{max-width:55ch}:host>label .novo-radio-button-label.text-length-large{max-width:70ch}:host>label .novo-radio-button-label.text-weight-hairline{font-weight:100}:host>label .novo-radio-button-label.text-weight-thin{font-weight:200}:host>label .novo-radio-button-label.text-weight-light{font-weight:300}:host>label .novo-radio-button-label.text-weight-normal{font-weight:400}:host>label .novo-radio-button-label.text-weight-medium{font-weight:500}:host>label .novo-radio-button-label.text-weight-semibold{font-weight:600}:host>label .novo-radio-button-label.text-weight-bold{font-weight:700}:host>label .novo-radio-button-label.text-weight-extrabold{font-weight:800}:host>label .novo-radio-button-label.text-weight-heavy{font-weight:900}:host>label .novo-radio-button-label.text-weight-lighter{font-weight:lighter}:host>label .novo-radio-button-label.text-weight-bolder{font-weight:bolder}:host>label ::ng-deep i{margin-right:5px;transition:all .2s ease-in-out}:host>label ::ng-deep i.bhi-checkbox-empty,:host>label ::ng-deep i.bhi-radio-empty{color:#d2d2d2}:host>label ::ng-deep i.bhi-checkbox-filled,:host>label ::ng-deep i.bhi-radio-filled{color:#4a89dc}:host>label.disabled{pointer-events:auto;cursor:not-allowed;opacity:.4}:host>label.disabled button[theme].has-icon{opacity:.4}:host novo-button[theme].has-icon{transition:all .1s ease-in-out;color:#4a89dc;background:#fff;opacity:1}:host novo-button[theme].has-icon.checked{color:#fff;background:#4a89dc}:host novo-button[theme].has-icon.checked[color=black]{color:#fff;background:#000}:host novo-button[theme].has-icon.checked[color=white]{color:#fff;background:#fff}:host novo-button[theme].has-icon.checked[color=gray]{color:#fff;background:#9e9e9e}:host novo-button[theme].has-icon.checked[color=grey]{color:#fff;background:#9e9e9e}:host novo-button[theme].has-icon.checked[color=offWhite]{color:#fff;background:#f7f7f7}:host novo-button[theme].has-icon.checked[color=bright]{color:#fff;background:#f7f7f7}:host novo-button[theme].has-icon.checked[color=light]{color:#fff;background:#dbdbdb}:host novo-button[theme].has-icon.checked[color=neutral]{color:#fff;background:#4f5361}:host novo-button[theme].has-icon.checked[color=dark]{color:#fff;background:#3d464d}:host novo-button[theme].has-icon.checked[color=orange]{color:#fff;background:#ff6900}:host novo-button[theme].has-icon.checked[color=navigation]{color:#fff;background:#202945}:host novo-button[theme].has-icon.checked[color=skyBlue]{color:#fff;background:#009bdf}:host novo-button[theme].has-icon.checked[color=steel]{color:#fff;background:#5b6770}:host novo-button[theme].has-icon.checked[color=metal]{color:#fff;background:#637893}:host novo-button[theme].has-icon.checked[color=sand]{color:#fff;background:#f4f4f4}:host novo-button[theme].has-icon.checked[color=silver]{color:#fff;background:#e2e2e2}:host novo-button[theme].has-icon.checked[color=stone]{color:#fff;background:#bebebe}:host novo-button[theme].has-icon.checked[color=ash]{color:#fff;background:#a0a0a0}:host novo-button[theme].has-icon.checked[color=slate]{color:#fff;background:#707070}:host novo-button[theme].has-icon.checked[color=onyx]{color:#fff;background:#526980}:host novo-button[theme].has-icon.checked[color=charcoal]{color:#fff;background:#282828}:host novo-button[theme].has-icon.checked[color=moonlight]{color:#fff;background:#1a242f}:host novo-button[theme].has-icon.checked[color=midnight]{color:#fff;background:#202945}:host novo-button[theme].has-icon.checked[color=darkness]{color:#fff;background:#161f27}:host novo-button[theme].has-icon.checked[color=navy]{color:#fff;background:#0d2d42}:host novo-button[theme].has-icon.checked[color=aqua]{color:#fff;background:#3bafda}:host novo-button[theme].has-icon.checked[color=ocean]{color:#fff;background:#4a89dc}:host novo-button[theme].has-icon.checked[color=mint]{color:#fff;background:#37bc9b}:host novo-button[theme].has-icon.checked[color=grass]{color:#fff;background:#8cc152}:host novo-button[theme].has-icon.checked[color=sunflower]{color:#fff;background:#f6b042}:host novo-button[theme].has-icon.checked[color=bittersweet]{color:#fff;background:#eb6845}:host novo-button[theme].has-icon.checked[color=grapefruit]{color:#fff;background:#da4453}:host novo-button[theme].has-icon.checked[color=carnation]{color:#fff;background:#d770ad}:host novo-button[theme].has-icon.checked[color=lavender]{color:#fff;background:#967adc}:host novo-button[theme].has-icon.checked[color=mountain]{color:#fff;background:#9678b6}:host novo-button[theme].has-icon.checked[color=info]{color:#fff;background:#4a89dc}:host novo-button[theme].has-icon.checked[color=positive]{color:#fff;background:#4a89dc}:host novo-button[theme].has-icon.checked[color=success]{color:#fff;background:#8cc152}:host novo-button[theme].has-icon.checked[color=negative]{color:#fff;background:#da4453}:host novo-button[theme].has-icon.checked[color=danger]{color:#fff;background:#da4453}:host novo-button[theme].has-icon.checked[color=error]{color:#fff;background:#da4453}:host novo-button[theme].has-icon.checked[color=warning]{color:#fff;background:#f6b042}:host novo-button[theme].has-icon.checked[color=empty]{color:#fff;background:#cccdcc}:host novo-button[theme].has-icon.checked[color=disabled]{color:#fff;background:#bebebe}:host novo-button[theme].has-icon.checked[color=background]{color:#fff;background:#f7f7f7}:host novo-button[theme].has-icon.checked[color=backgroundDark]{color:#fff;background:#e2e2e2}:host novo-button[theme].has-icon.checked[color=presentation]{color:#fff;background:#5b6770}:host novo-button[theme].has-icon.checked[color=bullhorn]{color:#fff;background:#ff6900}:host novo-button[theme].has-icon.checked[color=pulse]{color:#fff;background:#3bafda}:host novo-button[theme].has-icon.checked[color=company]{color:#fff;background:#39d}:host novo-button[theme].has-icon.checked[color=candidate]{color:#fff;background:#4b7}:host novo-button[theme].has-icon.checked[color=lead]{color:#fff;background:#a69}:host novo-button[theme].has-icon.checked[color=contact]{color:#fff;background:#fa4}:host novo-button[theme].has-icon.checked[color=clientcontact]{color:#fff;background:#fa4}:host novo-button[theme].has-icon.checked[color=opportunity]{color:#fff;background:#625}:host novo-button[theme].has-icon.checked[color=job]{color:#fff;background:#b56}:host novo-button[theme].has-icon.checked[color=joborder]{color:#fff;background:#b56}:host novo-button[theme].has-icon.checked[color=submission]{color:#fff;background:#a9adbb}:host novo-button[theme].has-icon.checked[color=sendout]{color:#fff;background:#747884}:host novo-button[theme].has-icon.checked[color=placement]{color:#fff;background:#0b344f}:host novo-button[theme].has-icon.checked[color=note]{color:#fff;background:#747884}:host novo-button[theme].has-icon.checked[color=contract]{color:#fff;background:#454ea0}:host novo-button[theme].has-icon.checked[color=task]{color:#fff;background:#4f5361}:host novo-button[theme].has-icon.checked[color=jobCode]{color:#fff;background:#696d79}:host novo-button[theme].has-icon.checked[color=earnCode]{color:#fff;background:#696d79}:host novo-button[theme].has-icon.checked[color=invoiceStatement]{color:#fff;background:#696d79}:host novo-button[theme].has-icon.checked[color=billableCharge]{color:#fff;background:#696d79}:host novo-button[theme].has-icon.checked[color=payableCharge]{color:#fff;background:#696d79}:host novo-button[theme].has-icon.checked[color=user]{color:#fff;background:#696d79}:host novo-button[theme].has-icon.checked[color=corporateUser]{color:#fff;background:#696d79}:host novo-button[theme].has-icon.checked[color=distributionList]{color:#fff;background:#696d79}:host novo-button[theme].has-icon.checked[color=credential]{color:#fff;background:#696d79}:host novo-button[theme].has-icon.checked[color=person]{color:#fff;background:#696d79}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.NovoButtonElement, selector: "novo-button,button[theme]", inputs: ["color", "side", "size", "theme", "loading", "icon", "secondIcon", "disabled"] }] }); }
132
132
  }
133
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoRadioElement, decorators: [{
133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoRadioElement, decorators: [{
134
134
  type: Component,
135
135
  args: [{ selector: 'novo-radio', providers: [RADIO_VALUE_ACCESSOR], template: `
136
136
  <input
@@ -379,14 +379,14 @@ class NovoRadioGroup extends NovoRadioGroupMixins {
379
379
  }
380
380
  // TODO
381
381
  }
382
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoRadioGroup, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
383
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: NovoRadioGroup, isStandalone: false, selector: "novo-radio-group", inputs: { id: "id", tabindex: "tabindex", errorStateMatcher: "errorStateMatcher", appearance: "appearance", value: "value", name: "name", disabled: "disabled", required: "required", placeholder: "placeholder" }, outputs: { change: "change", blur: "blur" }, host: { properties: { "class.novo-radio-group-appearance-horizontal": "appearance==\"horizontal\"", "class.novo-radio-group-appearance-vertical": "appearance==\"vertical\"", "class.disabled": "this.disabled" }, classAttribute: "novo-radio-group" }, providers: [
382
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoRadioGroup, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
383
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.17", type: NovoRadioGroup, isStandalone: false, selector: "novo-radio-group", inputs: { id: "id", tabindex: "tabindex", errorStateMatcher: "errorStateMatcher", appearance: "appearance", value: "value", name: "name", disabled: "disabled", required: "required", placeholder: "placeholder" }, outputs: { change: "change", blur: "blur" }, host: { properties: { "class.novo-radio-group-appearance-horizontal": "appearance==\"horizontal\"", "class.novo-radio-group-appearance-vertical": "appearance==\"vertical\"", "class.disabled": "this.disabled" }, classAttribute: "novo-radio-group" }, providers: [
384
384
  RADIOGROUP_VALUE_ACCESSOR,
385
385
  { provide: NOVO_RADIO_GROUP, useExisting: NovoRadioGroup },
386
386
  { provide: NovoFieldControl, useExisting: NovoRadioGroup },
387
387
  ], queries: [{ propertyName: "_radios", predicate: i0.forwardRef(() => NovoRadioElement), descendants: true }], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:flex}:host.novo-radio-group-appearance-horizontal novo-radio:not(:last-child) .novo-radio-button-label{margin-right:1rem}:host.novo-radio-group-appearance-vertical{flex-flow:column;gap:.2rem}:host>novo-radio{margin:0}:host>novo-radio novo-button{pointer-events:none;border-radius:0!important}:host>novo-radio novo-button.unchecked{opacity:.6}:host>novo-radio novo-button[theme=icon]{margin-right:0;border:1px solid #4a89dc}:host>novo-radio:first-child novo-button{border-top-left-radius:3px!important;border-bottom-left-radius:3px!important}:host>novo-radio:first-child novo-button[theme=icon]{border-right-width:0px!important}:host>novo-radio:last-child novo-button{border-top-right-radius:3px!important;border-bottom-right-radius:3px!important;border-right-width:1px!important;border-right-style:solid!important}:host>novo-radio:last-child novo-button[theme=icon]{border-left-width:0px!important}\n"] }); }
388
388
  }
389
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoRadioGroup, decorators: [{
389
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoRadioGroup, decorators: [{
390
390
  type: Component,
391
391
  args: [{ selector: 'novo-radio-group', providers: [
392
392
  RADIOGROUP_VALUE_ACCESSOR,
@@ -429,11 +429,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
429
429
 
430
430
  // NG2
431
431
  class NovoRadioModule {
432
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoRadioModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
433
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: NovoRadioModule, declarations: [NovoRadioElement, NovoRadioGroup], imports: [CommonModule, NovoButtonModule], exports: [NovoRadioElement, NovoRadioGroup] }); }
434
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoRadioModule, imports: [CommonModule, NovoButtonModule] }); }
432
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoRadioModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
433
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.17", ngImport: i0, type: NovoRadioModule, declarations: [NovoRadioElement, NovoRadioGroup], imports: [CommonModule, NovoButtonModule], exports: [NovoRadioElement, NovoRadioGroup] }); }
434
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoRadioModule, imports: [CommonModule, NovoButtonModule] }); }
435
435
  }
436
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoRadioModule, decorators: [{
436
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoRadioModule, decorators: [{
437
437
  type: NgModule,
438
438
  args: [{
439
439
  imports: [CommonModule, NovoButtonModule],
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-elements-radio.mjs","sources":["../../../projects/novo-elements/src/elements/radio/tokens.ts","../../../projects/novo-elements/src/elements/radio/Radio.ts","../../../projects/novo-elements/src/elements/radio/RadioGroup.ts","../../../projects/novo-elements/src/elements/radio/Radio.module.ts","../../../projects/novo-elements/src/elements/radio/novo-elements-elements-radio.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport interface RadioGroup<T = any> {\n name: string;\n value: T;\n disabled: boolean;\n appearance: 'vertical' | 'horizontal';\n}\n\nexport type ComponentType<T> = new (...args: any[]) => T;\n\nexport const NOVO_RADIO_GROUP = new InjectionToken<ComponentType<RadioGroup>>('RadioGroupComponent');\n","// NG2\nimport {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n forwardRef,\n Inject,\n Input,\n OnInit,\n Optional,\n Output,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { NOVO_RADIO_GROUP, RadioGroup } from './tokens';\n\n// make radio-buttons ids unique\nlet nextId = 0;\n\n// Value accessor for the component (supports ngModel)\nconst RADIO_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoRadioElement),\n multi: true,\n};\n\n@Component({\n selector: 'novo-radio',\n providers: [RADIO_VALUE_ACCESSOR],\n template: `\n <input\n type=\"radio\"\n [id]=\"id\"\n [name]=\"name\"\n [checked]=\"_checked\"\n [tabIndex]=\"tabindex\"\n [disabled]=\"disabled\"\n (focus)=\"focus.emit($event)\"\n (blur)=\"blur.emit($event)\"\n (change)=\"_onInputChange($event)\"\n />\n <label [attr.for]=\"id\" [class.disabled]=\"disabled\">\n <novo-button\n *ngIf=\"button\"\n [ngClass]=\"{ unchecked: !_checked, checked: _checked, 'has-icon': !!icon }\"\n [theme]=\"theme\"\n [color]=\"_checked ? color : null\"\n [icon]=\"icon\"\n [size]=\"size\"\n >\n {{ label }}\n </novo-button>\n <div *ngIf=\"!button\" class=\"novo-radio-button-label\">\n <i [ngClass]=\"{ 'bhi-radio-empty': !_checked, 'bhi-radio-filled': _checked }\"></i>\n {{ label }}\n <ng-content></ng-content>\n </div>\n </label>\n `,\n styleUrls: ['./Radio.scss'],\n host: {\n '[class.vertical]': 'vertical',\n },\n standalone: false,\n})\nexport class NovoRadioElement implements ControlValueAccessor, OnInit {\n private _uniqueId: string = `novo-radio-${++nextId}`;\n private _value: boolean | string = false;\n _checked: boolean = false;\n\n @Input() id: string = this._uniqueId;\n @Input() name: string = this._uniqueId;\n @Input() tabindex: number = 0;\n @Input() vertical: boolean = false;\n @Input() label: string;\n @Input() button: boolean = false;\n @Input() theme: string = 'secondary';\n @Input() size: string;\n @Input() icon: string;\n @Input() color: string;\n @Input() disabled: boolean;\n\n @Output() change = new EventEmitter();\n @Output() blur = new EventEmitter();\n @Output() focus = new EventEmitter();\n\n @Input()\n get checked(): boolean {\n return this._checked;\n }\n set checked(value: boolean) {\n value = !!value;\n if (this._checked !== value) {\n this._checked = value;\n if (this._checked && this.radioGroup && this.radioGroup.value !== this.value) {\n this.radioGroup.value = this.value;\n }\n this.onChangeCallback(this._value);\n }\n }\n\n @Input()\n get value(): boolean | string {\n return this._value;\n }\n set value(value) {\n if (this.value !== value) {\n this._value = value;\n if (this.radioGroup) {\n this._checked = this.radioGroup.value === this.value;\n }\n this.onChangeCallback(this._value);\n }\n }\n\n constructor(@Inject(NOVO_RADIO_GROUP) @Optional() public radioGroup: RadioGroup, private ref: ChangeDetectorRef) {\n this.radioGroup = radioGroup;\n }\n\n ngOnInit() {\n if (this.radioGroup) {\n this.checked = this.radioGroup.value === this._value;\n this.vertical = this.radioGroup.appearance === 'vertical';\n this.name = this.radioGroup.name;\n this.disabled = this.disabled || this.radioGroup.disabled;\n }\n }\n\n _onInputChange(event: Event) {\n event.stopPropagation();\n this.change.emit(event);\n\n this.checked = true;\n\n if (this.radioGroup) {\n this.radioGroup.value = this.value;\n }\n }\n\n writeValue(value: any): void {\n this.value = value;\n this.ref.markForCheck();\n }\n\n registerOnChange(fn: any): void {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouchedCallback = fn;\n }\n\n private onChangeCallback = (_: any) => {\n // placeholder\n };\n\n private onTouchedCallback = () => {\n // placeholder\n };\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n }\n}\n","// NG2\nimport { FocusKeyManager } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n AfterContentInit,\n Component,\n ContentChildren,\n EventEmitter,\n forwardRef,\n HostBinding,\n Input,\n Output,\n QueryList,\n} from '@angular/core';\nimport { ControlValueAccessor, FormGroupDirective, NgControl, NgForm, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { CanUpdateErrorStateCtor, ErrorStateMatcher, mixinErrorState } from 'novo-elements/elements/common';\nimport { NovoFieldControl } from 'novo-elements/elements/field';\nimport { NovoRadioElement } from './Radio';\nimport { NOVO_RADIO_GROUP } from './tokens';\n\n// make radio-button-group ids unique\nlet nextId = 0;\n// Value accessor for the component (supports ngModel)\nconst RADIOGROUP_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoRadioGroup),\n multi: true,\n};\n\n// Boilerplate for applying mixins\nclass NovoRadioGroupBase {\n constructor(\n public _defaultErrorStateMatcher: ErrorStateMatcher,\n public _parentForm: NgForm,\n public _parentFormGroup: FormGroupDirective,\n public ngControl: NgControl,\n ) {}\n}\nconst NovoRadioGroupMixins: CanUpdateErrorStateCtor & typeof NovoRadioGroupBase = mixinErrorState(NovoRadioGroupBase);\n\n@Component({\n selector: 'novo-radio-group',\n providers: [\n RADIOGROUP_VALUE_ACCESSOR,\n { provide: NOVO_RADIO_GROUP, useExisting: NovoRadioGroup },\n { provide: NovoFieldControl, useExisting: NovoRadioGroup },\n ],\n template: '<ng-content></ng-content>',\n styleUrls: ['./radio-group.scss'],\n host: {\n class: 'novo-radio-group',\n '[class.novo-radio-group-appearance-horizontal]': 'appearance==\"horizontal\"',\n '[class.novo-radio-group-appearance-vertical]': 'appearance==\"vertical\"',\n },\n standalone: false,\n})\nexport class NovoRadioGroup extends NovoRadioGroupMixins implements NovoFieldControl<any>, ControlValueAccessor, AfterContentInit {\n private _uniqueId: string = `novo-radio-group-${++nextId}`;\n /** The aria-describedby attribute on the chip list for improved a11y. */\n _ariaDescribedby: string;\n /** Tab index for the chip list. */\n _tabIndex = 0;\n /** User defined tab index. */\n _userTabIndex: number | null = null;\n /** The FocusKeyManager which handles focus. */\n _keyManager: FocusKeyManager<NovoRadioElement>;\n\n readonly controlType: string = 'radio-group';\n /** @docs-private Implemented as part of NovoFieldControl. */\n lastKeyValue: string = null;\n /** @docs-private Implemented as part of NovoFieldControl.*/\n lastCaretPosition: number | null;\n\n @Input() id: string = this._uniqueId;\n @Input() tabindex: number = 0;\n /** An object used to control when error messages are shown. */\n @Input() errorStateMatcher: ErrorStateMatcher;\n\n @Output() change = new EventEmitter();\n @Output() blur = new EventEmitter();\n\n @ContentChildren(forwardRef(() => NovoRadioElement), { descendants: true })\n _radios: QueryList<NovoRadioElement>;\n\n @Input()\n get appearance(): any {\n return this._appearance;\n }\n\n set appearance(value) {\n if (this._appearance !== value) {\n this._appearance = value;\n this._updateRadioButtonAppearance();\n }\n }\n\n @Input() get value(): any {\n return this._value;\n }\n\n set value(value) {\n if (this._value !== value) {\n this._value = value;\n this._updateSelectedRadioFromValue();\n this.onChangeCallback(this._value);\n }\n }\n\n @Input()\n get name(): string {\n return this._name;\n }\n\n set name(value: string) {\n if (this._name !== value) {\n this._updateRadioButtonNames();\n }\n }\n\n @HostBinding('class.disabled')\n @Input()\n get disabled(): boolean {\n return this.ngControl ? !!this.ngControl.disabled : this._disabled;\n }\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value);\n this._updateRadioButtonDisabled();\n }\n\n /**\n * Implemented as part of NovoFieldControl.\n * @docs-private\n */\n @Input()\n get required(): boolean {\n return this._required;\n }\n set required(value: boolean) {\n this._required = coerceBooleanProperty(value);\n this.stateChanges.next();\n }\n\n /** Implemented as part of NovoFieldControl. */\n @Input()\n get placeholder(): string {\n return this._placeholder;\n }\n set placeholder(value: string) {\n this._placeholder = value;\n }\n\n get selected(): NovoRadioElement {\n return this._selected;\n }\n\n protected _name: string = this._uniqueId;\n protected _value: boolean = false;\n protected _selected: NovoRadioElement;\n protected _required: boolean = false;\n protected _disabled: boolean = false;\n protected _placeholder: string;\n protected _appearance: 'horizontal' | 'vertical' = 'horizontal';\n\n ngAfterContentInit() {\n this._updateRadioButtonAppearance();\n this._updateRadioButtonNames();\n this._updateSelectedRadioFromValue();\n }\n\n writeValue(value: any): void {\n this.value = value;\n }\n\n registerOnChange(fn: any): void {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouchedCallback = fn;\n }\n\n private onChangeCallback = (_: any) => {\n // placeholder\n };\n\n private onTouchedCallback = () => {\n // placeholder\n };\n\n private _updateRadioButtonAppearance(): void {\n if (this._radios) {\n this._radios.forEach((radio) => {\n radio.vertical = this.appearance === 'vertical';\n });\n }\n }\n\n private _updateRadioButtonNames(): void {\n if (this._radios) {\n this._radios.forEach((radio) => {\n radio.name = this.name;\n });\n }\n }\n\n private _updateRadioButtonDisabled(): void {\n if (this._radios) {\n this._radios.forEach((radio) => {\n radio.disabled = this.disabled;\n });\n }\n }\n\n private _updateSelectedRadioFromValue(): void {\n if (this._radios) {\n this._radios.forEach((radio) => {\n radio.checked = this.value === radio.value;\n if (radio.checked) {\n this._selected = radio;\n }\n });\n }\n }\n\n /** Whether any radio buttons has focus. */\n get focused(): boolean {\n // todo: implement this.\n return false;\n }\n\n /** Implemented as part of NovoFieldControl. */\n get empty(): boolean {\n return this.value === null;\n }\n\n /** Implemented as part of NovoFieldControl. */\n get shouldLabelFloat(): boolean {\n return !this.empty || this.focused;\n }\n\n /** Implemented as part of NovoFieldControl. */\n setDescribedByIds(ids: string[]) {\n this._ariaDescribedby = ids.join(' ');\n }\n\n /** Implemented as part of NovoFieldControl. */\n onContainerClick(event: MouseEvent) {\n this.focus();\n }\n\n /**\n * Focuses the first non-disabled chip in this chip list, or the associated input when there\n * are no eligible chips.\n */\n focus(options?: FocusOptions): void {\n if (this.disabled) {\n return;\n }\n // TODO\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n// APP\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoRadioElement } from './Radio';\nimport { NovoRadioGroup } from './RadioGroup';\n\n@NgModule({\n imports: [CommonModule, NovoButtonModule],\n declarations: [NovoRadioElement, NovoRadioGroup],\n exports: [NovoRadioElement, NovoRadioGroup],\n})\nexport class NovoRadioModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["nextId"],"mappings":"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"}
1
+ {"version":3,"file":"novo-elements-elements-radio.mjs","sources":["../../../projects/novo-elements/src/elements/radio/tokens.ts","../../../projects/novo-elements/src/elements/radio/Radio.ts","../../../projects/novo-elements/src/elements/radio/RadioGroup.ts","../../../projects/novo-elements/src/elements/radio/Radio.module.ts","../../../projects/novo-elements/src/elements/radio/novo-elements-elements-radio.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport interface RadioGroup<T = any> {\n name: string;\n value: T;\n disabled: boolean;\n appearance: 'vertical' | 'horizontal';\n}\n\nexport type ComponentType<T> = new (...args: any[]) => T;\n\nexport const NOVO_RADIO_GROUP = new InjectionToken<ComponentType<RadioGroup>>('RadioGroupComponent');\n","// NG2\nimport {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n forwardRef,\n Inject,\n Input,\n OnInit,\n Optional,\n Output,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { NOVO_RADIO_GROUP, RadioGroup } from './tokens';\n\n// make radio-buttons ids unique\nlet nextId = 0;\n\n// Value accessor for the component (supports ngModel)\nconst RADIO_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoRadioElement),\n multi: true,\n};\n\n@Component({\n selector: 'novo-radio',\n providers: [RADIO_VALUE_ACCESSOR],\n template: `\n <input\n type=\"radio\"\n [id]=\"id\"\n [name]=\"name\"\n [checked]=\"_checked\"\n [tabIndex]=\"tabindex\"\n [disabled]=\"disabled\"\n (focus)=\"focus.emit($event)\"\n (blur)=\"blur.emit($event)\"\n (change)=\"_onInputChange($event)\"\n />\n <label [attr.for]=\"id\" [class.disabled]=\"disabled\">\n <novo-button\n *ngIf=\"button\"\n [ngClass]=\"{ unchecked: !_checked, checked: _checked, 'has-icon': !!icon }\"\n [theme]=\"theme\"\n [color]=\"_checked ? color : null\"\n [icon]=\"icon\"\n [size]=\"size\"\n >\n {{ label }}\n </novo-button>\n <div *ngIf=\"!button\" class=\"novo-radio-button-label\">\n <i [ngClass]=\"{ 'bhi-radio-empty': !_checked, 'bhi-radio-filled': _checked }\"></i>\n {{ label }}\n <ng-content></ng-content>\n </div>\n </label>\n `,\n styleUrls: ['./Radio.scss'],\n host: {\n '[class.vertical]': 'vertical',\n },\n standalone: false,\n})\nexport class NovoRadioElement implements ControlValueAccessor, OnInit {\n private _uniqueId: string = `novo-radio-${++nextId}`;\n private _value: boolean | string = false;\n _checked: boolean = false;\n\n @Input() id: string = this._uniqueId;\n @Input() name: string = this._uniqueId;\n @Input() tabindex: number = 0;\n @Input() vertical: boolean = false;\n @Input() label: string;\n @Input() button: boolean = false;\n @Input() theme: string = 'secondary';\n @Input() size: string;\n @Input() icon: string;\n @Input() color: string;\n @Input() disabled: boolean;\n\n @Output() change = new EventEmitter();\n @Output() blur = new EventEmitter();\n @Output() focus = new EventEmitter();\n\n @Input()\n get checked(): boolean {\n return this._checked;\n }\n set checked(value: boolean) {\n value = !!value;\n if (this._checked !== value) {\n this._checked = value;\n if (this._checked && this.radioGroup && this.radioGroup.value !== this.value) {\n this.radioGroup.value = this.value;\n }\n this.onChangeCallback(this._value);\n }\n }\n\n @Input()\n get value(): boolean | string {\n return this._value;\n }\n set value(value) {\n if (this.value !== value) {\n this._value = value;\n if (this.radioGroup) {\n this._checked = this.radioGroup.value === this.value;\n }\n this.onChangeCallback(this._value);\n }\n }\n\n constructor(@Inject(NOVO_RADIO_GROUP) @Optional() public radioGroup: RadioGroup, private ref: ChangeDetectorRef) {\n this.radioGroup = radioGroup;\n }\n\n ngOnInit() {\n if (this.radioGroup) {\n this.checked = this.radioGroup.value === this._value;\n this.vertical = this.radioGroup.appearance === 'vertical';\n this.name = this.radioGroup.name;\n this.disabled = this.disabled || this.radioGroup.disabled;\n }\n }\n\n _onInputChange(event: Event) {\n event.stopPropagation();\n this.change.emit(event);\n\n this.checked = true;\n\n if (this.radioGroup) {\n this.radioGroup.value = this.value;\n }\n }\n\n writeValue(value: any): void {\n this.value = value;\n this.ref.markForCheck();\n }\n\n registerOnChange(fn: any): void {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouchedCallback = fn;\n }\n\n private onChangeCallback = (_: any) => {\n // placeholder\n };\n\n private onTouchedCallback = () => {\n // placeholder\n };\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n }\n}\n","// NG2\nimport { FocusKeyManager } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n AfterContentInit,\n Component,\n ContentChildren,\n EventEmitter,\n forwardRef,\n HostBinding,\n Input,\n Output,\n QueryList,\n} from '@angular/core';\nimport { ControlValueAccessor, FormGroupDirective, NgControl, NgForm, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { CanUpdateErrorStateCtor, ErrorStateMatcher, mixinErrorState } from 'novo-elements/elements/common';\nimport { NovoFieldControl } from 'novo-elements/elements/field';\nimport { NovoRadioElement } from './Radio';\nimport { NOVO_RADIO_GROUP } from './tokens';\n\n// make radio-button-group ids unique\nlet nextId = 0;\n// Value accessor for the component (supports ngModel)\nconst RADIOGROUP_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoRadioGroup),\n multi: true,\n};\n\n// Boilerplate for applying mixins\nclass NovoRadioGroupBase {\n constructor(\n public _defaultErrorStateMatcher: ErrorStateMatcher,\n public _parentForm: NgForm,\n public _parentFormGroup: FormGroupDirective,\n public ngControl: NgControl,\n ) {}\n}\nconst NovoRadioGroupMixins: CanUpdateErrorStateCtor & typeof NovoRadioGroupBase = mixinErrorState(NovoRadioGroupBase);\n\n@Component({\n selector: 'novo-radio-group',\n providers: [\n RADIOGROUP_VALUE_ACCESSOR,\n { provide: NOVO_RADIO_GROUP, useExisting: NovoRadioGroup },\n { provide: NovoFieldControl, useExisting: NovoRadioGroup },\n ],\n template: '<ng-content></ng-content>',\n styleUrls: ['./radio-group.scss'],\n host: {\n class: 'novo-radio-group',\n '[class.novo-radio-group-appearance-horizontal]': 'appearance==\"horizontal\"',\n '[class.novo-radio-group-appearance-vertical]': 'appearance==\"vertical\"',\n },\n standalone: false,\n})\nexport class NovoRadioGroup extends NovoRadioGroupMixins implements NovoFieldControl<any>, ControlValueAccessor, AfterContentInit {\n private _uniqueId: string = `novo-radio-group-${++nextId}`;\n /** The aria-describedby attribute on the chip list for improved a11y. */\n _ariaDescribedby: string;\n /** Tab index for the chip list. */\n _tabIndex = 0;\n /** User defined tab index. */\n _userTabIndex: number | null = null;\n /** The FocusKeyManager which handles focus. */\n _keyManager: FocusKeyManager<NovoRadioElement>;\n\n readonly controlType: string = 'radio-group';\n /** @docs-private Implemented as part of NovoFieldControl. */\n lastKeyValue: string = null;\n /** @docs-private Implemented as part of NovoFieldControl.*/\n lastCaretPosition: number | null;\n\n @Input() id: string = this._uniqueId;\n @Input() tabindex: number = 0;\n /** An object used to control when error messages are shown. */\n @Input() errorStateMatcher: ErrorStateMatcher;\n\n @Output() change = new EventEmitter();\n @Output() blur = new EventEmitter();\n\n @ContentChildren(forwardRef(() => NovoRadioElement), { descendants: true })\n _radios: QueryList<NovoRadioElement>;\n\n @Input()\n get appearance(): any {\n return this._appearance;\n }\n\n set appearance(value) {\n if (this._appearance !== value) {\n this._appearance = value;\n this._updateRadioButtonAppearance();\n }\n }\n\n @Input() get value(): any {\n return this._value;\n }\n\n set value(value) {\n if (this._value !== value) {\n this._value = value;\n this._updateSelectedRadioFromValue();\n this.onChangeCallback(this._value);\n }\n }\n\n @Input()\n get name(): string {\n return this._name;\n }\n\n set name(value: string) {\n if (this._name !== value) {\n this._updateRadioButtonNames();\n }\n }\n\n @HostBinding('class.disabled')\n @Input()\n get disabled(): boolean {\n return this.ngControl ? !!this.ngControl.disabled : this._disabled;\n }\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value);\n this._updateRadioButtonDisabled();\n }\n\n /**\n * Implemented as part of NovoFieldControl.\n * @docs-private\n */\n @Input()\n get required(): boolean {\n return this._required;\n }\n set required(value: boolean) {\n this._required = coerceBooleanProperty(value);\n this.stateChanges.next();\n }\n\n /** Implemented as part of NovoFieldControl. */\n @Input()\n get placeholder(): string {\n return this._placeholder;\n }\n set placeholder(value: string) {\n this._placeholder = value;\n }\n\n get selected(): NovoRadioElement {\n return this._selected;\n }\n\n protected _name: string = this._uniqueId;\n protected _value: boolean = false;\n protected _selected: NovoRadioElement;\n protected _required: boolean = false;\n protected _disabled: boolean = false;\n protected _placeholder: string;\n protected _appearance: 'horizontal' | 'vertical' = 'horizontal';\n\n ngAfterContentInit() {\n this._updateRadioButtonAppearance();\n this._updateRadioButtonNames();\n this._updateSelectedRadioFromValue();\n }\n\n writeValue(value: any): void {\n this.value = value;\n }\n\n registerOnChange(fn: any): void {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouchedCallback = fn;\n }\n\n private onChangeCallback = (_: any) => {\n // placeholder\n };\n\n private onTouchedCallback = () => {\n // placeholder\n };\n\n private _updateRadioButtonAppearance(): void {\n if (this._radios) {\n this._radios.forEach((radio) => {\n radio.vertical = this.appearance === 'vertical';\n });\n }\n }\n\n private _updateRadioButtonNames(): void {\n if (this._radios) {\n this._radios.forEach((radio) => {\n radio.name = this.name;\n });\n }\n }\n\n private _updateRadioButtonDisabled(): void {\n if (this._radios) {\n this._radios.forEach((radio) => {\n radio.disabled = this.disabled;\n });\n }\n }\n\n private _updateSelectedRadioFromValue(): void {\n if (this._radios) {\n this._radios.forEach((radio) => {\n radio.checked = this.value === radio.value;\n if (radio.checked) {\n this._selected = radio;\n }\n });\n }\n }\n\n /** Whether any radio buttons has focus. */\n get focused(): boolean {\n // todo: implement this.\n return false;\n }\n\n /** Implemented as part of NovoFieldControl. */\n get empty(): boolean {\n return this.value === null;\n }\n\n /** Implemented as part of NovoFieldControl. */\n get shouldLabelFloat(): boolean {\n return !this.empty || this.focused;\n }\n\n /** Implemented as part of NovoFieldControl. */\n setDescribedByIds(ids: string[]) {\n this._ariaDescribedby = ids.join(' ');\n }\n\n /** Implemented as part of NovoFieldControl. */\n onContainerClick(event: MouseEvent) {\n this.focus();\n }\n\n /**\n * Focuses the first non-disabled chip in this chip list, or the associated input when there\n * are no eligible chips.\n */\n focus(options?: FocusOptions): void {\n if (this.disabled) {\n return;\n }\n // TODO\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n// APP\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoRadioElement } from './Radio';\nimport { NovoRadioGroup } from './RadioGroup';\n\n@NgModule({\n imports: [CommonModule, NovoButtonModule],\n declarations: [NovoRadioElement, NovoRadioGroup],\n exports: [NovoRadioElement, NovoRadioGroup],\n})\nexport class NovoRadioModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["nextId"],"mappings":"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"}
@@ -160,8 +160,8 @@ class NovoSearchBoxElement {
160
160
  this.writeValue(null);
161
161
  this._onChange(null);
162
162
  }
163
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoSearchBoxElement, deps: [{ token: i0.ElementRef }, { token: i1.NovoLabelService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
164
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: NovoSearchBoxElement, isStandalone: false, selector: "novo-search", inputs: { name: "name", icon: "icon", position: "position", placeholder: "placeholder", alwaysOpen: "alwaysOpen", theme: "theme", color: "color", closeOnSelect: "closeOnSelect", displayField: "displayField", displayValue: "displayValue", hint: "hint", keepOpen: "keepOpen", hasBackdrop: "hasBackdrop", allowPropagation: "allowPropagation", overrideElement: "overrideElement" }, outputs: { searchChanged: "searchChanged", applySearch: "applySearch" }, host: { properties: { "class.always-open": "this.alwaysOpen", "class.focused": "this.focused", "class.active": "this.active" } }, providers: [SEARCH_VALUE_ACCESSOR], viewQueries: [{ propertyName: "overlay", first: true, predicate: NovoOverlayTemplateComponent, descendants: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true, static: true }], ngImport: i0, template: `
163
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoSearchBoxElement, deps: [{ token: i0.ElementRef }, { token: i1.NovoLabelService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
164
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.17", type: NovoSearchBoxElement, isStandalone: false, selector: "novo-search", inputs: { name: "name", icon: "icon", position: "position", placeholder: "placeholder", alwaysOpen: "alwaysOpen", theme: "theme", color: "color", closeOnSelect: "closeOnSelect", displayField: "displayField", displayValue: "displayValue", hint: "hint", keepOpen: "keepOpen", hasBackdrop: "hasBackdrop", allowPropagation: "allowPropagation", overrideElement: "overrideElement" }, outputs: { searchChanged: "searchChanged", applySearch: "applySearch" }, host: { properties: { "class.always-open": "this.alwaysOpen", "class.focused": "this.focused", "class.active": "this.active" } }, providers: [SEARCH_VALUE_ACCESSOR], viewQueries: [{ propertyName: "overlay", first: true, predicate: NovoOverlayTemplateComponent, descendants: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true, static: true }], ngImport: i0, template: `
165
165
  <!-- SEARCH ICON -->
166
166
  <novo-icon (click)="showSearch($event)" [tooltip]="hint" tooltipPosition="bottom">{{ icon }}</novo-icon>
167
167
  <!-- SEARCH INPUT -->
@@ -190,7 +190,7 @@ class NovoSearchBoxElement {
190
190
  </novo-overlay-template>
191
191
  `, isInline: true, styles: [":host{display:grid;grid-template-areas:\"icon input\";grid-template-columns:3.2rem 1fr;grid-template-rows:1fr;align-items:center;height:3.2rem;background:#fff;font-size:1.4rem;border:1px solid #dbdbdb;border-radius:.2rem;max-width:400px;min-width:100px;transition:all .25s ease-in-out}:host[size=small]{font-size:1rem;height:2.4rem;grid-template-columns:2.4rem 1fr}:host[size=large]{font-size:1.8rem;height:4rem;grid-template-columns:4rem 1fr}:host>button[theme][theme=fab]{width:2.8em;height:2.8em;min-height:2.8em}:host>input{height:100%;display:block;background:transparent;position:relative;color:var(--text-main);z-index:10;border:none;transition:all .25s;backface-visibility:hidden}:host>input:focus,:host>input:active{outline:none}:host novo-icon{color:var(--text-main)}:host.focused{border:1px solid var(--selection)}:host.focused>novo-icon{color:var(--selection)!important}:host.focused[color=black]>novo-icon{color:#000!important}:host.focused[color=white]>novo-icon{color:#fff!important}:host.focused[color=gray]>novo-icon{color:#9e9e9e!important}:host.focused[color=grey]>novo-icon{color:#9e9e9e!important}:host.focused[color=offWhite]>novo-icon{color:#f7f7f7!important}:host.focused[color=bright]>novo-icon{color:#f7f7f7!important}:host.focused[color=light]>novo-icon{color:#dbdbdb!important}:host.focused[color=neutral]>novo-icon{color:#4f5361!important}:host.focused[color=dark]>novo-icon{color:#3d464d!important}:host.focused[color=orange]>novo-icon{color:#ff6900!important}:host.focused[color=navigation]>novo-icon{color:#202945!important}:host.focused[color=skyBlue]>novo-icon{color:#009bdf!important}:host.focused[color=steel]>novo-icon{color:#5b6770!important}:host.focused[color=metal]>novo-icon{color:#637893!important}:host.focused[color=sand]>novo-icon{color:#f4f4f4!important}:host.focused[color=silver]>novo-icon{color:#e2e2e2!important}:host.focused[color=stone]>novo-icon{color:#bebebe!important}:host.focused[color=ash]>novo-icon{color:#a0a0a0!important}:host.focused[color=slate]>novo-icon{color:#707070!important}:host.focused[color=onyx]>novo-icon{color:#526980!important}:host.focused[color=charcoal]>novo-icon{color:#282828!important}:host.focused[color=moonlight]>novo-icon{color:#1a242f!important}:host.focused[color=midnight]>novo-icon{color:#202945!important}:host.focused[color=darkness]>novo-icon{color:#161f27!important}:host.focused[color=navy]>novo-icon{color:#0d2d42!important}:host.focused[color=aqua]>novo-icon{color:#3bafda!important}:host.focused[color=ocean]>novo-icon{color:#4a89dc!important}:host.focused[color=mint]>novo-icon{color:#37bc9b!important}:host.focused[color=grass]>novo-icon{color:#8cc152!important}:host.focused[color=sunflower]>novo-icon{color:#f6b042!important}:host.focused[color=bittersweet]>novo-icon{color:#eb6845!important}:host.focused[color=grapefruit]>novo-icon{color:#da4453!important}:host.focused[color=carnation]>novo-icon{color:#d770ad!important}:host.focused[color=lavender]>novo-icon{color:#967adc!important}:host.focused[color=mountain]>novo-icon{color:#9678b6!important}:host.focused[color=info]>novo-icon{color:#4a89dc!important}:host.focused[color=positive]>novo-icon{color:#4a89dc!important}:host.focused[color=success]>novo-icon{color:#8cc152!important}:host.focused[color=negative]>novo-icon{color:#da4453!important}:host.focused[color=danger]>novo-icon{color:#da4453!important}:host.focused[color=error]>novo-icon{color:#da4453!important}:host.focused[color=warning]>novo-icon{color:#f6b042!important}:host.focused[color=empty]>novo-icon{color:#cccdcc!important}:host.focused[color=disabled]>novo-icon{color:#bebebe!important}:host.focused[color=background]>novo-icon{color:#f7f7f7!important}:host.focused[color=backgroundDark]>novo-icon{color:#e2e2e2!important}:host.focused[color=presentation]>novo-icon{color:#5b6770!important}:host.focused[color=bullhorn]>novo-icon{color:#ff6900!important}:host.focused[color=pulse]>novo-icon{color:#3bafda!important}:host.focused[color=company]>novo-icon{color:#39d!important}:host.focused[color=candidate]>novo-icon{color:#4b7!important}:host.focused[color=lead]>novo-icon{color:#a69!important}:host.focused[color=contact]>novo-icon{color:#fa4!important}:host.focused[color=clientcontact]>novo-icon{color:#fa4!important}:host.focused[color=opportunity]>novo-icon{color:#625!important}:host.focused[color=job]>novo-icon{color:#b56!important}:host.focused[color=joborder]>novo-icon{color:#b56!important}:host.focused[color=submission]>novo-icon{color:#a9adbb!important}:host.focused[color=sendout]>novo-icon{color:#747884!important}:host.focused[color=placement]>novo-icon{color:#0b344f!important}:host.focused[color=note]>novo-icon{color:#747884!important}:host.focused[color=contract]>novo-icon{color:#454ea0!important}:host.focused[color=task]>novo-icon{color:#4f5361!important}:host.focused[color=jobCode]>novo-icon{color:#696d79!important}:host.focused[color=earnCode]>novo-icon{color:#696d79!important}:host.focused[color=invoiceStatement]>novo-icon{color:#696d79!important}:host.focused[color=billableCharge]>novo-icon{color:#696d79!important}:host.focused[color=payableCharge]>novo-icon{color:#696d79!important}:host.focused[color=user]>novo-icon{color:#696d79!important}:host.focused[color=corporateUser]>novo-icon{color:#696d79!important}:host.focused[color=distributionList]>novo-icon{color:#696d79!important}:host.focused[color=credential]>novo-icon{color:#696d79!important}:host.focused[color=person]>novo-icon{color:#696d79!important}header novo-search.always-open:not(.focused) button{background:#ffffff40!important;color:#4a89dc40!important}header novo-search.always-open:not(.focused) input{background-color:#ffffff40!important;border-color:#ffffff40!important;color:#4a89dc40!important}header novo-search.always-open:not(.focused) input::placeholder{color:#cccdcc!important}\n"], dependencies: [{ kind: "component", type: i2.NovoIconComponent, selector: "novo-icon", inputs: ["raised", "theme", "shape", "color", "size", "smaller", "larger", "alt", "name"] }, { kind: "directive", type: i3.TooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "tooltipPosition", "tooltipType", "tooltipSize", "tooltipBounce", "tooltipNoAnimate", "tooltipRounded", "tooltipAlways", "tooltipPreline", "removeTooltipArrow", "tooltipAutoPosition", "tooltipIsHTML", "tooltipCloseOnClick", "tooltipOnOverflow", "tooltipActive"] }, { kind: "component", type: i4.NovoOverlayTemplateComponent, selector: "novo-overlay-template", inputs: ["position", "scrollStrategy", "width", "minWidth", "height", "closeOnSelect", "hasBackdrop", "parent"], outputs: ["select", "opening", "closing", "backDropClicked"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
192
192
  }
193
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoSearchBoxElement, decorators: [{
193
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoSearchBoxElement, decorators: [{
194
194
  type: Component,
195
195
  args: [{ selector: 'novo-search', providers: [SEARCH_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, template: `
196
196
  <!-- SEARCH ICON -->
@@ -273,11 +273,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
273
273
 
274
274
  // NG2
275
275
  class NovoSearchBoxModule {
276
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoSearchBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
277
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: NovoSearchBoxModule, declarations: [NovoSearchBoxElement], imports: [CommonModule, NovoIconModule, NovoPickerModule, NovoTooltipModule, NovoOverlayModule], exports: [NovoSearchBoxElement] }); }
278
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoSearchBoxModule, imports: [CommonModule, NovoIconModule, NovoPickerModule, NovoTooltipModule, NovoOverlayModule] }); }
276
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoSearchBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
277
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.17", ngImport: i0, type: NovoSearchBoxModule, declarations: [NovoSearchBoxElement], imports: [CommonModule, NovoIconModule, NovoPickerModule, NovoTooltipModule, NovoOverlayModule], exports: [NovoSearchBoxElement] }); }
278
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoSearchBoxModule, imports: [CommonModule, NovoIconModule, NovoPickerModule, NovoTooltipModule, NovoOverlayModule] }); }
279
279
  }
280
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoSearchBoxModule, decorators: [{
280
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NovoSearchBoxModule, decorators: [{
281
281
  type: NgModule,
282
282
  args: [{
283
283
  imports: [CommonModule, NovoIconModule, NovoPickerModule, NovoTooltipModule, NovoOverlayModule],