@ptsecurity/mosaic 12.1.0 → 12.3.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 (302) hide show
  1. package/_theming.scss +38 -157
  2. package/_visual.scss +0 -1
  3. package/bundles/ptsecurity-mosaic-autocomplete.umd.js +18 -20
  4. package/bundles/ptsecurity-mosaic-autocomplete.umd.js.map +1 -1
  5. package/bundles/ptsecurity-mosaic-button-toggle.umd.js +15 -17
  6. package/bundles/ptsecurity-mosaic-button-toggle.umd.js.map +1 -1
  7. package/bundles/ptsecurity-mosaic-button.umd.js +17 -19
  8. package/bundles/ptsecurity-mosaic-button.umd.js.map +1 -1
  9. package/bundles/ptsecurity-mosaic-card.umd.js +11 -13
  10. package/bundles/ptsecurity-mosaic-card.umd.js.map +1 -1
  11. package/bundles/ptsecurity-mosaic-checkbox.umd.js +14 -16
  12. package/bundles/ptsecurity-mosaic-checkbox.umd.js.map +1 -1
  13. package/bundles/ptsecurity-mosaic-core.umd.js +122 -168
  14. package/bundles/ptsecurity-mosaic-core.umd.js.map +1 -1
  15. package/bundles/ptsecurity-mosaic-datepicker.umd.js +53 -48
  16. package/bundles/ptsecurity-mosaic-datepicker.umd.js.map +1 -1
  17. package/bundles/ptsecurity-mosaic-design-tokens.umd.js +3 -4
  18. package/bundles/ptsecurity-mosaic-design-tokens.umd.js.map +1 -1
  19. package/bundles/ptsecurity-mosaic-divider.umd.js +11 -13
  20. package/bundles/ptsecurity-mosaic-divider.umd.js.map +1 -1
  21. package/bundles/ptsecurity-mosaic-dropdown.umd.js +36 -23
  22. package/bundles/ptsecurity-mosaic-dropdown.umd.js.map +1 -1
  23. package/bundles/ptsecurity-mosaic-form-field.umd.js +737 -738
  24. package/bundles/ptsecurity-mosaic-form-field.umd.js.map +1 -1
  25. package/bundles/ptsecurity-mosaic-icon.umd.js +14 -16
  26. package/bundles/ptsecurity-mosaic-icon.umd.js.map +1 -1
  27. package/bundles/ptsecurity-mosaic-input.umd.js +45 -33
  28. package/bundles/ptsecurity-mosaic-input.umd.js.map +1 -1
  29. package/bundles/ptsecurity-mosaic-link.umd.js +11 -13
  30. package/bundles/ptsecurity-mosaic-link.umd.js.map +1 -1
  31. package/bundles/ptsecurity-mosaic-list.umd.js +37 -36
  32. package/bundles/ptsecurity-mosaic-list.umd.js.map +1 -1
  33. package/bundles/ptsecurity-mosaic-modal.umd.js +52 -44
  34. package/bundles/ptsecurity-mosaic-modal.umd.js.map +1 -1
  35. package/bundles/ptsecurity-mosaic-navbar.umd.js +40 -42
  36. package/bundles/ptsecurity-mosaic-navbar.umd.js.map +1 -1
  37. package/bundles/ptsecurity-mosaic-popover.umd.js +215 -34
  38. package/bundles/ptsecurity-mosaic-popover.umd.js.map +1 -1
  39. package/bundles/ptsecurity-mosaic-progress-bar.umd.js +12 -14
  40. package/bundles/ptsecurity-mosaic-progress-bar.umd.js.map +1 -1
  41. package/bundles/ptsecurity-mosaic-progress-spinner.umd.js +12 -14
  42. package/bundles/ptsecurity-mosaic-progress-spinner.umd.js.map +1 -1
  43. package/bundles/ptsecurity-mosaic-radio.umd.js +14 -16
  44. package/bundles/ptsecurity-mosaic-radio.umd.js.map +1 -1
  45. package/bundles/ptsecurity-mosaic-select.umd.js +22 -24
  46. package/bundles/ptsecurity-mosaic-select.umd.js.map +1 -1
  47. package/bundles/ptsecurity-mosaic-sidebar.umd.js +17 -19
  48. package/bundles/ptsecurity-mosaic-sidebar.umd.js.map +1 -1
  49. package/bundles/ptsecurity-mosaic-sidepanel.umd.js +62 -58
  50. package/bundles/ptsecurity-mosaic-sidepanel.umd.js.map +1 -1
  51. package/bundles/ptsecurity-mosaic-splitter.umd.js +245 -48
  52. package/bundles/ptsecurity-mosaic-splitter.umd.js.map +1 -1
  53. package/bundles/ptsecurity-mosaic-table.umd.js +11 -13
  54. package/bundles/ptsecurity-mosaic-table.umd.js.map +1 -1
  55. package/bundles/ptsecurity-mosaic-tabs.umd.js +56 -58
  56. package/bundles/ptsecurity-mosaic-tabs.umd.js.map +1 -1
  57. package/bundles/ptsecurity-mosaic-tags.umd.js +77 -73
  58. package/bundles/ptsecurity-mosaic-tags.umd.js.map +1 -1
  59. package/bundles/ptsecurity-mosaic-textarea.umd.js +12 -14
  60. package/bundles/ptsecurity-mosaic-textarea.umd.js.map +1 -1
  61. package/bundles/ptsecurity-mosaic-timepicker.umd.js +15 -16
  62. package/bundles/ptsecurity-mosaic-timepicker.umd.js.map +1 -1
  63. package/bundles/ptsecurity-mosaic-toggle.umd.js +11 -13
  64. package/bundles/ptsecurity-mosaic-toggle.umd.js.map +1 -1
  65. package/bundles/ptsecurity-mosaic-tooltip.umd.js +72 -23
  66. package/bundles/ptsecurity-mosaic-tooltip.umd.js.map +1 -1
  67. package/bundles/ptsecurity-mosaic-tree-select.umd.js +17 -18
  68. package/bundles/ptsecurity-mosaic-tree-select.umd.js.map +1 -1
  69. package/bundles/ptsecurity-mosaic-tree.umd.js +45 -53
  70. package/bundles/ptsecurity-mosaic-tree.umd.js.map +1 -1
  71. package/bundles/ptsecurity-mosaic.umd.js +2 -2
  72. package/core/pop-up/pop-up-trigger.d.ts +9 -12
  73. package/design-tokens/style-dictionary/build.js +6 -0
  74. package/design-tokens/style-dictionary/configs/index.js +2 -1
  75. package/design-tokens/tokens.d.ts +0 -1
  76. package/dropdown/dropdown-item.component.d.ts +1 -0
  77. package/esm2015/autocomplete/autocomplete-origin.directive.js +4 -4
  78. package/esm2015/autocomplete/autocomplete-trigger.directive.js +4 -4
  79. package/esm2015/autocomplete/autocomplete.component.js +4 -4
  80. package/esm2015/autocomplete/autocomplete.module.js +5 -5
  81. package/esm2015/button/button.component.js +10 -10
  82. package/esm2015/button/button.module.js +5 -5
  83. package/esm2015/button-toggle/button-toggle.component.js +7 -7
  84. package/esm2015/button-toggle/button-toggle.module.js +5 -5
  85. package/esm2015/card/card.component.js +4 -4
  86. package/esm2015/card/card.module.js +5 -5
  87. package/esm2015/checkbox/checkbox-module.js +5 -5
  88. package/esm2015/checkbox/checkbox-required-validator.js +4 -4
  89. package/esm2015/checkbox/checkbox.js +4 -4
  90. package/esm2015/core/common-behaviors/common-module.js +5 -5
  91. package/esm2015/core/error/error-options.js +7 -7
  92. package/esm2015/core/formatters/date/formatter.js +6 -5
  93. package/esm2015/core/formatters/index.js +5 -5
  94. package/esm2015/core/formatters/number/formatter.js +5 -5
  95. package/esm2015/core/forms/forms-module.js +5 -5
  96. package/esm2015/core/forms/forms.directive.js +7 -7
  97. package/esm2015/core/highlight/highlight.pipe.js +4 -4
  98. package/esm2015/core/highlight/index.js +5 -5
  99. package/esm2015/core/line/line.js +8 -8
  100. package/esm2015/core/option/action.js +4 -4
  101. package/esm2015/core/option/optgroup.js +4 -4
  102. package/esm2015/core/option/option-module.js +5 -5
  103. package/esm2015/core/option/option.js +4 -4
  104. package/esm2015/core/pop-up/pop-up-trigger.js +32 -66
  105. package/esm2015/core/pop-up/pop-up.js +4 -4
  106. package/esm2015/core/selection/pseudo-checkbox/pseudo-checkbox.js +4 -4
  107. package/esm2015/core/selection/pseudo-checkbox/pseudo-checkbox.module.js +5 -5
  108. package/esm2015/core/services/measure-scrollbar.service.js +4 -4
  109. package/esm2015/datepicker/calendar-body.component.js +4 -4
  110. package/esm2015/datepicker/calendar.component.js +7 -7
  111. package/esm2015/datepicker/datepicker-input.directive.js +12 -5
  112. package/esm2015/datepicker/datepicker-intl.js +4 -4
  113. package/esm2015/datepicker/datepicker-module.js +5 -5
  114. package/esm2015/datepicker/datepicker-toggle.component.js +7 -7
  115. package/esm2015/datepicker/datepicker.component.js +7 -7
  116. package/esm2015/datepicker/month-view.component.js +4 -4
  117. package/esm2015/datepicker/multi-year-view.component.js +4 -4
  118. package/esm2015/datepicker/year-view.component.js +4 -4
  119. package/esm2015/design-tokens/tokens.js +1 -2
  120. package/esm2015/divider/divider.component.js +4 -4
  121. package/esm2015/divider/divider.module.js +5 -5
  122. package/esm2015/dropdown/dropdown-content.directive.js +4 -4
  123. package/esm2015/dropdown/dropdown-item.component.js +11 -4
  124. package/esm2015/dropdown/dropdown-trigger.directive.js +13 -5
  125. package/esm2015/dropdown/dropdown.component.js +4 -4
  126. package/esm2015/dropdown/dropdown.module.js +5 -5
  127. package/esm2015/form-field/cleaner.js +9 -5
  128. package/esm2015/form-field/form-field.js +7 -7
  129. package/esm2015/form-field/form-field.module.js +5 -5
  130. package/esm2015/form-field/hint.js +4 -4
  131. package/esm2015/form-field/prefix.js +4 -4
  132. package/esm2015/form-field/stepper.js +4 -4
  133. package/esm2015/form-field/suffix.js +4 -4
  134. package/esm2015/icon/icon.component.js +7 -7
  135. package/esm2015/icon/icon.module.js +5 -5
  136. package/esm2015/input/input-number-validators.js +28 -14
  137. package/esm2015/input/input-number.js +4 -4
  138. package/esm2015/input/input.js +7 -7
  139. package/esm2015/input/input.module.js +5 -5
  140. package/esm2015/link/link.component.js +4 -4
  141. package/esm2015/link/link.module.js +5 -5
  142. package/esm2015/list/list-selection.component.js +24 -21
  143. package/esm2015/list/list.component.js +7 -7
  144. package/esm2015/list/list.module.js +5 -5
  145. package/esm2015/modal/css-unit.pipe.js +4 -4
  146. package/esm2015/modal/modal-control.service.js +4 -4
  147. package/esm2015/modal/modal.component.js +6 -4
  148. package/esm2015/modal/modal.directive.js +13 -13
  149. package/esm2015/modal/modal.module.js +9 -7
  150. package/esm2015/modal/modal.service.js +16 -9
  151. package/esm2015/navbar/navbar-item.component.js +21 -21
  152. package/esm2015/navbar/navbar.component.js +7 -7
  153. package/esm2015/navbar/navbar.module.js +5 -5
  154. package/esm2015/navbar/vertical-navbar.component.js +7 -7
  155. package/esm2015/popover/popover-confirm.component.js +116 -0
  156. package/esm2015/popover/popover.component.js +63 -20
  157. package/esm2015/popover/popover.module.js +13 -10
  158. package/esm2015/popover/public-api.js +2 -1
  159. package/esm2015/progress-bar/progress-bar.component.js +4 -4
  160. package/esm2015/progress-bar/progress-bar.module.js +5 -5
  161. package/esm2015/progress-spinner/progress-spinner.component.js +4 -4
  162. package/esm2015/progress-spinner/progress-spinner.module.js +5 -5
  163. package/esm2015/radio/radio.component.js +7 -7
  164. package/esm2015/radio/radio.module.js +5 -5
  165. package/esm2015/select/select.component.js +14 -14
  166. package/esm2015/select/select.module.js +5 -5
  167. package/esm2015/sidebar/sidebar.component.js +10 -10
  168. package/esm2015/sidebar/sidebar.module.js +5 -5
  169. package/esm2015/sidepanel/sidepanel-container.component.js +14 -13
  170. package/esm2015/sidepanel/sidepanel-directives.js +22 -18
  171. package/esm2015/sidepanel/sidepanel.module.js +12 -8
  172. package/esm2015/sidepanel/sidepanel.service.js +6 -5
  173. package/esm2015/splitter/splitter.component.js +198 -40
  174. package/esm2015/splitter/splitter.module.js +8 -6
  175. package/esm2015/table/table.component.js +4 -4
  176. package/esm2015/table/table.module.js +5 -5
  177. package/esm2015/tabs/paginated-tab-header.js +4 -4
  178. package/esm2015/tabs/tab-body.component.js +7 -7
  179. package/esm2015/tabs/tab-content.directive.js +4 -4
  180. package/esm2015/tabs/tab-group.component.js +19 -19
  181. package/esm2015/tabs/tab-header.component.js +4 -4
  182. package/esm2015/tabs/tab-label-wrapper.directive.js +4 -4
  183. package/esm2015/tabs/tab-label.directive.js +4 -4
  184. package/esm2015/tabs/tab-nav-bar/tab-nav-bar.js +7 -7
  185. package/esm2015/tabs/tab.component.js +4 -4
  186. package/esm2015/tabs/tabs.module.js +5 -5
  187. package/esm2015/tags/tag-input.js +4 -4
  188. package/esm2015/tags/tag-list.component.js +4 -4
  189. package/esm2015/tags/tag.component.js +61 -57
  190. package/esm2015/tags/tag.module.js +5 -5
  191. package/esm2015/textarea/textarea.component.js +4 -4
  192. package/esm2015/textarea/textarea.module.js +5 -5
  193. package/esm2015/timepicker/timepicker.directive.js +8 -7
  194. package/esm2015/timepicker/timepicker.module.js +5 -5
  195. package/esm2015/toggle/toggle.component.js +4 -4
  196. package/esm2015/toggle/toggle.module.js +5 -5
  197. package/esm2015/tooltip/tooltip.component.js +55 -16
  198. package/esm2015/tooltip/tooltip.module.js +5 -5
  199. package/esm2015/tree/node.js +4 -4
  200. package/esm2015/tree/outlet.js +4 -4
  201. package/esm2015/tree/padding.directive.js +5 -8
  202. package/esm2015/tree/toggle.js +11 -11
  203. package/esm2015/tree/tree-base.js +7 -7
  204. package/esm2015/tree/tree-option.component.js +5 -5
  205. package/esm2015/tree/tree-selection.component.js +4 -4
  206. package/esm2015/tree/tree.js +4 -4
  207. package/esm2015/tree/tree.module.js +5 -8
  208. package/esm2015/tree-select/tree-select.component.js +9 -8
  209. package/esm2015/tree-select/tree-select.module.js +5 -5
  210. package/fesm2015/ptsecurity-mosaic-autocomplete.js +13 -13
  211. package/fesm2015/ptsecurity-mosaic-autocomplete.js.map +1 -1
  212. package/fesm2015/ptsecurity-mosaic-button-toggle.js +10 -10
  213. package/fesm2015/ptsecurity-mosaic-button-toggle.js.map +1 -1
  214. package/fesm2015/ptsecurity-mosaic-button.js +13 -13
  215. package/fesm2015/ptsecurity-mosaic-button.js.map +1 -1
  216. package/fesm2015/ptsecurity-mosaic-card.js +7 -7
  217. package/fesm2015/ptsecurity-mosaic-card.js.map +1 -1
  218. package/fesm2015/ptsecurity-mosaic-checkbox.js +10 -10
  219. package/fesm2015/ptsecurity-mosaic-checkbox.js.map +1 -1
  220. package/fesm2015/ptsecurity-mosaic-core.js +102 -136
  221. package/fesm2015/ptsecurity-mosaic-core.js.map +1 -1
  222. package/fesm2015/ptsecurity-mosaic-datepicker.js +48 -41
  223. package/fesm2015/ptsecurity-mosaic-datepicker.js.map +1 -1
  224. package/fesm2015/ptsecurity-mosaic-design-tokens.js +0 -1
  225. package/fesm2015/ptsecurity-mosaic-design-tokens.js.map +1 -1
  226. package/fesm2015/ptsecurity-mosaic-divider.js +7 -7
  227. package/fesm2015/ptsecurity-mosaic-divider.js.map +1 -1
  228. package/fesm2015/ptsecurity-mosaic-dropdown.js +32 -17
  229. package/fesm2015/ptsecurity-mosaic-dropdown.js.map +1 -1
  230. package/fesm2015/ptsecurity-mosaic-form-field.js +30 -27
  231. package/fesm2015/ptsecurity-mosaic-form-field.js.map +1 -1
  232. package/fesm2015/ptsecurity-mosaic-icon.js +10 -10
  233. package/fesm2015/ptsecurity-mosaic-icon.js.map +1 -1
  234. package/fesm2015/ptsecurity-mosaic-input.js +40 -26
  235. package/fesm2015/ptsecurity-mosaic-input.js.map +1 -1
  236. package/fesm2015/ptsecurity-mosaic-link.js +7 -7
  237. package/fesm2015/ptsecurity-mosaic-link.js.map +1 -1
  238. package/fesm2015/ptsecurity-mosaic-list.js +33 -30
  239. package/fesm2015/ptsecurity-mosaic-list.js.map +1 -1
  240. package/fesm2015/ptsecurity-mosaic-modal.js +46 -35
  241. package/fesm2015/ptsecurity-mosaic-modal.js.map +1 -1
  242. package/fesm2015/ptsecurity-mosaic-navbar.js +36 -36
  243. package/fesm2015/ptsecurity-mosaic-navbar.js.map +1 -1
  244. package/fesm2015/ptsecurity-mosaic-popover.js +179 -30
  245. package/fesm2015/ptsecurity-mosaic-popover.js.map +1 -1
  246. package/fesm2015/ptsecurity-mosaic-progress-bar.js +7 -7
  247. package/fesm2015/ptsecurity-mosaic-progress-bar.js.map +1 -1
  248. package/fesm2015/ptsecurity-mosaic-progress-spinner.js +7 -7
  249. package/fesm2015/ptsecurity-mosaic-progress-spinner.js.map +1 -1
  250. package/fesm2015/ptsecurity-mosaic-radio.js +10 -10
  251. package/fesm2015/ptsecurity-mosaic-radio.js.map +1 -1
  252. package/fesm2015/ptsecurity-mosaic-select.js +17 -17
  253. package/fesm2015/ptsecurity-mosaic-select.js.map +1 -1
  254. package/fesm2015/ptsecurity-mosaic-sidebar.js +13 -13
  255. package/fesm2015/ptsecurity-mosaic-sidebar.js.map +1 -1
  256. package/fesm2015/ptsecurity-mosaic-sidepanel.js +50 -41
  257. package/fesm2015/ptsecurity-mosaic-sidepanel.js.map +1 -1
  258. package/fesm2015/ptsecurity-mosaic-splitter.js +204 -44
  259. package/fesm2015/ptsecurity-mosaic-splitter.js.map +1 -1
  260. package/fesm2015/ptsecurity-mosaic-table.js +7 -7
  261. package/fesm2015/ptsecurity-mosaic-table.js.map +1 -1
  262. package/fesm2015/ptsecurity-mosaic-tabs.js +52 -52
  263. package/fesm2015/ptsecurity-mosaic-tabs.js.map +1 -1
  264. package/fesm2015/ptsecurity-mosaic-tags.js +70 -66
  265. package/fesm2015/ptsecurity-mosaic-tags.js.map +1 -1
  266. package/fesm2015/ptsecurity-mosaic-textarea.js +7 -7
  267. package/fesm2015/ptsecurity-mosaic-textarea.js.map +1 -1
  268. package/fesm2015/ptsecurity-mosaic-timepicker.js +11 -10
  269. package/fesm2015/ptsecurity-mosaic-timepicker.js.map +1 -1
  270. package/fesm2015/ptsecurity-mosaic-toggle.js +7 -7
  271. package/fesm2015/ptsecurity-mosaic-toggle.js.map +1 -1
  272. package/fesm2015/ptsecurity-mosaic-tooltip.js +57 -18
  273. package/fesm2015/ptsecurity-mosaic-tooltip.js.map +1 -1
  274. package/fesm2015/ptsecurity-mosaic-tree-select.js +12 -11
  275. package/fesm2015/ptsecurity-mosaic-tree-select.js.map +1 -1
  276. package/fesm2015/ptsecurity-mosaic-tree.js +40 -46
  277. package/fesm2015/ptsecurity-mosaic-tree.js.map +1 -1
  278. package/form-field/cleaner.d.ts +2 -0
  279. package/input/input-number-validators.d.ts +2 -2
  280. package/modal/modal.component.d.ts +2 -0
  281. package/modal/modal.module.d.ts +1 -1
  282. package/package.json +5 -5
  283. package/popover/popover-confirm.component.d.ts +33 -0
  284. package/popover/popover.component.d.ts +14 -4
  285. package/popover/popover.module.d.ts +6 -3
  286. package/popover/public-api.d.ts +1 -0
  287. package/prebuilt-themes/dark-theme.css +1 -1
  288. package/prebuilt-themes/default-theme.css +1 -1
  289. package/prebuilt-visual/default-visual.css +1 -1
  290. package/select/select.component.d.ts +2 -7
  291. package/sidepanel/sidepanel-directives.d.ts +2 -0
  292. package/sidepanel/sidepanel.module.d.ts +2 -1
  293. package/splitter/splitter.component.d.ts +46 -5
  294. package/splitter/splitter.module.d.ts +1 -1
  295. package/tags/tag.component.d.ts +20 -20
  296. package/tooltip/tooltip.component.d.ts +12 -3
  297. package/tree/padding.directive.d.ts +1 -1
  298. package/tree/toggle.d.ts +1 -1
  299. package/tree/tree-option.component.d.ts +1 -1
  300. package/tree/tree-selection.component.d.ts +2 -2
  301. package/tree/tree.module.d.ts +1 -1
  302. package/tree-select/tree-select.component.d.ts +2 -7
@@ -2,7 +2,7 @@
2
2
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/core'), require('@ptsecurity/mosaic/icon'), require('@angular/cdk/coercion')) :
3
3
  typeof define === 'function' && define.amd ? define('@ptsecurity/mosaic/splitter', ['exports', '@angular/common', '@angular/core', '@ptsecurity/mosaic/icon', '@angular/cdk/coercion'], factory) :
4
4
  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.ptsecurity = global.ptsecurity || {}, global.ptsecurity.mosaic = global.ptsecurity.mosaic || {}, global.ptsecurity.mosaic.splitter = {}), global.ng.common, global.ng.core, global.ptsecurity.mosaic.icon, global.ng.cdk.coercion));
5
- }(this, (function (exports, i1, i0, icon, coercion) { 'use strict';
5
+ })(this, (function (exports, i1, i0, icon, coercion) { 'use strict';
6
6
 
7
7
  function _interopNamespace(e) {
8
8
  if (e && e.__esModule) return e;
@@ -13,14 +13,12 @@
13
13
  var d = Object.getOwnPropertyDescriptor(e, k);
14
14
  Object.defineProperty(n, k, d.get ? d : {
15
15
  enumerable: true,
16
- get: function () {
17
- return e[k];
18
- }
16
+ get: function () { return e[k]; }
19
17
  });
20
18
  }
21
19
  });
22
20
  }
23
- n['default'] = e;
21
+ n["default"] = e;
24
22
  return Object.freeze(n);
25
23
  }
26
24
 
@@ -71,33 +69,43 @@
71
69
  enumerable: false,
72
70
  configurable: true
73
71
  });
72
+ Object.defineProperty(McGutterDirective.prototype, "isVertical", {
73
+ get: function () {
74
+ return this._direction === exports.Direction.Vertical;
75
+ },
76
+ enumerable: false,
77
+ configurable: true
78
+ });
74
79
  McGutterDirective.prototype.ngOnInit = function () {
75
80
  this.setStyle("flex-basis" /* FlexBasis */, coercion.coerceCssPixelValue(this.size));
76
- this.setStyle(this.isVertical() ? "height" /* Height */ : "width" /* Width */, coercion.coerceCssPixelValue(this.size));
81
+ this.setStyle(this.isVertical ? "height" /* Height */ : "width" /* Width */, coercion.coerceCssPixelValue(this.size));
77
82
  this.setStyle("order" /* Order */, this.order);
78
- if (!this.isVertical()) {
83
+ if (!this.isVertical) {
79
84
  this.setStyle("height" /* Height */, '100%');
80
85
  }
81
86
  // fix IE issue with gutter icon. flex-direction is requied for flex alignment options
82
- this.setStyle("flex-direction" /* FlexDirection */, this.isVertical() ? 'row' : 'column');
87
+ this.setStyle("flex-direction" /* FlexDirection */, this.isVertical ? 'row' : 'column');
83
88
  };
84
- McGutterDirective.prototype.isVertical = function () {
85
- return this.direction === exports.Direction.Vertical;
89
+ McGutterDirective.prototype.getPosition = function () {
90
+ return {
91
+ x: this.elementRef.nativeElement.offsetLeft,
92
+ y: this.elementRef.nativeElement.offsetTop
93
+ };
86
94
  };
87
95
  McGutterDirective.prototype.setStyle = function (property, value) {
88
96
  this.renderer.setStyle(this.elementRef.nativeElement, property, value);
89
97
  };
90
98
  return McGutterDirective;
91
99
  }());
92
- /** @nocollapse */ McGutterDirective.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0__namespace, type: McGutterDirective, deps: [{ token: i0__namespace.ElementRef }, { token: i0__namespace.Renderer2 }], target: i0__namespace.ɵɵFactoryTarget.Directive });
93
- /** @nocollapse */ McGutterDirective.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.5", type: McGutterDirective, selector: "mc-gutter", inputs: { direction: "direction", order: "order", size: "size" }, host: { listeners: { "mousedown": "dragged = true" }, properties: { "class.mc-gutter_vertical": "isVertical()", "class.mc-gutter_dragged": "dragged" }, classAttribute: "mc-gutter" }, ngImport: i0__namespace });
94
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0__namespace, type: McGutterDirective, decorators: [{
100
+ /** @nocollapse */ McGutterDirective.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McGutterDirective, deps: [{ token: i0__namespace.ElementRef }, { token: i0__namespace.Renderer2 }], target: i0__namespace.ɵɵFactoryTarget.Directive });
101
+ /** @nocollapse */ McGutterDirective.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: McGutterDirective, selector: "mc-gutter", inputs: { direction: "direction", order: "order", size: "size" }, host: { listeners: { "mousedown": "dragged = true" }, properties: { "class.mc-gutter_vertical": "isVertical", "class.mc-gutter_dragged": "dragged" }, classAttribute: "mc-gutter" }, ngImport: i0__namespace });
102
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McGutterDirective, decorators: [{
95
103
  type: i0.Directive,
96
104
  args: [{
97
105
  selector: 'mc-gutter',
98
106
  host: {
99
107
  class: 'mc-gutter',
100
- '[class.mc-gutter_vertical]': 'isVertical()',
108
+ '[class.mc-gutter_vertical]': 'isVertical',
101
109
  '[class.mc-gutter_dragged]': 'dragged',
102
110
  '(mousedown)': 'dragged = true'
103
111
  }
@@ -109,20 +117,122 @@
109
117
  }], size: [{
110
118
  type: i0.Input
111
119
  }] } });
120
+ var McGutterGhostDirective = /** @class */ (function () {
121
+ function McGutterGhostDirective(elementRef, renderer) {
122
+ this.elementRef = elementRef;
123
+ this.renderer = renderer;
124
+ this._x = 0;
125
+ this._y = 0;
126
+ this._direction = exports.Direction.Vertical;
127
+ this._size = 6;
128
+ }
129
+ Object.defineProperty(McGutterGhostDirective.prototype, "x", {
130
+ get: function () {
131
+ return this._x;
132
+ },
133
+ set: function (x) {
134
+ this._x = x;
135
+ this.setStyle("left" /* Left */, coercion.coerceCssPixelValue(x));
136
+ },
137
+ enumerable: false,
138
+ configurable: true
139
+ });
140
+ Object.defineProperty(McGutterGhostDirective.prototype, "y", {
141
+ get: function () {
142
+ return this._y;
143
+ },
144
+ set: function (y) {
145
+ this._y = y;
146
+ this.setStyle("top" /* Top */, coercion.coerceCssPixelValue(y));
147
+ },
148
+ enumerable: false,
149
+ configurable: true
150
+ });
151
+ Object.defineProperty(McGutterGhostDirective.prototype, "direction", {
152
+ get: function () {
153
+ return this._direction;
154
+ },
155
+ set: function (direction) {
156
+ this._direction = direction;
157
+ this.updateDimensions();
158
+ },
159
+ enumerable: false,
160
+ configurable: true
161
+ });
162
+ Object.defineProperty(McGutterGhostDirective.prototype, "size", {
163
+ get: function () {
164
+ return this._size;
165
+ },
166
+ set: function (size) {
167
+ this._size = coercion.coerceNumberProperty(size);
168
+ this.updateDimensions();
169
+ },
170
+ enumerable: false,
171
+ configurable: true
172
+ });
173
+ Object.defineProperty(McGutterGhostDirective.prototype, "isVertical", {
174
+ get: function () {
175
+ return this.direction === exports.Direction.Vertical;
176
+ },
177
+ enumerable: false,
178
+ configurable: true
179
+ });
180
+ McGutterGhostDirective.prototype.updateDimensions = function () {
181
+ this.setStyle(this.isVertical ? "width" /* Width */ : "height" /* Height */, '100%');
182
+ this.setStyle(this.isVertical ? "height" /* Height */ : "width" /* Width */, coercion.coerceCssPixelValue(this.size));
183
+ };
184
+ McGutterGhostDirective.prototype.setStyle = function (property, value) {
185
+ this.renderer.setStyle(this.elementRef.nativeElement, property, value);
186
+ };
187
+ return McGutterGhostDirective;
188
+ }());
189
+ /** @nocollapse */ McGutterGhostDirective.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McGutterGhostDirective, deps: [{ token: i0__namespace.ElementRef }, { token: i0__namespace.Renderer2 }], target: i0__namespace.ɵɵFactoryTarget.Directive });
190
+ /** @nocollapse */ McGutterGhostDirective.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: McGutterGhostDirective, selector: "mc-gutter-ghost", inputs: { visible: "visible", x: "x", y: "y", direction: "direction", size: "size" }, host: { properties: { "class.mc-gutter-ghost_vertical": "isVertical", "class.mc-gutter-ghost_visible": "visible" }, classAttribute: "mc-gutter-ghost" }, ngImport: i0__namespace });
191
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McGutterGhostDirective, decorators: [{
192
+ type: i0.Directive,
193
+ args: [{
194
+ selector: 'mc-gutter-ghost',
195
+ host: {
196
+ class: 'mc-gutter-ghost',
197
+ '[class.mc-gutter-ghost_vertical]': 'isVertical',
198
+ '[class.mc-gutter-ghost_visible]': 'visible'
199
+ }
200
+ }]
201
+ }], ctorParameters: function () { return [{ type: i0__namespace.ElementRef }, { type: i0__namespace.Renderer2 }]; }, propDecorators: { visible: [{
202
+ type: i0.Input
203
+ }], x: [{
204
+ type: i0.Input
205
+ }], y: [{
206
+ type: i0.Input
207
+ }], direction: [{
208
+ type: i0.Input
209
+ }], size: [{
210
+ type: i0.Input
211
+ }] } });
112
212
  var McSplitterComponent = /** @class */ (function () {
113
213
  function McSplitterComponent(elementRef, changeDetectorRef, ngZone, renderer) {
114
214
  this.elementRef = elementRef;
115
215
  this.changeDetectorRef = changeDetectorRef;
116
216
  this.ngZone = ngZone;
117
217
  this.renderer = renderer;
218
+ this.gutterPositionChange = new i0.EventEmitter();
118
219
  this.areas = [];
119
- this.isDragging = false;
220
+ this._isDragging = false;
120
221
  this.areaPositionDivider = 2;
121
222
  this.listeners = [];
122
223
  this._hideGutters = false;
123
224
  this._disabled = false;
225
+ this._useGhost = false;
124
226
  this._gutterSize = 6;
227
+ this._resizing = false;
125
228
  }
229
+ Object.defineProperty(McSplitterComponent.prototype, "isDragging", {
230
+ get: function () {
231
+ return this._isDragging;
232
+ },
233
+ enumerable: false,
234
+ configurable: true
235
+ });
126
236
  Object.defineProperty(McSplitterComponent.prototype, "hideGutters", {
127
237
  get: function () {
128
238
  return this._hideGutters;
@@ -153,6 +263,16 @@
153
263
  enumerable: false,
154
264
  configurable: true
155
265
  });
266
+ Object.defineProperty(McSplitterComponent.prototype, "useGhost", {
267
+ get: function () {
268
+ return this._useGhost;
269
+ },
270
+ set: function (useGhost) {
271
+ this._useGhost = coercion.coerceBooleanProperty(useGhost);
272
+ },
273
+ enumerable: false,
274
+ configurable: true
275
+ });
156
276
  Object.defineProperty(McSplitterComponent.prototype, "gutterSize", {
157
277
  get: function () {
158
278
  return this._gutterSize;
@@ -164,6 +284,13 @@
164
284
  enumerable: false,
165
285
  configurable: true
166
286
  });
287
+ Object.defineProperty(McSplitterComponent.prototype, "resizing", {
288
+ get: function () {
289
+ return this._resizing;
290
+ },
291
+ enumerable: false,
292
+ configurable: true
293
+ });
167
294
  McSplitterComponent.prototype.addArea = function (area) {
168
295
  var index = this.areas.length;
169
296
  var order = index * this.areaPositionDivider;
@@ -188,26 +315,41 @@
188
315
  return;
189
316
  }
190
317
  event.preventDefault();
191
- var leftArea = this.areas[leftAreaIndex];
192
- var rightArea = this.areas[rightAreaIndex];
193
318
  var startPoint = {
194
319
  x: event.screenX,
195
320
  y: event.screenY
196
321
  };
322
+ var leftArea = this.areas[leftAreaIndex];
323
+ var rightArea = this.areas[rightAreaIndex];
197
324
  leftArea.initialSize = leftArea.area.getSize();
198
325
  rightArea.initialSize = rightArea.area.getSize();
199
- this.areas.forEach(function (item) {
200
- var size = item.area.getSize();
201
- item.area.disableFlex();
202
- item.area.setSize(size);
203
- });
204
- this.ngZone.runOutsideAngular(function () {
205
- _this.listeners.push(_this.renderer.listen('document', 'mouseup', function () { return _this.onMouseUp(); }));
206
- });
326
+ var currentGutter;
327
+ if (this.useGhost) {
328
+ // tslint:disable-next-line:no-magic-numbers
329
+ var gutterOrder_1 = leftAreaIndex * 2 + 1;
330
+ currentGutter = this.gutters.find(function (gutter) { return gutter.order === gutterOrder_1; });
331
+ if (currentGutter) {
332
+ var gutterPosition = currentGutter.getPosition();
333
+ this.ghost.direction = currentGutter.direction;
334
+ this.ghost.size = currentGutter.size;
335
+ this.ghost.x = gutterPosition.x;
336
+ this.ghost.y = gutterPosition.y;
337
+ this.ghost.visible = true;
338
+ this.setStyle("cursor" /* Cursor */, currentGutter.direction === exports.Direction.Vertical ? 'row-resize' : 'col-resize');
339
+ }
340
+ }
341
+ else {
342
+ this.areas.forEach(function (item) {
343
+ var size = item.area.getSize();
344
+ item.area.disableFlex();
345
+ item.area.setSize(size);
346
+ });
347
+ }
348
+ this.listeners.push(this.renderer.listen('document', 'mouseup', function () { return _this.onMouseUp(leftArea, rightArea, currentGutter); }));
207
349
  this.ngZone.runOutsideAngular(function () {
208
- _this.listeners.push(_this.renderer.listen('document', 'mousemove', function (e) { return _this.onMouseMove(e, startPoint, leftArea, rightArea); }));
350
+ _this.listeners.push(_this.renderer.listen('document', 'mousemove', function (e) { return _this.onMouseMove(e, startPoint, leftArea, rightArea, currentGutter); }));
209
351
  });
210
- this.isDragging = true;
352
+ this._isDragging = true;
211
353
  };
212
354
  McSplitterComponent.prototype.removeArea = function (area) {
213
355
  var indexToRemove = -1;
@@ -235,7 +377,7 @@
235
377
  }
236
378
  });
237
379
  };
238
- McSplitterComponent.prototype.onMouseMove = function (event, startPoint, leftArea, rightArea) {
380
+ McSplitterComponent.prototype.onMouseMove = function (event, startPoint, leftArea, rightArea, currentGutter) {
239
381
  if (!this.isDragging || this.disabled) {
240
382
  return;
241
383
  }
@@ -246,11 +388,28 @@
246
388
  var offset = this.isVertical()
247
389
  ? startPoint.y - endPoint.y
248
390
  : startPoint.x - endPoint.x;
249
- var newLeftAreaSize = leftArea.initialSize - offset;
250
- var newRightAreaSize = rightArea.initialSize + offset;
391
+ if (this.useGhost && currentGutter) {
392
+ var gutterPosition = currentGutter.getPosition();
393
+ var leftPos = leftArea.area.getPosition();
394
+ var rightPos = rightArea.area.getPosition();
395
+ var rightMin = rightArea.area.getMinSize() || 0;
396
+ var leftMin = leftArea.area.getMinSize() || 0;
397
+ var key = this.isVertical() ? 'y' : 'x';
398
+ var minPos = leftPos[key] - leftMin;
399
+ var maxPos = rightPos[key] + (rightArea.area.getSize() || 0) - rightMin - currentGutter.size;
400
+ var newPos = gutterPosition[key] - offset;
401
+ this.ghost[key] = newPos < minPos ? minPos : Math.min(newPos, maxPos);
402
+ }
403
+ else {
404
+ this.resizeAreas(leftArea, rightArea, offset);
405
+ }
406
+ };
407
+ McSplitterComponent.prototype.resizeAreas = function (leftArea, rightArea, sizeOffset) {
408
+ var newLeftAreaSize = leftArea.initialSize - sizeOffset;
409
+ var newRightAreaSize = rightArea.initialSize + sizeOffset;
251
410
  var minLeftAreaSize = leftArea.area.getMinSize();
252
411
  var minRightAreaSize = rightArea.area.getMinSize();
253
- if (newLeftAreaSize <= minLeftAreaSize || newRightAreaSize <= minRightAreaSize) {
412
+ if (newLeftAreaSize < minLeftAreaSize || newRightAreaSize < minRightAreaSize) {
254
413
  return;
255
414
  }
256
415
  else if (newLeftAreaSize <= 0) {
@@ -266,24 +425,34 @@
266
425
  rightArea.area.setSize(newRightAreaSize);
267
426
  }
268
427
  };
269
- McSplitterComponent.prototype.onMouseUp = function () {
428
+ McSplitterComponent.prototype.onMouseUp = function (leftArea, rightArea, currentGutter) {
270
429
  while (this.listeners.length > 0) {
271
430
  var unsubscribe = this.listeners.pop();
272
431
  if (unsubscribe) {
273
432
  unsubscribe();
274
433
  }
275
434
  }
276
- this.isDragging = false;
435
+ if (this.useGhost && currentGutter) {
436
+ var gutterPosition = currentGutter.getPosition();
437
+ var offset = this.ghost.direction === exports.Direction.Vertical ?
438
+ gutterPosition.y - this.ghost.y :
439
+ gutterPosition.x - this.ghost.x;
440
+ this.resizeAreas(leftArea, rightArea, offset);
441
+ this.ghost.visible = false;
442
+ this.setStyle("cursor" /* Cursor */, 'unset');
443
+ }
444
+ this._isDragging = false;
277
445
  this.updateGutter();
446
+ this.gutterPositionChange.emit();
278
447
  };
279
448
  McSplitterComponent.prototype.setStyle = function (property, value) {
280
449
  this.renderer.setStyle(this.elementRef.nativeElement, property, value);
281
450
  };
282
451
  return McSplitterComponent;
283
452
  }());
284
- /** @nocollapse */ McSplitterComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0__namespace, type: McSplitterComponent, deps: [{ token: i0__namespace.ElementRef }, { token: i0__namespace.ChangeDetectorRef }, { token: i0__namespace.NgZone }, { token: i0__namespace.Renderer2 }], target: i0__namespace.ɵɵFactoryTarget.Component });
285
- /** @nocollapse */ McSplitterComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.5", type: McSplitterComponent, selector: "mc-splitter", inputs: { hideGutters: "hideGutters", direction: "direction", disabled: "disabled", gutterSize: "gutterSize" }, host: { classAttribute: "mc-splitter" }, viewQueries: [{ propertyName: "gutters", predicate: McGutterDirective, descendants: true }], exportAs: ["mcSplitter"], ngImport: i0__namespace, template: "<ng-content></ng-content>\n\n<ng-template ngFor let-area [ngForOf]=\"areas\" let-index=\"index\" let-last=\"last\">\n <mc-gutter *ngIf=\"last === false\"\n [direction]=\"direction\"\n [attr.disabled]=\"disabled || null\"\n [style.display]=\"hideGutters ? 'none' : 'flex'\"\n [size]=\"gutterSize\"\n [order]=\"index * 2 + 1\"\n (mousedown)=\"onMouseDown($event, index, index + 1)\">\n </mc-gutter>\n</ng-template>\n", styles: [".mc-splitter{display:flex;flex-wrap:nowrap;align-items:stretch;overflow:hidden}.mc-splitter .mc-splitter-area{overflow:hidden}.mc-gutter{display:flex;flex-grow:0;flex-shrink:0;justify-content:center;align-items:center;overflow:hidden}.mc-gutter.mc-gutter_vertical>.mc-icon{transform:rotate(90deg)}\n"], directives: [{ type: i1__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: McGutterDirective, selector: "mc-gutter", inputs: ["direction", "order", "size"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush, encapsulation: i0__namespace.ViewEncapsulation.None });
286
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0__namespace, type: McSplitterComponent, decorators: [{
453
+ /** @nocollapse */ McSplitterComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McSplitterComponent, deps: [{ token: i0__namespace.ElementRef }, { token: i0__namespace.ChangeDetectorRef }, { token: i0__namespace.NgZone }, { token: i0__namespace.Renderer2 }], target: i0__namespace.ɵɵFactoryTarget.Component });
454
+ /** @nocollapse */ McSplitterComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: McSplitterComponent, selector: "mc-splitter", inputs: { hideGutters: "hideGutters", direction: "direction", disabled: "disabled", useGhost: "useGhost", gutterSize: "gutterSize" }, outputs: { gutterPositionChange: "gutterPositionChange" }, host: { classAttribute: "mc-splitter" }, viewQueries: [{ propertyName: "ghost", first: true, predicate: McGutterGhostDirective, descendants: true }, { propertyName: "gutters", predicate: McGutterDirective, descendants: true }], exportAs: ["mcSplitter"], ngImport: i0__namespace, template: "<ng-content></ng-content>\n\n<ng-template ngFor let-area [ngForOf]=\"areas\" let-index=\"index\" let-last=\"last\">\n <mc-gutter *ngIf=\"last === false\"\n [direction]=\"direction\"\n [attr.disabled]=\"disabled || null\"\n [style.display]=\"hideGutters ? 'none' : 'flex'\"\n [size]=\"gutterSize\"\n [order]=\"index * 2 + 1\"\n (mousedown)=\"onMouseDown($event, index, index + 1)\">\n </mc-gutter>\n</ng-template>\n\n<mc-gutter-ghost *ngIf=\"useGhost\"></mc-gutter-ghost>\n", styles: [".mc-splitter{display:flex;position:relative;flex-wrap:nowrap;align-items:stretch;overflow:hidden}.mc-splitter .mc-splitter-area{overflow:hidden}.mc-splitter .mc-splitter-area_resizing{pointer-events:none}.mc-gutter{display:flex;flex-grow:0;flex-shrink:0;justify-content:center;align-items:center;overflow:hidden}.mc-gutter.mc-gutter_vertical>.mc-icon{transform:rotate(90deg)}.mc-gutter-ghost{position:absolute;z-index:999;display:none;overflow:hidden}.mc-gutter-ghost.mc-gutter-ghost_vertical>.mc-icon{transform:rotate(90deg)}.mc-gutter-ghost.mc-gutter-ghost_visible{display:block}\n"], directives: [{ type: i1__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: McGutterDirective, selector: "mc-gutter", inputs: ["direction", "order", "size"] }, { type: McGutterGhostDirective, selector: "mc-gutter-ghost", inputs: ["visible", "x", "y", "direction", "size"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush, encapsulation: i0__namespace.ViewEncapsulation.None });
455
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McSplitterComponent, decorators: [{
287
456
  type: i0.Component,
288
457
  args: [{
289
458
  selector: 'mc-splitter',
@@ -297,15 +466,22 @@
297
466
  encapsulation: i0.ViewEncapsulation.None,
298
467
  changeDetection: i0.ChangeDetectionStrategy.OnPush
299
468
  }]
300
- }], ctorParameters: function () { return [{ type: i0__namespace.ElementRef }, { type: i0__namespace.ChangeDetectorRef }, { type: i0__namespace.NgZone }, { type: i0__namespace.Renderer2 }]; }, propDecorators: { gutters: [{
469
+ }], ctorParameters: function () { return [{ type: i0__namespace.ElementRef }, { type: i0__namespace.ChangeDetectorRef }, { type: i0__namespace.NgZone }, { type: i0__namespace.Renderer2 }]; }, propDecorators: { gutterPositionChange: [{
470
+ type: i0.Output
471
+ }], gutters: [{
301
472
  type: i0.ViewChildren,
302
473
  args: [McGutterDirective]
474
+ }], ghost: [{
475
+ type: i0.ViewChild,
476
+ args: [McGutterGhostDirective]
303
477
  }], hideGutters: [{
304
478
  type: i0.Input
305
479
  }], direction: [{
306
480
  type: i0.Input
307
481
  }], disabled: [{
308
482
  type: i0.Input
483
+ }], useGhost: [{
484
+ type: i0.Input
309
485
  }], gutterSize: [{
310
486
  type: i0.Input
311
487
  }] } });
@@ -314,11 +490,16 @@
314
490
  this.elementRef = elementRef;
315
491
  this.renderer = renderer;
316
492
  this.splitter = splitter;
493
+ this.sizeChange = new i0.EventEmitter();
317
494
  }
495
+ McSplitterAreaDirective.prototype.isResizing = function () {
496
+ return this.splitter.isDragging;
497
+ };
318
498
  McSplitterAreaDirective.prototype.disableFlex = function () {
319
499
  this.renderer.removeStyle(this.elementRef.nativeElement, 'flex');
320
500
  };
321
501
  McSplitterAreaDirective.prototype.ngOnInit = function () {
502
+ var _this = this;
322
503
  this.splitter.addArea(this);
323
504
  this.removeStyle("max-width" /* MaxWidth */);
324
505
  if (this.splitter.direction === exports.Direction.Vertical) {
@@ -329,6 +510,7 @@
329
510
  this.setStyle("height" /* Height */, '100%');
330
511
  this.removeStyle("width" /* Width */);
331
512
  }
513
+ this.splitter.gutterPositionChange.subscribe(function () { return _this.emitSizeChange(); });
332
514
  };
333
515
  McSplitterAreaDirective.prototype.ngOnDestroy = function () {
334
516
  this.splitter.removeArea(this);
@@ -337,7 +519,7 @@
337
519
  this.setStyle("order" /* Order */, order);
338
520
  };
339
521
  McSplitterAreaDirective.prototype.setSize = function (size) {
340
- if (size) {
522
+ if (!isNaN(size)) {
341
523
  var sz = coercion.coerceNumberProperty(size);
342
524
  this.setStyle(this.getSizeProperty(), coercion.coerceCssPixelValue(sz));
343
525
  }
@@ -345,6 +527,12 @@
345
527
  McSplitterAreaDirective.prototype.getSize = function () {
346
528
  return this.elementRef.nativeElement[this.getOffsetSizeProperty()];
347
529
  };
530
+ McSplitterAreaDirective.prototype.getPosition = function () {
531
+ return {
532
+ x: this.elementRef.nativeElement.offsetLeft,
533
+ y: this.elementRef.nativeElement.offsetTop
534
+ };
535
+ };
348
536
  McSplitterAreaDirective.prototype.getMinSize = function () {
349
537
  var styles = getComputedStyle(this.elementRef.nativeElement);
350
538
  return parseFloat(styles[this.getMinSizeProperty()]);
@@ -373,37 +561,44 @@
373
561
  McSplitterAreaDirective.prototype.removeStyle = function (style) {
374
562
  this.renderer.removeStyle(this.elementRef.nativeElement, style);
375
563
  };
564
+ McSplitterAreaDirective.prototype.emitSizeChange = function () {
565
+ this.sizeChange.emit(this.getSize());
566
+ };
376
567
  return McSplitterAreaDirective;
377
568
  }());
378
- /** @nocollapse */ McSplitterAreaDirective.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0__namespace, type: McSplitterAreaDirective, deps: [{ token: i0__namespace.ElementRef }, { token: i0__namespace.Renderer2 }, { token: McSplitterComponent }], target: i0__namespace.ɵɵFactoryTarget.Directive });
379
- /** @nocollapse */ McSplitterAreaDirective.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.5", type: McSplitterAreaDirective, selector: "[mc-splitter-area]", host: { classAttribute: "mc-splitter-area" }, ngImport: i0__namespace });
380
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0__namespace, type: McSplitterAreaDirective, decorators: [{
569
+ /** @nocollapse */ McSplitterAreaDirective.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McSplitterAreaDirective, deps: [{ token: i0__namespace.ElementRef }, { token: i0__namespace.Renderer2 }, { token: McSplitterComponent }], target: i0__namespace.ɵɵFactoryTarget.Directive });
570
+ /** @nocollapse */ McSplitterAreaDirective.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: McSplitterAreaDirective, selector: "[mc-splitter-area]", outputs: { sizeChange: "sizeChange" }, host: { properties: { "class.mc-splitter-area_resizing": "isResizing()" }, classAttribute: "mc-splitter-area" }, ngImport: i0__namespace });
571
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McSplitterAreaDirective, decorators: [{
381
572
  type: i0.Directive,
382
573
  args: [{
383
574
  selector: '[mc-splitter-area]',
384
575
  host: {
385
- class: 'mc-splitter-area'
576
+ class: 'mc-splitter-area',
577
+ '[class.mc-splitter-area_resizing]': 'isResizing()'
386
578
  }
387
579
  }]
388
- }], ctorParameters: function () { return [{ type: i0__namespace.ElementRef }, { type: i0__namespace.Renderer2 }, { type: McSplitterComponent }]; } });
580
+ }], ctorParameters: function () { return [{ type: i0__namespace.ElementRef }, { type: i0__namespace.Renderer2 }, { type: McSplitterComponent }]; }, propDecorators: { sizeChange: [{
581
+ type: i0.Output
582
+ }] } });
389
583
 
390
584
  var McSplitterModule = /** @class */ (function () {
391
585
  function McSplitterModule() {
392
586
  }
393
587
  return McSplitterModule;
394
588
  }());
395
- /** @nocollapse */ McSplitterModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0__namespace, type: McSplitterModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
396
- /** @nocollapse */ McSplitterModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0__namespace, type: McSplitterModule, declarations: [McGutterDirective,
589
+ /** @nocollapse */ McSplitterModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McSplitterModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
590
+ /** @nocollapse */ McSplitterModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McSplitterModule, declarations: [McGutterDirective,
591
+ McGutterGhostDirective,
397
592
  McSplitterAreaDirective,
398
593
  McSplitterComponent], imports: [i1.CommonModule,
399
594
  icon.McIconModule], exports: [McGutterDirective,
400
595
  McSplitterAreaDirective,
401
596
  McSplitterComponent] });
402
- /** @nocollapse */ McSplitterModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0__namespace, type: McSplitterModule, imports: [[
597
+ /** @nocollapse */ McSplitterModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McSplitterModule, imports: [[
403
598
  i1.CommonModule,
404
599
  icon.McIconModule
405
600
  ]] });
406
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0__namespace, type: McSplitterModule, decorators: [{
601
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: McSplitterModule, decorators: [{
407
602
  type: i0.NgModule,
408
603
  args: [{
409
604
  imports: [
@@ -417,6 +612,7 @@
417
612
  ],
418
613
  declarations: [
419
614
  McGutterDirective,
615
+ McGutterGhostDirective,
420
616
  McSplitterAreaDirective,
421
617
  McSplitterComponent
422
618
  ]
@@ -428,11 +624,12 @@
428
624
  */
429
625
 
430
626
  exports.McGutterDirective = McGutterDirective;
627
+ exports.McGutterGhostDirective = McGutterGhostDirective;
431
628
  exports.McSplitterAreaDirective = McSplitterAreaDirective;
432
629
  exports.McSplitterComponent = McSplitterComponent;
433
630
  exports.McSplitterModule = McSplitterModule;
434
631
 
435
632
  Object.defineProperty(exports, '__esModule', { value: true });
436
633
 
437
- })));
634
+ }));
438
635
  //# sourceMappingURL=ptsecurity-mosaic-splitter.umd.js.map