@ng-matero/extensions 12.3.0 → 12.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (284) hide show
  1. package/README.md +1 -1
  2. package/_all-color.scss +47 -0
  3. package/_all-theme.scss +5 -3
  4. package/_index.scss +4 -2
  5. package/_theming.scss +4 -2
  6. package/alert/_alert-theme.import.scss +2 -2
  7. package/alert/_alert-theme.scss +38 -17
  8. package/alert/alert.component.d.ts +6 -6
  9. package/alert/alert.component.scss +2 -1
  10. package/alert/mtxAlert.metadata.json +1 -1
  11. package/bundles/extensions.umd.js +21 -10
  12. package/bundles/extensions.umd.js.map +1 -1
  13. package/bundles/mtxAlert.umd.js +32 -14
  14. package/bundles/mtxAlert.umd.js.map +1 -1
  15. package/bundles/mtxButton.umd.js +36 -5
  16. package/bundles/mtxButton.umd.js.map +1 -1
  17. package/bundles/mtxCheckboxGroup.umd.js +10 -1
  18. package/bundles/mtxCheckboxGroup.umd.js.map +1 -1
  19. package/bundles/mtxColorPicker.umd.js +10 -1
  20. package/bundles/mtxColorPicker.umd.js.map +1 -1
  21. package/bundles/mtxColumnResize.umd.js +55 -6
  22. package/bundles/mtxColumnResize.umd.js.map +1 -1
  23. package/bundles/mtxCore.umd.js +10 -1
  24. package/bundles/mtxCore.umd.js.map +1 -1
  25. package/bundles/mtxDatetimepicker.umd.js +139 -32
  26. package/bundles/mtxDatetimepicker.umd.js.map +1 -1
  27. package/bundles/mtxDialog.umd.js +17 -2
  28. package/bundles/mtxDialog.umd.js.map +1 -1
  29. package/bundles/mtxFormGroup.umd.js +10 -1
  30. package/bundles/mtxFormGroup.umd.js.map +1 -1
  31. package/bundles/mtxGrid.umd.js +92 -12
  32. package/bundles/mtxGrid.umd.js.map +1 -1
  33. package/bundles/mtxLoader.umd.js +37 -8
  34. package/bundles/mtxLoader.umd.js.map +1 -1
  35. package/bundles/mtxPipes.umd.js +2 -0
  36. package/bundles/mtxPipes.umd.js.map +1 -1
  37. package/bundles/mtxPopover.umd.js +27 -3
  38. package/bundles/mtxPopover.umd.js.map +1 -1
  39. package/bundles/mtxProgress.umd.js +31 -4
  40. package/bundles/mtxProgress.umd.js.map +1 -1
  41. package/bundles/mtxSelect.umd.js +107 -13
  42. package/bundles/mtxSelect.umd.js.map +1 -1
  43. package/bundles/mtxSlider.umd.js +1551 -0
  44. package/bundles/mtxSlider.umd.js.map +1 -0
  45. package/bundles/mtxSplit.umd.js +23 -6
  46. package/bundles/mtxSplit.umd.js.map +1 -1
  47. package/bundles/mtxText3d.umd.js +10 -1
  48. package/bundles/mtxText3d.umd.js.map +1 -1
  49. package/bundles/mtxTooltip.umd.js +18 -2
  50. package/bundles/mtxTooltip.umd.js.map +1 -1
  51. package/button/button-loading.directive.d.ts +9 -2
  52. package/button/mtxButton.metadata.json +1 -1
  53. package/datetimepicker/_datetimepicker-theme.import.scss +4 -2
  54. package/datetimepicker/_datetimepicker-theme.scss +101 -29
  55. package/datetimepicker/calendar-body.scss +0 -3
  56. package/datetimepicker/calendar.d.ts +10 -3
  57. package/datetimepicker/calendar.scss +5 -22
  58. package/datetimepicker/clock.scss +0 -2
  59. package/datetimepicker/datetimepicker-content.scss +2 -2
  60. package/datetimepicker/datetimepicker-input.d.ts +5 -3
  61. package/datetimepicker/datetimepicker-toggle.d.ts +2 -0
  62. package/datetimepicker/datetimepicker.d.ts +13 -3
  63. package/datetimepicker/mtxDatetimepicker.metadata.json +1 -1
  64. package/esm2015/alert/alert.component.js +25 -11
  65. package/esm2015/alert/alert.module.js +2 -1
  66. package/esm2015/button/button-loading.directive.js +31 -8
  67. package/esm2015/button/button.module.js +2 -1
  68. package/esm2015/checkbox-group/checkbox-group.component.js +10 -2
  69. package/esm2015/checkbox-group/checkbox-group.module.js +2 -1
  70. package/esm2015/color-picker/color-picker.component.js +10 -2
  71. package/esm2015/color-picker/color-picker.module.js +2 -1
  72. package/esm2015/column-resize/column-resize-directives/column-resize-flex.js +9 -2
  73. package/esm2015/column-resize/column-resize-directives/column-resize.js +9 -2
  74. package/esm2015/column-resize/column-resize-module.js +2 -1
  75. package/esm2015/column-resize/column-resize-notifier.js +10 -2
  76. package/esm2015/column-resize/column-resize.js +2 -1
  77. package/esm2015/column-resize/column-size-store.js +2 -1
  78. package/esm2015/column-resize/event-dispatcher.js +9 -2
  79. package/esm2015/column-resize/overlay-handle.js +2 -1
  80. package/esm2015/column-resize/resizable.js +2 -1
  81. package/esm2015/column-resize/resize-strategy.js +18 -3
  82. package/esm2015/core/datetime/datetime.module.js +3 -1
  83. package/esm2015/core/datetime/native-datetime-adapter.js +9 -2
  84. package/esm2015/datetimepicker/calendar-body.js +5 -3
  85. package/esm2015/datetimepicker/calendar.js +31 -12
  86. package/esm2015/datetimepicker/clock.js +11 -3
  87. package/esm2015/datetimepicker/datetimepicker-input.js +12 -4
  88. package/esm2015/datetimepicker/datetimepicker-toggle.js +11 -3
  89. package/esm2015/datetimepicker/datetimepicker.js +30 -8
  90. package/esm2015/datetimepicker/datetimepicker.module.js +2 -1
  91. package/esm2015/datetimepicker/month-view.js +11 -3
  92. package/esm2015/datetimepicker/multi-year-view.js +11 -3
  93. package/esm2015/datetimepicker/year-view.js +11 -3
  94. package/esm2015/dialog/dialog.component.js +9 -2
  95. package/esm2015/dialog/dialog.js +9 -2
  96. package/esm2015/dialog/dialog.module.js +2 -1
  97. package/esm2015/extensions-experimental.module.js +2 -1
  98. package/esm2015/extensions.module.js +6 -3
  99. package/esm2015/form-group/form-group.component.js +10 -2
  100. package/esm2015/form-group/form-group.module.js +2 -1
  101. package/esm2015/grid/cell-selection.directive.js +62 -0
  102. package/esm2015/{data-grid → grid}/cell.component.js +10 -2
  103. package/esm2015/{data-grid → grid}/column-menu.component.js +3 -1
  104. package/esm2015/grid/column-resize/column-resize-directives/column-resize-flex.js +47 -0
  105. package/esm2015/grid/column-resize/column-resize-directives/column-resize.js +47 -0
  106. package/esm2015/grid/column-resize/column-resize-directives/common.js +34 -0
  107. package/esm2015/grid/column-resize/column-resize-module.js +36 -0
  108. package/esm2015/grid/column-resize/overlay-handle.js +68 -0
  109. package/esm2015/grid/column-resize/resizable-directives/common.js +29 -0
  110. package/esm2015/grid/column-resize/resizable-directives/resizable.js +75 -0
  111. package/esm2015/grid/column-resize/resize-strategy.js +45 -0
  112. package/esm2015/grid/expansion-toggle.directive.js +62 -0
  113. package/esm2015/{data-grid → grid}/grid.component.js +10 -2
  114. package/esm2015/grid/grid.interface.js +2 -0
  115. package/esm2015/grid/grid.module.js +69 -0
  116. package/esm2015/grid/grid.service.js +50 -0
  117. package/esm2015/grid/mtxGrid.js +5 -0
  118. package/esm2015/grid/public-api.js +17 -0
  119. package/esm2015/loader/loader.component.js +26 -5
  120. package/esm2015/loader/loader.module.js +2 -1
  121. package/esm2015/pipes/pipes.module.js +2 -1
  122. package/esm2015/pipes/to-observable.pipe.js +2 -1
  123. package/esm2015/popover/popover-module.js +2 -1
  124. package/esm2015/popover/popover-target.js +9 -2
  125. package/esm2015/popover/popover-trigger.js +10 -2
  126. package/esm2015/popover/popover.js +10 -2
  127. package/esm2015/progress/progress.component.js +20 -1
  128. package/esm2015/progress/progress.module.js +2 -1
  129. package/esm2015/public-api.js +4 -3
  130. package/esm2015/select/option.component.js +10 -2
  131. package/esm2015/select/select.component.js +10 -2
  132. package/esm2015/select/select.module.js +2 -1
  133. package/esm2015/select/templates.directive.js +89 -12
  134. package/esm2015/slider/mtxSlider.js +5 -0
  135. package/esm2015/slider/public-api.js +3 -0
  136. package/esm2015/slider/slider-module.js +15 -0
  137. package/esm2015/slider/slider.js +1115 -0
  138. package/esm2015/split/interface.js +2 -0
  139. package/esm2015/split/mtxSplit.js +5 -0
  140. package/esm2015/split/public-api.js +6 -0
  141. package/esm2015/split/split-pane.directive.js +156 -0
  142. package/esm2015/split/split.component.js +620 -0
  143. package/esm2015/split/split.module.js +15 -0
  144. package/esm2015/split/utils.js +227 -0
  145. package/esm2015/text3d/text3d.component.js +10 -2
  146. package/esm2015/text3d/text3d.module.js +2 -1
  147. package/esm2015/tooltip/tooltip-module.js +2 -1
  148. package/esm2015/tooltip/tooltip.js +18 -3
  149. package/extensions.metadata.json +1 -1
  150. package/fesm2015/extensions.js +9 -4
  151. package/fesm2015/extensions.js.map +1 -1
  152. package/fesm2015/mtxAlert.js +25 -10
  153. package/fesm2015/mtxAlert.js.map +1 -1
  154. package/fesm2015/mtxButton.js +31 -7
  155. package/fesm2015/mtxButton.js.map +1 -1
  156. package/fesm2015/mtxCheckboxGroup.js +10 -1
  157. package/fesm2015/mtxCheckboxGroup.js.map +1 -1
  158. package/fesm2015/mtxColorPicker.js +10 -1
  159. package/fesm2015/mtxColorPicker.js.map +1 -1
  160. package/fesm2015/mtxColumnResize.js +55 -6
  161. package/fesm2015/mtxColumnResize.js.map +1 -1
  162. package/fesm2015/mtxCore.js +10 -1
  163. package/fesm2015/mtxCore.js.map +1 -1
  164. package/fesm2015/mtxDatetimepicker.js +120 -29
  165. package/fesm2015/mtxDatetimepicker.js.map +1 -1
  166. package/fesm2015/mtxDialog.js +17 -2
  167. package/fesm2015/mtxDialog.js.map +1 -1
  168. package/fesm2015/mtxFormGroup.js +10 -1
  169. package/fesm2015/mtxFormGroup.js.map +1 -1
  170. package/fesm2015/mtxGrid.js +90 -10
  171. package/fesm2015/mtxGrid.js.map +1 -1
  172. package/fesm2015/mtxLoader.js +26 -4
  173. package/fesm2015/mtxLoader.js.map +1 -1
  174. package/fesm2015/mtxPipes.js +2 -0
  175. package/fesm2015/mtxPipes.js.map +1 -1
  176. package/fesm2015/mtxPopover.js +27 -3
  177. package/fesm2015/mtxPopover.js.map +1 -1
  178. package/fesm2015/mtxProgress.js +20 -0
  179. package/fesm2015/mtxProgress.js.map +1 -1
  180. package/fesm2015/mtxSelect.js +107 -13
  181. package/fesm2015/mtxSelect.js.map +1 -1
  182. package/fesm2015/mtxSlider.js +1134 -0
  183. package/fesm2015/mtxSlider.js.map +1 -0
  184. package/fesm2015/mtxSplit.js +21 -4
  185. package/fesm2015/mtxSplit.js.map +1 -1
  186. package/fesm2015/mtxText3d.js +10 -1
  187. package/fesm2015/mtxText3d.js.map +1 -1
  188. package/fesm2015/mtxTooltip.js +18 -2
  189. package/fesm2015/mtxTooltip.js.map +1 -1
  190. package/form-group/_form-group-theme.import.scss +2 -2
  191. package/form-group/_form-group-theme.scss +46 -22
  192. package/form-group/form-group.component.d.ts +2 -0
  193. package/grid/_grid-theme.import.scss +2 -0
  194. package/grid/_grid-theme.scss +114 -0
  195. package/{data-grid → grid}/cell-selection.directive.d.ts +0 -0
  196. package/{data-grid → grid}/cell.component.d.ts +0 -0
  197. package/{data-grid → grid}/cell.component.scss +0 -0
  198. package/{data-grid → grid}/column-menu.component.d.ts +0 -0
  199. package/{data-grid → grid}/column-menu.component.scss +0 -0
  200. package/{data-grid → grid}/column-resize/_column-resize.scss +19 -13
  201. package/{data-grid → grid}/column-resize/column-resize-directives/column-resize-flex.d.ts +0 -0
  202. package/{data-grid → grid}/column-resize/column-resize-directives/column-resize.d.ts +0 -0
  203. package/{data-grid → grid}/column-resize/column-resize-directives/common.d.ts +0 -0
  204. package/{data-grid → grid}/column-resize/column-resize-module.d.ts +0 -0
  205. package/{data-grid → grid}/column-resize/overlay-handle.d.ts +0 -0
  206. package/{data-grid → grid}/column-resize/resizable-directives/common.d.ts +0 -0
  207. package/{data-grid → grid}/column-resize/resizable-directives/resizable.d.ts +0 -0
  208. package/{data-grid → grid}/column-resize/resize-strategy.d.ts +0 -0
  209. package/{data-grid → grid}/expansion-toggle.directive.d.ts +0 -0
  210. package/{data-grid → grid}/grid.component.d.ts +0 -0
  211. package/{data-grid → grid}/grid.component.scss +0 -0
  212. package/{data-grid → grid}/grid.interface.d.ts +0 -0
  213. package/{data-grid → grid}/grid.module.d.ts +0 -0
  214. package/{data-grid → grid}/grid.service.d.ts +0 -0
  215. package/{data-grid → grid}/mtxGrid.d.ts +0 -0
  216. package/{data-grid → grid}/mtxGrid.metadata.json +1 -1
  217. package/{data-grid → grid}/package.json +2 -2
  218. package/{data-grid → grid}/public-api.d.ts +0 -0
  219. package/loader/_loader-theme.import.scss +2 -2
  220. package/loader/_loader-theme.scss +30 -6
  221. package/loader/loader.component.d.ts +9 -2
  222. package/loader/mtxLoader.metadata.json +1 -1
  223. package/package.json +3 -3
  224. package/popover/_popover-theme.import.scss +2 -2
  225. package/popover/_popover-theme.scss +32 -8
  226. package/progress/_progress-theme.import.scss +2 -2
  227. package/progress/_progress-theme.scss +33 -8
  228. package/progress/mtxProgress.metadata.json +1 -1
  229. package/progress/progress.component.d.ts +9 -2
  230. package/public-api.d.ts +3 -2
  231. package/select/_select-theme.import.scss +2 -2
  232. package/select/_select-theme.scss +55 -31
  233. package/slider/_slider-theme.import.scss +2 -0
  234. package/slider/_slider-theme.scss +233 -0
  235. package/{split-pane/mtxSplit.d.ts → slider/mtxSlider.d.ts} +0 -0
  236. package/slider/mtxSlider.metadata.json +1 -0
  237. package/slider/package.json +11 -0
  238. package/slider/public-api.d.ts +2 -0
  239. package/slider/slider-module.d.ts +2 -0
  240. package/slider/slider.d.ts +274 -0
  241. package/slider/slider.scss +513 -0
  242. package/split/_split-theme.import.scss +2 -0
  243. package/split/_split-theme.scss +41 -0
  244. package/{split-pane → split}/interface.d.ts +0 -0
  245. package/split/mtxSplit.d.ts +4 -0
  246. package/split/mtxSplit.metadata.json +1 -0
  247. package/{split-pane → split}/package.json +2 -2
  248. package/{split-pane → split}/public-api.d.ts +0 -0
  249. package/{split-pane → split}/split-pane.directive.d.ts +0 -0
  250. package/{split-pane → split}/split.component.d.ts +0 -0
  251. package/{split-pane → split}/split.component.scss +3 -2
  252. package/{split-pane → split}/split.module.d.ts +0 -0
  253. package/{split-pane → split}/utils.d.ts +0 -0
  254. package/text3d/_text3d-theme.import.scss +2 -2
  255. package/text3d/_text3d-theme.scss +32 -7
  256. package/tooltip/_tooltip-theme.import.scss +2 -2
  257. package/tooltip/_tooltip-theme.scss +32 -15
  258. package/data-grid/_grid-theme.import.scss +0 -2
  259. package/data-grid/_grid-theme.scss +0 -90
  260. package/esm2015/data-grid/cell-selection.directive.js +0 -54
  261. package/esm2015/data-grid/column-resize/column-resize-directives/column-resize-flex.js +0 -40
  262. package/esm2015/data-grid/column-resize/column-resize-directives/column-resize.js +0 -40
  263. package/esm2015/data-grid/column-resize/column-resize-directives/common.js +0 -34
  264. package/esm2015/data-grid/column-resize/column-resize-module.js +0 -34
  265. package/esm2015/data-grid/column-resize/overlay-handle.js +0 -61
  266. package/esm2015/data-grid/column-resize/resizable-directives/common.js +0 -29
  267. package/esm2015/data-grid/column-resize/resizable-directives/resizable.js +0 -67
  268. package/esm2015/data-grid/column-resize/resize-strategy.js +0 -38
  269. package/esm2015/data-grid/expansion-toggle.directive.js +0 -54
  270. package/esm2015/data-grid/grid.interface.js +0 -2
  271. package/esm2015/data-grid/grid.module.js +0 -68
  272. package/esm2015/data-grid/grid.service.js +0 -43
  273. package/esm2015/data-grid/mtxGrid.js +0 -5
  274. package/esm2015/data-grid/public-api.js +0 -17
  275. package/esm2015/split-pane/interface.js +0 -2
  276. package/esm2015/split-pane/mtxSplit.js +0 -5
  277. package/esm2015/split-pane/public-api.js +0 -6
  278. package/esm2015/split-pane/split-pane.directive.js +0 -148
  279. package/esm2015/split-pane/split.component.js +0 -612
  280. package/esm2015/split-pane/split.module.js +0 -14
  281. package/esm2015/split-pane/utils.js +0 -227
  282. package/split-pane/_split-theme.import.scss +0 -2
  283. package/split-pane/_split-theme.scss +0 -17
  284. package/split-pane/mtxSplit.metadata.json +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"mtxSelect.js","sources":["../../../projects/extensions/select/templates.directive.ts","../../../projects/extensions/select/option.component.ts","../../../projects/extensions/select/select.component.ts","../../../projects/extensions/select/select.module.ts","../../../projects/extensions/select/mtxSelect.ts"],"sourcesContent":["import { Directive, TemplateRef } from '@angular/core';\n\n@Directive({ selector: '[ng-option-tmp]' })\nexport class MtxSelectOptionTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-optgroup-tmp]' })\nexport class MtxSelectOptgroupTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-label-tmp]' })\nexport class MtxSelectLabelTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-multi-label-tmp]' })\nexport class MtxSelectMultiLabelTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-header-tmp]' })\nexport class MtxSelectHeaderTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-footer-tmp]' })\nexport class MtxSelectFooterTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-notfound-tmp]' })\nexport class MtxSelectNotFoundTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-typetosearch-tmp]' })\nexport class MtxSelectTypeToSearchTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-loadingtext-tmp]' })\nexport class MtxSelectLoadingTextTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-tag-tmp]' })\nexport class MtxSelectTagTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-loadingspinner-tmp]' })\nexport class MtxSelectLoadingSpinnerTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n","import {\n AfterViewChecked,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Input,\n OnChanges,\n OnDestroy,\n SimpleChanges,\n} from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Component({\n selector: 'mtx-option',\n exportAs: 'mtxOption',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `<ng-content></ng-content>`,\n})\nexport class MtxOptionComponent implements OnChanges, AfterViewChecked, OnDestroy {\n @Input() value: any;\n @Input()\n get disabled() {\n return this._disabled;\n }\n set disabled(value: any) {\n this._disabled = this._isDisabled(value);\n }\n\n readonly stateChange$ = new Subject<{ value: any; disabled: boolean; label?: string }>();\n\n private _disabled = false;\n private _previousLabel!: string;\n\n constructor(public elementRef: ElementRef<HTMLElement>) {}\n\n get label(): string {\n return (this.elementRef.nativeElement.textContent || '').trim();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes.disabled) {\n this.stateChange$.next({\n value: this.value,\n disabled: this._disabled,\n });\n }\n }\n\n ngAfterViewChecked() {\n if (this.label !== this._previousLabel) {\n this._previousLabel = this.label;\n this.stateChange$.next({\n value: this.value,\n disabled: this._disabled,\n label: this.elementRef.nativeElement.innerHTML,\n });\n }\n }\n\n ngOnDestroy() {\n this.stateChange$.complete();\n }\n\n private _isDisabled(value: null) {\n return value != null && `${value}` !== 'false';\n }\n}\n","import {\n Component,\n OnInit,\n OnDestroy,\n DoCheck,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n Input,\n ElementRef,\n ChangeDetectorRef,\n Optional,\n Self,\n Output,\n EventEmitter,\n TemplateRef,\n ContentChild,\n ContentChildren,\n QueryList,\n AfterViewInit,\n ViewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NgControl } from '@angular/forms';\nimport { MatFormFieldControl } from '@angular/material/form-field';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { FocusMonitor } from '@angular/cdk/a11y';\nimport { Subject, merge } from 'rxjs';\nimport { takeUntil, startWith } from 'rxjs/operators';\n\nimport {\n MtxSelectOptionTemplateDirective,\n MtxSelectLabelTemplateDirective,\n MtxSelectHeaderTemplateDirective,\n MtxSelectFooterTemplateDirective,\n MtxSelectOptgroupTemplateDirective,\n MtxSelectNotFoundTemplateDirective,\n MtxSelectTypeToSearchTemplateDirective,\n MtxSelectLoadingTextTemplateDirective,\n MtxSelectMultiLabelTemplateDirective,\n MtxSelectTagTemplateDirective,\n MtxSelectLoadingSpinnerTemplateDirective,\n} from './templates.directive';\nimport { MtxOptionComponent } from './option.component';\nimport { NgSelectComponent } from '@ng-select/ng-select';\n\nexport type DropdownPosition = 'bottom' | 'top' | 'auto';\nexport type AddTagFn = (term: string) => any | Promise<any>;\nexport type CompareWithFn = (a: any, b: any) => boolean;\nexport type GroupValueFn = (key: string | object, children: any[]) => string | object;\nexport type SearchFn = (term: string, item: any) => boolean;\nexport type TrackByFn = (item: any) => any;\n\nexport function isDefined(value: any) {\n return value !== undefined && value !== null;\n}\n\nlet nextUniqueId = 0;\n\n@Component({\n selector: 'mtx-select',\n exportAs: 'mtxSelect',\n host: {\n '[attr.id]': 'id',\n '[attr.aria-describedby]': '_ariaDescribedby || null',\n '[class.mtx-select-floating]': 'shouldLabelFloat',\n '[class.mtx-select-invalid]': 'errorState',\n 'class': 'mtx-select',\n },\n templateUrl: './select.component.html',\n styleUrls: ['./select.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: MatFormFieldControl, useExisting: MtxSelectComponent }],\n})\nexport class MtxSelectComponent\n implements\n OnInit,\n OnDestroy,\n DoCheck,\n AfterViewInit,\n ControlValueAccessor,\n MatFormFieldControl<any> {\n @ViewChild('ngSelect', { static: true }) ngSelect!: NgSelectComponent;\n\n // MtxSelect custom templates\n @ContentChild(MtxSelectOptionTemplateDirective, { read: TemplateRef })\n optionTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectOptgroupTemplateDirective, { read: TemplateRef })\n optgroupTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectLabelTemplateDirective, { read: TemplateRef })\n labelTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectMultiLabelTemplateDirective, { read: TemplateRef })\n multiLabelTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectHeaderTemplateDirective, { read: TemplateRef })\n headerTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectFooterTemplateDirective, { read: TemplateRef })\n footerTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectNotFoundTemplateDirective, { read: TemplateRef })\n notFoundTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectTypeToSearchTemplateDirective, { read: TemplateRef })\n typeToSearchTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectLoadingTextTemplateDirective, { read: TemplateRef })\n loadingTextTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectTagTemplateDirective, { read: TemplateRef }) tagTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectLoadingSpinnerTemplateDirective, { read: TemplateRef })\n loadingSpinnerTemplate!: TemplateRef<any>;\n\n @ContentChildren(MtxOptionComponent, { descendants: true })\n mtxOptions!: QueryList<MtxOptionComponent>;\n\n /** MtxSelect options */\n @Input() addTag: boolean | AddTagFn = false;\n @Input() addTagText = 'Add item';\n @Input() appearance = 'underline';\n @Input() appendTo!: string;\n @Input() bindLabel!: string;\n @Input() bindValue!: string;\n @Input() closeOnSelect = true;\n @Input() clearAllText = 'Clear all';\n @Input() clearable = true;\n @Input() clearOnBackspace = true;\n @Input() compareWith!: CompareWithFn;\n @Input() dropdownPosition: DropdownPosition = 'auto';\n @Input() groupBy!: string | (() => void);\n @Input() groupValue!: GroupValueFn;\n @Input() selectableGroup = false;\n @Input() selectableGroupAsModel = true;\n @Input() hideSelected = false;\n @Input() isOpen!: boolean;\n @Input() loading = false;\n @Input() loadingText = 'Loading...';\n @Input() labelForId: string | null = null;\n @Input() markFirst = true;\n @Input() maxSelectedItems!: number;\n @Input() multiple = false;\n @Input() notFoundText = 'No items found';\n @Input() searchable = true;\n @Input() readonly = false;\n @Input() searchFn: SearchFn | null = null;\n @Input() searchWhileComposing = true;\n @Input() selectOnTab = false;\n @Input() trackByFn: TrackByFn | null = null;\n @Input() inputAttrs: { [key: string]: string } = {};\n @Input() tabIndex!: number;\n @Input() openOnEnter!: boolean;\n @Input() minTermLength = 0;\n @Input() editableSearchTerm = false;\n @Input() keyDownFn = (_: KeyboardEvent) => true;\n @Input() virtualScroll = false;\n @Input() typeToSearchText = 'Type to search';\n @Input() typeahead!: Subject<string>;\n\n @Output('blur') blurEvent = new EventEmitter();\n @Output('focus') focusEvent = new EventEmitter();\n @Output('change') changeEvent = new EventEmitter();\n @Output('open') openEvent = new EventEmitter();\n @Output('close') closeEvent = new EventEmitter();\n @Output('search') searchEvent = new EventEmitter<{ term: string; items: any[] }>();\n @Output('clear') clearEvent = new EventEmitter();\n @Output('add') addEvent = new EventEmitter();\n @Output('remove') removeEvent = new EventEmitter();\n @Output('scroll') scroll = new EventEmitter<{ start: number; end: number }>();\n @Output('scrollToEnd') scrollToEnd = new EventEmitter();\n\n @Input()\n get clearSearchOnAdd() {\n return isDefined(this._clearSearchOnAdd) ? this._clearSearchOnAdd : this.closeOnSelect;\n }\n set clearSearchOnAdd(value) {\n this._clearSearchOnAdd = value;\n }\n private _clearSearchOnAdd!: boolean;\n\n @Input()\n get items() {\n return this._items;\n }\n set items(value: any[]) {\n this._itemsAreUsed = true;\n this._items = value;\n }\n private _items: any[] = [];\n private _itemsAreUsed!: boolean;\n private readonly _destroy$ = new Subject<void>();\n\n /** Value of the select control. */\n @Input()\n get value(): any {\n return this._value;\n }\n set value(newValue: any) {\n this._value = newValue;\n this._onChange(newValue);\n this.stateChanges.next();\n }\n private _value = null;\n\n /** Implemented as part of MatFormFieldControl. */\n readonly stateChanges: Subject<void> = new Subject<void>();\n\n /** Unique id of the element. */\n @Input()\n get id(): string {\n return this._id;\n }\n set id(value: string) {\n this._id = value || this._uid;\n this.stateChanges.next();\n }\n private _id!: string;\n\n /** Unique id for this input. */\n private _uid = `mtx-select-${nextUniqueId++}`;\n\n /** Placeholder to be shown if value is empty. */\n @Input()\n get placeholder(): string {\n return this._placeholder;\n }\n set placeholder(value: string) {\n this._placeholder = value;\n this.stateChanges.next();\n }\n private _placeholder!: string;\n\n /** Whether the input is focused. */\n get focused(): boolean {\n return this._focused;\n }\n private _focused = false;\n\n get empty(): boolean {\n return this.value == null || (Array.isArray(this.value) && this.value.length === 0);\n }\n\n get shouldLabelFloat(): boolean {\n return this.focused || !this.empty;\n }\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 private _required = false;\n\n @Input()\n get disabled(): boolean {\n return this._disabled;\n }\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value);\n this.readonly = this._disabled;\n this.stateChanges.next();\n }\n private _disabled = false;\n\n errorState = false;\n\n /** A name for this control that can be used by `mat-form-field`. */\n controlType = 'mtx-select';\n\n /** The aria-describedby attribute on the select for improved a11y. */\n _ariaDescribedby!: string;\n\n /** `View -> model callback called when value changes` */\n _onChange: (value: any) => void = () => {};\n\n /** `View -> model callback called when select has been touched` */\n _onTouched = () => {};\n\n constructor(\n private _focusMonitor: FocusMonitor,\n private _elementRef: ElementRef<HTMLElement>,\n private _changeDetectorRef: ChangeDetectorRef,\n @Optional() @Self() public ngControl: NgControl\n ) {\n _focusMonitor.monitor(_elementRef, true).subscribe(origin => {\n if (this._focused && !origin) {\n this._onTouched();\n }\n this._focused = !!origin;\n this.stateChanges.next();\n });\n\n if (this.ngControl != null) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n ngOnInit() {\n // Fix compareWith warning of undefined value\n // https://github.com/ng-select/ng-select/issues/1537\n if (this.compareWith) {\n this.ngSelect.compareWith = this.compareWith;\n }\n }\n\n ngAfterViewInit() {\n if (!this._itemsAreUsed) {\n this._setItemsFromMtxOptions();\n }\n }\n\n ngDoCheck(): void {\n if (this.ngControl) {\n this.errorState = (this.ngControl.invalid && this.ngControl.touched) as boolean;\n this.stateChanges.next();\n }\n }\n\n ngOnDestroy() {\n this._destroy$.next();\n this._destroy$.complete();\n this.stateChanges.complete();\n this._focusMonitor.stopMonitoring(this._elementRef);\n }\n\n /** Implemented as part of MatFormFieldControl. */\n setDescribedByIds(ids: string[]) {\n this._ariaDescribedby = ids.join(' ');\n }\n\n /**\n * Disables the select. Part of the ControlValueAccessor interface required\n * to integrate with Angular's core forms API.\n *\n * @param isDisabled Sets whether the component is disabled.\n */\n setDisabledState(isDisabled: boolean) {\n this.disabled = isDisabled;\n }\n\n /** Implemented as part of MatFormFieldControl. */\n onContainerClick(event: MouseEvent) {\n const target = event.target as HTMLElement;\n if (/mat-form-field|mtx-select/g.test(target.parentElement?.classList[0] || '')) {\n this.focus();\n this.open();\n }\n }\n\n /**\n * Sets the select's value. Part of the ControlValueAccessor interface\n * required to integrate with Angular's core forms API.\n *\n * @param value New value to be written to the model.\n */\n writeValue(value: any): void {\n this.value = value;\n this._changeDetectorRef.markForCheck();\n }\n\n /**\n * Saves a callback function to be invoked when the select's value\n * changes from user input. Part of the ControlValueAccessor interface\n * required to integrate with Angular's core forms API.\n *\n * @param fn Callback to be triggered when the value changes.\n */\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n /**\n * Saves a callback function to be invoked when the select is blurred\n * by the user. Part of the ControlValueAccessor interface required\n * to integrate with Angular's core forms API.\n *\n * @param fn Callback to be triggered when the component has been touched.\n */\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n /** NgSelect: _setItemsFromNgOptions */\n\n private _setItemsFromMtxOptions() {\n const mapMtxOptions = (options: QueryList<MtxOptionComponent>) => {\n this.items = options.map(option => ({\n $ngOptionValue: option.value,\n $ngOptionLabel: option.elementRef.nativeElement.innerHTML,\n disabled: option.disabled,\n }));\n this.ngSelect.itemsList.setItems(this.items);\n if (this.ngSelect.hasValue) {\n this.ngSelect.itemsList.mapSelectedItems();\n }\n this.ngSelect.detectChanges();\n };\n\n const handleOptionChange = () => {\n const changedOrDestroyed = merge(this.mtxOptions.changes, this._destroy$);\n merge(...this.mtxOptions.map(option => option.stateChange$))\n .pipe(takeUntil(changedOrDestroyed))\n .subscribe(option => {\n const item = this.ngSelect.itemsList.findItem(option.value);\n item.disabled = option.disabled;\n item.label = option.label || item.label;\n this.ngSelect.detectChanges();\n });\n };\n\n this.mtxOptions.changes\n .pipe(startWith(this.mtxOptions), takeUntil(this._destroy$))\n .subscribe(options => {\n mapMtxOptions(options);\n handleOptionChange();\n });\n }\n\n open() {\n this.ngSelect.open();\n }\n\n close() {\n this.ngSelect.close();\n }\n\n focus() {\n this.ngSelect.focus();\n }\n\n blur() {\n this.ngSelect.blur();\n }\n\n static ngAcceptInputType_required: BooleanInput;\n static ngAcceptInputType_disabled: BooleanInput;\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\nimport { NgSelectModule } from '@ng-select/ng-select';\n\nimport { MtxSelectComponent } from './select.component';\nimport {\n MtxSelectFooterTemplateDirective,\n MtxSelectHeaderTemplateDirective,\n MtxSelectLabelTemplateDirective,\n MtxSelectLoadingSpinnerTemplateDirective,\n MtxSelectLoadingTextTemplateDirective,\n MtxSelectMultiLabelTemplateDirective,\n MtxSelectNotFoundTemplateDirective,\n MtxSelectOptgroupTemplateDirective,\n MtxSelectOptionTemplateDirective,\n MtxSelectTagTemplateDirective,\n MtxSelectTypeToSearchTemplateDirective,\n} from './templates.directive';\nimport { MtxOptionComponent } from './option.component';\n\n@NgModule({\n imports: [CommonModule, FormsModule, ReactiveFormsModule, NgSelectModule],\n exports: [\n MtxSelectComponent,\n MtxOptionComponent,\n MtxSelectOptgroupTemplateDirective,\n MtxSelectOptionTemplateDirective,\n MtxSelectLabelTemplateDirective,\n MtxSelectMultiLabelTemplateDirective,\n MtxSelectHeaderTemplateDirective,\n MtxSelectFooterTemplateDirective,\n MtxSelectNotFoundTemplateDirective,\n MtxSelectTypeToSearchTemplateDirective,\n MtxSelectLoadingTextTemplateDirective,\n MtxSelectTagTemplateDirective,\n MtxSelectLoadingSpinnerTemplateDirective,\n ],\n declarations: [\n MtxSelectComponent,\n MtxOptionComponent,\n MtxSelectOptgroupTemplateDirective,\n MtxSelectOptionTemplateDirective,\n MtxSelectLabelTemplateDirective,\n MtxSelectMultiLabelTemplateDirective,\n MtxSelectHeaderTemplateDirective,\n MtxSelectFooterTemplateDirective,\n MtxSelectNotFoundTemplateDirective,\n MtxSelectTypeToSearchTemplateDirective,\n MtxSelectLoadingTextTemplateDirective,\n MtxSelectTagTemplateDirective,\n MtxSelectLoadingSpinnerTemplateDirective,\n ],\n})\nexport class MtxSelectModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mtxSelect.js","sources":["../../../projects/extensions/select/templates.directive.ts","../../../projects/extensions/select/option.component.ts","../../../projects/extensions/select/select.component.ts","../../../projects/extensions/select/select.module.ts","../../../projects/extensions/select/mtxSelect.ts"],"sourcesContent":["import { Directive, TemplateRef } from '@angular/core';\n\n@Directive({ selector: '[ng-option-tmp]' })\nexport class MtxSelectOptionTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-optgroup-tmp]' })\nexport class MtxSelectOptgroupTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-label-tmp]' })\nexport class MtxSelectLabelTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-multi-label-tmp]' })\nexport class MtxSelectMultiLabelTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-header-tmp]' })\nexport class MtxSelectHeaderTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-footer-tmp]' })\nexport class MtxSelectFooterTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-notfound-tmp]' })\nexport class MtxSelectNotFoundTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-typetosearch-tmp]' })\nexport class MtxSelectTypeToSearchTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-loadingtext-tmp]' })\nexport class MtxSelectLoadingTextTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-tag-tmp]' })\nexport class MtxSelectTagTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n\n@Directive({ selector: '[ng-loadingspinner-tmp]' })\nexport class MtxSelectLoadingSpinnerTemplateDirective {\n constructor(public template: TemplateRef<any>) { }\n}\n","import {\n AfterViewChecked,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Input,\n OnChanges,\n OnDestroy,\n SimpleChanges,\n} from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Component({\n selector: 'mtx-option',\n exportAs: 'mtxOption',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `<ng-content></ng-content>`,\n})\nexport class MtxOptionComponent implements OnChanges, AfterViewChecked, OnDestroy {\n @Input() value: any;\n @Input()\n get disabled() {\n return this._disabled;\n }\n set disabled(value: any) {\n this._disabled = this._isDisabled(value);\n }\n\n readonly stateChange$ = new Subject<{ value: any; disabled: boolean; label?: string }>();\n\n private _disabled = false;\n private _previousLabel!: string;\n\n constructor(public elementRef: ElementRef<HTMLElement>) {}\n\n get label(): string {\n return (this.elementRef.nativeElement.textContent || '').trim();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes.disabled) {\n this.stateChange$.next({\n value: this.value,\n disabled: this._disabled,\n });\n }\n }\n\n ngAfterViewChecked() {\n if (this.label !== this._previousLabel) {\n this._previousLabel = this.label;\n this.stateChange$.next({\n value: this.value,\n disabled: this._disabled,\n label: this.elementRef.nativeElement.innerHTML,\n });\n }\n }\n\n ngOnDestroy() {\n this.stateChange$.complete();\n }\n\n private _isDisabled(value: null) {\n return value != null && `${value}` !== 'false';\n }\n}\n","import {\n Component,\n OnInit,\n OnDestroy,\n DoCheck,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n Input,\n ElementRef,\n ChangeDetectorRef,\n Optional,\n Self,\n Output,\n EventEmitter,\n TemplateRef,\n ContentChild,\n ContentChildren,\n QueryList,\n AfterViewInit,\n ViewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NgControl } from '@angular/forms';\nimport { MatFormFieldControl } from '@angular/material/form-field';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { FocusMonitor } from '@angular/cdk/a11y';\nimport { Subject, merge } from 'rxjs';\nimport { takeUntil, startWith } from 'rxjs/operators';\n\nimport {\n MtxSelectOptionTemplateDirective,\n MtxSelectLabelTemplateDirective,\n MtxSelectHeaderTemplateDirective,\n MtxSelectFooterTemplateDirective,\n MtxSelectOptgroupTemplateDirective,\n MtxSelectNotFoundTemplateDirective,\n MtxSelectTypeToSearchTemplateDirective,\n MtxSelectLoadingTextTemplateDirective,\n MtxSelectMultiLabelTemplateDirective,\n MtxSelectTagTemplateDirective,\n MtxSelectLoadingSpinnerTemplateDirective,\n} from './templates.directive';\nimport { MtxOptionComponent } from './option.component';\nimport { NgSelectComponent } from '@ng-select/ng-select';\n\nexport type DropdownPosition = 'bottom' | 'top' | 'auto';\nexport type AddTagFn = (term: string) => any | Promise<any>;\nexport type CompareWithFn = (a: any, b: any) => boolean;\nexport type GroupValueFn = (key: string | object, children: any[]) => string | object;\nexport type SearchFn = (term: string, item: any) => boolean;\nexport type TrackByFn = (item: any) => any;\n\nexport function isDefined(value: any) {\n return value !== undefined && value !== null;\n}\n\nlet nextUniqueId = 0;\n\n@Component({\n selector: 'mtx-select',\n exportAs: 'mtxSelect',\n host: {\n '[attr.id]': 'id',\n '[attr.aria-describedby]': '_ariaDescribedby || null',\n '[class.mtx-select-floating]': 'shouldLabelFloat',\n '[class.mtx-select-invalid]': 'errorState',\n 'class': 'mtx-select',\n },\n templateUrl: './select.component.html',\n styleUrls: ['./select.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: MatFormFieldControl, useExisting: MtxSelectComponent }],\n})\nexport class MtxSelectComponent\n implements\n OnInit,\n OnDestroy,\n DoCheck,\n AfterViewInit,\n ControlValueAccessor,\n MatFormFieldControl<any> {\n @ViewChild('ngSelect', { static: true }) ngSelect!: NgSelectComponent;\n\n // MtxSelect custom templates\n @ContentChild(MtxSelectOptionTemplateDirective, { read: TemplateRef })\n optionTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectOptgroupTemplateDirective, { read: TemplateRef })\n optgroupTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectLabelTemplateDirective, { read: TemplateRef })\n labelTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectMultiLabelTemplateDirective, { read: TemplateRef })\n multiLabelTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectHeaderTemplateDirective, { read: TemplateRef })\n headerTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectFooterTemplateDirective, { read: TemplateRef })\n footerTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectNotFoundTemplateDirective, { read: TemplateRef })\n notFoundTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectTypeToSearchTemplateDirective, { read: TemplateRef })\n typeToSearchTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectLoadingTextTemplateDirective, { read: TemplateRef })\n loadingTextTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectTagTemplateDirective, { read: TemplateRef }) tagTemplate!: TemplateRef<any>;\n @ContentChild(MtxSelectLoadingSpinnerTemplateDirective, { read: TemplateRef })\n loadingSpinnerTemplate!: TemplateRef<any>;\n\n @ContentChildren(MtxOptionComponent, { descendants: true })\n mtxOptions!: QueryList<MtxOptionComponent>;\n\n /** MtxSelect options */\n @Input() addTag: boolean | AddTagFn = false;\n @Input() addTagText = 'Add item';\n @Input() appearance = 'underline';\n @Input() appendTo!: string;\n @Input() bindLabel!: string;\n @Input() bindValue!: string;\n @Input() closeOnSelect = true;\n @Input() clearAllText = 'Clear all';\n @Input() clearable = true;\n @Input() clearOnBackspace = true;\n @Input() compareWith!: CompareWithFn;\n @Input() dropdownPosition: DropdownPosition = 'auto';\n @Input() groupBy!: string | (() => void);\n @Input() groupValue!: GroupValueFn;\n @Input() selectableGroup = false;\n @Input() selectableGroupAsModel = true;\n @Input() hideSelected = false;\n @Input() isOpen!: boolean;\n @Input() loading = false;\n @Input() loadingText = 'Loading...';\n @Input() labelForId: string | null = null;\n @Input() markFirst = true;\n @Input() maxSelectedItems!: number;\n @Input() multiple = false;\n @Input() notFoundText = 'No items found';\n @Input() searchable = true;\n @Input() readonly = false;\n @Input() searchFn: SearchFn | null = null;\n @Input() searchWhileComposing = true;\n @Input() selectOnTab = false;\n @Input() trackByFn: TrackByFn | null = null;\n @Input() inputAttrs: { [key: string]: string } = {};\n @Input() tabIndex!: number;\n @Input() openOnEnter!: boolean;\n @Input() minTermLength = 0;\n @Input() editableSearchTerm = false;\n @Input() keyDownFn = (_: KeyboardEvent) => true;\n @Input() virtualScroll = false;\n @Input() typeToSearchText = 'Type to search';\n @Input() typeahead!: Subject<string>;\n\n @Output('blur') blurEvent = new EventEmitter();\n @Output('focus') focusEvent = new EventEmitter();\n @Output('change') changeEvent = new EventEmitter();\n @Output('open') openEvent = new EventEmitter();\n @Output('close') closeEvent = new EventEmitter();\n @Output('search') searchEvent = new EventEmitter<{ term: string; items: any[] }>();\n @Output('clear') clearEvent = new EventEmitter();\n @Output('add') addEvent = new EventEmitter();\n @Output('remove') removeEvent = new EventEmitter();\n @Output('scroll') scroll = new EventEmitter<{ start: number; end: number }>();\n @Output('scrollToEnd') scrollToEnd = new EventEmitter();\n\n @Input()\n get clearSearchOnAdd() {\n return isDefined(this._clearSearchOnAdd) ? this._clearSearchOnAdd : this.closeOnSelect;\n }\n set clearSearchOnAdd(value) {\n this._clearSearchOnAdd = value;\n }\n private _clearSearchOnAdd!: boolean;\n\n @Input()\n get items() {\n return this._items;\n }\n set items(value: any[]) {\n this._itemsAreUsed = true;\n this._items = value;\n }\n private _items: any[] = [];\n private _itemsAreUsed!: boolean;\n private readonly _destroy$ = new Subject<void>();\n\n /** Value of the select control. */\n @Input()\n get value(): any {\n return this._value;\n }\n set value(newValue: any) {\n this._value = newValue;\n this._onChange(newValue);\n this.stateChanges.next();\n }\n private _value = null;\n\n /** Implemented as part of MatFormFieldControl. */\n readonly stateChanges: Subject<void> = new Subject<void>();\n\n /** Unique id of the element. */\n @Input()\n get id(): string {\n return this._id;\n }\n set id(value: string) {\n this._id = value || this._uid;\n this.stateChanges.next();\n }\n private _id!: string;\n\n /** Unique id for this input. */\n private _uid = `mtx-select-${nextUniqueId++}`;\n\n /** Placeholder to be shown if value is empty. */\n @Input()\n get placeholder(): string {\n return this._placeholder;\n }\n set placeholder(value: string) {\n this._placeholder = value;\n this.stateChanges.next();\n }\n private _placeholder!: string;\n\n /** Whether the input is focused. */\n get focused(): boolean {\n return this._focused;\n }\n private _focused = false;\n\n get empty(): boolean {\n return this.value == null || (Array.isArray(this.value) && this.value.length === 0);\n }\n\n get shouldLabelFloat(): boolean {\n return this.focused || !this.empty;\n }\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 private _required = false;\n\n @Input()\n get disabled(): boolean {\n return this._disabled;\n }\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value);\n this.readonly = this._disabled;\n this.stateChanges.next();\n }\n private _disabled = false;\n\n errorState = false;\n\n /** A name for this control that can be used by `mat-form-field`. */\n controlType = 'mtx-select';\n\n /** The aria-describedby attribute on the select for improved a11y. */\n _ariaDescribedby!: string;\n\n /** `View -> model callback called when value changes` */\n _onChange: (value: any) => void = () => {};\n\n /** `View -> model callback called when select has been touched` */\n _onTouched = () => {};\n\n constructor(\n private _focusMonitor: FocusMonitor,\n private _elementRef: ElementRef<HTMLElement>,\n private _changeDetectorRef: ChangeDetectorRef,\n @Optional() @Self() public ngControl: NgControl\n ) {\n _focusMonitor.monitor(_elementRef, true).subscribe(origin => {\n if (this._focused && !origin) {\n this._onTouched();\n }\n this._focused = !!origin;\n this.stateChanges.next();\n });\n\n if (this.ngControl != null) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n ngOnInit() {\n // Fix compareWith warning of undefined value\n // https://github.com/ng-select/ng-select/issues/1537\n if (this.compareWith) {\n this.ngSelect.compareWith = this.compareWith;\n }\n }\n\n ngAfterViewInit() {\n if (!this._itemsAreUsed) {\n this._setItemsFromMtxOptions();\n }\n }\n\n ngDoCheck(): void {\n if (this.ngControl) {\n this.errorState = (this.ngControl.invalid && this.ngControl.touched) as boolean;\n this.stateChanges.next();\n }\n }\n\n ngOnDestroy() {\n this._destroy$.next();\n this._destroy$.complete();\n this.stateChanges.complete();\n this._focusMonitor.stopMonitoring(this._elementRef);\n }\n\n /** Implemented as part of MatFormFieldControl. */\n setDescribedByIds(ids: string[]) {\n this._ariaDescribedby = ids.join(' ');\n }\n\n /**\n * Disables the select. Part of the ControlValueAccessor interface required\n * to integrate with Angular's core forms API.\n *\n * @param isDisabled Sets whether the component is disabled.\n */\n setDisabledState(isDisabled: boolean) {\n this.disabled = isDisabled;\n }\n\n /** Implemented as part of MatFormFieldControl. */\n onContainerClick(event: MouseEvent) {\n const target = event.target as HTMLElement;\n if (/mat-form-field|mtx-select/g.test(target.parentElement?.classList[0] || '')) {\n this.focus();\n this.open();\n }\n }\n\n /**\n * Sets the select's value. Part of the ControlValueAccessor interface\n * required to integrate with Angular's core forms API.\n *\n * @param value New value to be written to the model.\n */\n writeValue(value: any): void {\n this.value = value;\n this._changeDetectorRef.markForCheck();\n }\n\n /**\n * Saves a callback function to be invoked when the select's value\n * changes from user input. Part of the ControlValueAccessor interface\n * required to integrate with Angular's core forms API.\n *\n * @param fn Callback to be triggered when the value changes.\n */\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n /**\n * Saves a callback function to be invoked when the select is blurred\n * by the user. Part of the ControlValueAccessor interface required\n * to integrate with Angular's core forms API.\n *\n * @param fn Callback to be triggered when the component has been touched.\n */\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n /** NgSelect: _setItemsFromNgOptions */\n\n private _setItemsFromMtxOptions() {\n const mapMtxOptions = (options: QueryList<MtxOptionComponent>) => {\n this.items = options.map(option => ({\n $ngOptionValue: option.value,\n $ngOptionLabel: option.elementRef.nativeElement.innerHTML,\n disabled: option.disabled,\n }));\n this.ngSelect.itemsList.setItems(this.items);\n if (this.ngSelect.hasValue) {\n this.ngSelect.itemsList.mapSelectedItems();\n }\n this.ngSelect.detectChanges();\n };\n\n const handleOptionChange = () => {\n const changedOrDestroyed = merge(this.mtxOptions.changes, this._destroy$);\n merge(...this.mtxOptions.map(option => option.stateChange$))\n .pipe(takeUntil(changedOrDestroyed))\n .subscribe(option => {\n const item = this.ngSelect.itemsList.findItem(option.value);\n item.disabled = option.disabled;\n item.label = option.label || item.label;\n this.ngSelect.detectChanges();\n });\n };\n\n this.mtxOptions.changes\n .pipe(startWith(this.mtxOptions), takeUntil(this._destroy$))\n .subscribe(options => {\n mapMtxOptions(options);\n handleOptionChange();\n });\n }\n\n open() {\n this.ngSelect.open();\n }\n\n close() {\n this.ngSelect.close();\n }\n\n focus() {\n this.ngSelect.focus();\n }\n\n blur() {\n this.ngSelect.blur();\n }\n\n static ngAcceptInputType_required: BooleanInput;\n static ngAcceptInputType_disabled: BooleanInput;\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\nimport { NgSelectModule } from '@ng-select/ng-select';\n\nimport { MtxSelectComponent } from './select.component';\nimport {\n MtxSelectFooterTemplateDirective,\n MtxSelectHeaderTemplateDirective,\n MtxSelectLabelTemplateDirective,\n MtxSelectLoadingSpinnerTemplateDirective,\n MtxSelectLoadingTextTemplateDirective,\n MtxSelectMultiLabelTemplateDirective,\n MtxSelectNotFoundTemplateDirective,\n MtxSelectOptgroupTemplateDirective,\n MtxSelectOptionTemplateDirective,\n MtxSelectTagTemplateDirective,\n MtxSelectTypeToSearchTemplateDirective,\n} from './templates.directive';\nimport { MtxOptionComponent } from './option.component';\n\n@NgModule({\n imports: [CommonModule, FormsModule, ReactiveFormsModule, NgSelectModule],\n exports: [\n MtxSelectComponent,\n MtxOptionComponent,\n MtxSelectOptgroupTemplateDirective,\n MtxSelectOptionTemplateDirective,\n MtxSelectLabelTemplateDirective,\n MtxSelectMultiLabelTemplateDirective,\n MtxSelectHeaderTemplateDirective,\n MtxSelectFooterTemplateDirective,\n MtxSelectNotFoundTemplateDirective,\n MtxSelectTypeToSearchTemplateDirective,\n MtxSelectLoadingTextTemplateDirective,\n MtxSelectTagTemplateDirective,\n MtxSelectLoadingSpinnerTemplateDirective,\n ],\n declarations: [\n MtxSelectComponent,\n MtxOptionComponent,\n MtxSelectOptgroupTemplateDirective,\n MtxSelectOptionTemplateDirective,\n MtxSelectLabelTemplateDirective,\n MtxSelectMultiLabelTemplateDirective,\n MtxSelectHeaderTemplateDirective,\n MtxSelectFooterTemplateDirective,\n MtxSelectNotFoundTemplateDirective,\n MtxSelectTypeToSearchTemplateDirective,\n MtxSelectLoadingTextTemplateDirective,\n MtxSelectTagTemplateDirective,\n MtxSelectLoadingSpinnerTemplateDirective,\n ],\n})\nexport class MtxSelectModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}