@angular/material-experimental 13.2.0-rc.0 → 14.0.0-next.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (254) hide show
  1. package/esm2020/column-resize/column-resize-directives/column-resize-flex.mjs +4 -4
  2. package/esm2020/column-resize/column-resize-directives/column-resize.mjs +4 -4
  3. package/esm2020/column-resize/column-resize-directives/default-enabled-column-resize-flex.mjs +4 -4
  4. package/esm2020/column-resize/column-resize-directives/default-enabled-column-resize.mjs +4 -4
  5. package/esm2020/column-resize/column-resize-module.mjs +13 -13
  6. package/esm2020/column-resize/overlay-handle.mjs +4 -4
  7. package/esm2020/column-resize/resizable-directives/default-enabled-resizable.mjs +4 -4
  8. package/esm2020/column-resize/resizable-directives/resizable.mjs +4 -4
  9. package/esm2020/column-resize/resize-strategy.mjs +4 -4
  10. package/esm2020/mdc-autocomplete/autocomplete-origin.mjs +4 -4
  11. package/esm2020/mdc-autocomplete/autocomplete-trigger.mjs +4 -4
  12. package/esm2020/mdc-autocomplete/autocomplete.mjs +4 -4
  13. package/esm2020/mdc-autocomplete/module.mjs +5 -5
  14. package/esm2020/mdc-button/button-base.mjs +9 -9
  15. package/esm2020/mdc-button/button.mjs +9 -9
  16. package/esm2020/mdc-button/fab.mjs +17 -17
  17. package/esm2020/mdc-button/icon-button.mjs +11 -13
  18. package/esm2020/mdc-button/module.mjs +5 -5
  19. package/esm2020/mdc-card/card.mjs +43 -43
  20. package/esm2020/mdc-card/module.mjs +5 -5
  21. package/esm2020/mdc-checkbox/checkbox.mjs +9 -16
  22. package/esm2020/mdc-checkbox/module.mjs +6 -7
  23. package/esm2020/mdc-chips/chip-action.mjs +4 -4
  24. package/esm2020/mdc-chips/chip-edit-input.mjs +4 -4
  25. package/esm2020/mdc-chips/chip-grid.mjs +7 -9
  26. package/esm2020/mdc-chips/chip-icons.mjs +10 -10
  27. package/esm2020/mdc-chips/chip-input.mjs +4 -4
  28. package/esm2020/mdc-chips/chip-listbox.mjs +4 -4
  29. package/esm2020/mdc-chips/chip-option.mjs +4 -4
  30. package/esm2020/mdc-chips/chip-row.mjs +4 -4
  31. package/esm2020/mdc-chips/chip-set.mjs +4 -4
  32. package/esm2020/mdc-chips/chip.mjs +4 -4
  33. package/esm2020/mdc-chips/module.mjs +5 -5
  34. package/esm2020/mdc-core/option/index.mjs +5 -5
  35. package/esm2020/mdc-core/option/optgroup.mjs +4 -4
  36. package/esm2020/mdc-core/option/option.mjs +5 -5
  37. package/esm2020/mdc-dialog/dialog-container.mjs +4 -4
  38. package/esm2020/mdc-dialog/dialog-content-directives.mjs +13 -13
  39. package/esm2020/mdc-dialog/dialog.mjs +4 -4
  40. package/esm2020/mdc-dialog/module.mjs +5 -5
  41. package/esm2020/mdc-form-field/directives/error.mjs +4 -4
  42. package/esm2020/mdc-form-field/directives/floating-label.mjs +4 -4
  43. package/esm2020/mdc-form-field/directives/hint.mjs +4 -4
  44. package/esm2020/mdc-form-field/directives/label.mjs +4 -4
  45. package/esm2020/mdc-form-field/directives/line-ripple.mjs +4 -4
  46. package/esm2020/mdc-form-field/directives/notched-outline.mjs +4 -4
  47. package/esm2020/mdc-form-field/directives/prefix.mjs +4 -4
  48. package/esm2020/mdc-form-field/directives/suffix.mjs +4 -4
  49. package/esm2020/mdc-form-field/form-field.mjs +21 -5
  50. package/esm2020/mdc-form-field/module.mjs +5 -5
  51. package/esm2020/mdc-input/input.mjs +4 -4
  52. package/esm2020/mdc-input/module.mjs +5 -5
  53. package/esm2020/mdc-list/action-list.mjs +4 -4
  54. package/esm2020/mdc-list/interactive-list-base.mjs +4 -4
  55. package/esm2020/mdc-list/list-base.mjs +7 -7
  56. package/esm2020/mdc-list/list-item-sections.mjs +19 -19
  57. package/esm2020/mdc-list/list-option.mjs +6 -6
  58. package/esm2020/mdc-list/list.mjs +7 -7
  59. package/esm2020/mdc-list/module.mjs +5 -5
  60. package/esm2020/mdc-list/nav-list.mjs +4 -4
  61. package/esm2020/mdc-list/selection-list.mjs +4 -4
  62. package/esm2020/mdc-list/subheader.mjs +4 -4
  63. package/esm2020/mdc-menu/directives.mjs +7 -7
  64. package/esm2020/mdc-menu/menu-item.mjs +4 -4
  65. package/esm2020/mdc-menu/menu.mjs +4 -4
  66. package/esm2020/mdc-menu/module.mjs +5 -5
  67. package/esm2020/mdc-paginator/module.mjs +5 -5
  68. package/esm2020/mdc-paginator/paginator.mjs +4 -4
  69. package/esm2020/mdc-progress-bar/module.mjs +5 -5
  70. package/esm2020/mdc-progress-bar/progress-bar.mjs +4 -4
  71. package/esm2020/mdc-progress-spinner/module.mjs +5 -5
  72. package/esm2020/mdc-progress-spinner/progress-spinner.mjs +4 -4
  73. package/esm2020/mdc-radio/module.mjs +5 -5
  74. package/esm2020/mdc-radio/radio.mjs +8 -8
  75. package/esm2020/mdc-select/module.mjs +5 -5
  76. package/esm2020/mdc-select/select.mjs +7 -7
  77. package/esm2020/mdc-sidenav/module.mjs +5 -5
  78. package/esm2020/mdc-slide-toggle/module.mjs +5 -5
  79. package/esm2020/mdc-slide-toggle/slide-toggle.mjs +4 -4
  80. package/esm2020/mdc-slider/global-change-and-input-listener.mjs +4 -4
  81. package/esm2020/mdc-slider/module.mjs +5 -5
  82. package/esm2020/mdc-slider/slider.mjs +10 -10
  83. package/esm2020/mdc-snack-bar/module.mjs +5 -5
  84. package/esm2020/mdc-snack-bar/simple-snack-bar.mjs +4 -4
  85. package/esm2020/mdc-snack-bar/snack-bar-container.mjs +4 -4
  86. package/esm2020/mdc-snack-bar/snack-bar-content.mjs +10 -10
  87. package/esm2020/mdc-snack-bar/snack-bar.mjs +4 -4
  88. package/esm2020/mdc-table/cell.mjs +22 -22
  89. package/esm2020/mdc-table/module.mjs +5 -5
  90. package/esm2020/mdc-table/row.mjs +22 -22
  91. package/esm2020/mdc-table/table.mjs +7 -7
  92. package/esm2020/mdc-table/text-column.mjs +4 -4
  93. package/esm2020/mdc-tabs/module.mjs +5 -5
  94. package/esm2020/mdc-tabs/tab-body.mjs +8 -8
  95. package/esm2020/mdc-tabs/tab-content.mjs +4 -4
  96. package/esm2020/mdc-tabs/tab-group.mjs +6 -6
  97. package/esm2020/mdc-tabs/tab-header.mjs +4 -4
  98. package/esm2020/mdc-tabs/tab-label-wrapper.mjs +4 -4
  99. package/esm2020/mdc-tabs/tab-label.mjs +4 -4
  100. package/esm2020/mdc-tabs/tab-nav-bar/tab-nav-bar.mjs +12 -12
  101. package/esm2020/mdc-tabs/tab.mjs +4 -4
  102. package/esm2020/mdc-tooltip/module.mjs +5 -5
  103. package/esm2020/mdc-tooltip/tooltip.mjs +7 -7
  104. package/esm2020/menubar/menubar-item.mjs +4 -4
  105. package/esm2020/menubar/menubar-module.mjs +5 -5
  106. package/esm2020/menubar/menubar.mjs +4 -4
  107. package/esm2020/popover-edit/lens-directives.mjs +10 -10
  108. package/esm2020/popover-edit/popover-edit-module.mjs +5 -5
  109. package/esm2020/popover-edit/table-directives.mjs +13 -13
  110. package/esm2020/selection/row-selection.mjs +4 -4
  111. package/esm2020/selection/select-all.mjs +4 -4
  112. package/esm2020/selection/selection-column.mjs +4 -4
  113. package/esm2020/selection/selection-module.mjs +5 -5
  114. package/esm2020/selection/selection-toggle.mjs +4 -4
  115. package/esm2020/selection/selection.mjs +4 -4
  116. package/esm2020/version.mjs +1 -1
  117. package/fesm2015/column-resize.mjs +36 -36
  118. package/fesm2015/column-resize.mjs.map +1 -1
  119. package/fesm2015/material-experimental.mjs +1 -1
  120. package/fesm2015/material-experimental.mjs.map +1 -1
  121. package/fesm2015/mdc-autocomplete.mjs +13 -13
  122. package/fesm2015/mdc-autocomplete.mjs.map +1 -1
  123. package/fesm2015/mdc-button.mjs +46 -48
  124. package/fesm2015/mdc-button.mjs.map +1 -1
  125. package/fesm2015/mdc-card.mjs +46 -46
  126. package/fesm2015/mdc-card.mjs.map +1 -1
  127. package/fesm2015/mdc-checkbox.mjs +13 -21
  128. package/fesm2015/mdc-checkbox.mjs.map +1 -1
  129. package/fesm2015/mdc-chips.mjs +43 -45
  130. package/fesm2015/mdc-chips.mjs.map +1 -1
  131. package/fesm2015/mdc-core.mjs +11 -11
  132. package/fesm2015/mdc-core.mjs.map +1 -1
  133. package/fesm2015/mdc-dialog.mjs +22 -22
  134. package/fesm2015/mdc-dialog.mjs.map +1 -1
  135. package/fesm2015/mdc-form-field.mjs +50 -32
  136. package/fesm2015/mdc-form-field.mjs.map +1 -1
  137. package/fesm2015/mdc-input.mjs +7 -7
  138. package/fesm2015/mdc-input.mjs.map +1 -1
  139. package/fesm2015/mdc-list.mjs +54 -54
  140. package/fesm2015/mdc-list.mjs.map +1 -1
  141. package/fesm2015/mdc-menu.mjs +16 -16
  142. package/fesm2015/mdc-menu.mjs.map +1 -1
  143. package/fesm2015/mdc-paginator.mjs +7 -7
  144. package/fesm2015/mdc-paginator.mjs.map +1 -1
  145. package/fesm2015/mdc-progress-bar.mjs +7 -7
  146. package/fesm2015/mdc-progress-bar.mjs.map +1 -1
  147. package/fesm2015/mdc-progress-spinner.mjs +7 -7
  148. package/fesm2015/mdc-progress-spinner.mjs.map +1 -1
  149. package/fesm2015/mdc-radio.mjs +11 -11
  150. package/fesm2015/mdc-radio.mjs.map +1 -1
  151. package/fesm2015/mdc-select.mjs +10 -10
  152. package/fesm2015/mdc-select.mjs.map +1 -1
  153. package/fesm2015/mdc-sidenav.mjs +4 -4
  154. package/fesm2015/mdc-sidenav.mjs.map +1 -1
  155. package/fesm2015/mdc-slide-toggle.mjs +7 -7
  156. package/fesm2015/mdc-slide-toggle.mjs.map +1 -1
  157. package/fesm2015/mdc-slider.mjs +16 -16
  158. package/fesm2015/mdc-slider.mjs.map +1 -1
  159. package/fesm2015/mdc-snack-bar.mjs +22 -22
  160. package/fesm2015/mdc-snack-bar.mjs.map +1 -1
  161. package/fesm2015/mdc-table.mjs +55 -55
  162. package/fesm2015/mdc-table.mjs.map +1 -1
  163. package/fesm2015/mdc-tabs.mjs +42 -42
  164. package/fesm2015/mdc-tabs.mjs.map +1 -1
  165. package/fesm2015/mdc-tooltip.mjs +10 -10
  166. package/fesm2015/mdc-tooltip.mjs.map +1 -1
  167. package/fesm2015/menubar.mjs +10 -10
  168. package/fesm2015/menubar.mjs.map +1 -1
  169. package/fesm2015/popover-edit.mjs +25 -25
  170. package/fesm2015/popover-edit.mjs.map +1 -1
  171. package/fesm2015/selection.mjs +19 -19
  172. package/fesm2015/selection.mjs.map +1 -1
  173. package/fesm2020/column-resize.mjs +36 -36
  174. package/fesm2020/column-resize.mjs.map +1 -1
  175. package/fesm2020/material-experimental.mjs +1 -1
  176. package/fesm2020/material-experimental.mjs.map +1 -1
  177. package/fesm2020/mdc-autocomplete.mjs +13 -13
  178. package/fesm2020/mdc-autocomplete.mjs.map +1 -1
  179. package/fesm2020/mdc-button.mjs +46 -48
  180. package/fesm2020/mdc-button.mjs.map +1 -1
  181. package/fesm2020/mdc-card.mjs +46 -46
  182. package/fesm2020/mdc-card.mjs.map +1 -1
  183. package/fesm2020/mdc-checkbox.mjs +13 -21
  184. package/fesm2020/mdc-checkbox.mjs.map +1 -1
  185. package/fesm2020/mdc-chips.mjs +43 -45
  186. package/fesm2020/mdc-chips.mjs.map +1 -1
  187. package/fesm2020/mdc-core.mjs +11 -11
  188. package/fesm2020/mdc-core.mjs.map +1 -1
  189. package/fesm2020/mdc-dialog.mjs +22 -22
  190. package/fesm2020/mdc-dialog.mjs.map +1 -1
  191. package/fesm2020/mdc-form-field.mjs +48 -32
  192. package/fesm2020/mdc-form-field.mjs.map +1 -1
  193. package/fesm2020/mdc-input.mjs +7 -7
  194. package/fesm2020/mdc-input.mjs.map +1 -1
  195. package/fesm2020/mdc-list.mjs +54 -54
  196. package/fesm2020/mdc-list.mjs.map +1 -1
  197. package/fesm2020/mdc-menu.mjs +16 -16
  198. package/fesm2020/mdc-menu.mjs.map +1 -1
  199. package/fesm2020/mdc-paginator.mjs +7 -7
  200. package/fesm2020/mdc-paginator.mjs.map +1 -1
  201. package/fesm2020/mdc-progress-bar.mjs +7 -7
  202. package/fesm2020/mdc-progress-bar.mjs.map +1 -1
  203. package/fesm2020/mdc-progress-spinner.mjs +7 -7
  204. package/fesm2020/mdc-progress-spinner.mjs.map +1 -1
  205. package/fesm2020/mdc-radio.mjs +11 -11
  206. package/fesm2020/mdc-radio.mjs.map +1 -1
  207. package/fesm2020/mdc-select.mjs +10 -10
  208. package/fesm2020/mdc-select.mjs.map +1 -1
  209. package/fesm2020/mdc-sidenav.mjs +4 -4
  210. package/fesm2020/mdc-sidenav.mjs.map +1 -1
  211. package/fesm2020/mdc-slide-toggle.mjs +7 -7
  212. package/fesm2020/mdc-slide-toggle.mjs.map +1 -1
  213. package/fesm2020/mdc-slider.mjs +16 -16
  214. package/fesm2020/mdc-slider.mjs.map +1 -1
  215. package/fesm2020/mdc-snack-bar.mjs +22 -22
  216. package/fesm2020/mdc-snack-bar.mjs.map +1 -1
  217. package/fesm2020/mdc-table.mjs +55 -55
  218. package/fesm2020/mdc-table.mjs.map +1 -1
  219. package/fesm2020/mdc-tabs.mjs +42 -42
  220. package/fesm2020/mdc-tabs.mjs.map +1 -1
  221. package/fesm2020/mdc-tooltip.mjs +10 -10
  222. package/fesm2020/mdc-tooltip.mjs.map +1 -1
  223. package/fesm2020/menubar.mjs +10 -10
  224. package/fesm2020/menubar.mjs.map +1 -1
  225. package/fesm2020/popover-edit.mjs +25 -25
  226. package/fesm2020/popover-edit.mjs.map +1 -1
  227. package/fesm2020/selection.mjs +19 -19
  228. package/fesm2020/selection.mjs.map +1 -1
  229. package/mdc-button/_button-base.scss +28 -15
  230. package/mdc-button/_button-theme-private.scss +35 -28
  231. package/mdc-button/_button-theme.scss +118 -80
  232. package/mdc-button/_fab-theme.scss +31 -37
  233. package/mdc-button/_icon-button-theme.scss +15 -22
  234. package/mdc-button/button-base.d.ts +2 -2
  235. package/mdc-button/icon-button.d.ts +2 -2
  236. package/mdc-checkbox/_checkbox-private.scss +46 -0
  237. package/mdc-checkbox/_checkbox-theme.scss +6 -38
  238. package/mdc-checkbox/checkbox.d.ts +0 -6
  239. package/mdc-checkbox/module.d.ts +2 -3
  240. package/mdc-chips/chip-grid.d.ts +0 -2
  241. package/mdc-core/option/_option-theme.scss +3 -3
  242. package/mdc-form-field/_form-field-subscript.scss +11 -0
  243. package/mdc-form-field/form-field.d.ts +12 -1
  244. package/mdc-list/_list-option-theme.scss +3 -3
  245. package/mdc-list/_list-option-trailing-avatar-compat.scss +18 -13
  246. package/mdc-list/_list-theme.scss +11 -10
  247. package/mdc-radio/_radio-theme.scss +0 -6
  248. package/mdc-tabs/_tabs-common.scss +8 -1
  249. package/mdc-tabs/_tabs-theme.scss +8 -55
  250. package/mdc-theming/prebuilt/deeppurple-amber.css +1 -1
  251. package/mdc-theming/prebuilt/indigo-pink.css +1 -1
  252. package/mdc-theming/prebuilt/pink-bluegrey.css +1 -1
  253. package/mdc-theming/prebuilt/purple-green.css +1 -1
  254. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"popover-edit.mjs","sources":["../../../../../../src/material-experimental/popover-edit/lens-directives.ts","../../../../../../src/material-experimental/popover-edit/table-directives.ts","../../../../../../src/material-experimental/popover-edit/popover-edit-module.ts","../../../../../../src/material-experimental/popover-edit/public-api.ts","../../../../../../src/material-experimental/popover-edit/index.ts","../../../../../../src/material-experimental/popover-edit/popover-edit_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directive} from '@angular/core';\n\nimport {\n CdkEditControl,\n CdkEditRevert,\n CdkEditClose,\n EditRef,\n} from '@angular/cdk-experimental/popover-edit';\n\n/**\n * A component that attaches to a form within the edit.\n * It coordinates the form state with the table-wide edit system and handles\n * closing the edit when the form is submitted or the user clicks\n * out.\n */\n@Directive({\n selector: 'form[matEditLens]',\n host: {\n 'class': 'mat-edit-lens',\n },\n inputs: [\n 'clickOutBehavior: matEditLensClickOutBehavior',\n 'preservedFormValue: matEditLensPreservedFormValue',\n 'ignoreSubmitUnlessValid: matEditLensIgnoreSubmitUnlessValid',\n ],\n outputs: ['preservedFormValueChange: matEditLensPreservedFormValueChange'],\n providers: [EditRef],\n})\nexport class MatEditLens<FormValue> extends CdkEditControl<FormValue> {}\n\n/** Reverts the form to its initial or previously submitted state on click. */\n@Directive({\n selector: 'button[matEditRevert]',\n host: {\n 'type': 'button', // Prevents accidental form submits.\n },\n})\nexport class MatEditRevert<FormValue> extends CdkEditRevert<FormValue> {}\n\n/** Closes the lens on click. */\n@Directive({selector: '[matEditClose]'})\nexport class MatEditClose<FormValue> extends CdkEditClose<FormValue> {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {Directive} from '@angular/core';\nimport {\n _CELL_SELECTOR,\n _closest,\n CdkPopoverEdit,\n CdkPopoverEditTabOut,\n CdkRowHoverContent,\n CdkEditOpen,\n} from '@angular/cdk-experimental/popover-edit';\n\nconst POPOVER_EDIT_HOST_BINDINGS = {\n '[attr.tabindex]': 'disabled ? null : 0',\n 'class': 'mat-popover-edit-cell',\n '[attr.aria-haspopup]': '!disabled',\n};\n\nconst POPOVER_EDIT_INPUTS = [\n 'template: matPopoverEdit',\n 'context: matPopoverEditContext',\n 'colspan: matPopoverEditColspan',\n 'disabled: matPopoverEditDisabled',\n];\n\nconst EDIT_PANE_CLASS = 'mat-edit-pane';\n\nconst MAT_ROW_HOVER_CLASS = 'mat-row-hover-content';\nconst MAT_ROW_HOVER_RTL_CLASS = MAT_ROW_HOVER_CLASS + '-rtl';\nconst MAT_ROW_HOVER_ANIMATE_CLASS = MAT_ROW_HOVER_CLASS + '-visible';\nconst MAT_ROW_HOVER_CELL_CLASS = MAT_ROW_HOVER_CLASS + '-host-cell';\n\n/**\n * Attaches an ng-template to a cell and shows it when instructed to by the\n * EditEventDispatcher service.\n * Makes the cell focusable.\n */\n@Directive({\n selector: '[matPopoverEdit]:not([matPopoverEditTabOut])',\n host: POPOVER_EDIT_HOST_BINDINGS,\n inputs: POPOVER_EDIT_INPUTS,\n})\nexport class MatPopoverEdit<C> extends CdkPopoverEdit<C> {\n protected override panelClass(): string {\n return EDIT_PANE_CLASS;\n }\n}\n\n/**\n * Attaches an ng-template to a cell and shows it when instructed to by the\n * EditEventDispatcher service.\n * Makes the cell focusable.\n */\n@Directive({\n selector: '[matPopoverEdit][matPopoverEditTabOut]',\n host: POPOVER_EDIT_HOST_BINDINGS,\n inputs: POPOVER_EDIT_INPUTS,\n})\nexport class MatPopoverEditTabOut<C> extends CdkPopoverEditTabOut<C> {\n protected override panelClass(): string {\n return EDIT_PANE_CLASS;\n }\n}\n\n/**\n * A structural directive that shows its contents when the table row containing\n * it is hovered or when an element in the row has focus.\n */\n@Directive({\n selector: '[matRowHoverContent]',\n})\nexport class MatRowHoverContent extends CdkRowHoverContent {\n protected override initElement(element: HTMLElement) {\n super.initElement(element);\n element.classList.add(MAT_ROW_HOVER_CLASS);\n }\n\n protected override makeElementHiddenButFocusable(element: HTMLElement): void {\n element.classList.remove(MAT_ROW_HOVER_ANIMATE_CLASS);\n }\n\n protected override makeElementVisible(element: HTMLElement): void {\n _closest(this.elementRef.nativeElement!, _CELL_SELECTOR)!.classList.add(\n MAT_ROW_HOVER_CELL_CLASS,\n );\n\n if (this.services.directionality.value === 'rtl') {\n element.classList.add(MAT_ROW_HOVER_RTL_CLASS);\n } else {\n element.classList.remove(MAT_ROW_HOVER_RTL_CLASS);\n }\n\n element.classList.remove(MAT_ROW_HOVER_ANIMATE_CLASS);\n this.services.ngZone.runOutsideAngular(() => {\n setTimeout(() => {\n element.classList.add(MAT_ROW_HOVER_ANIMATE_CLASS);\n });\n });\n }\n}\n\n/**\n * Opens the closest edit popover to this element, whether it's associated with this exact\n * element or an ancestor element.\n */\n@Directive({\n selector: '[matEditOpen]',\n})\nexport class MatEditOpen extends CdkEditOpen {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material/core';\nimport {CdkEditable, CdkPopoverEditModule} from '@angular/cdk-experimental/popover-edit';\nimport {\n MatPopoverEdit,\n MatPopoverEditTabOut,\n MatRowHoverContent,\n MatEditOpen,\n} from './table-directives';\nimport {MatEditLens, MatEditRevert, MatEditClose} from './lens-directives';\n\n@NgModule({\n imports: [CdkPopoverEditModule, MatCommonModule],\n exports: [\n MatPopoverEdit,\n MatPopoverEditTabOut,\n MatRowHoverContent,\n MatEditLens,\n MatEditRevert,\n MatEditClose,\n MatEditOpen,\n CdkEditable,\n ],\n declarations: [\n MatPopoverEdit,\n MatPopoverEditTabOut,\n MatRowHoverContent,\n MatEditLens,\n MatEditRevert,\n MatEditClose,\n MatEditOpen,\n ],\n})\nexport class MatPopoverEditModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './lens-directives';\nexport * from './popover-edit-module';\nexport * from './table-directives';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAAA;;;;;;;AAiBA;;;;;;MAmBa,WAAuB,SAAQ,cAAyB;;+GAAxD,WAAW;mGAAX,WAAW,iaAFX,CAAC,OAAO,CAAC;kGAET,WAAW;kBAbvB,SAAS;mBAAC;oBACT,QAAQ,EAAE,mBAAmB;oBAC7B,IAAI,EAAE;wBACJ,OAAO,EAAE,eAAe;qBACzB;oBACD,MAAM,EAAE;wBACN,+CAA+C;wBAC/C,mDAAmD;wBACnD,6DAA6D;qBAC9D;oBACD,OAAO,EAAE,CAAC,+DAA+D,CAAC;oBAC1E,SAAS,EAAE,CAAC,OAAO,CAAC;iBACrB;;AAGD;MAOa,aAAyB,SAAQ,aAAwB;;iHAAzD,aAAa;qGAAb,aAAa;kGAAb,aAAa;kBANzB,SAAS;mBAAC;oBACT,QAAQ,EAAE,uBAAuB;oBACjC,IAAI,EAAE;wBACJ,MAAM,EAAE,QAAQ;qBACjB;iBACF;;AAGD;MAEa,YAAwB,SAAQ,YAAuB;;gHAAvD,YAAY;oGAAZ,YAAY;kGAAZ,YAAY;kBADxB,SAAS;mBAAC,EAAC,QAAQ,EAAE,gBAAgB,EAAC;;;AChDvC;;;;;;;AAiBA,MAAM,0BAA0B,GAAG;IACjC,iBAAiB,EAAE,qBAAqB;IACxC,OAAO,EAAE,uBAAuB;IAChC,sBAAsB,EAAE,WAAW;CACpC,CAAC;AAEF,MAAM,mBAAmB,GAAG;IAC1B,0BAA0B;IAC1B,gCAAgC;IAChC,gCAAgC;IAChC,kCAAkC;CACnC,CAAC;AAEF,MAAM,eAAe,GAAG,eAAe,CAAC;AAExC,MAAM,mBAAmB,GAAG,uBAAuB,CAAC;AACpD,MAAM,uBAAuB,GAAG,mBAAmB,GAAG,MAAM,CAAC;AAC7D,MAAM,2BAA2B,GAAG,mBAAmB,GAAG,UAAU,CAAC;AACrE,MAAM,wBAAwB,GAAG,mBAAmB,GAAG,YAAY,CAAC;AAEpE;;;;;MAUa,cAAkB,SAAQ,cAAiB;IACnC,UAAU;QAC3B,OAAO,eAAe,CAAC;KACxB;;kHAHU,cAAc;sGAAd,cAAc;kGAAd,cAAc;kBAL1B,SAAS;mBAAC;oBACT,QAAQ,EAAE,8CAA8C;oBACxD,IAAI,EAAE,0BAA0B;oBAChC,MAAM,EAAE,mBAAmB;iBAC5B;;AAOD;;;;;MAUa,oBAAwB,SAAQ,oBAAuB;IAC/C,UAAU;QAC3B,OAAO,eAAe,CAAC;KACxB;;wHAHU,oBAAoB;4GAApB,oBAAoB;kGAApB,oBAAoB;kBALhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,wCAAwC;oBAClD,IAAI,EAAE,0BAA0B;oBAChC,MAAM,EAAE,mBAAmB;iBAC5B;;AAOD;;;;MAOa,kBAAmB,SAAQ,kBAAkB;IACrC,WAAW,CAAC,OAAoB;QACjD,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC3B,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;KAC5C;IAEkB,6BAA6B,CAAC,OAAoB;QACnE,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;KACvD;IAEkB,kBAAkB,CAAC,OAAoB;QACxD,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAc,EAAE,cAAc,CAAE,CAAC,SAAS,CAAC,GAAG,CACrE,wBAAwB,CACzB,CAAC;QAEF,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,KAAK,KAAK,EAAE;YAChD,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;SAChD;aAAM;YACL,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;SACnD;QAED,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,iBAAiB,CAAC;YACrC,UAAU,CAAC;gBACT,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;aACpD,CAAC,CAAC;SACJ,CAAC,CAAC;KACJ;;sHA3BU,kBAAkB;0GAAlB,kBAAkB;kGAAlB,kBAAkB;kBAH9B,SAAS;mBAAC;oBACT,QAAQ,EAAE,sBAAsB;iBACjC;;AA+BD;;;;MAOa,WAAY,SAAQ,WAAW;;+GAA/B,WAAW;mGAAX,WAAW;kGAAX,WAAW;kBAHvB,SAAS;mBAAC;oBACT,QAAQ,EAAE,eAAe;iBAC1B;;;AChHD;;;;;;;MAyCa,oBAAoB;;wHAApB,oBAAoB;yHAApB,oBAAoB,iBAT7B,cAAc;QACd,oBAAoB;QACpB,kBAAkB;QAClB,WAAW;QACX,aAAa;QACb,YAAY;QACZ,WAAW,aAlBH,oBAAoB,EAAE,eAAe,aAE7C,cAAc;QACd,oBAAoB;QACpB,kBAAkB;QAClB,WAAW;QACX,aAAa;QACb,YAAY;QACZ,WAAW;QACX,WAAW;yHAYF,oBAAoB,YArBtB,CAAC,oBAAoB,EAAE,eAAe,CAAC;kGAqBrC,oBAAoB;kBAtBhC,QAAQ;mBAAC;oBACR,OAAO,EAAE,CAAC,oBAAoB,EAAE,eAAe,CAAC;oBAChD,OAAO,EAAE;wBACP,cAAc;wBACd,oBAAoB;wBACpB,kBAAkB;wBAClB,WAAW;wBACX,aAAa;wBACb,YAAY;wBACZ,WAAW;wBACX,WAAW;qBACZ;oBACD,YAAY,EAAE;wBACZ,cAAc;wBACd,oBAAoB;wBACpB,kBAAkB;wBAClB,WAAW;wBACX,aAAa;wBACb,YAAY;wBACZ,WAAW;qBACZ;iBACF;;;ACxCD;;;;;;;;ACAA;;;;;;;;ACAA;;;;;;"}
1
+ {"version":3,"file":"popover-edit.mjs","sources":["../../../../../../src/material-experimental/popover-edit/lens-directives.ts","../../../../../../src/material-experimental/popover-edit/table-directives.ts","../../../../../../src/material-experimental/popover-edit/popover-edit-module.ts","../../../../../../src/material-experimental/popover-edit/public-api.ts","../../../../../../src/material-experimental/popover-edit/index.ts","../../../../../../src/material-experimental/popover-edit/popover-edit_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directive} from '@angular/core';\n\nimport {\n CdkEditControl,\n CdkEditRevert,\n CdkEditClose,\n EditRef,\n} from '@angular/cdk-experimental/popover-edit';\n\n/**\n * A component that attaches to a form within the edit.\n * It coordinates the form state with the table-wide edit system and handles\n * closing the edit when the form is submitted or the user clicks\n * out.\n */\n@Directive({\n selector: 'form[matEditLens]',\n host: {\n 'class': 'mat-edit-lens',\n },\n inputs: [\n 'clickOutBehavior: matEditLensClickOutBehavior',\n 'preservedFormValue: matEditLensPreservedFormValue',\n 'ignoreSubmitUnlessValid: matEditLensIgnoreSubmitUnlessValid',\n ],\n outputs: ['preservedFormValueChange: matEditLensPreservedFormValueChange'],\n providers: [EditRef],\n})\nexport class MatEditLens<FormValue> extends CdkEditControl<FormValue> {}\n\n/** Reverts the form to its initial or previously submitted state on click. */\n@Directive({\n selector: 'button[matEditRevert]',\n host: {\n 'type': 'button', // Prevents accidental form submits.\n },\n})\nexport class MatEditRevert<FormValue> extends CdkEditRevert<FormValue> {}\n\n/** Closes the lens on click. */\n@Directive({selector: '[matEditClose]'})\nexport class MatEditClose<FormValue> extends CdkEditClose<FormValue> {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {Directive} from '@angular/core';\nimport {\n _CELL_SELECTOR,\n _closest,\n CdkPopoverEdit,\n CdkPopoverEditTabOut,\n CdkRowHoverContent,\n CdkEditOpen,\n} from '@angular/cdk-experimental/popover-edit';\n\nconst POPOVER_EDIT_HOST_BINDINGS = {\n '[attr.tabindex]': 'disabled ? null : 0',\n 'class': 'mat-popover-edit-cell',\n '[attr.aria-haspopup]': '!disabled',\n};\n\nconst POPOVER_EDIT_INPUTS = [\n 'template: matPopoverEdit',\n 'context: matPopoverEditContext',\n 'colspan: matPopoverEditColspan',\n 'disabled: matPopoverEditDisabled',\n];\n\nconst EDIT_PANE_CLASS = 'mat-edit-pane';\n\nconst MAT_ROW_HOVER_CLASS = 'mat-row-hover-content';\nconst MAT_ROW_HOVER_RTL_CLASS = MAT_ROW_HOVER_CLASS + '-rtl';\nconst MAT_ROW_HOVER_ANIMATE_CLASS = MAT_ROW_HOVER_CLASS + '-visible';\nconst MAT_ROW_HOVER_CELL_CLASS = MAT_ROW_HOVER_CLASS + '-host-cell';\n\n/**\n * Attaches an ng-template to a cell and shows it when instructed to by the\n * EditEventDispatcher service.\n * Makes the cell focusable.\n */\n@Directive({\n selector: '[matPopoverEdit]:not([matPopoverEditTabOut])',\n host: POPOVER_EDIT_HOST_BINDINGS,\n inputs: POPOVER_EDIT_INPUTS,\n})\nexport class MatPopoverEdit<C> extends CdkPopoverEdit<C> {\n protected override panelClass(): string {\n return EDIT_PANE_CLASS;\n }\n}\n\n/**\n * Attaches an ng-template to a cell and shows it when instructed to by the\n * EditEventDispatcher service.\n * Makes the cell focusable.\n */\n@Directive({\n selector: '[matPopoverEdit][matPopoverEditTabOut]',\n host: POPOVER_EDIT_HOST_BINDINGS,\n inputs: POPOVER_EDIT_INPUTS,\n})\nexport class MatPopoverEditTabOut<C> extends CdkPopoverEditTabOut<C> {\n protected override panelClass(): string {\n return EDIT_PANE_CLASS;\n }\n}\n\n/**\n * A structural directive that shows its contents when the table row containing\n * it is hovered or when an element in the row has focus.\n */\n@Directive({\n selector: '[matRowHoverContent]',\n})\nexport class MatRowHoverContent extends CdkRowHoverContent {\n protected override initElement(element: HTMLElement) {\n super.initElement(element);\n element.classList.add(MAT_ROW_HOVER_CLASS);\n }\n\n protected override makeElementHiddenButFocusable(element: HTMLElement): void {\n element.classList.remove(MAT_ROW_HOVER_ANIMATE_CLASS);\n }\n\n protected override makeElementVisible(element: HTMLElement): void {\n _closest(this.elementRef.nativeElement!, _CELL_SELECTOR)!.classList.add(\n MAT_ROW_HOVER_CELL_CLASS,\n );\n\n if (this.services.directionality.value === 'rtl') {\n element.classList.add(MAT_ROW_HOVER_RTL_CLASS);\n } else {\n element.classList.remove(MAT_ROW_HOVER_RTL_CLASS);\n }\n\n element.classList.remove(MAT_ROW_HOVER_ANIMATE_CLASS);\n this.services.ngZone.runOutsideAngular(() => {\n setTimeout(() => {\n element.classList.add(MAT_ROW_HOVER_ANIMATE_CLASS);\n });\n });\n }\n}\n\n/**\n * Opens the closest edit popover to this element, whether it's associated with this exact\n * element or an ancestor element.\n */\n@Directive({\n selector: '[matEditOpen]',\n})\nexport class MatEditOpen extends CdkEditOpen {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material/core';\nimport {CdkEditable, CdkPopoverEditModule} from '@angular/cdk-experimental/popover-edit';\nimport {\n MatPopoverEdit,\n MatPopoverEditTabOut,\n MatRowHoverContent,\n MatEditOpen,\n} from './table-directives';\nimport {MatEditLens, MatEditRevert, MatEditClose} from './lens-directives';\n\n@NgModule({\n imports: [CdkPopoverEditModule, MatCommonModule],\n exports: [\n MatPopoverEdit,\n MatPopoverEditTabOut,\n MatRowHoverContent,\n MatEditLens,\n MatEditRevert,\n MatEditClose,\n MatEditOpen,\n CdkEditable,\n ],\n declarations: [\n MatPopoverEdit,\n MatPopoverEditTabOut,\n MatRowHoverContent,\n MatEditLens,\n MatEditRevert,\n MatEditClose,\n MatEditOpen,\n ],\n})\nexport class MatPopoverEditModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './lens-directives';\nexport * from './popover-edit-module';\nexport * from './table-directives';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -37,9 +37,9 @@ class MatSelection extends CdkSelection {
37
37
  this._multiple = coerceBooleanProperty(multiple);
38
38
  }
39
39
  }
40
- MatSelection.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-next.2", ngImport: i0, type: MatSelection, deps: null, target: i0.ɵɵFactoryTarget.Directive });
41
- MatSelection.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0-next.2", type: MatSelection, selector: "[matSelection]", inputs: { multiple: ["matSelectionMultiple", "multiple"] }, outputs: { change: "matSelectionChange" }, providers: [{ provide: CdkSelection, useExisting: MatSelection }], exportAs: ["matSelection"], usesInheritance: true, ngImport: i0 });
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-next.2", ngImport: i0, type: MatSelection, decorators: [{
40
+ MatSelection.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelection, deps: null, target: i0.ɵɵFactoryTarget.Directive });
41
+ MatSelection.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatSelection, selector: "[matSelection]", inputs: { multiple: ["matSelectionMultiple", "multiple"] }, outputs: { change: "matSelectionChange" }, providers: [{ provide: CdkSelection, useExisting: MatSelection }], exportAs: ["matSelection"], usesInheritance: true, ngImport: i0 });
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelection, decorators: [{
43
43
  type: Directive,
44
44
  args: [{
45
45
  selector: '[matSelection]',
@@ -73,9 +73,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-next.2",
73
73
  */
74
74
  class MatSelectAll extends CdkSelectAll {
75
75
  }
76
- MatSelectAll.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-next.2", ngImport: i0, type: MatSelectAll, deps: null, target: i0.ɵɵFactoryTarget.Directive });
77
- MatSelectAll.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0-next.2", type: MatSelectAll, selector: "[matSelectAll]", providers: [{ provide: CdkSelectAll, useExisting: MatSelectAll }], exportAs: ["matSelectAll"], usesInheritance: true, ngImport: i0 });
78
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-next.2", ngImport: i0, type: MatSelectAll, decorators: [{
76
+ MatSelectAll.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectAll, deps: null, target: i0.ɵɵFactoryTarget.Directive });
77
+ MatSelectAll.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatSelectAll, selector: "[matSelectAll]", providers: [{ provide: CdkSelectAll, useExisting: MatSelectAll }], exportAs: ["matSelectAll"], usesInheritance: true, ngImport: i0 });
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectAll, decorators: [{
79
79
  type: Directive,
80
80
  args: [{
81
81
  selector: '[matSelectAll]',
@@ -103,9 +103,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-next.2",
103
103
  */
104
104
  class MatSelectionToggle extends CdkSelectionToggle {
105
105
  }
106
- MatSelectionToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-next.2", ngImport: i0, type: MatSelectionToggle, deps: null, target: i0.ɵɵFactoryTarget.Directive });
107
- MatSelectionToggle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0-next.2", type: MatSelectionToggle, selector: "[matSelectionToggle]", inputs: { index: ["matSelectionToggleIndex", "index"], value: ["matSelectionToggleValue", "value"] }, providers: [{ provide: CdkSelectionToggle, useExisting: MatSelectionToggle }], exportAs: ["matSelectionToggle"], usesInheritance: true, ngImport: i0 });
108
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-next.2", ngImport: i0, type: MatSelectionToggle, decorators: [{
106
+ MatSelectionToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectionToggle, deps: null, target: i0.ɵɵFactoryTarget.Directive });
107
+ MatSelectionToggle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatSelectionToggle, selector: "[matSelectionToggle]", inputs: { index: ["matSelectionToggleIndex", "index"], value: ["matSelectionToggleValue", "value"] }, providers: [{ provide: CdkSelectionToggle, useExisting: MatSelectionToggle }], exportAs: ["matSelectionToggle"], usesInheritance: true, ngImport: i0 });
108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectionToggle, decorators: [{
109
109
  type: Directive,
110
110
  args: [{
111
111
  selector: '[matSelectionToggle]',
@@ -169,8 +169,8 @@ class MatSelectionColumn {
169
169
  }
170
170
  }
171
171
  }
172
- MatSelectionColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-next.2", ngImport: i0, type: MatSelectionColumn, deps: [{ token: MatTable, optional: true }, { token: MatSelection, optional: true }], target: i0.ɵɵFactoryTarget.Component });
173
- MatSelectionColumn.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0-next.2", type: MatSelectionColumn, selector: "mat-selection-column", inputs: { name: "name" }, viewQueries: [{ propertyName: "_columnDef", first: true, predicate: MatColumnDef, descendants: true, static: true }, { propertyName: "_cell", first: true, predicate: MatCellDef, descendants: true, static: true }, { propertyName: "_headerCell", first: true, predicate: MatHeaderCellDef, descendants: true, static: true }], ngImport: i0, template: `
172
+ MatSelectionColumn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectionColumn, deps: [{ token: MatTable, optional: true }, { token: MatSelection, optional: true }], target: i0.ɵɵFactoryTarget.Component });
173
+ MatSelectionColumn.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatSelectionColumn, selector: "mat-selection-column", inputs: { name: "name" }, viewQueries: [{ propertyName: "_columnDef", first: true, predicate: MatColumnDef, descendants: true, static: true }, { propertyName: "_cell", first: true, predicate: MatCellDef, descendants: true, static: true }, { propertyName: "_headerCell", first: true, predicate: MatHeaderCellDef, descendants: true, static: true }], ngImport: i0, template: `
174
174
  <ng-container matColumnDef>
175
175
  <th mat-header-cell *matHeaderCellDef class="mat-selection-column-header">
176
176
  <mat-checkbox *ngIf="selection.multiple"
@@ -186,7 +186,7 @@ MatSelectionColumn.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
186
186
  </td>
187
187
  </ng-container>
188
188
  `, isInline: true, styles: ["th.mat-selection-column-header,td.mat-selection-column-cell{text-align:center;width:48px}\n"], components: [{ type: i1.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }], directives: [{ type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: MatSelectAll, selector: "[matSelectAll]", exportAs: ["matSelectAll"] }, { type: i2.MatCellDef, selector: "[matCellDef]" }, { type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { type: MatSelectionToggle, selector: "[matSelectionToggle]", inputs: ["matSelectionToggleIndex", "matSelectionToggleValue"], exportAs: ["matSelectionToggle"] }], pipes: { "async": i3.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
189
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-next.2", ngImport: i0, type: MatSelectionColumn, decorators: [{
189
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectionColumn, decorators: [{
190
190
  type: Component,
191
191
  args: [{ selector: 'mat-selection-column', template: `
192
192
  <ng-container matColumnDef>
@@ -243,9 +243,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-next.2",
243
243
  */
244
244
  class MatRowSelection extends CdkRowSelection {
245
245
  }
246
- MatRowSelection.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-next.2", ngImport: i0, type: MatRowSelection, deps: null, target: i0.ɵɵFactoryTarget.Directive });
247
- MatRowSelection.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0-next.2", type: MatRowSelection, selector: "[matRowSelection]", inputs: { index: ["matRowSelectionIndex", "index"], value: ["matRowSelectionValue", "value"] }, host: { properties: { "class.mat-selected": "_selection.isSelected(this.value, this.index)", "attr.aria-selected": "_selection.isSelected(this.value, this.index)" } }, providers: [{ provide: CdkRowSelection, useExisting: MatRowSelection }], usesInheritance: true, ngImport: i0 });
248
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-next.2", ngImport: i0, type: MatRowSelection, decorators: [{
246
+ MatRowSelection.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRowSelection, deps: null, target: i0.ɵɵFactoryTarget.Directive });
247
+ MatRowSelection.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatRowSelection, selector: "[matRowSelection]", inputs: { index: ["matRowSelectionIndex", "index"], value: ["matRowSelectionValue", "value"] }, host: { properties: { "class.mat-selected": "_selection.isSelected(this.value, this.index)", "attr.aria-selected": "_selection.isSelected(this.value, this.index)" } }, providers: [{ provide: CdkRowSelection, useExisting: MatRowSelection }], usesInheritance: true, ngImport: i0 });
248
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRowSelection, decorators: [{
249
249
  type: Directive,
250
250
  args: [{
251
251
  selector: '[matRowSelection]',
@@ -270,14 +270,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-next.2",
270
270
  */
271
271
  class MatSelectionModule {
272
272
  }
273
- MatSelectionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0-next.2", ngImport: i0, type: MatSelectionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
274
- MatSelectionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0-next.2", ngImport: i0, type: MatSelectionModule, declarations: [MatSelectAll,
273
+ MatSelectionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
274
+ MatSelectionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectionModule, declarations: [MatSelectAll,
275
275
  MatSelection,
276
276
  MatSelectionToggle,
277
277
  MatSelectionColumn,
278
278
  MatRowSelection], imports: [CommonModule, MatTableModule, MatCheckboxModule], exports: [MatSelectAll, MatSelection, MatSelectionToggle, MatSelectionColumn, MatRowSelection] });
279
- MatSelectionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0-next.2", ngImport: i0, type: MatSelectionModule, imports: [[CommonModule, MatTableModule, MatCheckboxModule]] });
280
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0-next.2", ngImport: i0, type: MatSelectionModule, decorators: [{
279
+ MatSelectionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectionModule, imports: [[CommonModule, MatTableModule, MatCheckboxModule]] });
280
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectionModule, decorators: [{
281
281
  type: NgModule,
282
282
  args: [{
283
283
  imports: [CommonModule, MatTableModule, MatCheckboxModule],
@@ -1 +1 @@
1
- {"version":3,"file":"selection.mjs","sources":["../../../../../../src/material-experimental/selection/selection.ts","../../../../../../src/material-experimental/selection/select-all.ts","../../../../../../src/material-experimental/selection/selection-toggle.ts","../../../../../../src/material-experimental/selection/selection-column.ts","../../../../../../src/material-experimental/selection/row-selection.ts","../../../../../../src/material-experimental/selection/selection-module.ts","../../../../../../src/material-experimental/selection/public-api.ts","../../../../../../src/material-experimental/selection/index.ts","../../../../../../src/material-experimental/selection/selection_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {CdkSelection, SelectionChange} from '@angular/cdk-experimental/selection';\nimport {Directive, Input, Output, EventEmitter} from '@angular/core';\n\n/**\n * Manages the selection states of the items and provides methods to check and update the selection\n * states.\n * It must be applied to the parent element if `matSelectionToggle`, `matSelectAll`,\n * `matRowSelection` and `matSelectionColumn` are applied.\n */\n@Directive({\n selector: '[matSelection]',\n exportAs: 'matSelection',\n providers: [{provide: CdkSelection, useExisting: MatSelection}],\n})\n// tslint:disable-next-line: coercion-types\nexport class MatSelection<T> extends CdkSelection<T> {\n /** Whether to support multiple selection */\n @Input('matSelectionMultiple')\n override get multiple(): boolean {\n return this._multiple;\n }\n override set multiple(multiple: boolean) {\n this._multiple = coerceBooleanProperty(multiple);\n }\n\n /** Emits when selection changes. */\n @Output('matSelectionChange') override readonly change = new EventEmitter<SelectionChange<T>>();\n}\n\n/**\n * Represents the change in the selection set.\n */\nexport {SelectionChange} from '@angular/cdk-experimental/selection';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CdkSelectAll} from '@angular/cdk-experimental/selection';\nimport {Directive} from '@angular/core';\n\n/**\n * Makes the element a select-all toggle.\n *\n * Must be used within a parent `MatSelection` directive. It toggles the selection states\n * of all the selection toggles connected with the `MatSelection` directive.\n * If the element implements `ControlValueAccessor`, e.g. `MatCheckbox`, the directive\n * automatically connects it with the select-all state provided by the `MatSelection` directive. If\n * not, use `checked` to get the checked state, `indeterminate` to get the indeterminate state,\n * and `toggle()` to change the selection state.\n */\n@Directive({\n selector: '[matSelectAll]',\n exportAs: 'matSelectAll',\n providers: [{provide: CdkSelectAll, useExisting: MatSelectAll}],\n})\nexport class MatSelectAll<T> extends CdkSelectAll<T> {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CdkSelectionToggle} from '@angular/cdk-experimental/selection';\nimport {Directive, Input} from '@angular/core';\n\n/**\n * Makes the element a selection toggle.\n *\n * Must be used within a parent `MatSelection` directive.\n * Must be provided with the value. If `trackBy` is used on `MatSelection`, the index of the value\n * is required. If the element implements `ControlValueAccessor`, e.g. `MatCheckbox`, the directive\n * automatically connects it with the selection state provided by the `MatSelection` directive. If\n * not, use `checked$` to get the checked state of the value, and `toggle()` to change the selection\n * state.\n */\n@Directive({\n selector: '[matSelectionToggle]',\n exportAs: 'matSelectionToggle',\n inputs: ['index: matSelectionToggleIndex'],\n providers: [{provide: CdkSelectionToggle, useExisting: MatSelectionToggle}],\n})\nexport class MatSelectionToggle<T> extends CdkSelectionToggle<T> {\n /** The value that is associated with the toggle */\n @Input('matSelectionToggleValue') override value: T;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {MatCellDef, MatColumnDef, MatHeaderCellDef, MatTable} from '@angular/material/table';\nimport {\n Component,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n ViewChild,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n Inject,\n} from '@angular/core';\n\nimport {MatSelection} from './selection';\n\n/**\n * Column that adds row selecting checkboxes and a select-all checkbox if `matSelectionMultiple` is\n * `true`.\n *\n * Must be used within a parent `MatSelection` directive.\n */\n@Component({\n selector: 'mat-selection-column',\n template: `\n <ng-container matColumnDef>\n <th mat-header-cell *matHeaderCellDef class=\"mat-selection-column-header\">\n <mat-checkbox *ngIf=\"selection.multiple\"\n matSelectAll\n #allToggler=\"matSelectAll\"\n [indeterminate]=\"allToggler.indeterminate | async\"></mat-checkbox>\n </th>\n <td mat-cell *matCellDef=\"let row; let i = $index\" class=\"mat-selection-column-cell\">\n <mat-checkbox\n matSelectionToggle\n [matSelectionToggleValue]=\"row\"\n [matSelectionToggleIndex]=\"i\"></mat-checkbox>\n </td>\n </ng-container>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n styleUrls: ['selection-column.css'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatSelectionColumn<T> implements OnInit, OnDestroy {\n /** Column name that should be used to reference this column. */\n @Input()\n get name(): string {\n return this._name;\n }\n set name(name: string) {\n this._name = name;\n\n this._syncColumnDefName();\n }\n private _name: string;\n\n @ViewChild(MatColumnDef, {static: true}) private readonly _columnDef: MatColumnDef;\n @ViewChild(MatCellDef, {static: true}) private readonly _cell: MatCellDef;\n @ViewChild(MatHeaderCellDef, {static: true}) private readonly _headerCell: MatHeaderCellDef;\n\n constructor(\n @Optional() @Inject(MatTable) private _table: MatTable<T>,\n @Optional() @Inject(MatSelection) readonly selection: MatSelection<T>,\n ) {}\n\n ngOnInit() {\n if (!this.selection && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('MatSelectionColumn: missing MatSelection in the parent');\n }\n\n this._syncColumnDefName();\n\n if (this._table) {\n this._columnDef.cell = this._cell;\n this._columnDef.headerCell = this._headerCell;\n this._table.addColumnDef(this._columnDef);\n } else if (typeof ngDevMode === 'undefined' || ngDevMode) {\n throw Error('MatSelectionColumn: missing parent table');\n }\n }\n\n ngOnDestroy() {\n if (this._table) {\n this._table.removeColumnDef(this._columnDef);\n }\n }\n\n private _syncColumnDefName() {\n if (this._columnDef) {\n this._columnDef.name = this._name;\n }\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CdkRowSelection} from '@angular/cdk-experimental/selection';\nimport {Input, Directive} from '@angular/core';\n\n/**\n * Applies `mat-selected` class and `aria-selected` to an element.\n *\n * Must be used within a parent `MatSelection` directive.\n * Must be provided with the value. The index is required if `trackBy` is used on the `CdkSelection`\n * directive.\n */\n@Directive({\n selector: '[matRowSelection]',\n host: {\n '[class.mat-selected]': '_selection.isSelected(this.value, this.index)',\n '[attr.aria-selected]': '_selection.isSelected(this.value, this.index)',\n },\n providers: [{provide: CdkRowSelection, useExisting: MatRowSelection}],\n inputs: ['index: matRowSelectionIndex'],\n})\nexport class MatRowSelection<T> extends CdkRowSelection<T> {\n /** The value that is associated with the row */\n @Input('matRowSelectionValue') override value: T;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n// TODO(yifange): Move the table-specific code to a separate module from the other selection\n// behaviors once we move it out of experiemental.\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatTableModule} from '@angular/material/table';\nimport {MatCheckboxModule} from '@angular/material/checkbox';\nimport {MatSelectAll} from './select-all';\nimport {MatSelection} from './selection';\nimport {MatSelectionToggle} from './selection-toggle';\nimport {MatSelectionColumn} from './selection-column';\nimport {MatRowSelection} from './row-selection';\n\n@NgModule({\n imports: [CommonModule, MatTableModule, MatCheckboxModule],\n exports: [MatSelectAll, MatSelection, MatSelectionToggle, MatSelectionColumn, MatRowSelection],\n declarations: [\n MatSelectAll,\n MatSelection,\n MatSelectionToggle,\n MatSelectionColumn,\n MatRowSelection,\n ],\n})\nexport class MatSelectionModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './selection';\nexport * from './select-all';\nexport * from './selection-toggle';\nexport * from './selection-column';\nexport * from './row-selection';\nexport * from './selection-module';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"selection.mjs","sources":["../../../../../../src/material-experimental/selection/selection.ts","../../../../../../src/material-experimental/selection/select-all.ts","../../../../../../src/material-experimental/selection/selection-toggle.ts","../../../../../../src/material-experimental/selection/selection-column.ts","../../../../../../src/material-experimental/selection/row-selection.ts","../../../../../../src/material-experimental/selection/selection-module.ts","../../../../../../src/material-experimental/selection/public-api.ts","../../../../../../src/material-experimental/selection/index.ts","../../../../../../src/material-experimental/selection/selection_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {CdkSelection, SelectionChange} from '@angular/cdk-experimental/selection';\nimport {Directive, Input, Output, EventEmitter} from '@angular/core';\n\n/**\n * Manages the selection states of the items and provides methods to check and update the selection\n * states.\n * It must be applied to the parent element if `matSelectionToggle`, `matSelectAll`,\n * `matRowSelection` and `matSelectionColumn` are applied.\n */\n@Directive({\n selector: '[matSelection]',\n exportAs: 'matSelection',\n providers: [{provide: CdkSelection, useExisting: MatSelection}],\n})\n// tslint:disable-next-line: coercion-types\nexport class MatSelection<T> extends CdkSelection<T> {\n /** Whether to support multiple selection */\n @Input('matSelectionMultiple')\n override get multiple(): boolean {\n return this._multiple;\n }\n override set multiple(multiple: boolean) {\n this._multiple = coerceBooleanProperty(multiple);\n }\n\n /** Emits when selection changes. */\n @Output('matSelectionChange') override readonly change = new EventEmitter<SelectionChange<T>>();\n}\n\n/**\n * Represents the change in the selection set.\n */\nexport {SelectionChange} from '@angular/cdk-experimental/selection';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CdkSelectAll} from '@angular/cdk-experimental/selection';\nimport {Directive} from '@angular/core';\n\n/**\n * Makes the element a select-all toggle.\n *\n * Must be used within a parent `MatSelection` directive. It toggles the selection states\n * of all the selection toggles connected with the `MatSelection` directive.\n * If the element implements `ControlValueAccessor`, e.g. `MatCheckbox`, the directive\n * automatically connects it with the select-all state provided by the `MatSelection` directive. If\n * not, use `checked` to get the checked state, `indeterminate` to get the indeterminate state,\n * and `toggle()` to change the selection state.\n */\n@Directive({\n selector: '[matSelectAll]',\n exportAs: 'matSelectAll',\n providers: [{provide: CdkSelectAll, useExisting: MatSelectAll}],\n})\nexport class MatSelectAll<T> extends CdkSelectAll<T> {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CdkSelectionToggle} from '@angular/cdk-experimental/selection';\nimport {Directive, Input} from '@angular/core';\n\n/**\n * Makes the element a selection toggle.\n *\n * Must be used within a parent `MatSelection` directive.\n * Must be provided with the value. If `trackBy` is used on `MatSelection`, the index of the value\n * is required. If the element implements `ControlValueAccessor`, e.g. `MatCheckbox`, the directive\n * automatically connects it with the selection state provided by the `MatSelection` directive. If\n * not, use `checked$` to get the checked state of the value, and `toggle()` to change the selection\n * state.\n */\n@Directive({\n selector: '[matSelectionToggle]',\n exportAs: 'matSelectionToggle',\n inputs: ['index: matSelectionToggleIndex'],\n providers: [{provide: CdkSelectionToggle, useExisting: MatSelectionToggle}],\n})\nexport class MatSelectionToggle<T> extends CdkSelectionToggle<T> {\n /** The value that is associated with the toggle */\n @Input('matSelectionToggleValue') override value: T;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {MatCellDef, MatColumnDef, MatHeaderCellDef, MatTable} from '@angular/material/table';\nimport {\n Component,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n ViewChild,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n Inject,\n} from '@angular/core';\n\nimport {MatSelection} from './selection';\n\n/**\n * Column that adds row selecting checkboxes and a select-all checkbox if `matSelectionMultiple` is\n * `true`.\n *\n * Must be used within a parent `MatSelection` directive.\n */\n@Component({\n selector: 'mat-selection-column',\n template: `\n <ng-container matColumnDef>\n <th mat-header-cell *matHeaderCellDef class=\"mat-selection-column-header\">\n <mat-checkbox *ngIf=\"selection.multiple\"\n matSelectAll\n #allToggler=\"matSelectAll\"\n [indeterminate]=\"allToggler.indeterminate | async\"></mat-checkbox>\n </th>\n <td mat-cell *matCellDef=\"let row; let i = $index\" class=\"mat-selection-column-cell\">\n <mat-checkbox\n matSelectionToggle\n [matSelectionToggleValue]=\"row\"\n [matSelectionToggleIndex]=\"i\"></mat-checkbox>\n </td>\n </ng-container>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n styleUrls: ['selection-column.css'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatSelectionColumn<T> implements OnInit, OnDestroy {\n /** Column name that should be used to reference this column. */\n @Input()\n get name(): string {\n return this._name;\n }\n set name(name: string) {\n this._name = name;\n\n this._syncColumnDefName();\n }\n private _name: string;\n\n @ViewChild(MatColumnDef, {static: true}) private readonly _columnDef: MatColumnDef;\n @ViewChild(MatCellDef, {static: true}) private readonly _cell: MatCellDef;\n @ViewChild(MatHeaderCellDef, {static: true}) private readonly _headerCell: MatHeaderCellDef;\n\n constructor(\n @Optional() @Inject(MatTable) private _table: MatTable<T>,\n @Optional() @Inject(MatSelection) readonly selection: MatSelection<T>,\n ) {}\n\n ngOnInit() {\n if (!this.selection && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('MatSelectionColumn: missing MatSelection in the parent');\n }\n\n this._syncColumnDefName();\n\n if (this._table) {\n this._columnDef.cell = this._cell;\n this._columnDef.headerCell = this._headerCell;\n this._table.addColumnDef(this._columnDef);\n } else if (typeof ngDevMode === 'undefined' || ngDevMode) {\n throw Error('MatSelectionColumn: missing parent table');\n }\n }\n\n ngOnDestroy() {\n if (this._table) {\n this._table.removeColumnDef(this._columnDef);\n }\n }\n\n private _syncColumnDefName() {\n if (this._columnDef) {\n this._columnDef.name = this._name;\n }\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CdkRowSelection} from '@angular/cdk-experimental/selection';\nimport {Input, Directive} from '@angular/core';\n\n/**\n * Applies `mat-selected` class and `aria-selected` to an element.\n *\n * Must be used within a parent `MatSelection` directive.\n * Must be provided with the value. The index is required if `trackBy` is used on the `CdkSelection`\n * directive.\n */\n@Directive({\n selector: '[matRowSelection]',\n host: {\n '[class.mat-selected]': '_selection.isSelected(this.value, this.index)',\n '[attr.aria-selected]': '_selection.isSelected(this.value, this.index)',\n },\n providers: [{provide: CdkRowSelection, useExisting: MatRowSelection}],\n inputs: ['index: matRowSelectionIndex'],\n})\nexport class MatRowSelection<T> extends CdkRowSelection<T> {\n /** The value that is associated with the row */\n @Input('matRowSelectionValue') override value: T;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n// TODO(yifange): Move the table-specific code to a separate module from the other selection\n// behaviors once we move it out of experiemental.\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatTableModule} from '@angular/material/table';\nimport {MatCheckboxModule} from '@angular/material/checkbox';\nimport {MatSelectAll} from './select-all';\nimport {MatSelection} from './selection';\nimport {MatSelectionToggle} from './selection-toggle';\nimport {MatSelectionColumn} from './selection-column';\nimport {MatRowSelection} from './row-selection';\n\n@NgModule({\n imports: [CommonModule, MatTableModule, MatCheckboxModule],\n exports: [MatSelectAll, MatSelection, MatSelectionToggle, MatSelectionColumn, MatRowSelection],\n declarations: [\n MatSelectAll,\n MatSelection,\n MatSelectionToggle,\n MatSelectionColumn,\n MatRowSelection,\n ],\n})\nexport class MatSelectionModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './selection';\nexport * from './select-all';\nexport * from './selection-toggle';\nexport * from './selection-column';\nexport * from './row-selection';\nexport * from './selection-module';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ @use 'sass:map';
1
2
  @use '@material/touch-target' as mdc-touch-target;
2
3
  @use '../mdc-helpers/mdc-helpers';
3
4
  @use '../../material/core/style/layout-common';
@@ -8,22 +9,10 @@
8
9
  // ripple and state container so that they fill the button, match the border radius, and avoid
9
10
  // pointer events.
10
11
  @mixin mat-private-button-interactive() {
11
- .mdc-button__ripple::before, .mdc-button__ripple::after,
12
- .mdc-fab__ripple::before, .mdc-fab__ripple::after {
13
- content: '';
14
- pointer-events: none;
15
- position: absolute;
16
- top: 0;
17
- right: 0;
18
- bottom: 0;
19
- left: 0;
20
- opacity: 0;
21
- border-radius: inherit;
22
- @content;
23
- }
24
-
25
12
  // The ripple container should match the bounds of the entire button.
26
- .mat-mdc-button-ripple, .mdc-button__ripple, .mdc-fab__ripple {
13
+ .mat-mdc-button-ripple,
14
+ .mat-mdc-button-persistent-ripple,
15
+ .mat-mdc-button-persistent-ripple::before {
27
16
  @include layout-common.fill;
28
17
 
29
18
  // Disable pointer events for the ripple container and state overlay because the container
@@ -38,6 +27,17 @@
38
27
  border-radius: inherit;
39
28
  }
40
29
 
30
+ // We use ::before so that we can reuse some of MDC's theming.
31
+ .mat-mdc-button-persistent-ripple::before {
32
+ content: '';
33
+ opacity: 0;
34
+ background-color: var(--mat-mdc-button-persistent-ripple-color);
35
+ }
36
+
37
+ .mat-ripple-element {
38
+ background-color: var(--mat-mdc-button-ripple-color);
39
+ }
40
+
41
41
  // The content should appear over the state and ripple layers, otherwise they may adversely affect
42
42
  // the accessibility of the text content.
43
43
  .mdc-button__label {
@@ -59,6 +59,7 @@
59
59
  &[disabled] {
60
60
  cursor: default;
61
61
  pointer-events: none;
62
+ @content;
62
63
  }
63
64
  }
64
65
 
@@ -75,3 +76,15 @@
75
76
  $query: mdc-helpers.$mat-base-styles-query);
76
77
  }
77
78
  }
79
+
80
+ // Changes a button theme to exclude the ripple styles.
81
+ @function mat-private-button-remove-ripple($theme) {
82
+ @return map.merge($theme, (
83
+ focus-state-layer-color: null,
84
+ focus-state-layer-opacity: null,
85
+ hover-state-layer-color: null,
86
+ hover-state-layer-opacity: null,
87
+ pressed-state-layer-color: null,
88
+ pressed-state-layer-opacity: null,
89
+ ));
90
+ }
@@ -1,28 +1,43 @@
1
+ @use 'sass:map';
2
+ @use '@material/ripple/ripple-theme' as mdc-ripple-theme;
1
3
  @use '@material/theme/theme-color' as mdc-theme-color;
2
- @use '@material/theme/theme' as mdc-theme;
3
4
  @use '../../material/core/ripple/ripple-theme';
4
5
 
5
- // Selector for the element that has a background color and opacity applied to its ::before and
6
- // ::after for state interactions (hover, active, focus). Their API calls this their
7
- // "ripple target", but we do not use it as our ripple, just state color.
8
- $button-state-target: '.mdc-button__ripple';
9
- $fab-state-target: '.mdc-fab__ripple';
10
-
11
- // The MDC button's ripple ink color is based on the theme color, not on the foreground base
12
- // which is what the ripple mixin uses. This creates a new theme that sets the color to the
13
- // foreground base to appropriately color the ink.
14
- @mixin ripple-ink-color($mdc-color) {
15
- @include ripple-theme.color((
16
- foreground: (
17
- base: mdc-theme-color.prop-value($mdc-color)
18
- ),
19
- ));
6
+ @mixin _ripple-color($color) {
7
+ --mat-mdc-button-persistent-ripple-color: #{$color};
8
+ --mat-mdc-button-ripple-color: #{rgba($color, 0.1)};
20
9
  }
21
10
 
22
- // Applies the disabled theme color to the text color.
23
- @mixin apply-disabled-color() {
24
- @include mdc-theme.prop(color,
25
- mdc-theme-color.ink-color-for-fill_(disabled, mdc-theme-color.$background));
11
+ @mixin ripple-theme-styles($config, $is-filled) {
12
+ $opacities: if(map.get($config, is-dark),
13
+ mdc-ripple-theme.$light-ink-opacities, mdc-ripple-theme.$dark-ink-opacities);
14
+
15
+ // Ideally these styles would be structural, but MDC bases some of the opacities on the theme.
16
+ &:hover .mat-mdc-button-persistent-ripple::before {
17
+ opacity: map.get($opacities, hover);
18
+ }
19
+
20
+ &:focus .mat-mdc-button-persistent-ripple::before {
21
+ opacity: map.get($opacities, focus);
22
+ }
23
+
24
+ &:active .mat-mdc-button-persistent-ripple::before {
25
+ opacity: map.get($opacities, press);
26
+ }
27
+
28
+ @include _ripple-color(mdc-theme-color.prop-value(on-surface));
29
+
30
+ &.mat-primary {
31
+ @include _ripple-color(mdc-theme-color.prop-value(if($is-filled, on-primary, primary)));
32
+ }
33
+
34
+ &.mat-accent {
35
+ @include _ripple-color(mdc-theme-color.prop-value(if($is-filled, on-secondary, secondary)));
36
+ }
37
+
38
+ &.mat-warn {
39
+ @include _ripple-color(mdc-theme-color.prop-value(if($is-filled, on-error, error)));
40
+ }
26
41
  }
27
42
 
28
43
  // Wraps the content style in a selector for the disabled state.
@@ -37,14 +52,6 @@ $fab-state-target: '.mdc-fab__ripple';
37
52
  }
38
53
  }
39
54
 
40
- // Applies the disabled theme background color for raised buttons. Value is taken from
41
- // mixin `mdc-button--filled`.
42
- // TODO(andrewseguin): Discuss with the MDC team about providing a variable for the 0.12 value
43
- // or otherwise have a mixin we can call to apply this style for both button and anchors.
44
- @mixin apply-disabled-background() {
45
- @include mdc-theme.prop(background-color, rgba(mdc-theme-color.prop-value(on-surface), 0.12));
46
- }
47
-
48
55
  // Hides the touch target on lower densities.
49
56
  @mixin touch-target-density($scale) {
50
57
  @if ($scale == -2 or $scale == 'minimum') {