@impartner/design-components 1.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 (315) hide show
  1. package/LICENSE.txt +11 -0
  2. package/README.md +22 -0
  3. package/constants/fontawesome-icons.d.ts +6 -0
  4. package/constants/index.d.ts +1 -0
  5. package/esm2020/constants/fontawesome-icons.mjs +3012 -0
  6. package/esm2020/constants/index.mjs +2 -0
  7. package/esm2020/impartner-design-components.mjs +5 -0
  8. package/esm2020/lib/alert/alert.component.mjs +57 -0
  9. package/esm2020/lib/alert/alert.module.mjs +18 -0
  10. package/esm2020/lib/alert/index.mjs +4 -0
  11. package/esm2020/lib/alert/theme/alert-theme.mjs +2 -0
  12. package/esm2020/lib/alert/theme/index.mjs +2 -0
  13. package/esm2020/lib/avatar/avatar.component.mjs +47 -0
  14. package/esm2020/lib/avatar/avatar.module.mjs +18 -0
  15. package/esm2020/lib/avatar/index.mjs +3 -0
  16. package/esm2020/lib/avatar-group/avatar-group.component.mjs +16 -0
  17. package/esm2020/lib/avatar-group/avatar-group.module.mjs +19 -0
  18. package/esm2020/lib/avatar-group/index.mjs +3 -0
  19. package/esm2020/lib/backdrop/backdrop.component.mjs +34 -0
  20. package/esm2020/lib/backdrop/backdrop.module.mjs +19 -0
  21. package/esm2020/lib/backdrop/index.mjs +3 -0
  22. package/esm2020/lib/badge/badge.component.mjs +98 -0
  23. package/esm2020/lib/badge/badge.module.mjs +19 -0
  24. package/esm2020/lib/badge/index.mjs +4 -0
  25. package/esm2020/lib/badge/types/badge-icon.mjs +2 -0
  26. package/esm2020/lib/badge/types/badge-size.mjs +7 -0
  27. package/esm2020/lib/badge/types/index.mjs +2 -0
  28. package/esm2020/lib/branding/branded.directive.mjs +19 -0
  29. package/esm2020/lib/branding/branding.module.mjs +19 -0
  30. package/esm2020/lib/branding/index.mjs +3 -0
  31. package/esm2020/lib/breadcrumb/breadcrumb-item.component.mjs +25 -0
  32. package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +33 -0
  33. package/esm2020/lib/breadcrumb/breadcrumb.module.mjs +19 -0
  34. package/esm2020/lib/breadcrumb/index.mjs +4 -0
  35. package/esm2020/lib/button/button.component.mjs +116 -0
  36. package/esm2020/lib/button/button.module.mjs +21 -0
  37. package/esm2020/lib/button/index.mjs +4 -0
  38. package/esm2020/lib/button/themes/button-theme.mjs +2 -0
  39. package/esm2020/lib/button/themes/index.mjs +2 -0
  40. package/esm2020/lib/button-group/button-group.component.mjs +52 -0
  41. package/esm2020/lib/button-group/button-group.module.mjs +20 -0
  42. package/esm2020/lib/button-group/index.mjs +3 -0
  43. package/esm2020/lib/card-heading/card-heading.component.mjs +30 -0
  44. package/esm2020/lib/card-heading/card-heading.module.mjs +19 -0
  45. package/esm2020/lib/card-heading/index.mjs +3 -0
  46. package/esm2020/lib/design-components.module.mjs +119 -0
  47. package/esm2020/lib/dropdown/components/dropdown-item/dropdown-item.component.mjs +22 -0
  48. package/esm2020/lib/dropdown/components/index.mjs +2 -0
  49. package/esm2020/lib/dropdown/dropdown.component.mjs +140 -0
  50. package/esm2020/lib/dropdown/dropdown.module.mjs +21 -0
  51. package/esm2020/lib/dropdown/index.mjs +5 -0
  52. package/esm2020/lib/dropdown/types/dropdown-position.mjs +2 -0
  53. package/esm2020/lib/dropdown/types/index.mjs +2 -0
  54. package/esm2020/lib/file-upload/directives/file-drop.directive.mjs +50 -0
  55. package/esm2020/lib/file-upload/directives/index.mjs +2 -0
  56. package/esm2020/lib/file-upload/file-upload.component.mjs +334 -0
  57. package/esm2020/lib/file-upload/file-upload.module.mjs +29 -0
  58. package/esm2020/lib/file-upload/index.mjs +5 -0
  59. package/esm2020/lib/file-upload/pipes/human-readable-byte-size.pipe.mjs +23 -0
  60. package/esm2020/lib/file-upload/pipes/index.mjs +2 -0
  61. package/esm2020/lib/form-field/controls/checkbox/checkbox.component.mjs +337 -0
  62. package/esm2020/lib/form-field/controls/checkbox/checkbox.module.mjs +19 -0
  63. package/esm2020/lib/form-field/controls/checkbox/index.mjs +3 -0
  64. package/esm2020/lib/form-field/controls/index.mjs +5 -0
  65. package/esm2020/lib/form-field/controls/input/index.mjs +2 -0
  66. package/esm2020/lib/form-field/controls/input/input.directive.mjs +233 -0
  67. package/esm2020/lib/form-field/controls/radio/index.mjs +6 -0
  68. package/esm2020/lib/form-field/controls/radio/injection-tokens.mjs +4 -0
  69. package/esm2020/lib/form-field/controls/radio/interfaces/index.mjs +4 -0
  70. package/esm2020/lib/form-field/controls/radio/interfaces/radio-button.interface.mjs +2 -0
  71. package/esm2020/lib/form-field/controls/radio/interfaces/radio-change-event.interface.mjs +11 -0
  72. package/esm2020/lib/form-field/controls/radio/interfaces/radio-group.interface.mjs +2 -0
  73. package/esm2020/lib/form-field/controls/radio/radio-button/radio-button.component.mjs +260 -0
  74. package/esm2020/lib/form-field/controls/radio/radio-group/radio-group.directive.mjs +288 -0
  75. package/esm2020/lib/form-field/controls/radio/radio.module.mjs +20 -0
  76. package/esm2020/lib/form-field/controls/select/index.mjs +6 -0
  77. package/esm2020/lib/form-field/controls/select/option/index.mjs +2 -0
  78. package/esm2020/lib/form-field/controls/select/option/select-option.component.mjs +138 -0
  79. package/esm2020/lib/form-field/controls/select/option-parent.mjs +3 -0
  80. package/esm2020/lib/form-field/controls/select/select-model.mjs +149 -0
  81. package/esm2020/lib/form-field/controls/select/select.component.mjs +522 -0
  82. package/esm2020/lib/form-field/controls/select/select.module.mjs +20 -0
  83. package/esm2020/lib/form-field/controls/shared/index.mjs +2 -0
  84. package/esm2020/lib/form-field/controls/shared/toggle/components/index.mjs +2 -0
  85. package/esm2020/lib/form-field/controls/shared/toggle/components/toggle-input/toggle-input.component.mjs +17 -0
  86. package/esm2020/lib/form-field/controls/shared/toggle/index.mjs +4 -0
  87. package/esm2020/lib/form-field/controls/shared/toggle/toggle.component.mjs +96 -0
  88. package/esm2020/lib/form-field/controls/shared/toggle/toggle.module.mjs +20 -0
  89. package/esm2020/lib/form-field/directives/corner-hint.directive.mjs +14 -0
  90. package/esm2020/lib/form-field/directives/error.directive.mjs +26 -0
  91. package/esm2020/lib/form-field/directives/form-root.directive.mjs +91 -0
  92. package/esm2020/lib/form-field/directives/hint.directive.mjs +24 -0
  93. package/esm2020/lib/form-field/directives/index.mjs +8 -0
  94. package/esm2020/lib/form-field/directives/label.directive.mjs +14 -0
  95. package/esm2020/lib/form-field/directives/prefix.directive.mjs +24 -0
  96. package/esm2020/lib/form-field/directives/suffix.directive.mjs +24 -0
  97. package/esm2020/lib/form-field/form-field-errors.mjs +5 -0
  98. package/esm2020/lib/form-field/form-field.component.mjs +132 -0
  99. package/esm2020/lib/form-field/impdc-forms.mjs +8 -0
  100. package/esm2020/lib/form-field/impdc-forms.module.mjs +68 -0
  101. package/esm2020/lib/form-field/index.mjs +2 -0
  102. package/esm2020/lib/form-field/services/error-state-matcher.service.mjs +28 -0
  103. package/esm2020/lib/form-field/services/index.mjs +3 -0
  104. package/esm2020/lib/form-field/services/unique-selection-dispatcher.service.mjs +48 -0
  105. package/esm2020/lib/form-field/shared/constructors.type.mjs +2 -0
  106. package/esm2020/lib/form-field/shared/disabled.mixin.mjs +15 -0
  107. package/esm2020/lib/form-field/shared/error-state.mixin.mjs +24 -0
  108. package/esm2020/lib/form-field/shared/form-field-control.mjs +10 -0
  109. package/esm2020/lib/form-field/shared/index.mjs +5 -0
  110. package/esm2020/lib/form-field/shared/tab-index.mixin.mjs +19 -0
  111. package/esm2020/lib/icon/icon.component.mjs +70 -0
  112. package/esm2020/lib/icon/icon.module.mjs +19 -0
  113. package/esm2020/lib/icon/index.mjs +3 -0
  114. package/esm2020/lib/index.mjs +26 -0
  115. package/esm2020/lib/modal/index.mjs +4 -0
  116. package/esm2020/lib/modal/modal.component.mjs +141 -0
  117. package/esm2020/lib/modal/modal.module.mjs +37 -0
  118. package/esm2020/lib/modal/types/index.mjs +3 -0
  119. package/esm2020/lib/modal/types/modal-component-sizes.mjs +9 -0
  120. package/esm2020/lib/modal/types/modal-theme.mjs +12 -0
  121. package/esm2020/lib/pagination/index.mjs +3 -0
  122. package/esm2020/lib/pagination/pagination.component.mjs +134 -0
  123. package/esm2020/lib/pagination/pagination.module.mjs +21 -0
  124. package/esm2020/lib/progress-bar/index.mjs +3 -0
  125. package/esm2020/lib/progress-bar/progress-bar.component.mjs +35 -0
  126. package/esm2020/lib/progress-bar/progress-bar.module.mjs +18 -0
  127. package/esm2020/lib/scrollable/index.mjs +3 -0
  128. package/esm2020/lib/scrollable/scrollable.component.mjs +193 -0
  129. package/esm2020/lib/scrollable/scrollable.module.mjs +21 -0
  130. package/esm2020/lib/select-icon/index.mjs +3 -0
  131. package/esm2020/lib/select-icon/select-icon.component.mjs +307 -0
  132. package/esm2020/lib/select-icon/select-icon.module.mjs +35 -0
  133. package/esm2020/lib/size-detection/directive/element-size.interface.mjs +2 -0
  134. package/esm2020/lib/size-detection/directive/index.mjs +3 -0
  135. package/esm2020/lib/size-detection/directive/size-detector.directive.mjs +43 -0
  136. package/esm2020/lib/size-detection/index.mjs +3 -0
  137. package/esm2020/lib/size-detection/size-detection.module.mjs +18 -0
  138. package/esm2020/lib/spinner/index.mjs +3 -0
  139. package/esm2020/lib/spinner/spinner.component.mjs +24 -0
  140. package/esm2020/lib/spinner/spinner.module.mjs +18 -0
  141. package/esm2020/lib/table/index.mjs +3 -0
  142. package/esm2020/lib/table/table.component.mjs +33 -0
  143. package/esm2020/lib/table/table.module.mjs +19 -0
  144. package/esm2020/lib/text-highlight/index.mjs +3 -0
  145. package/esm2020/lib/text-highlight/text-highlight.component.mjs +81 -0
  146. package/esm2020/lib/text-highlight/text-highlight.module.mjs +19 -0
  147. package/esm2020/public-api.mjs +9 -0
  148. package/esm2020/services/index.mjs +2 -0
  149. package/esm2020/services/interaction.service.mjs +54 -0
  150. package/esm2020/types/component-size.mjs +12 -0
  151. package/esm2020/types/component-theme.mjs +22 -0
  152. package/esm2020/types/index.mjs +3 -0
  153. package/esm2020/utilities/boolean-props.mjs +7 -0
  154. package/esm2020/utilities/dc.mjs +9 -0
  155. package/esm2020/utilities/index.mjs +6 -0
  156. package/esm2020/utilities/lc.mjs +9 -0
  157. package/esm2020/utilities/number-props.mjs +18 -0
  158. package/esm2020/utilities/sanitize.mjs +7 -0
  159. package/fesm2015/impartner-design-components.mjs +8295 -0
  160. package/fesm2015/impartner-design-components.mjs.map +1 -0
  161. package/fesm2020/impartner-design-components.mjs +8264 -0
  162. package/fesm2020/impartner-design-components.mjs.map +1 -0
  163. package/index.d.ts +5 -0
  164. package/lib/alert/alert.component.d.ts +29 -0
  165. package/lib/alert/alert.module.d.ts +8 -0
  166. package/lib/alert/index.d.ts +3 -0
  167. package/lib/alert/theme/alert-theme.d.ts +1 -0
  168. package/lib/alert/theme/index.d.ts +1 -0
  169. package/lib/avatar/avatar.component.d.ts +28 -0
  170. package/lib/avatar/avatar.module.d.ts +8 -0
  171. package/lib/avatar/index.d.ts +2 -0
  172. package/lib/avatar-group/avatar-group.component.d.ts +10 -0
  173. package/lib/avatar-group/avatar-group.module.d.ts +9 -0
  174. package/lib/avatar-group/index.d.ts +2 -0
  175. package/lib/backdrop/backdrop.component.d.ts +19 -0
  176. package/lib/backdrop/backdrop.module.d.ts +9 -0
  177. package/lib/backdrop/index.d.ts +2 -0
  178. package/lib/badge/badge.component.d.ts +48 -0
  179. package/lib/badge/badge.module.d.ts +9 -0
  180. package/lib/badge/index.d.ts +3 -0
  181. package/lib/badge/types/badge-icon.d.ts +1 -0
  182. package/lib/badge/types/badge-size.d.ts +6 -0
  183. package/lib/badge/types/index.d.ts +2 -0
  184. package/lib/branding/branded.directive.d.ts +6 -0
  185. package/lib/branding/branding.module.d.ts +9 -0
  186. package/lib/branding/index.d.ts +2 -0
  187. package/lib/breadcrumb/breadcrumb-item.component.d.ts +7 -0
  188. package/lib/breadcrumb/breadcrumb.component.d.ts +18 -0
  189. package/lib/breadcrumb/breadcrumb.module.d.ts +9 -0
  190. package/lib/breadcrumb/index.d.ts +3 -0
  191. package/lib/button/button.component.d.ts +47 -0
  192. package/lib/button/button.module.d.ts +11 -0
  193. package/lib/button/index.d.ts +3 -0
  194. package/lib/button/themes/button-theme.d.ts +1 -0
  195. package/lib/button/themes/index.d.ts +1 -0
  196. package/lib/button-group/button-group.component.d.ts +22 -0
  197. package/lib/button-group/button-group.module.d.ts +10 -0
  198. package/lib/button-group/index.d.ts +2 -0
  199. package/lib/card-heading/card-heading.component.d.ts +18 -0
  200. package/lib/card-heading/card-heading.module.d.ts +9 -0
  201. package/lib/card-heading/index.d.ts +2 -0
  202. package/lib/design-components.module.d.ts +22 -0
  203. package/lib/dropdown/components/dropdown-item/dropdown-item.component.d.ts +11 -0
  204. package/lib/dropdown/components/index.d.ts +1 -0
  205. package/lib/dropdown/dropdown.component.d.ts +65 -0
  206. package/lib/dropdown/dropdown.module.d.ts +11 -0
  207. package/lib/dropdown/index.d.ts +4 -0
  208. package/lib/dropdown/types/dropdown-position.d.ts +1 -0
  209. package/lib/dropdown/types/index.d.ts +1 -0
  210. package/lib/file-upload/directives/file-drop.directive.d.ts +11 -0
  211. package/lib/file-upload/directives/index.d.ts +1 -0
  212. package/lib/file-upload/file-upload.component.d.ts +105 -0
  213. package/lib/file-upload/file-upload.module.d.ts +13 -0
  214. package/lib/file-upload/index.d.ts +4 -0
  215. package/lib/file-upload/pipes/human-readable-byte-size.pipe.d.ts +7 -0
  216. package/lib/file-upload/pipes/index.d.ts +1 -0
  217. package/lib/form-field/controls/checkbox/checkbox.component.d.ts +133 -0
  218. package/lib/form-field/controls/checkbox/checkbox.module.d.ts +9 -0
  219. package/lib/form-field/controls/checkbox/index.d.ts +2 -0
  220. package/lib/form-field/controls/index.d.ts +4 -0
  221. package/lib/form-field/controls/input/index.d.ts +1 -0
  222. package/lib/form-field/controls/input/input.directive.d.ts +84 -0
  223. package/lib/form-field/controls/radio/index.d.ts +5 -0
  224. package/lib/form-field/controls/radio/injection-tokens.d.ts +4 -0
  225. package/lib/form-field/controls/radio/interfaces/index.d.ts +3 -0
  226. package/lib/form-field/controls/radio/interfaces/radio-button.interface.d.ts +6 -0
  227. package/lib/form-field/controls/radio/interfaces/radio-change-event.interface.d.ts +12 -0
  228. package/lib/form-field/controls/radio/interfaces/radio-group.interface.d.ts +13 -0
  229. package/lib/form-field/controls/radio/radio-button/radio-button.component.d.ts +98 -0
  230. package/lib/form-field/controls/radio/radio-group/radio-group.directive.d.ts +104 -0
  231. package/lib/form-field/controls/radio/radio.module.d.ts +10 -0
  232. package/lib/form-field/controls/select/index.d.ts +5 -0
  233. package/lib/form-field/controls/select/option/index.d.ts +1 -0
  234. package/lib/form-field/controls/select/option/select-option.component.d.ts +60 -0
  235. package/lib/form-field/controls/select/option-parent.d.ts +5 -0
  236. package/lib/form-field/controls/select/select-model.d.ts +36 -0
  237. package/lib/form-field/controls/select/select.component.d.ts +170 -0
  238. package/lib/form-field/controls/select/select.module.d.ts +10 -0
  239. package/lib/form-field/controls/shared/index.d.ts +1 -0
  240. package/lib/form-field/controls/shared/toggle/components/index.d.ts +1 -0
  241. package/lib/form-field/controls/shared/toggle/components/toggle-input/toggle-input.component.d.ts +6 -0
  242. package/lib/form-field/controls/shared/toggle/index.d.ts +3 -0
  243. package/lib/form-field/controls/shared/toggle/toggle.component.d.ts +26 -0
  244. package/lib/form-field/controls/shared/toggle/toggle.module.d.ts +10 -0
  245. package/lib/form-field/directives/corner-hint.directive.d.ts +5 -0
  246. package/lib/form-field/directives/error.directive.d.ts +8 -0
  247. package/lib/form-field/directives/form-root.directive.d.ts +26 -0
  248. package/lib/form-field/directives/hint.directive.d.ts +6 -0
  249. package/lib/form-field/directives/index.d.ts +7 -0
  250. package/lib/form-field/directives/label.directive.d.ts +5 -0
  251. package/lib/form-field/directives/prefix.directive.d.ts +9 -0
  252. package/lib/form-field/directives/suffix.directive.d.ts +9 -0
  253. package/lib/form-field/form-field-errors.d.ts +2 -0
  254. package/lib/form-field/form-field.component.d.ts +39 -0
  255. package/lib/form-field/impdc-forms.d.ts +7 -0
  256. package/lib/form-field/impdc-forms.module.d.ts +19 -0
  257. package/lib/form-field/index.d.ts +1 -0
  258. package/lib/form-field/services/error-state-matcher.service.d.ts +12 -0
  259. package/lib/form-field/services/index.d.ts +2 -0
  260. package/lib/form-field/services/unique-selection-dispatcher.service.d.ts +29 -0
  261. package/lib/form-field/shared/constructors.type.d.ts +7 -0
  262. package/lib/form-field/shared/disabled.mixin.d.ts +10 -0
  263. package/lib/form-field/shared/error-state.mixin.d.ts +31 -0
  264. package/lib/form-field/shared/form-field-control.d.ts +24 -0
  265. package/lib/form-field/shared/index.d.ts +5 -0
  266. package/lib/form-field/shared/tab-index.mixin.d.ts +13 -0
  267. package/lib/icon/icon.component.d.ts +30 -0
  268. package/lib/icon/icon.module.d.ts +9 -0
  269. package/lib/icon/index.d.ts +2 -0
  270. package/lib/index.d.ts +25 -0
  271. package/lib/modal/index.d.ts +3 -0
  272. package/lib/modal/modal.component.d.ts +80 -0
  273. package/lib/modal/modal.module.d.ts +13 -0
  274. package/lib/modal/types/index.d.ts +2 -0
  275. package/lib/modal/types/modal-component-sizes.d.ts +3 -0
  276. package/lib/modal/types/modal-theme.d.ts +7 -0
  277. package/lib/pagination/index.d.ts +2 -0
  278. package/lib/pagination/pagination.component.d.ts +41 -0
  279. package/lib/pagination/pagination.module.d.ts +11 -0
  280. package/lib/progress-bar/index.d.ts +2 -0
  281. package/lib/progress-bar/progress-bar.component.d.ts +22 -0
  282. package/lib/progress-bar/progress-bar.module.d.ts +8 -0
  283. package/lib/scrollable/index.d.ts +2 -0
  284. package/lib/scrollable/scrollable.component.d.ts +39 -0
  285. package/lib/scrollable/scrollable.module.d.ts +11 -0
  286. package/lib/select-icon/index.d.ts +2 -0
  287. package/lib/select-icon/select-icon.component.d.ts +123 -0
  288. package/lib/select-icon/select-icon.module.d.ts +11 -0
  289. package/lib/size-detection/directive/element-size.interface.d.ts +4 -0
  290. package/lib/size-detection/directive/index.d.ts +2 -0
  291. package/lib/size-detection/directive/size-detector.directive.d.ts +14 -0
  292. package/lib/size-detection/index.d.ts +3 -0
  293. package/lib/size-detection/size-detection.module.d.ts +8 -0
  294. package/lib/spinner/index.d.ts +2 -0
  295. package/lib/spinner/spinner.component.d.ts +13 -0
  296. package/lib/spinner/spinner.module.d.ts +8 -0
  297. package/lib/table/index.d.ts +2 -0
  298. package/lib/table/table.component.d.ts +15 -0
  299. package/lib/table/table.module.d.ts +9 -0
  300. package/lib/text-highlight/index.d.ts +2 -0
  301. package/lib/text-highlight/text-highlight.component.d.ts +31 -0
  302. package/lib/text-highlight/text-highlight.module.d.ts +9 -0
  303. package/package.json +51 -0
  304. package/public-api.d.ts +4 -0
  305. package/services/index.d.ts +1 -0
  306. package/services/interaction.service.d.ts +14 -0
  307. package/types/component-size.d.ts +12 -0
  308. package/types/component-theme.d.ts +12 -0
  309. package/types/index.d.ts +2 -0
  310. package/utilities/boolean-props.d.ts +8 -0
  311. package/utilities/dc.d.ts +6 -0
  312. package/utilities/index.d.ts +5 -0
  313. package/utilities/lc.d.ts +6 -0
  314. package/utilities/number-props.d.ts +15 -0
  315. package/utilities/sanitize.d.ts +1 -0
@@ -0,0 +1,5 @@
1
+ export { SelectOptionSelectionChangeEvent, SelectOptionComponent } from './option';
2
+ export { ISelectOptionParentComponent, IMPDC_SELECT_OPTION_PARENT_COMPONENT } from './option-parent';
3
+ export { SelectChange, SelectModel } from './select-model';
4
+ export { SelectChangeEvent, SelectComponent } from './select.component';
5
+ export { SelectModule } from './select.module';
@@ -0,0 +1 @@
1
+ export { SelectOptionSelectionChangeEvent, SelectOptionComponent } from './select-option.component';
@@ -0,0 +1,60 @@
1
+ import { ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, Renderer2 } from '@angular/core';
2
+ import { NgbDropdownItem } from '@ng-bootstrap/ng-bootstrap';
3
+ import { BooleanInput } from '../../../../../utilities';
4
+ import { Subject } from 'rxjs';
5
+ import { ISelectOptionParentComponent } from '../option-parent';
6
+ import * as i0 from "@angular/core";
7
+ export declare class SelectOptionSelectionChangeEvent<T = any> {
8
+ source: SelectOptionComponent;
9
+ isUserInput: boolean;
10
+ constructor(source: SelectOptionComponent, isUserInput?: boolean);
11
+ }
12
+ export declare class SelectOptionComponent<T = any> extends NgbDropdownItem implements OnDestroy {
13
+ private readonly _parent;
14
+ private readonly _changeDetector;
15
+ /** @ignore */
16
+ readonly stateChanges: Subject<void>;
17
+ private _selected;
18
+ private __disabled;
19
+ /** @ignore */
20
+ get multiple(): boolean;
21
+ /** @ignore */
22
+ get selected(): boolean;
23
+ /**
24
+ * The specific value represented by the select option.
25
+ */
26
+ value?: T;
27
+ /**
28
+ * Label text describing the select option.
29
+ */
30
+ get label(): string;
31
+ set label(label: string);
32
+ private _label;
33
+ /** @ignore */
34
+ id: string;
35
+ /**
36
+ * Used to enable or disable the specific select option.
37
+ */
38
+ get disabled(): boolean;
39
+ set disabled(value: BooleanInput);
40
+ /** @ignore */
41
+ readonly onSelectionChange: EventEmitter<SelectOptionSelectionChangeEvent<T>>;
42
+ constructor(_parent: ISelectOptionParentComponent, _changeDetector: ChangeDetectorRef, _elementRef: ElementRef, _renderer: Renderer2);
43
+ /** @ignore */
44
+ select(): void;
45
+ /** @ignore */
46
+ deselect(): void;
47
+ /** @ignore */
48
+ ngOnDestroy(): void;
49
+ /** Ensures the option is selected when activated from the keyboard. */
50
+ protected _handleKeydown(event: KeyboardEvent): void;
51
+ /**
52
+ * `Selects the option while indicating the selection came from the user. Used to
53
+ * determine if the select's view -> model callback should be invoked.`
54
+ */
55
+ protected _selectViaInteraction(): void;
56
+ private _emitSelectionChangeEvent;
57
+ private _isInteractionKeyEvent;
58
+ static ɵfac: i0.ɵɵFactoryDeclaration<SelectOptionComponent<any>, [{ optional: true; }, null, null, null]>;
59
+ static ɵcmp: i0.ɵɵComponentDeclaration<SelectOptionComponent<any>, "impdc-select-option", never, { "value": "value"; "label": "label"; "id": "id"; "disabled": "disabled"; }, { "onSelectionChange": "onSelectionChange"; }, never, never, false>;
60
+ }
@@ -0,0 +1,5 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export interface ISelectOptionParentComponent {
3
+ multiple?: boolean;
4
+ }
5
+ export declare const IMPDC_SELECT_OPTION_PARENT_COMPONENT: InjectionToken<ISelectOptionParentComponent>;
@@ -0,0 +1,36 @@
1
+ import { Subject } from 'rxjs';
2
+ export interface SelectChange<T> {
3
+ source: SelectModel<T>;
4
+ added: T[];
5
+ removed: T[];
6
+ }
7
+ export declare function getMultipleValuesInSingleSelectError(): Error;
8
+ export declare class SelectModel<T> {
9
+ private readonly _multiple;
10
+ private readonly _emitChanges;
11
+ compareFunc?: ((a: T, b: T) => boolean) | undefined;
12
+ private _selection;
13
+ private _pendingDeselectionsToEmit;
14
+ private _pendingSelectionsToEmit;
15
+ private _selected;
16
+ get selected(): T[];
17
+ readonly changed$: Subject<SelectChange<T>>;
18
+ constructor(_multiple?: boolean, initialSelectedValues?: T[], _emitChanges?: boolean, compareFunc?: ((a: T, b: T) => boolean) | undefined);
19
+ select(...values: T[]): boolean | void;
20
+ deselect(...values: T[]): boolean | void;
21
+ setSelection(...values: T[]): boolean | void;
22
+ toggle(value: T): boolean | void;
23
+ clear(flushEvent?: boolean): boolean | void;
24
+ isSelected(value: T): boolean;
25
+ isEmpty(): boolean;
26
+ hasValue(): boolean;
27
+ sort(predicateFunc?: (a: T, b: T) => number): void;
28
+ isMultipleSelection(): boolean;
29
+ private _emitChangeEvent;
30
+ private _markSelected;
31
+ private _unmarkSelected;
32
+ private _unmarkAll;
33
+ private _verifyValueAssignment;
34
+ private _hasQueuedChanges;
35
+ private _getConcreteValue;
36
+ }
@@ -0,0 +1,170 @@
1
+ import { AfterContentInit, AfterViewInit, ChangeDetectorRef, DoCheck, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, QueryList, SimpleChanges } from '@angular/core';
2
+ import { ControlValueAccessor, FormGroupDirective, NgControl, NgForm } from '@angular/forms';
3
+ import { NgbDropdown, NgbDropdownMenu } from '@ng-bootstrap/ng-bootstrap';
4
+ import { BooleanInput } from '../../../../utilities';
5
+ import { Observable, Subject } from 'rxjs';
6
+ import { ErrorStateMatcher } from '../../services';
7
+ import { ImpdcFormRoot } from '../../directives';
8
+ import { CanDisable, HasTabIndex, ICanUpdateErrorState, IHasErrorState, ImpdcFormFieldControl } from '../../shared';
9
+ import { SelectOptionSelectionChangeEvent, SelectOptionComponent } from './option/select-option.component';
10
+ import { SelectModel } from './select-model';
11
+ import * as i0 from "@angular/core";
12
+ export declare class SelectChangeEvent {
13
+ /** The specific SelectComponent that changed. */
14
+ readonly source: SelectComponent;
15
+ /** The selected value(s) */
16
+ readonly value: any;
17
+ constructor(
18
+ /** The specific SelectComponent that changed. */
19
+ source: SelectComponent,
20
+ /** The selected value(s) */
21
+ value: any);
22
+ }
23
+ /**
24
+ * Returns an exception to be thrown when attempting to assign a non-array value to a select
25
+ * in `multiple` mode. Note that `undefined` and `null` are still valid values to allow for
26
+ * resetting the value.
27
+ * @ignore
28
+ */
29
+ export declare function getImpdcSelectNonArrayValueError(): Error;
30
+ /**
31
+ * Returns an exception to be thrown when assigning a non-function value to the comparator
32
+ * used to determine if a value corresponds to an option. Note that whether the function
33
+ * actually takes two values and returns a boolean is not checked.
34
+ */
35
+ export declare function getImpdcSelectNonFunctionValueError(): Error;
36
+ /**
37
+ * Returns an exception to be thrown when attempting to change a select's `multiple` option
38
+ * after initialization.
39
+ * @ignore
40
+ */
41
+ export declare function getImpdcSelectDynamicMultipleError(): Error;
42
+ declare const _SelectComponentBase: import("../../shared").Constructor<HasTabIndex> & import("../../shared").AbstractConstructor<HasTabIndex> & import("../../shared").Constructor<CanDisable> & import("../../shared").AbstractConstructor<CanDisable> & import("../../shared").Constructor<ICanUpdateErrorState> & import("../../shared").AbstractConstructor<ICanUpdateErrorState> & {
43
+ new (_defaultErrorStateMatcher: ErrorStateMatcher, _formRoot: ImpdcFormRoot, _parentForm: NgForm, _parentFormGroup: FormGroupDirective, ngControl: NgControl | null): {
44
+ readonly stateChanges: Subject<void>;
45
+ _defaultErrorStateMatcher: ErrorStateMatcher;
46
+ _formRoot: ImpdcFormRoot;
47
+ _parentForm: NgForm;
48
+ _parentFormGroup: FormGroupDirective;
49
+ ngControl: NgControl | null;
50
+ };
51
+ };
52
+ /**
53
+ * The `SelectComponent` (`<impdc-select`) is a select-style dropdown input where an item (or multiple items) can be picked
54
+ * from a list of available options. This component can be used within a `FormFieldComponent` (`<impdc-form-field`).
55
+ * To use, import `SelectModule` or another module that imports and exports that module from `@impartner/design-components`.
56
+ */
57
+ export declare class SelectComponent extends _SelectComponentBase implements OnInit, AfterContentInit, AfterViewInit, OnChanges, DoCheck, OnDestroy, ControlValueAccessor, HasTabIndex, ImpdcFormFieldControl<any>, CanDisable, ICanUpdateErrorState, IHasErrorState {
58
+ private readonly _changeDetector;
59
+ protected readonly _ngZone: NgZone;
60
+ /** @ignore */
61
+ options: QueryList<SelectOptionComponent>;
62
+ protected _ngbDropdown: NgbDropdown;
63
+ protected _ngbDropdownMenu: NgbDropdownMenu;
64
+ protected _toggleButtonRef: ElementRef<HTMLButtonElement>;
65
+ /** @ignore */
66
+ readonly optionSelectionChanges: Observable<SelectOptionSelectionChangeEvent>;
67
+ protected readonly _uid: string;
68
+ protected _selectionModel: SelectModel<SelectOptionComponent>;
69
+ private readonly _ngDestroy;
70
+ private _previousControl?;
71
+ private _compareWith;
72
+ private _cvaOnChange;
73
+ private _cvaOnTouched;
74
+ /**
75
+ * The placeholder text that will be displayed when no selection has been made.
76
+ *
77
+ * @default \- Select -
78
+ */
79
+ get placeholder(): string;
80
+ set placeholder(value: string);
81
+ private _placeholder;
82
+ /**
83
+ * Used to set requiredness of control in a template-based manner;
84
+ * not necessary when using the Angular reactive forms API and `required` validator.
85
+ */
86
+ get required(): boolean;
87
+ set required(value: BooleanInput);
88
+ private _required;
89
+ /**
90
+ * Sets whether the control is a single-select or multiple-select. Cannot be changed after component initialization.
91
+ */
92
+ get multiple(): boolean;
93
+ set multiple(value: BooleanInput);
94
+ protected _multiple: boolean;
95
+ /**
96
+ * Function used to compare option values with selected values. The first arg is a
97
+ * value from an option, and the second arg is a value from the selection.
98
+ *
99
+ * @returns Boolean indicating if the values are equivalent.
100
+ */
101
+ get compareWith(): (a: any, b: any) => boolean;
102
+ set compareWith(fn: (a: any, b: any) => boolean);
103
+ errorStateMatcher: ErrorStateMatcher;
104
+ /** Events fire when selection has been changed by the user. */
105
+ readonly selectionChange: EventEmitter<SelectChangeEvent>;
106
+ /**
107
+ * Events fire when raw value of select changes. Mainly exists to handle
108
+ * two-way binding of `value` input property.
109
+ * @ignore
110
+ */
111
+ readonly valueChange: EventEmitter<any>;
112
+ get dropdownOpen(): boolean;
113
+ constructor(_changeDetector: ChangeDetectorRef, _ngZone: NgZone, tabIndex: string, _defaultErrorStateMatcher: ErrorStateMatcher, _formRoot: ImpdcFormRoot, _parentForm: NgForm, _parentFormGroup: FormGroupDirective, ngControl: NgControl);
114
+ get empty(): boolean;
115
+ get displayedValue(): string;
116
+ get selected(): SelectOptionComponent | SelectOptionComponent[];
117
+ /** @ignore */
118
+ focus(options?: FocusOptions): void;
119
+ protected _handleOpenChange(isOpen: boolean): void;
120
+ /** @ignore */
121
+ ngOnInit(): void;
122
+ /** @ignore */
123
+ ngAfterContentInit(): void;
124
+ /** @ignore */
125
+ ngAfterViewInit(): void;
126
+ /** @ignore */
127
+ ngDoCheck(): void;
128
+ /** @ignore */
129
+ ngOnChanges(changes: SimpleChanges): void;
130
+ /** @ignore */
131
+ ngOnDestroy(): void;
132
+ readonly controlType: string;
133
+ readonly supportsAffixes: boolean;
134
+ get value(): any;
135
+ set value(value: any);
136
+ protected _value: any;
137
+ get id(): string;
138
+ set id(value: string);
139
+ protected _id: string;
140
+ get focused(): boolean;
141
+ protected _focused: boolean;
142
+ /** @ignore */
143
+ writeValue(value: any): void;
144
+ /** @ignore */
145
+ registerOnChange(fn: (value: any) => void): void;
146
+ /** @ignore */
147
+ registerOnTouched(fn: () => {}): void;
148
+ /** @ignore */
149
+ setDisabledState(isDisabled: boolean): void;
150
+ protected _onFocus(): void;
151
+ /**
152
+ * Calls the CVA touched callback only if the dropdown is closed.
153
+ */
154
+ protected _onBlur(): void;
155
+ private _initializeSelection;
156
+ private _setSelectionByValue;
157
+ private _selectOptionByValue;
158
+ /** Assigns a value to the select control. Returns a boolean indicating whether or not
159
+ * the value has changed.
160
+ */
161
+ private _assignValue;
162
+ private _resetOptions;
163
+ private _onSelect;
164
+ private _sortValues;
165
+ private _propagateChanges;
166
+ private _buildChangeEvent;
167
+ static ɵfac: i0.ɵɵFactoryDeclaration<SelectComponent, [null, null, { attribute: "tabindex"; }, null, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; self: true; }]>;
168
+ static ɵcmp: i0.ɵɵComponentDeclaration<SelectComponent, "impdc-select", ["impdcSelect"], { "disabled": "disabled"; "tabIndex": "tabIndex"; "placeholder": "placeholder"; "required": "required"; "multiple": "multiple"; "compareWith": "compareWith"; "errorStateMatcher": "errorStateMatcher"; "value": "value"; "id": "id"; }, { "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, ["options"], ["*"], false>;
169
+ }
170
+ export {};
@@ -0,0 +1,10 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./option/select-option.component";
3
+ import * as i2 from "./select.component";
4
+ import * as i3 from "@angular/common";
5
+ import * as i4 from "@ng-bootstrap/ng-bootstrap";
6
+ export declare class SelectModule {
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<SelectModule, never>;
8
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SelectModule, [typeof i1.SelectOptionComponent, typeof i2.SelectComponent], [typeof i3.CommonModule, typeof i4.NgbDropdownModule], [typeof i1.SelectOptionComponent, typeof i2.SelectComponent, typeof i4.NgbDropdownModule]>;
9
+ static ɵinj: i0.ɵɵInjectorDeclaration<SelectModule>;
10
+ }
@@ -0,0 +1 @@
1
+ export * from './toggle';
@@ -0,0 +1 @@
1
+ export * from './toggle-input/toggle-input.component';
@@ -0,0 +1,6 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class ToggleInputComponent {
3
+ classFormCheck: boolean;
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<ToggleInputComponent, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<ToggleInputComponent, "input[impdc-toggle-input]", never, {}, {}, never, never, false>;
6
+ }
@@ -0,0 +1,3 @@
1
+ export { ToggleComponent } from './toggle.component';
2
+ export { ToggleInputComponent } from './components';
3
+ export { ToggleModule } from './toggle.module';
@@ -0,0 +1,26 @@
1
+ import { ElementRef, ChangeDetectorRef, AfterViewChecked } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class ToggleComponent implements AfterViewChecked {
4
+ private changeDetectorRef;
5
+ private _id;
6
+ isSwitch: boolean;
7
+ label: string;
8
+ description: string;
9
+ inline: boolean;
10
+ switchIcons: boolean;
11
+ branded: boolean;
12
+ private classDefaults;
13
+ private get classHasDescription();
14
+ private get classFormSwitch();
15
+ private get classFormCheckInline();
16
+ private get classFormSwitchIcons();
17
+ private get classBranded();
18
+ inputRef?: ElementRef<HTMLInputElement>;
19
+ get id(): string;
20
+ get isCheckbox(): boolean;
21
+ get showDescription(): boolean;
22
+ constructor(changeDetectorRef: ChangeDetectorRef);
23
+ ngAfterViewChecked(): void;
24
+ static ɵfac: i0.ɵɵFactoryDeclaration<ToggleComponent, never>;
25
+ static ɵcmp: i0.ɵɵComponentDeclaration<ToggleComponent, "impdc-toggle", never, { "isSwitch": "isSwitch"; "label": "label"; "description": "description"; "inline": "inline"; "switchIcons": "switchIcons"; }, {}, ["inputRef"], ["[impdc-toggle-input]"], false>;
26
+ }
@@ -0,0 +1,10 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./toggle.component";
3
+ import * as i2 from "./components/toggle-input/toggle-input.component";
4
+ import * as i3 from "@angular/common";
5
+ export declare class ToggleModule {
6
+ constructor();
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<ToggleModule, never>;
8
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ToggleModule, [typeof i1.ToggleComponent, typeof i2.ToggleInputComponent], [typeof i3.CommonModule], [typeof i1.ToggleComponent, typeof i2.ToggleInputComponent]>;
9
+ static ɵinj: i0.ɵɵInjectorDeclaration<ToggleModule>;
10
+ }
@@ -0,0 +1,5 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class CornerHintDirective {
3
+ static ɵfac: i0.ɵɵFactoryDeclaration<CornerHintDirective, never>;
4
+ static ɵdir: i0.ɵɵDirectiveDeclaration<CornerHintDirective, "impdc-corner-hint", never, {}, {}, never, never, false>;
5
+ }
@@ -0,0 +1,8 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare const IMPDC_ERROR: InjectionToken<ErrorDirective>;
4
+ export declare class ErrorDirective {
5
+ id: string;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<ErrorDirective, never>;
7
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ErrorDirective, "impdc-error, [impdc-error]", never, { "id": "id"; }, {}, never, never, false>;
8
+ }
@@ -0,0 +1,26 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { FormGroupDirective, NgForm } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ export declare const IMPDC_FORM_ROOT: InjectionToken<ImpdcFormRoot>;
5
+ export interface ImpdcFormRoot {
6
+ get submitted(): boolean;
7
+ get form(): FormGroupDirective | NgForm;
8
+ }
9
+ export declare class RootFormGroupDirective implements ImpdcFormRoot {
10
+ private _formGroupDirective;
11
+ private _parentRoot?;
12
+ constructor(_formGroupDirective: FormGroupDirective, _parentRoot?: ImpdcFormRoot | undefined);
13
+ get submitted(): boolean;
14
+ get form(): FormGroupDirective | NgForm;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<RootFormGroupDirective, [{ host: true; }, { optional: true; skipSelf: true; }]>;
16
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RootFormGroupDirective, "[formGroup]", never, {}, {}, never, never, false>;
17
+ }
18
+ export declare class RootNgFormDirective implements ImpdcFormRoot {
19
+ private _ngForm;
20
+ private _parentRoot?;
21
+ constructor(_ngForm: NgForm, _parentRoot?: ImpdcFormRoot | undefined);
22
+ get submitted(): boolean;
23
+ get form(): FormGroupDirective | NgForm;
24
+ static ɵfac: i0.ɵɵFactoryDeclaration<RootNgFormDirective, [{ host: true; }, { optional: true; skipSelf: true; }]>;
25
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RootNgFormDirective, "[ngForm]", never, {}, {}, never, never, false>;
26
+ }
@@ -0,0 +1,6 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class HintDirective {
3
+ id: string;
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<HintDirective, never>;
5
+ static ɵdir: i0.ɵɵDirectiveDeclaration<HintDirective, "impdc-hint", never, { "id": "id"; }, {}, never, never, false>;
6
+ }
@@ -0,0 +1,7 @@
1
+ export { CornerHintDirective } from './corner-hint.directive';
2
+ export { ErrorDirective } from './error.directive';
3
+ export { IMPDC_FORM_ROOT, ImpdcFormRoot, RootFormGroupDirective, RootNgFormDirective } from './form-root.directive';
4
+ export { HintDirective } from './hint.directive';
5
+ export { LabelDirective } from './label.directive';
6
+ export { PrefixDirective } from './prefix.directive';
7
+ export { SuffixDirective } from './suffix.directive';
@@ -0,0 +1,5 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class LabelDirective {
3
+ static ɵfac: i0.ɵɵFactoryDeclaration<LabelDirective, never>;
4
+ static ɵdir: i0.ɵɵDirectiveDeclaration<LabelDirective, "impdc-label", never, {}, {}, never, never, false>;
5
+ }
@@ -0,0 +1,9 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare const IMPDC_PREFIX: InjectionToken<PrefixDirective>;
4
+ export declare class PrefixDirective {
5
+ set isTextSelector(value: '');
6
+ isText: boolean;
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<PrefixDirective, never>;
8
+ static ɵdir: i0.ɵɵDirectiveDeclaration<PrefixDirective, "[impdcPrefix], [impdcTextPrefix]", never, { "isTextSelector": "impdcTextPrefix"; }, {}, never, never, false>;
9
+ }
@@ -0,0 +1,9 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare const IMPDC_SUFFIX: InjectionToken<SuffixDirective>;
4
+ export declare class SuffixDirective {
5
+ set isTextSelector(value: '');
6
+ isText: boolean;
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<SuffixDirective, never>;
8
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SuffixDirective, "[impdcSuffix], [impdcTextSuffix]", never, { "isTextSelector": "impdcTextSuffix"; }, {}, never, never, false>;
9
+ }
@@ -0,0 +1,2 @@
1
+ /** @docs-private */
2
+ export declare function getImpdcFormFieldMissingControlError(): Error;
@@ -0,0 +1,39 @@
1
+ import { AfterContentChecked, AfterContentInit, AfterViewInit, ChangeDetectorRef, ElementRef, InjectionToken, QueryList } from '@angular/core';
2
+ import { AbstractControlDirective } from '@angular/forms';
3
+ import { ErrorDirective } from './directives/error.directive';
4
+ import { PrefixDirective } from './directives/prefix.directive';
5
+ import { SuffixDirective } from './directives/suffix.directive';
6
+ import { ImpdcFormFieldControl } from './shared/form-field-control';
7
+ import * as i0 from "@angular/core";
8
+ export declare const IMPDC_FORM_FIELD: InjectionToken<FormFieldComponent>;
9
+ export declare class FormFieldComponent implements AfterViewInit, AfterContentInit, AfterContentChecked {
10
+ private readonly _elementRef;
11
+ private readonly _changeDetectorRef;
12
+ protected _inputArea: ElementRef<HTMLElement>;
13
+ protected _formFieldControl: ImpdcFormFieldControl<unknown>;
14
+ protected _prefixChildren: QueryList<PrefixDirective>;
15
+ protected _suffixChildren: QueryList<SuffixDirective>;
16
+ protected _errorChildren?: QueryList<ErrorDirective>;
17
+ private readonly _destroyedSubject;
18
+ protected _hasTextPrefix: boolean;
19
+ protected _hasTextSuffix: boolean;
20
+ private _isFocused;
21
+ private _explicitFormFieldControl;
22
+ protected readonly _labelId: string;
23
+ protected get _control(): ImpdcFormFieldControl<unknown>;
24
+ protected set _control(value: ImpdcFormFieldControl<unknown>);
25
+ constructor(_elementRef: ElementRef, _changeDetectorRef: ChangeDetectorRef);
26
+ ngAfterViewInit(): void;
27
+ ngAfterContentInit(): void;
28
+ ngAfterContentChecked(): void;
29
+ protected _showErrors(): boolean;
30
+ protected _shouldForwardControlState(prop: keyof AbstractControlDirective): boolean;
31
+ private _initializeControl;
32
+ private _assertFormFieldControl;
33
+ private _updateFocusState;
34
+ private _checkPrefixAndSuffixTypes;
35
+ /** Initializes the prefix and suffix containers. */
36
+ private _initializePrefixAndSuffix;
37
+ static ɵfac: i0.ɵɵFactoryDeclaration<FormFieldComponent, never>;
38
+ static ɵcmp: i0.ɵɵComponentDeclaration<FormFieldComponent, "impdc-form-field", ["impdcFormField"], {}, {}, ["_formFieldControl", "_prefixChildren", "_suffixChildren", "_errorChildren"], ["impdc-label", "impdc-corner-hint", "[impdcPrefix]", "[impdcTextPrefix]", "*", "[impdcTextSuffix]", "[impdcSuffix]", "impdc-hint", "impdc-error, [impdc-error]"], false>;
39
+ }
@@ -0,0 +1,7 @@
1
+ export * from './controls';
2
+ export * from './directives';
3
+ export * from './services';
4
+ export * from './shared';
5
+ export * from './form-field-errors';
6
+ export { IMPDC_FORM_FIELD, FormFieldComponent } from './form-field.component';
7
+ export { ImpdcFormsModule } from './impdc-forms.module';
@@ -0,0 +1,19 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./form-field.component";
3
+ import * as i2 from "./controls/input/input.directive";
4
+ import * as i3 from "./directives/corner-hint.directive";
5
+ import * as i4 from "./directives/error.directive";
6
+ import * as i5 from "./directives/hint.directive";
7
+ import * as i6 from "./directives/label.directive";
8
+ import * as i7 from "./directives/prefix.directive";
9
+ import * as i8 from "./directives/form-root.directive";
10
+ import * as i9 from "./directives/suffix.directive";
11
+ import * as i10 from "@angular/common";
12
+ import * as i11 from "./controls/checkbox/checkbox.module";
13
+ import * as i12 from "./controls/radio/radio.module";
14
+ import * as i13 from "./controls/select/select.module";
15
+ export declare class ImpdcFormsModule {
16
+ static ɵfac: i0.ɵɵFactoryDeclaration<ImpdcFormsModule, never>;
17
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ImpdcFormsModule, [typeof i1.FormFieldComponent, typeof i2.InputDirective, typeof i3.CornerHintDirective, typeof i4.ErrorDirective, typeof i5.HintDirective, typeof i6.LabelDirective, typeof i7.PrefixDirective, typeof i8.RootFormGroupDirective, typeof i8.RootNgFormDirective, typeof i9.SuffixDirective], [typeof i10.CommonModule, typeof i11.CheckboxModule, typeof i12.RadioModule, typeof i13.SelectModule], [typeof i11.CheckboxModule, typeof i12.RadioModule, typeof i13.SelectModule, typeof i1.FormFieldComponent, typeof i2.InputDirective, typeof i3.CornerHintDirective, typeof i4.ErrorDirective, typeof i5.HintDirective, typeof i6.LabelDirective, typeof i7.PrefixDirective, typeof i8.RootFormGroupDirective, typeof i8.RootNgFormDirective, typeof i9.SuffixDirective]>;
18
+ static ɵinj: i0.ɵɵInjectorDeclaration<ImpdcFormsModule>;
19
+ }
@@ -0,0 +1 @@
1
+ export * from './impdc-forms';
@@ -0,0 +1,12 @@
1
+ import { AbstractControl, FormGroupDirective, NgForm } from '@angular/forms';
2
+ import * as i0 from "@angular/core";
3
+ export declare class ShowOnDirtyErrorStateMatcher implements ErrorStateMatcher {
4
+ isErrorState(control: AbstractControl<any, any> | null, form: FormGroupDirective | NgForm | null): boolean;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<ShowOnDirtyErrorStateMatcher, never>;
6
+ static ɵprov: i0.ɵɵInjectableDeclaration<ShowOnDirtyErrorStateMatcher>;
7
+ }
8
+ export declare class ErrorStateMatcher {
9
+ isErrorState(control: AbstractControl | null, form: FormGroupDirective | NgForm | null): boolean;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<ErrorStateMatcher, never>;
11
+ static ɵprov: i0.ɵɵInjectableDeclaration<ErrorStateMatcher>;
12
+ }
@@ -0,0 +1,2 @@
1
+ export { ErrorStateMatcher, ShowOnDirtyErrorStateMatcher } from './error-state-matcher.service';
2
+ export { UniqueSelectionDispatcherListener, UniqueSelectionDispatcher } from './unique-selection-dispatcher.service';
@@ -0,0 +1,29 @@
1
+ import { OnDestroy } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare type UniqueSelectionDispatcherListener = (id: string, name: string) => void;
4
+ /**
5
+ * Class to coordinate unique selection based on name.
6
+ * Intended to be consumed as an Angular service.
7
+ * This service is needed because native radio change events are only fired on the item currently
8
+ * being selected, and we still need to uncheck the previous selection.
9
+ *
10
+ * This service does not *store* any IDs and names because they may change at any time, so it is
11
+ * less error-prone if they are simply passed through when the events occur.
12
+ */
13
+ export declare class UniqueSelectionDispatcher implements OnDestroy {
14
+ private _listeners;
15
+ /**
16
+ * Notify other items that selection for the given name has been set.
17
+ * @param id ID of the item.
18
+ * @param name Name of the item.
19
+ */
20
+ notify(id: string, name: string): void;
21
+ /**
22
+ * Listen for future changes to item selection.
23
+ * @return Function used to deregister listener
24
+ */
25
+ listen(listener: UniqueSelectionDispatcherListener): () => void;
26
+ ngOnDestroy(): void;
27
+ static ɵfac: i0.ɵɵFactoryDeclaration<UniqueSelectionDispatcher, never>;
28
+ static ɵprov: i0.ɵɵInjectableDeclaration<UniqueSelectionDispatcher>;
29
+ }
@@ -0,0 +1,7 @@
1
+ /** @docs-private */
2
+ export declare type Constructor<T> = new (...args: any[]) => T;
3
+ /**
4
+ * This is a permissive type for abstract class constructors.
5
+ * @docs-private
6
+ */
7
+ export declare type AbstractConstructor<T = object> = abstract new (...args: any[]) => T;
@@ -0,0 +1,10 @@
1
+ import { AbstractConstructor, Constructor } from './constructors.type';
2
+ /** @docs-private */
3
+ export interface CanDisable {
4
+ /** Whether the component is disabled. */
5
+ disabled: boolean;
6
+ }
7
+ declare type CanDisableCtor = Constructor<CanDisable> & AbstractConstructor<CanDisable>;
8
+ /** Mixin to augment a directive with a `disabled` property. */
9
+ export declare function mixinDisabled<T extends AbstractConstructor<{}>>(base: T): CanDisableCtor & T;
10
+ export {};
@@ -0,0 +1,31 @@
1
+ import { FormGroupDirective, NgControl, NgForm } from '@angular/forms';
2
+ import { Subject } from 'rxjs';
3
+ import { ImpdcFormRoot } from '../directives';
4
+ import { ErrorStateMatcher } from '../services';
5
+ import { AbstractConstructor, Constructor } from './constructors.type';
6
+ /**
7
+ * @docs-private
8
+ */
9
+ export interface ICanUpdateErrorState {
10
+ updateErrorState(): void;
11
+ errorState: boolean;
12
+ errorStateMatcher: ErrorStateMatcher | undefined;
13
+ }
14
+ declare type CanUpdateErrorStateCtor = Constructor<ICanUpdateErrorState> & AbstractConstructor<ICanUpdateErrorState>;
15
+ /**
16
+ * @docs-private
17
+ */
18
+ export interface IHasErrorState {
19
+ _formRoot: ImpdcFormRoot;
20
+ _parentFormGroup: FormGroupDirective;
21
+ _parentForm: NgForm;
22
+ _defaultErrorStateMatcher: ErrorStateMatcher;
23
+ ngControl: NgControl | null;
24
+ stateChanges: Subject<void>;
25
+ }
26
+ /**
27
+ * Mixin to augment a directive with updateErrorState method.
28
+ * Intended for components with `errorState` and the need to update `errorState`.
29
+ */
30
+ export declare function mixinErrorState<T extends AbstractConstructor<IHasErrorState>>(base: T): CanUpdateErrorStateCtor & T;
31
+ export {};