primeng 19.0.10 → 19.1.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 (235) hide show
  1. package/autocomplete/autocomplete.d.ts +1 -1
  2. package/button/button.d.ts +6 -2
  3. package/button/button.interface.d.ts +1 -0
  4. package/chips/chips.d.ts +237 -0
  5. package/chips/chips.interface.d.ts +66 -0
  6. package/chips/index.d.ts +5 -0
  7. package/chips/public_api.d.ts +2 -0
  8. package/chips/style/chipsstyle.d.ts +69 -0
  9. package/colorpicker/colorpicker.d.ts +3 -2
  10. package/confirmdialog/confirmdialog.d.ts +7 -1
  11. package/fesm2022/primeng-accordion.mjs +24 -23
  12. package/fesm2022/primeng-accordion.mjs.map +1 -1
  13. package/fesm2022/primeng-animateonscroll.mjs +7 -7
  14. package/fesm2022/primeng-api.mjs +31 -31
  15. package/fesm2022/primeng-autocomplete.mjs +12 -12
  16. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  17. package/fesm2022/primeng-autofocus.mjs +7 -7
  18. package/fesm2022/primeng-avatar.mjs +10 -10
  19. package/fesm2022/primeng-avatargroup.mjs +10 -10
  20. package/fesm2022/primeng-badge.mjs +13 -13
  21. package/fesm2022/primeng-base.mjs +7 -3
  22. package/fesm2022/primeng-base.mjs.map +1 -1
  23. package/fesm2022/primeng-basecomponent.mjs +6 -6
  24. package/fesm2022/primeng-blockui.mjs +10 -10
  25. package/fesm2022/primeng-breadcrumb.mjs +10 -10
  26. package/fesm2022/primeng-button.mjs +53 -20
  27. package/fesm2022/primeng-button.mjs.map +1 -1
  28. package/fesm2022/primeng-buttongroup.mjs +10 -10
  29. package/fesm2022/primeng-calendar.mjs +13 -11
  30. package/fesm2022/primeng-calendar.mjs.map +1 -1
  31. package/fesm2022/primeng-card.mjs +10 -10
  32. package/fesm2022/primeng-carousel.mjs +12 -12
  33. package/fesm2022/primeng-carousel.mjs.map +1 -1
  34. package/fesm2022/primeng-cascadeselect.mjs +17 -13
  35. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  36. package/fesm2022/primeng-chart.mjs +10 -10
  37. package/fesm2022/primeng-checkbox.mjs +12 -10
  38. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  39. package/fesm2022/primeng-chip.mjs +10 -10
  40. package/fesm2022/primeng-chips.mjs +930 -0
  41. package/fesm2022/primeng-chips.mjs.map +1 -0
  42. package/fesm2022/primeng-colorpicker.mjs +16 -10
  43. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  44. package/fesm2022/primeng-config.mjs +6 -6
  45. package/fesm2022/primeng-confirmdialog.mjs +20 -10
  46. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  47. package/fesm2022/primeng-confirmpopup.mjs +10 -10
  48. package/fesm2022/primeng-contextmenu.mjs +13 -13
  49. package/fesm2022/primeng-dataview.mjs +11 -11
  50. package/fesm2022/primeng-dataview.mjs.map +1 -1
  51. package/fesm2022/primeng-datepicker.mjs +19 -12
  52. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  53. package/fesm2022/primeng-defer.mjs +7 -7
  54. package/fesm2022/primeng-dialog.mjs +10 -10
  55. package/fesm2022/primeng-divider.mjs +10 -10
  56. package/fesm2022/primeng-dock.mjs +10 -10
  57. package/fesm2022/primeng-dragdrop.mjs +10 -10
  58. package/fesm2022/primeng-drawer.mjs +10 -10
  59. package/fesm2022/primeng-dropdown.mjs +13 -13
  60. package/fesm2022/primeng-dynamicdialog.mjs +16 -16
  61. package/fesm2022/primeng-editor.mjs +10 -10
  62. package/fesm2022/primeng-fieldset.mjs +10 -10
  63. package/fesm2022/primeng-fileupload.mjs +11 -15
  64. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  65. package/fesm2022/primeng-floatlabel.mjs +10 -10
  66. package/fesm2022/primeng-fluid.mjs +10 -10
  67. package/fesm2022/primeng-focustrap.mjs +7 -7
  68. package/fesm2022/primeng-galleria.mjs +22 -22
  69. package/fesm2022/primeng-iconfield.mjs +10 -10
  70. package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
  71. package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
  72. package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
  73. package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
  74. package/fesm2022/primeng-icons-angledown.mjs +3 -3
  75. package/fesm2022/primeng-icons-angleleft.mjs +3 -3
  76. package/fesm2022/primeng-icons-angleright.mjs +3 -3
  77. package/fesm2022/primeng-icons-angleup.mjs +3 -3
  78. package/fesm2022/primeng-icons-arrowdown.mjs +3 -3
  79. package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
  80. package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
  81. package/fesm2022/primeng-icons-arrowleft.mjs +3 -3
  82. package/fesm2022/primeng-icons-arrowright.mjs +3 -3
  83. package/fesm2022/primeng-icons-arrowup.mjs +3 -3
  84. package/fesm2022/primeng-icons-ban.mjs +3 -3
  85. package/fesm2022/primeng-icons-bars.mjs +3 -3
  86. package/fesm2022/primeng-icons-baseicon.mjs +6 -6
  87. package/fesm2022/primeng-icons-blank.mjs +3 -3
  88. package/fesm2022/primeng-icons-calendar.mjs +3 -3
  89. package/fesm2022/primeng-icons-caretleft.mjs +3 -3
  90. package/fesm2022/primeng-icons-caretright.mjs +3 -3
  91. package/fesm2022/primeng-icons-check.mjs +3 -3
  92. package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
  93. package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
  94. package/fesm2022/primeng-icons-chevronright.mjs +3 -3
  95. package/fesm2022/primeng-icons-chevronup.mjs +3 -3
  96. package/fesm2022/primeng-icons-exclamationtriangle.mjs +3 -3
  97. package/fesm2022/primeng-icons-eye.mjs +3 -3
  98. package/fesm2022/primeng-icons-eyeslash.mjs +3 -3
  99. package/fesm2022/primeng-icons-filter.mjs +3 -3
  100. package/fesm2022/primeng-icons-filterslash.mjs +3 -3
  101. package/fesm2022/primeng-icons-home.mjs +3 -3
  102. package/fesm2022/primeng-icons-infocircle.mjs +3 -3
  103. package/fesm2022/primeng-icons-minus.mjs +3 -3
  104. package/fesm2022/primeng-icons-pencil.mjs +3 -3
  105. package/fesm2022/primeng-icons-plus.mjs +3 -3
  106. package/fesm2022/primeng-icons-refresh.mjs +3 -3
  107. package/fesm2022/primeng-icons-search.mjs +3 -3
  108. package/fesm2022/primeng-icons-searchminus.mjs +3 -3
  109. package/fesm2022/primeng-icons-searchplus.mjs +3 -3
  110. package/fesm2022/primeng-icons-sortalt.mjs +3 -3
  111. package/fesm2022/primeng-icons-sortamountdown.mjs +3 -3
  112. package/fesm2022/primeng-icons-sortamountupalt.mjs +3 -3
  113. package/fesm2022/primeng-icons-spinner.mjs +3 -3
  114. package/fesm2022/primeng-icons-star.mjs +3 -3
  115. package/fesm2022/primeng-icons-starfill.mjs +3 -3
  116. package/fesm2022/primeng-icons-thlarge.mjs +3 -3
  117. package/fesm2022/primeng-icons-times.mjs +3 -3
  118. package/fesm2022/primeng-icons-timescircle.mjs +3 -3
  119. package/fesm2022/primeng-icons-trash.mjs +3 -3
  120. package/fesm2022/primeng-icons-undo.mjs +3 -3
  121. package/fesm2022/primeng-icons-upload.mjs +3 -3
  122. package/fesm2022/primeng-icons-windowmaximize.mjs +3 -3
  123. package/fesm2022/primeng-icons-windowminimize.mjs +3 -3
  124. package/fesm2022/primeng-iftalabel.mjs +10 -10
  125. package/fesm2022/primeng-image.mjs +10 -10
  126. package/fesm2022/primeng-imagecompare.mjs +10 -10
  127. package/fesm2022/primeng-inplace.mjs +16 -16
  128. package/fesm2022/primeng-inputgroup.mjs +10 -10
  129. package/fesm2022/primeng-inputgroupaddon.mjs +10 -10
  130. package/fesm2022/primeng-inputicon.mjs +10 -10
  131. package/fesm2022/primeng-inputmask.mjs +16 -10
  132. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  133. package/fesm2022/primeng-inputnumber.mjs +28 -10
  134. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  135. package/fesm2022/primeng-inputotp.mjs +10 -10
  136. package/fesm2022/primeng-inputswitch.mjs +10 -10
  137. package/fesm2022/primeng-inputtext.mjs +10 -10
  138. package/fesm2022/primeng-inputtextarea.mjs +10 -10
  139. package/fesm2022/primeng-keyfilter.mjs +7 -7
  140. package/fesm2022/primeng-knob.mjs +10 -10
  141. package/fesm2022/primeng-listbox.mjs +16 -12
  142. package/fesm2022/primeng-listbox.mjs.map +1 -1
  143. package/fesm2022/primeng-megamenu.mjs +13 -17
  144. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  145. package/fesm2022/primeng-menu.mjs +17 -16
  146. package/fesm2022/primeng-menu.mjs.map +1 -1
  147. package/fesm2022/primeng-menubar.mjs +16 -18
  148. package/fesm2022/primeng-menubar.mjs.map +1 -1
  149. package/fesm2022/primeng-message.mjs +10 -10
  150. package/fesm2022/primeng-messages.mjs +10 -10
  151. package/fesm2022/primeng-metergroup.mjs +13 -13
  152. package/fesm2022/primeng-multiselect.mjs +34 -16
  153. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  154. package/fesm2022/primeng-orderlist.mjs +30 -10
  155. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  156. package/fesm2022/primeng-organizationchart.mjs +13 -13
  157. package/fesm2022/primeng-overlay.mjs +23 -19
  158. package/fesm2022/primeng-overlay.mjs.map +1 -1
  159. package/fesm2022/primeng-overlaybadge.mjs +10 -10
  160. package/fesm2022/primeng-overlaypanel.mjs +10 -10
  161. package/fesm2022/primeng-paginator.mjs +11 -11
  162. package/fesm2022/primeng-paginator.mjs.map +1 -1
  163. package/fesm2022/primeng-panel.mjs +10 -10
  164. package/fesm2022/primeng-panelmenu.mjs +16 -16
  165. package/fesm2022/primeng-password.mjs +17 -17
  166. package/fesm2022/primeng-password.mjs.map +1 -1
  167. package/fesm2022/primeng-picklist.mjs +82 -38
  168. package/fesm2022/primeng-picklist.mjs.map +1 -1
  169. package/fesm2022/primeng-popover.mjs +10 -10
  170. package/fesm2022/primeng-progressbar.mjs +10 -10
  171. package/fesm2022/primeng-progressspinner.mjs +14 -14
  172. package/fesm2022/primeng-progressspinner.mjs.map +1 -1
  173. package/fesm2022/primeng-radiobutton.mjs +15 -13
  174. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  175. package/fesm2022/primeng-rating.mjs +10 -10
  176. package/fesm2022/primeng-ripple.mjs +10 -10
  177. package/fesm2022/primeng-scroller.mjs +18 -11
  178. package/fesm2022/primeng-scroller.mjs.map +1 -1
  179. package/fesm2022/primeng-scrollpanel.mjs +10 -10
  180. package/fesm2022/primeng-scrolltop.mjs +10 -10
  181. package/fesm2022/primeng-select.mjs +20 -17
  182. package/fesm2022/primeng-select.mjs.map +1 -1
  183. package/fesm2022/primeng-selectbutton.mjs +21 -14
  184. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  185. package/fesm2022/primeng-sidebar.mjs +10 -10
  186. package/fesm2022/primeng-skeleton.mjs +10 -10
  187. package/fesm2022/primeng-slider.mjs +10 -10
  188. package/fesm2022/primeng-speeddial.mjs +10 -10
  189. package/fesm2022/primeng-splitbutton.mjs +10 -10
  190. package/fesm2022/primeng-splitter.mjs +13 -13
  191. package/fesm2022/primeng-stepper.mjs +30 -30
  192. package/fesm2022/primeng-stepper.mjs.map +1 -1
  193. package/fesm2022/primeng-steps.mjs +10 -10
  194. package/fesm2022/primeng-styleclass.mjs +7 -7
  195. package/fesm2022/primeng-table.mjs +113 -111
  196. package/fesm2022/primeng-table.mjs.map +1 -1
  197. package/fesm2022/primeng-tabmenu.mjs +10 -10
  198. package/fesm2022/primeng-tabs.mjs +30 -28
  199. package/fesm2022/primeng-tabs.mjs.map +1 -1
  200. package/fesm2022/primeng-tabview.mjs +13 -13
  201. package/fesm2022/primeng-tag.mjs +10 -10
  202. package/fesm2022/primeng-terminal.mjs +13 -13
  203. package/fesm2022/primeng-textarea.mjs +15 -11
  204. package/fesm2022/primeng-textarea.mjs.map +1 -1
  205. package/fesm2022/primeng-tieredmenu.mjs +34 -56
  206. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  207. package/fesm2022/primeng-timeline.mjs +10 -10
  208. package/fesm2022/primeng-toast.mjs +13 -13
  209. package/fesm2022/primeng-togglebutton.mjs +131 -146
  210. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  211. package/fesm2022/primeng-toggleswitch.mjs +12 -10
  212. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  213. package/fesm2022/primeng-toolbar.mjs +10 -10
  214. package/fesm2022/primeng-tooltip.mjs +11 -11
  215. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  216. package/fesm2022/primeng-tree.mjs +49 -19
  217. package/fesm2022/primeng-tree.mjs.map +1 -1
  218. package/fesm2022/primeng-treeselect.mjs +17 -11
  219. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  220. package/fesm2022/primeng-treetable.mjs +68 -64
  221. package/fesm2022/primeng-treetable.mjs.map +1 -1
  222. package/fesm2022/primeng-usestyle.mjs +3 -3
  223. package/inputnumber/inputnumber.d.ts +6 -1
  224. package/listbox/listbox.d.ts +1 -1
  225. package/multiselect/multiselect.d.ts +10 -2
  226. package/multiselect/multiselect.interface.d.ts +1 -1
  227. package/package.json +119 -115
  228. package/picklist/picklist.d.ts +1 -1
  229. package/scroller/scroller.d.ts +1 -0
  230. package/select/select.d.ts +1 -0
  231. package/selectbutton/selectbutton.d.ts +3 -1
  232. package/table/table.d.ts +1 -1
  233. package/togglebutton/togglebutton.d.ts +7 -6
  234. package/tree/tree.d.ts +7 -1
  235. package/treetable/treetable.d.ts +2 -2
@@ -303,10 +303,10 @@ class ToastStyle extends BaseStyle {
303
303
  theme = theme;
304
304
  classes = classes;
305
305
  inlineStyles = inlineStyles;
306
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToastStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
307
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToastStyle });
306
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToastStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
307
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToastStyle });
308
308
  }
309
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToastStyle, decorators: [{
309
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToastStyle, decorators: [{
310
310
  type: Injectable
311
311
  }] });
312
312
  /**
@@ -420,8 +420,8 @@ class ToastItem extends BaseComponent {
420
420
  this.clearTimeout();
421
421
  super.ngOnDestroy();
422
422
  }
423
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToastItem, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
424
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.2", type: ToastItem, isStandalone: true, selector: "p-toastItem", inputs: { message: "message", index: ["index", "index", numberAttribute], life: ["life", "life", numberAttribute], template: "template", headlessTemplate: "headlessTemplate", showTransformOptions: "showTransformOptions", hideTransformOptions: "hideTransformOptions", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions" }, outputs: { onClose: "onClose" }, providers: [ToastStyle], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
423
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToastItem, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
424
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: ToastItem, isStandalone: true, selector: "p-toastItem", inputs: { message: "message", index: ["index", "index", numberAttribute], life: ["life", "life", numberAttribute], template: "template", headlessTemplate: "headlessTemplate", showTransformOptions: "showTransformOptions", hideTransformOptions: "hideTransformOptions", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions" }, outputs: { onClose: "onClose" }, providers: [ToastStyle], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
425
425
  <div
426
426
  #container
427
427
  [attr.id]="message?.id"
@@ -514,7 +514,7 @@ class ToastItem extends BaseComponent {
514
514
  ])
515
515
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
516
516
  }
517
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToastItem, decorators: [{
517
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToastItem, decorators: [{
518
518
  type: Component,
519
519
  args: [{
520
520
  selector: 'p-toastItem',
@@ -888,8 +888,8 @@ class Toast extends BaseComponent {
888
888
  this.destroyStyle();
889
889
  super.ngOnDestroy();
890
890
  }
891
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: Toast, deps: null, target: i0.ɵɵFactoryTarget.Component });
892
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.2.2", type: Toast, isStandalone: true, selector: "p-toast", inputs: { key: "key", autoZIndex: ["autoZIndex", "autoZIndex", booleanAttribute], baseZIndex: ["baseZIndex", "baseZIndex", numberAttribute], life: ["life", "life", numberAttribute], style: "style", styleClass: "styleClass", position: "position", preventOpenDuplicates: ["preventOpenDuplicates", "preventOpenDuplicates", booleanAttribute], preventDuplicates: ["preventDuplicates", "preventDuplicates", booleanAttribute], showTransformOptions: "showTransformOptions", hideTransformOptions: "hideTransformOptions", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions", breakpoints: "breakpoints" }, outputs: { onClose: "onClose" }, providers: [ToastStyle], queries: [{ propertyName: "template", first: true, predicate: ["message"], descendants: true }, { propertyName: "headlessTemplate", first: true, predicate: ["headless"], descendants: true }, { propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
891
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: Toast, deps: null, target: i0.ɵɵFactoryTarget.Component });
892
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.2.5", type: Toast, isStandalone: true, selector: "p-toast", inputs: { key: "key", autoZIndex: ["autoZIndex", "autoZIndex", booleanAttribute], baseZIndex: ["baseZIndex", "baseZIndex", numberAttribute], life: ["life", "life", numberAttribute], style: "style", styleClass: "styleClass", position: "position", preventOpenDuplicates: ["preventOpenDuplicates", "preventOpenDuplicates", booleanAttribute], preventDuplicates: ["preventDuplicates", "preventDuplicates", booleanAttribute], showTransformOptions: "showTransformOptions", hideTransformOptions: "hideTransformOptions", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions", breakpoints: "breakpoints" }, outputs: { onClose: "onClose" }, providers: [ToastStyle], queries: [{ propertyName: "template", first: true, predicate: ["message"], descendants: true }, { propertyName: "headlessTemplate", first: true, predicate: ["headless"], descendants: true }, { propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
893
893
  <div #container [ngClass]="cx('root')" [ngStyle]="sx('root')" [style]="style" [class]="styleClass">
894
894
  <p-toastItem
895
895
  *ngFor="let msg of messages; let i = index"
@@ -910,7 +910,7 @@ class Toast extends BaseComponent {
910
910
  </div>
911
911
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ToastItem, selector: "p-toastItem", inputs: ["message", "index", "life", "template", "headlessTemplate", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onClose"] }, { kind: "ngmodule", type: SharedModule }], animations: [trigger('toastAnimation', [transition(':enter, :leave', [query('@*', animateChild())])])], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
912
912
  }
913
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: Toast, decorators: [{
913
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: Toast, decorators: [{
914
914
  type: Component,
915
915
  args: [{
916
916
  selector: 'p-toast',
@@ -990,11 +990,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImpor
990
990
  args: [PrimeTemplate]
991
991
  }] } });
992
992
  class ToastModule {
993
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToastModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
994
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: ToastModule, imports: [Toast, SharedModule], exports: [Toast, SharedModule] });
995
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToastModule, imports: [Toast, SharedModule, SharedModule] });
993
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToastModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
994
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.5", ngImport: i0, type: ToastModule, imports: [Toast, SharedModule], exports: [Toast, SharedModule] });
995
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToastModule, imports: [Toast, SharedModule, SharedModule] });
996
996
  }
997
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToastModule, decorators: [{
997
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToastModule, decorators: [{
998
998
  type: NgModule,
999
999
  args: [{
1000
1000
  imports: [Toast, SharedModule],
@@ -1,24 +1,19 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, forwardRef, EventEmitter, inject, booleanAttribute, numberAttribute, ContentChildren, ContentChild, Output, Input, HostBinding, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
2
+ import { Injectable, forwardRef, EventEmitter, inject, booleanAttribute, numberAttribute, ContentChildren, ContentChild, Output, Input, HostListener, HostBinding, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
3
3
  import { BaseStyle } from 'primeng/base';
4
- import * as i1 from '@angular/common';
4
+ import * as i2 from '@angular/common';
5
5
  import { CommonModule } from '@angular/common';
6
6
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
7
7
  import { SharedModule, PrimeTemplate } from 'primeng/api';
8
8
  import { BaseComponent } from 'primeng/basecomponent';
9
+ import * as i1 from 'primeng/ripple';
9
10
  import { Ripple } from 'primeng/ripple';
10
11
 
11
12
  const theme = ({ dt }) => `
12
- p-togglebutton {
13
- display: inline-flex;
14
- }
15
-
16
13
  .p-togglebutton {
17
14
  display: inline-flex;
18
15
  cursor: pointer;
19
16
  user-select: none;
20
- align-items: center;
21
- justify-content: center;
22
17
  overflow: hidden;
23
18
  position: relative;
24
19
  color: ${dt('togglebutton.color')};
@@ -36,35 +31,16 @@ p-togglebutton {
36
31
  }
37
32
 
38
33
  .p-togglebutton-content {
39
- position: relative;
40
34
  display: inline-flex;
35
+ flex: 1 1 auto;
41
36
  align-items: center;
42
37
  justify-content: center;
43
38
  gap: ${dt('togglebutton.gap')};
44
- }
45
-
46
- .p-togglebutton-label,
47
- .p-togglebutton-icon {
48
- position: relative;
49
- transition: none;
50
- }
51
-
52
- .p-togglebutton::before {
53
- content: "";
39
+ padding: ${dt('togglebutton.content.padding')};
54
40
  background: transparent;
41
+ border-radius: ${dt('togglebutton.content.border.radius')};
55
42
  transition: background ${dt('togglebutton.transition.duration')}, color ${dt('togglebutton.transition.duration')}, border-color ${dt('togglebutton.transition.duration')},
56
43
  outline-color ${dt('togglebutton.transition.duration')}, box-shadow ${dt('togglebutton.transition.duration')};
57
- position: absolute;
58
- inset-inline-start: ${dt('togglebutton.content.left')};
59
- top: ${dt('togglebutton.content.top')};
60
- width: calc(100% - calc(2 * ${dt('togglebutton.content.left')}));
61
- height: calc(100% - calc(2 * ${dt('togglebutton.content.top')}));
62
- border-radius: ${dt('togglebutton.border.radius')};
63
- }
64
-
65
- .p-togglebutton.p-togglebutton-checked::before {
66
- background: ${dt('togglebutton.content.checked.background')};
67
- box-shadow: ${dt('togglebutton.content.checked.shadow')};
68
44
  }
69
45
 
70
46
  .p-togglebutton:not(:disabled):not(.p-togglebutton-checked):hover {
@@ -78,6 +54,11 @@ p-togglebutton {
78
54
  color: ${dt('togglebutton.checked.color')};
79
55
  }
80
56
 
57
+ .p-togglebutton-checked .p-togglebutton-content {
58
+ background: ${dt('togglebutton.content.checked.background')};
59
+ box-shadow: ${dt('togglebutton.content.checked.shadow')};
60
+ }
61
+
81
62
  .p-togglebutton:focus-visible {
82
63
  box-shadow: ${dt('togglebutton.focus.ring.shadow')};
83
64
  outline: ${dt('togglebutton.focus.ring.width')} ${dt('togglebutton.focus.ring.style')} ${dt('togglebutton.focus.ring.color')};
@@ -88,7 +69,7 @@ p-togglebutton {
88
69
  border-color: ${dt('togglebutton.invalid.border.color')};
89
70
  }
90
71
 
91
- .p-togglebutton:disabled {
72
+ .p-togglebutton:disabled:not(.p-togglebutton-checked) {
92
73
  opacity: 1;
93
74
  cursor: default;
94
75
  background: ${dt('togglebutton.disabled.background')};
@@ -96,6 +77,12 @@ p-togglebutton {
96
77
  color: ${dt('togglebutton.disabled.color')};
97
78
  }
98
79
 
80
+ .p-togglebutton-label,
81
+ .p-togglebutton-icon {
82
+ position: relative;
83
+ transition: none;
84
+ }
85
+
99
86
  .p-togglebutton-icon {
100
87
  color: ${dt('togglebutton.icon.color')};
101
88
  }
@@ -117,18 +104,25 @@ p-togglebutton {
117
104
  font-size: ${dt('togglebutton.sm.font.size')};
118
105
  }
119
106
 
107
+ .p-togglebutton-sm .p-togglebutton-content {
108
+ padding: ${dt('togglebutton.content.sm.padding')};
109
+ }
110
+
120
111
  .p-togglebutton-lg {
121
112
  padding: ${dt('togglebutton.lg.padding')};
122
113
  font-size: ${dt('togglebutton.lg.font.size')};
123
114
  }
124
115
 
125
- /* For PrimeNG (iconPos) */
116
+ .p-togglebutton-lg .p-togglebutton-content {
117
+ padding: ${dt('togglebutton.content.lg.padding')};
118
+ }
126
119
 
120
+ /* For PrimeNG (iconPos) */
127
121
  .p-togglebutton-icon-right {
128
122
  order: 1;
129
123
  }
130
124
 
131
- p-togglebutton.ng-invalid.ng-dirty > .p-togglebutton {
125
+ .p-togglebutton.ng-invalid.ng-dirty {
132
126
  border-color: ${dt('togglebutton.invalid.border.color')};
133
127
  }
134
128
  `;
@@ -148,10 +142,10 @@ class ToggleButtonStyle extends BaseStyle {
148
142
  name = 'togglebutton';
149
143
  theme = theme;
150
144
  classes = classes;
151
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToggleButtonStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
152
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToggleButtonStyle });
145
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToggleButtonStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
146
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToggleButtonStyle });
153
147
  }
154
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToggleButtonStyle, decorators: [{
148
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToggleButtonStyle, decorators: [{
155
149
  type: Injectable
156
150
  }] });
157
151
  /**
@@ -189,6 +183,33 @@ const TOGGLEBUTTON_VALUE_ACCESSOR = {
189
183
  * @group Components
190
184
  */
191
185
  class ToggleButton extends BaseComponent {
186
+ get hostClass() {
187
+ return this.styleClass || '';
188
+ }
189
+ onKeyDown(event) {
190
+ switch (event.code) {
191
+ case 'Enter':
192
+ this.toggle(event);
193
+ event.preventDefault();
194
+ break;
195
+ case 'Space':
196
+ this.toggle(event);
197
+ event.preventDefault();
198
+ break;
199
+ }
200
+ }
201
+ toggle(event) {
202
+ if (!this.disabled && !(this.allowEmpty === false && this.checked)) {
203
+ this.checked = !this.checked;
204
+ this.onModelChange(this.checked);
205
+ this.onModelTouched();
206
+ this.onChange.emit({
207
+ originalEvent: event,
208
+ checked: this.checked
209
+ });
210
+ this.cd.markForCheck();
211
+ }
212
+ }
192
213
  /**
193
214
  * Label for the on state.
194
215
  * @group Props
@@ -234,9 +255,6 @@ class ToggleButton extends BaseComponent {
234
255
  * @group Props
235
256
  */
236
257
  styleClass;
237
- get hostClass() {
238
- return this.styleClass || '';
239
- }
240
258
  /**
241
259
  * Identifier of the focus input to match a label defined for the component.
242
260
  * @group Props
@@ -288,30 +306,6 @@ class ToggleButton extends BaseComponent {
288
306
  onModelChange = () => { };
289
307
  onModelTouched = () => { };
290
308
  _componentStyle = inject(ToggleButtonStyle);
291
- toggle(event) {
292
- if (!this.disabled && !(this.allowEmpty === false && this.checked)) {
293
- this.checked = !this.checked;
294
- this.onModelChange(this.checked);
295
- this.onModelTouched();
296
- this.onChange.emit({
297
- originalEvent: event,
298
- checked: this.checked
299
- });
300
- this.cd.markForCheck();
301
- }
302
- }
303
- onKeyDown(event) {
304
- switch (event.code) {
305
- case 'Enter':
306
- this.toggle(event);
307
- event.preventDefault();
308
- break;
309
- case 'Space':
310
- this.toggle(event);
311
- event.preventDefault();
312
- break;
313
- }
314
- }
315
309
  onBlur() {
316
310
  this.onModelTouched();
317
311
  }
@@ -355,92 +349,86 @@ class ToggleButton extends BaseComponent {
355
349
  }
356
350
  });
357
351
  }
358
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToggleButton, deps: null, target: i0.ɵɵFactoryTarget.Component });
359
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.2", type: ToggleButton, isStandalone: true, selector: "p-toggleButton, p-togglebutton, p-toggle-button", inputs: { onLabel: "onLabel", offLabel: "offLabel", onIcon: "onIcon", offIcon: "offIcon", ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", disabled: ["disabled", "disabled", booleanAttribute], style: "style", styleClass: "styleClass", inputId: "inputId", tabindex: ["tabindex", "tabindex", numberAttribute], size: "size", iconPos: "iconPos", autofocus: ["autofocus", "autofocus", booleanAttribute], allowEmpty: "allowEmpty" }, outputs: { onChange: "onChange" }, host: { properties: { "class": "this.hostClass" } }, providers: [TOGGLEBUTTON_VALUE_ACCESSOR, ToggleButtonStyle], queries: [{ propertyName: "iconTemplate", first: true, predicate: ["icon"] }, { propertyName: "contentTemplate", first: true, predicate: ["content"] }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, ngImport: i0, template: `
360
- <button
361
- pRipple
362
- type="button"
363
- [ngClass]="cx('root')"
364
- [class]="styleClass"
365
- [tabindex]="tabindex"
366
- [disabled]="disabled"
367
- (click)="toggle($event)"
368
- [attr.aria-labelledby]="ariaLabelledBy"
369
- [attr.aria-pressed]="checked"
370
- [attr.data-p-checked]="active"
371
- [attr.data-p-disabled]="disabled"
372
- >
373
- <span [ngClass]="cx('content')">
374
- <ng-container *ngTemplateOutlet="contentTemplate || _contentTemplate; context: { $implicit: checked }"></ng-container>
375
- @if (!contentTemplate) {
376
- @if (!iconTemplate) {
377
- @if (onIcon || offIcon) {
378
- <span
379
- [class]="checked ? this.onIcon : this.offIcon"
380
- [ngClass]="{
381
- 'p-togglebutton-icon': true,
382
- 'p-togglebutton-icon-left': iconPos === 'left',
383
- 'p-togglebutton-icon-right': iconPos === 'right'
384
- }"
385
- [attr.data-pc-section]="'icon'"
386
- ></span>
387
- }
388
- } @else {
389
- <ng-container *ngTemplateOutlet="iconTemplate || _iconTemplate; context: { $implicit: checked }"></ng-container>
390
- }
391
- <span [ngClass]="cx('label')" [attr.data-pc-section]="'label'">{{ checked ? (hasOnLabel ? onLabel : ' ') : hasOffLabel ? offLabel : ' ' }}</span>
352
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToggleButton, deps: null, target: i0.ɵɵFactoryTarget.Component });
353
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: ToggleButton, isStandalone: true, selector: "p-toggleButton, p-togglebutton, p-toggle-button", inputs: { onLabel: "onLabel", offLabel: "offLabel", onIcon: "onIcon", offIcon: "offIcon", ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", disabled: ["disabled", "disabled", booleanAttribute], style: "style", styleClass: "styleClass", inputId: "inputId", tabindex: ["tabindex", "tabindex", numberAttribute], size: "size", iconPos: "iconPos", autofocus: ["autofocus", "autofocus", booleanAttribute], allowEmpty: "allowEmpty" }, outputs: { onChange: "onChange" }, host: { listeners: { "keydown": "onKeyDown($event)", "click": "toggle($event)" }, properties: { "tabindex": "tabindex", "disabled": "disabled", "attr.aria-labelledby": "ariaLabelledBy", "attr.aria-pressed": "checked", "attr.data-p-checked": "active", "attr.data-p-disabled": "disabled", "attr.type": "\"button\"", "class.p-togglebutton": "true", "class.p-togglebutton-checked": "checked", "class.p-disabled": "disabled", "class.p-togglebutton-sm": "size === \"small\"", "class.p-inputfield-sm": "size === \"small\"", "class.p-togglebutton-lg": "size === \"large\"", "class.p-inputfield-lg": "size === \"large\"", "class": "this.hostClass" } }, providers: [TOGGLEBUTTON_VALUE_ACCESSOR, ToggleButtonStyle], queries: [{ propertyName: "iconTemplate", first: true, predicate: ["icon"] }, { propertyName: "contentTemplate", first: true, predicate: ["content"] }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, hostDirectives: [{ directive: i1.Ripple }], ngImport: i0, template: `<span [ngClass]="cx('content')">
354
+ <ng-container *ngTemplateOutlet="contentTemplate || _contentTemplate; context: { $implicit: checked }"></ng-container>
355
+ @if (!contentTemplate) {
356
+ @if (!iconTemplate) {
357
+ @if (onIcon || offIcon) {
358
+ <span
359
+ [class]="checked ? this.onIcon : this.offIcon"
360
+ [ngClass]="{
361
+ 'p-togglebutton-icon': true,
362
+ 'p-togglebutton-icon-left': iconPos === 'left',
363
+ 'p-togglebutton-icon-right': iconPos === 'right'
364
+ }"
365
+ [attr.data-pc-section]="'icon'"
366
+ ></span>
392
367
  }
393
- </span>
394
- </button>
395
- `, isInline: true, dependencies: [{ kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: SharedModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
368
+ } @else {
369
+ <ng-container *ngTemplateOutlet="iconTemplate || _iconTemplate; context: { $implicit: checked }"></ng-container>
370
+ }
371
+ <span [ngClass]="cx('label')" [attr.data-pc-section]="'label'">{{ checked ? (hasOnLabel ? onLabel : ' ') : hasOffLabel ? offLabel : ' ' }}</span>
372
+ }
373
+ </span>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: SharedModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
396
374
  }
397
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToggleButton, decorators: [{
375
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToggleButton, decorators: [{
398
376
  type: Component,
399
377
  args: [{
400
378
  selector: 'p-toggleButton, p-togglebutton, p-toggle-button',
401
379
  standalone: true,
402
- imports: [Ripple, CommonModule, SharedModule],
403
- template: `
404
- <button
405
- pRipple
406
- type="button"
407
- [ngClass]="cx('root')"
408
- [class]="styleClass"
409
- [tabindex]="tabindex"
410
- [disabled]="disabled"
411
- (click)="toggle($event)"
412
- [attr.aria-labelledby]="ariaLabelledBy"
413
- [attr.aria-pressed]="checked"
414
- [attr.data-p-checked]="active"
415
- [attr.data-p-disabled]="disabled"
416
- >
417
- <span [ngClass]="cx('content')">
418
- <ng-container *ngTemplateOutlet="contentTemplate || _contentTemplate; context: { $implicit: checked }"></ng-container>
419
- @if (!contentTemplate) {
420
- @if (!iconTemplate) {
421
- @if (onIcon || offIcon) {
422
- <span
423
- [class]="checked ? this.onIcon : this.offIcon"
424
- [ngClass]="{
425
- 'p-togglebutton-icon': true,
426
- 'p-togglebutton-icon-left': iconPos === 'left',
427
- 'p-togglebutton-icon-right': iconPos === 'right'
428
- }"
429
- [attr.data-pc-section]="'icon'"
430
- ></span>
431
- }
432
- } @else {
433
- <ng-container *ngTemplateOutlet="iconTemplate || _iconTemplate; context: { $implicit: checked }"></ng-container>
434
- }
435
- <span [ngClass]="cx('label')" [attr.data-pc-section]="'label'">{{ checked ? (hasOnLabel ? onLabel : ' ') : hasOffLabel ? offLabel : ' ' }}</span>
380
+ imports: [CommonModule, SharedModule],
381
+ hostDirectives: [{ directive: Ripple }],
382
+ host: {
383
+ '[tabindex]': 'tabindex',
384
+ '[disabled]': 'disabled',
385
+ '[attr.aria-labelledby]': 'ariaLabelledBy',
386
+ '[attr.aria-pressed]': 'checked',
387
+ '[attr.data-p-checked]': 'active',
388
+ '[attr.data-p-disabled]': 'disabled',
389
+ '[attr.type]': '"button"',
390
+ '[class.p-togglebutton]': 'true',
391
+ '[class.p-togglebutton-checked]': 'checked',
392
+ '[class.p-disabled]': 'disabled',
393
+ '[class.p-togglebutton-sm]': 'size === "small"',
394
+ '[class.p-inputfield-sm]': 'size === "small"',
395
+ '[class.p-togglebutton-lg]': 'size === "large"',
396
+ '[class.p-inputfield-lg]': 'size === "large"'
397
+ },
398
+ template: `<span [ngClass]="cx('content')">
399
+ <ng-container *ngTemplateOutlet="contentTemplate || _contentTemplate; context: { $implicit: checked }"></ng-container>
400
+ @if (!contentTemplate) {
401
+ @if (!iconTemplate) {
402
+ @if (onIcon || offIcon) {
403
+ <span
404
+ [class]="checked ? this.onIcon : this.offIcon"
405
+ [ngClass]="{
406
+ 'p-togglebutton-icon': true,
407
+ 'p-togglebutton-icon-left': iconPos === 'left',
408
+ 'p-togglebutton-icon-right': iconPos === 'right'
409
+ }"
410
+ [attr.data-pc-section]="'icon'"
411
+ ></span>
436
412
  }
437
- </span>
438
- </button>
439
- `,
413
+ } @else {
414
+ <ng-container *ngTemplateOutlet="iconTemplate || _iconTemplate; context: { $implicit: checked }"></ng-container>
415
+ }
416
+ <span [ngClass]="cx('label')" [attr.data-pc-section]="'label'">{{ checked ? (hasOnLabel ? onLabel : ' ') : hasOffLabel ? offLabel : ' ' }}</span>
417
+ }
418
+ </span>`,
440
419
  providers: [TOGGLEBUTTON_VALUE_ACCESSOR, ToggleButtonStyle],
441
420
  changeDetection: ChangeDetectionStrategy.OnPush
442
421
  }]
443
- }], propDecorators: { onLabel: [{
422
+ }], propDecorators: { hostClass: [{
423
+ type: HostBinding,
424
+ args: ['class']
425
+ }], onKeyDown: [{
426
+ type: HostListener,
427
+ args: ['keydown', ['$event']]
428
+ }], toggle: [{
429
+ type: HostListener,
430
+ args: ['click', ['$event']]
431
+ }], onLabel: [{
444
432
  type: Input
445
433
  }], offLabel: [{
446
434
  type: Input
@@ -459,9 +447,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImpor
459
447
  type: Input
460
448
  }], styleClass: [{
461
449
  type: Input
462
- }], hostClass: [{
463
- type: HostBinding,
464
- args: ['class']
465
450
  }], inputId: [{
466
451
  type: Input
467
452
  }], tabindex: [{
@@ -489,11 +474,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImpor
489
474
  args: [PrimeTemplate]
490
475
  }] } });
491
476
  class ToggleButtonModule {
492
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToggleButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
493
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.2", ngImport: i0, type: ToggleButtonModule, imports: [ToggleButton, SharedModule], exports: [ToggleButton, SharedModule] });
494
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToggleButtonModule, imports: [ToggleButton, SharedModule, SharedModule] });
477
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToggleButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
478
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.5", ngImport: i0, type: ToggleButtonModule, imports: [ToggleButton, SharedModule], exports: [ToggleButton, SharedModule] });
479
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToggleButtonModule, imports: [ToggleButton, SharedModule, SharedModule] });
495
480
  }
496
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.2", ngImport: i0, type: ToggleButtonModule, decorators: [{
481
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ToggleButtonModule, decorators: [{
497
482
  type: NgModule,
498
483
  args: [{
499
484
  imports: [ToggleButton, SharedModule],
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-togglebutton.mjs","sources":["../../src/togglebutton/style/togglebuttonstyle.ts","../../src/togglebutton/togglebutton.ts","../../src/togglebutton/primeng-togglebutton.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\np-togglebutton {\n display: inline-flex;\n}\n\n.p-togglebutton {\n display: inline-flex;\n cursor: pointer;\n user-select: none;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n color: ${dt('togglebutton.color')};\n background: ${dt('togglebutton.background')};\n border: 1px solid ${dt('togglebutton.border.color')};\n padding: ${dt('togglebutton.padding')};\n font-size: 1rem;\n font-family: inherit;\n font-feature-settings: inherit;\n transition: background ${dt('togglebutton.transition.duration')}, color ${dt('togglebutton.transition.duration')}, border-color ${dt('togglebutton.transition.duration')},\n outline-color ${dt('togglebutton.transition.duration')}, box-shadow ${dt('togglebutton.transition.duration')};\n border-radius: ${dt('togglebutton.border.radius')};\n outline-color: transparent;\n font-weight: ${dt('togglebutton.font.weight')};\n}\n\n.p-togglebutton-content {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: ${dt('togglebutton.gap')};\n}\n\n.p-togglebutton-label,\n.p-togglebutton-icon {\n position: relative;\n transition: none;\n}\n\n.p-togglebutton::before {\n content: \"\";\n background: transparent;\n transition: background ${dt('togglebutton.transition.duration')}, color ${dt('togglebutton.transition.duration')}, border-color ${dt('togglebutton.transition.duration')},\n outline-color ${dt('togglebutton.transition.duration')}, box-shadow ${dt('togglebutton.transition.duration')};\n position: absolute;\n inset-inline-start: ${dt('togglebutton.content.left')};\n top: ${dt('togglebutton.content.top')};\n width: calc(100% - calc(2 * ${dt('togglebutton.content.left')}));\n height: calc(100% - calc(2 * ${dt('togglebutton.content.top')}));\n border-radius: ${dt('togglebutton.border.radius')};\n}\n\n.p-togglebutton.p-togglebutton-checked::before {\n background: ${dt('togglebutton.content.checked.background')};\n box-shadow: ${dt('togglebutton.content.checked.shadow')};\n}\n\n.p-togglebutton:not(:disabled):not(.p-togglebutton-checked):hover {\n background: ${dt('togglebutton.hover.background')};\n color: ${dt('togglebutton.hover.color')};\n}\n\n.p-togglebutton.p-togglebutton-checked {\n background: ${dt('togglebutton.checked.background')};\n border-color: ${dt('togglebutton.checked.border.color')};\n color: ${dt('togglebutton.checked.color')};\n}\n\n.p-togglebutton:focus-visible {\n box-shadow: ${dt('togglebutton.focus.ring.shadow')};\n outline: ${dt('togglebutton.focus.ring.width')} ${dt('togglebutton.focus.ring.style')} ${dt('togglebutton.focus.ring.color')};\n outline-offset: ${dt('togglebutton.focus.ring.offset')};\n}\n\n.p-togglebutton.p-invalid {\n border-color: ${dt('togglebutton.invalid.border.color')};\n}\n\n.p-togglebutton:disabled {\n opacity: 1;\n cursor: default;\n background: ${dt('togglebutton.disabled.background')};\n border-color: ${dt('togglebutton.disabled.border.color')};\n color: ${dt('togglebutton.disabled.color')};\n}\n\n.p-togglebutton-icon {\n color: ${dt('togglebutton.icon.color')};\n}\n\n.p-togglebutton:not(:disabled):not(.p-togglebutton-checked):hover .p-togglebutton-icon {\n color: ${dt('togglebutton.icon.hover.color')};\n}\n\n.p-togglebutton.p-togglebutton-checked .p-togglebutton-icon {\n color: ${dt('togglebutton.icon.checked.color')};\n}\n\n.p-togglebutton:disabled .p-togglebutton-icon {\n color: ${dt('togglebutton.icon.disabled.color')};\n}\n\n.p-togglebutton-sm {\n padding: ${dt('togglebutton.sm.padding')};\n font-size: ${dt('togglebutton.sm.font.size')};\n}\n\n.p-togglebutton-lg {\n padding: ${dt('togglebutton.lg.padding')};\n font-size: ${dt('togglebutton.lg.font.size')};\n}\n\n/* For PrimeNG (iconPos) */\n\n.p-togglebutton-icon-right {\n order: 1;\n}\n\np-togglebutton.ng-invalid.ng-dirty > .p-togglebutton {\n border-color: ${dt('togglebutton.invalid.border.color')};\n}\n`;\n\nconst classes = {\n root: ({ instance }) => ({\n 'p-togglebutton p-component': true,\n 'p-togglebutton-checked': instance.checked,\n 'p-disabled': instance.disabled,\n 'p-togglebutton-sm p-inputfield-sm': instance.size === 'small',\n 'p-togglebutton-lg p-inputfield-lg': instance.size === 'large'\n }),\n content: 'p-togglebutton-content',\n icon: 'p-togglebutton-icon',\n label: 'p-togglebutton-label'\n};\n\n@Injectable()\nexport class ToggleButtonStyle extends BaseStyle {\n name = 'togglebutton';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * ToggleButton is used to select a boolean value using a button.\n *\n * [Live Demo](https://www.primeng.org/togglebutton/)\n *\n * @module togglebuttonstyle\n *\n */\nexport enum ToggleButtonClasses {\n /**\n * Class name of the root element\n */\n root = 'p-togglebutton',\n /**\n * Class name of the icon element\n */\n icon = 'p-togglebutton-icon',\n /**\n * Class name of the label element\n */\n label = 'p-togglebutton-label'\n}\n\nexport interface ToggleButtonStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport { AfterContentInit, booleanAttribute, ChangeDetectionStrategy, Component, ContentChild, ContentChildren, EventEmitter, forwardRef, HostBinding, inject, Input, NgModule, numberAttribute, Output, QueryList, TemplateRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Ripple } from 'primeng/ripple';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { ToggleButtonStyle } from './style/togglebuttonstyle';\nimport { ToggleButtonChangeEvent } from './togglebutton.interface';\n\nexport const TOGGLEBUTTON_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ToggleButton),\n multi: true\n};\n/**\n * ToggleButton is used to select a boolean value using a button.\n * @group Components\n */\n@Component({\n selector: 'p-toggleButton, p-togglebutton, p-toggle-button',\n standalone: true,\n imports: [Ripple, CommonModule, SharedModule],\n template: `\n <button\n pRipple\n type=\"button\"\n [ngClass]=\"cx('root')\"\n [class]=\"styleClass\"\n [tabindex]=\"tabindex\"\n [disabled]=\"disabled\"\n (click)=\"toggle($event)\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-pressed]=\"checked\"\n [attr.data-p-checked]=\"active\"\n [attr.data-p-disabled]=\"disabled\"\n >\n <span [ngClass]=\"cx('content')\">\n <ng-container *ngTemplateOutlet=\"contentTemplate || _contentTemplate; context: { $implicit: checked }\"></ng-container>\n @if (!contentTemplate) {\n @if (!iconTemplate) {\n @if (onIcon || offIcon) {\n <span\n [class]=\"checked ? this.onIcon : this.offIcon\"\n [ngClass]=\"{\n 'p-togglebutton-icon': true,\n 'p-togglebutton-icon-left': iconPos === 'left',\n 'p-togglebutton-icon-right': iconPos === 'right'\n }\"\n [attr.data-pc-section]=\"'icon'\"\n ></span>\n }\n } @else {\n <ng-container *ngTemplateOutlet=\"iconTemplate || _iconTemplate; context: { $implicit: checked }\"></ng-container>\n }\n <span [ngClass]=\"cx('label')\" [attr.data-pc-section]=\"'label'\">{{ checked ? (hasOnLabel ? onLabel : ' ') : hasOffLabel ? offLabel : ' ' }}</span>\n }\n </span>\n </button>\n `,\n providers: [TOGGLEBUTTON_VALUE_ACCESSOR, ToggleButtonStyle],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ToggleButton extends BaseComponent implements AfterContentInit, ControlValueAccessor {\n /**\n * Label for the on state.\n * @group Props\n */\n @Input() onLabel: string = 'Yes';\n /**\n * Label for the off state.\n * @group Props\n */\n @Input() offLabel: string = 'No';\n /**\n * Icon for the on state.\n * @group Props\n */\n @Input() onIcon: string | undefined;\n /**\n * Icon for the off state.\n * @group Props\n */\n @Input() offIcon: string | undefined;\n /**\n * Defines a string that labels the input for accessibility.\n * @group Props\n */\n @Input() ariaLabel: string | undefined;\n /**\n * Establishes relationships between the component and label(s) where its value should be one or more element IDs.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * When present, it specifies that the element should be disabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) disabled: boolean | undefined;\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() style: any;\n /**\n * Style class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n\n @HostBinding('class') get hostClass() {\n return this.styleClass || '';\n }\n /**\n * Identifier of the focus input to match a label defined for the component.\n * @group Props\n */\n @Input() inputId: string | undefined;\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input({ transform: numberAttribute }) tabindex: number | undefined = 0;\n /**\n * Defines the size of the component.\n * @group Props\n */\n @Input() size: 'large' | 'small';\n /**\n * Position of the icon.\n * @group Props\n */\n @Input() iconPos: 'left' | 'right' = 'left';\n /**\n * When present, it specifies that the component should automatically get focus on load.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autofocus: boolean | undefined;\n /**\n * Whether selection can not be cleared.\n * @group Props\n */\n @Input() allowEmpty: boolean | undefined;\n /**\n * Callback to invoke on value change.\n * @param {ToggleButtonChangeEvent} event - Custom change event.\n * @group Emits\n */\n @Output() onChange: EventEmitter<ToggleButtonChangeEvent> = new EventEmitter<ToggleButtonChangeEvent>();\n /**\n * Custom icon template.\n * @group Templates\n */\n @ContentChild('icon', { descendants: false }) iconTemplate: Nullable<TemplateRef<any>>;\n /**\n * Custom content template.\n * @group Templates\n */\n @ContentChild('content', { descendants: false }) contentTemplate: Nullable<TemplateRef<any>>;\n\n @ContentChildren(PrimeTemplate) templates!: QueryList<PrimeTemplate>;\n\n checked: boolean = false;\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n _componentStyle = inject(ToggleButtonStyle);\n\n toggle(event: Event) {\n if (!this.disabled && !(this.allowEmpty === false && this.checked)) {\n this.checked = !this.checked;\n this.onModelChange(this.checked);\n this.onModelTouched();\n this.onChange.emit({\n originalEvent: event,\n checked: this.checked\n });\n\n this.cd.markForCheck();\n }\n }\n\n onKeyDown(event: KeyboardEvent) {\n switch (event.code) {\n case 'Enter':\n this.toggle(event);\n event.preventDefault();\n break;\n case 'Space':\n this.toggle(event);\n event.preventDefault();\n break;\n }\n }\n\n onBlur() {\n this.onModelTouched();\n }\n\n writeValue(value: any): void {\n this.checked = value;\n this.cd.markForCheck();\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n\n get hasOnLabel(): boolean {\n return (this.onLabel && this.onLabel.length > 0) as boolean;\n }\n\n get hasOffLabel(): boolean {\n return (this.onLabel && this.onLabel.length > 0) as boolean;\n }\n\n get active() {\n return this.checked === true;\n }\n\n _iconTemplate: TemplateRef<any> | undefined;\n\n _contentTemplate: TemplateRef<any> | undefined;\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'icon':\n this._iconTemplate = item.template;\n break;\n case 'content':\n this._contentTemplate = item.template;\n break;\n default:\n this._contentTemplate = item.template;\n break;\n }\n });\n }\n}\n\n@NgModule({\n imports: [ToggleButton, SharedModule],\n exports: [ToggleButton, SharedModule]\n})\nexport class ToggleButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"primeng-togglebutton.mjs","sources":["../../src/togglebutton/style/togglebuttonstyle.ts","../../src/togglebutton/togglebutton.ts","../../src/togglebutton/primeng-togglebutton.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-togglebutton {\n display: inline-flex;\n cursor: pointer;\n user-select: none;\n overflow: hidden;\n position: relative;\n color: ${dt('togglebutton.color')};\n background: ${dt('togglebutton.background')};\n border: 1px solid ${dt('togglebutton.border.color')};\n padding: ${dt('togglebutton.padding')};\n font-size: 1rem;\n font-family: inherit;\n font-feature-settings: inherit;\n transition: background ${dt('togglebutton.transition.duration')}, color ${dt('togglebutton.transition.duration')}, border-color ${dt('togglebutton.transition.duration')},\n outline-color ${dt('togglebutton.transition.duration')}, box-shadow ${dt('togglebutton.transition.duration')};\n border-radius: ${dt('togglebutton.border.radius')};\n outline-color: transparent;\n font-weight: ${dt('togglebutton.font.weight')};\n}\n\n.p-togglebutton-content {\n display: inline-flex;\n flex: 1 1 auto;\n align-items: center;\n justify-content: center;\n gap: ${dt('togglebutton.gap')};\n padding: ${dt('togglebutton.content.padding')};\n background: transparent;\n border-radius: ${dt('togglebutton.content.border.radius')};\n transition: background ${dt('togglebutton.transition.duration')}, color ${dt('togglebutton.transition.duration')}, border-color ${dt('togglebutton.transition.duration')},\n outline-color ${dt('togglebutton.transition.duration')}, box-shadow ${dt('togglebutton.transition.duration')};\n}\n\n.p-togglebutton:not(:disabled):not(.p-togglebutton-checked):hover {\n background: ${dt('togglebutton.hover.background')};\n color: ${dt('togglebutton.hover.color')};\n}\n\n.p-togglebutton.p-togglebutton-checked {\n background: ${dt('togglebutton.checked.background')};\n border-color: ${dt('togglebutton.checked.border.color')};\n color: ${dt('togglebutton.checked.color')};\n}\n\n.p-togglebutton-checked .p-togglebutton-content {\n background: ${dt('togglebutton.content.checked.background')};\n box-shadow: ${dt('togglebutton.content.checked.shadow')};\n}\n\n.p-togglebutton:focus-visible {\n box-shadow: ${dt('togglebutton.focus.ring.shadow')};\n outline: ${dt('togglebutton.focus.ring.width')} ${dt('togglebutton.focus.ring.style')} ${dt('togglebutton.focus.ring.color')};\n outline-offset: ${dt('togglebutton.focus.ring.offset')};\n}\n\n.p-togglebutton.p-invalid {\n border-color: ${dt('togglebutton.invalid.border.color')};\n}\n\n.p-togglebutton:disabled:not(.p-togglebutton-checked) {\n opacity: 1;\n cursor: default;\n background: ${dt('togglebutton.disabled.background')};\n border-color: ${dt('togglebutton.disabled.border.color')};\n color: ${dt('togglebutton.disabled.color')};\n}\n\n.p-togglebutton-label,\n.p-togglebutton-icon {\n position: relative;\n transition: none;\n}\n\n.p-togglebutton-icon {\n color: ${dt('togglebutton.icon.color')};\n}\n\n.p-togglebutton:not(:disabled):not(.p-togglebutton-checked):hover .p-togglebutton-icon {\n color: ${dt('togglebutton.icon.hover.color')};\n}\n\n.p-togglebutton.p-togglebutton-checked .p-togglebutton-icon {\n color: ${dt('togglebutton.icon.checked.color')};\n}\n\n.p-togglebutton:disabled .p-togglebutton-icon {\n color: ${dt('togglebutton.icon.disabled.color')};\n}\n\n.p-togglebutton-sm {\n padding: ${dt('togglebutton.sm.padding')};\n font-size: ${dt('togglebutton.sm.font.size')};\n}\n\n.p-togglebutton-sm .p-togglebutton-content {\n padding: ${dt('togglebutton.content.sm.padding')};\n}\n\n.p-togglebutton-lg {\n padding: ${dt('togglebutton.lg.padding')};\n font-size: ${dt('togglebutton.lg.font.size')};\n}\n\n.p-togglebutton-lg .p-togglebutton-content {\n padding: ${dt('togglebutton.content.lg.padding')};\n}\n\n/* For PrimeNG (iconPos) */\n.p-togglebutton-icon-right {\n order: 1;\n}\n\n.p-togglebutton.ng-invalid.ng-dirty {\n border-color: ${dt('togglebutton.invalid.border.color')};\n}\n`;\n\nconst classes = {\n root: ({ instance }) => ({\n 'p-togglebutton p-component': true,\n 'p-togglebutton-checked': instance.checked,\n 'p-disabled': instance.disabled,\n 'p-togglebutton-sm p-inputfield-sm': instance.size === 'small',\n 'p-togglebutton-lg p-inputfield-lg': instance.size === 'large'\n }),\n content: 'p-togglebutton-content',\n icon: 'p-togglebutton-icon',\n label: 'p-togglebutton-label'\n};\n\n@Injectable()\nexport class ToggleButtonStyle extends BaseStyle {\n name = 'togglebutton';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * ToggleButton is used to select a boolean value using a button.\n *\n * [Live Demo](https://www.primeng.org/togglebutton/)\n *\n * @module togglebuttonstyle\n *\n */\nexport enum ToggleButtonClasses {\n /**\n * Class name of the root element\n */\n root = 'p-togglebutton',\n /**\n * Class name of the icon element\n */\n icon = 'p-togglebutton-icon',\n /**\n * Class name of the label element\n */\n label = 'p-togglebutton-label'\n}\n\nexport interface ToggleButtonStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport {\n AfterContentInit,\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n inject,\n Input,\n NgModule,\n numberAttribute,\n Output,\n QueryList,\n TemplateRef\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Ripple } from 'primeng/ripple';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { ToggleButtonStyle } from './style/togglebuttonstyle';\nimport { ToggleButtonChangeEvent } from './togglebutton.interface';\n\nexport const TOGGLEBUTTON_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ToggleButton),\n multi: true\n};\n/**\n * ToggleButton is used to select a boolean value using a button.\n * @group Components\n */\n@Component({\n selector: 'p-toggleButton, p-togglebutton, p-toggle-button',\n standalone: true,\n imports: [CommonModule, SharedModule],\n hostDirectives: [{ directive: Ripple }],\n host: {\n '[tabindex]': 'tabindex',\n '[disabled]': 'disabled',\n '[attr.aria-labelledby]': 'ariaLabelledBy',\n '[attr.aria-pressed]': 'checked',\n '[attr.data-p-checked]': 'active',\n '[attr.data-p-disabled]': 'disabled',\n '[attr.type]': '\"button\"',\n '[class.p-togglebutton]': 'true',\n '[class.p-togglebutton-checked]': 'checked',\n '[class.p-disabled]': 'disabled',\n '[class.p-togglebutton-sm]': 'size === \"small\"',\n '[class.p-inputfield-sm]': 'size === \"small\"',\n '[class.p-togglebutton-lg]': 'size === \"large\"',\n '[class.p-inputfield-lg]': 'size === \"large\"'\n },\n template: `<span [ngClass]=\"cx('content')\">\n <ng-container *ngTemplateOutlet=\"contentTemplate || _contentTemplate; context: { $implicit: checked }\"></ng-container>\n @if (!contentTemplate) {\n @if (!iconTemplate) {\n @if (onIcon || offIcon) {\n <span\n [class]=\"checked ? this.onIcon : this.offIcon\"\n [ngClass]=\"{\n 'p-togglebutton-icon': true,\n 'p-togglebutton-icon-left': iconPos === 'left',\n 'p-togglebutton-icon-right': iconPos === 'right'\n }\"\n [attr.data-pc-section]=\"'icon'\"\n ></span>\n }\n } @else {\n <ng-container *ngTemplateOutlet=\"iconTemplate || _iconTemplate; context: { $implicit: checked }\"></ng-container>\n }\n <span [ngClass]=\"cx('label')\" [attr.data-pc-section]=\"'label'\">{{ checked ? (hasOnLabel ? onLabel : ' ') : hasOffLabel ? offLabel : ' ' }}</span>\n }\n </span>`,\n providers: [TOGGLEBUTTON_VALUE_ACCESSOR, ToggleButtonStyle],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ToggleButton extends BaseComponent implements AfterContentInit, ControlValueAccessor {\n @HostBinding('class') get hostClass() {\n return this.styleClass || '';\n }\n\n @HostListener('keydown', ['$event']) onKeyDown(event: KeyboardEvent) {\n switch (event.code) {\n case 'Enter':\n this.toggle(event);\n event.preventDefault();\n break;\n case 'Space':\n this.toggle(event);\n event.preventDefault();\n break;\n }\n }\n\n @HostListener('click', ['$event']) toggle(event: Event) {\n if (!this.disabled && !(this.allowEmpty === false && this.checked)) {\n this.checked = !this.checked;\n this.onModelChange(this.checked);\n this.onModelTouched();\n this.onChange.emit({\n originalEvent: event,\n checked: this.checked\n });\n\n this.cd.markForCheck();\n }\n }\n /**\n * Label for the on state.\n * @group Props\n */\n @Input() onLabel: string = 'Yes';\n /**\n * Label for the off state.\n * @group Props\n */\n @Input() offLabel: string = 'No';\n /**\n * Icon for the on state.\n * @group Props\n */\n @Input() onIcon: string | undefined;\n /**\n * Icon for the off state.\n * @group Props\n */\n @Input() offIcon: string | undefined;\n /**\n * Defines a string that labels the input for accessibility.\n * @group Props\n */\n @Input() ariaLabel: string | undefined;\n /**\n * Establishes relationships between the component and label(s) where its value should be one or more element IDs.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * When present, it specifies that the element should be disabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) disabled: boolean | undefined;\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() style: any;\n /**\n * Style class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Identifier of the focus input to match a label defined for the component.\n * @group Props\n */\n @Input() inputId: string | undefined;\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input({ transform: numberAttribute }) tabindex: number | undefined = 0;\n /**\n * Defines the size of the component.\n * @group Props\n */\n @Input() size: 'large' | 'small';\n /**\n * Position of the icon.\n * @group Props\n */\n @Input() iconPos: 'left' | 'right' = 'left';\n /**\n * When present, it specifies that the component should automatically get focus on load.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autofocus: boolean | undefined;\n /**\n * Whether selection can not be cleared.\n * @group Props\n */\n @Input() allowEmpty: boolean | undefined;\n /**\n * Callback to invoke on value change.\n * @param {ToggleButtonChangeEvent} event - Custom change event.\n * @group Emits\n */\n @Output() onChange: EventEmitter<ToggleButtonChangeEvent> = new EventEmitter<ToggleButtonChangeEvent>();\n /**\n * Custom icon template.\n * @group Templates\n */\n @ContentChild('icon', { descendants: false }) iconTemplate: Nullable<TemplateRef<any>>;\n /**\n * Custom content template.\n * @group Templates\n */\n @ContentChild('content', { descendants: false }) contentTemplate: Nullable<TemplateRef<any>>;\n\n @ContentChildren(PrimeTemplate) templates!: QueryList<PrimeTemplate>;\n\n checked: boolean = false;\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n _componentStyle = inject(ToggleButtonStyle);\n\n onBlur() {\n this.onModelTouched();\n }\n\n writeValue(value: any): void {\n this.checked = value;\n this.cd.markForCheck();\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n\n get hasOnLabel(): boolean {\n return (this.onLabel && this.onLabel.length > 0) as boolean;\n }\n\n get hasOffLabel(): boolean {\n return (this.onLabel && this.onLabel.length > 0) as boolean;\n }\n\n get active() {\n return this.checked === true;\n }\n\n _iconTemplate: TemplateRef<any> | undefined;\n\n _contentTemplate: TemplateRef<any> | undefined;\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'icon':\n this._iconTemplate = item.template;\n break;\n case 'content':\n this._contentTemplate = item.template;\n break;\n default:\n this._contentTemplate = item.template;\n break;\n }\n });\n }\n}\n\n@NgModule({\n imports: [ToggleButton, SharedModule],\n exports: [ToggleButton, SharedModule]\n})\nexport class ToggleButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}