primeng 21.1.4 → 21.1.6

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 (169) hide show
  1. package/fesm2022/primeng-accordion.mjs +19 -19
  2. package/fesm2022/primeng-animateonscroll.mjs +7 -7
  3. package/fesm2022/primeng-api.mjs +31 -31
  4. package/fesm2022/primeng-autocomplete.mjs +10 -10
  5. package/fesm2022/primeng-autofocus.mjs +7 -7
  6. package/fesm2022/primeng-avatar.mjs +10 -10
  7. package/fesm2022/primeng-avatargroup.mjs +10 -10
  8. package/fesm2022/primeng-badge.mjs +13 -13
  9. package/fesm2022/primeng-base.mjs +3 -3
  10. package/fesm2022/primeng-basecomponent.mjs +6 -6
  11. package/fesm2022/primeng-baseeditableholder.mjs +3 -3
  12. package/fesm2022/primeng-baseinput.mjs +3 -3
  13. package/fesm2022/primeng-basemodelholder.mjs +3 -3
  14. package/fesm2022/primeng-bind.mjs +7 -7
  15. package/fesm2022/primeng-blockui.mjs +10 -10
  16. package/fesm2022/primeng-breadcrumb.mjs +10 -10
  17. package/fesm2022/primeng-button.mjs +19 -19
  18. package/fesm2022/primeng-buttongroup.mjs +10 -10
  19. package/fesm2022/primeng-card.mjs +10 -10
  20. package/fesm2022/primeng-carousel.mjs +10 -10
  21. package/fesm2022/primeng-cascadeselect.mjs +13 -13
  22. package/fesm2022/primeng-chart.mjs +10 -10
  23. package/fesm2022/primeng-checkbox.mjs +10 -10
  24. package/fesm2022/primeng-chip.mjs +10 -10
  25. package/fesm2022/primeng-classnames.mjs +7 -7
  26. package/fesm2022/primeng-colorpicker.mjs +10 -10
  27. package/fesm2022/primeng-config.mjs +6 -6
  28. package/fesm2022/primeng-confirmdialog.mjs +10 -10
  29. package/fesm2022/primeng-confirmpopup.mjs +10 -10
  30. package/fesm2022/primeng-contextmenu.mjs +13 -13
  31. package/fesm2022/primeng-dataview.mjs +10 -10
  32. package/fesm2022/primeng-datepicker.mjs +10 -10
  33. package/fesm2022/primeng-dialog.mjs +10 -10
  34. package/fesm2022/primeng-divider.mjs +10 -10
  35. package/fesm2022/primeng-dock.mjs +10 -10
  36. package/fesm2022/primeng-dragdrop.mjs +10 -10
  37. package/fesm2022/primeng-drawer.mjs +11 -10
  38. package/fesm2022/primeng-drawer.mjs.map +1 -1
  39. package/fesm2022/primeng-dynamicdialog.mjs +16 -16
  40. package/fesm2022/primeng-editor.mjs +10 -10
  41. package/fesm2022/primeng-fieldset.mjs +10 -10
  42. package/fesm2022/primeng-fileupload.mjs +13 -13
  43. package/fesm2022/primeng-floatlabel.mjs +10 -10
  44. package/fesm2022/primeng-fluid.mjs +10 -10
  45. package/fesm2022/primeng-focustrap.mjs +7 -7
  46. package/fesm2022/primeng-galleria.mjs +22 -22
  47. package/fesm2022/primeng-iconfield.mjs +10 -10
  48. package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
  49. package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
  50. package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
  51. package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
  52. package/fesm2022/primeng-icons-angledown.mjs +3 -3
  53. package/fesm2022/primeng-icons-angleleft.mjs +3 -3
  54. package/fesm2022/primeng-icons-angleright.mjs +3 -3
  55. package/fesm2022/primeng-icons-angleup.mjs +3 -3
  56. package/fesm2022/primeng-icons-arrowdown.mjs +3 -3
  57. package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
  58. package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
  59. package/fesm2022/primeng-icons-arrowleft.mjs +3 -3
  60. package/fesm2022/primeng-icons-arrowright.mjs +3 -3
  61. package/fesm2022/primeng-icons-arrowup.mjs +3 -3
  62. package/fesm2022/primeng-icons-ban.mjs +3 -3
  63. package/fesm2022/primeng-icons-bars.mjs +3 -3
  64. package/fesm2022/primeng-icons-baseicon.mjs +6 -6
  65. package/fesm2022/primeng-icons-blank.mjs +3 -3
  66. package/fesm2022/primeng-icons-calendar.mjs +3 -3
  67. package/fesm2022/primeng-icons-caretleft.mjs +3 -3
  68. package/fesm2022/primeng-icons-caretright.mjs +3 -3
  69. package/fesm2022/primeng-icons-check.mjs +3 -3
  70. package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
  71. package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
  72. package/fesm2022/primeng-icons-chevronright.mjs +3 -3
  73. package/fesm2022/primeng-icons-chevronup.mjs +3 -3
  74. package/fesm2022/primeng-icons-exclamationtriangle.mjs +3 -3
  75. package/fesm2022/primeng-icons-eye.mjs +3 -3
  76. package/fesm2022/primeng-icons-eyeslash.mjs +3 -3
  77. package/fesm2022/primeng-icons-filter.mjs +3 -3
  78. package/fesm2022/primeng-icons-filterfill.mjs +3 -3
  79. package/fesm2022/primeng-icons-filterslash.mjs +3 -3
  80. package/fesm2022/primeng-icons-home.mjs +3 -3
  81. package/fesm2022/primeng-icons-infocircle.mjs +3 -3
  82. package/fesm2022/primeng-icons-minus.mjs +3 -3
  83. package/fesm2022/primeng-icons-pencil.mjs +3 -3
  84. package/fesm2022/primeng-icons-plus.mjs +3 -3
  85. package/fesm2022/primeng-icons-refresh.mjs +3 -3
  86. package/fesm2022/primeng-icons-search.mjs +3 -3
  87. package/fesm2022/primeng-icons-searchminus.mjs +3 -3
  88. package/fesm2022/primeng-icons-searchplus.mjs +3 -3
  89. package/fesm2022/primeng-icons-sortalt.mjs +3 -3
  90. package/fesm2022/primeng-icons-sortamountdown.mjs +3 -3
  91. package/fesm2022/primeng-icons-sortamountupalt.mjs +3 -3
  92. package/fesm2022/primeng-icons-spinner.mjs +3 -3
  93. package/fesm2022/primeng-icons-star.mjs +3 -3
  94. package/fesm2022/primeng-icons-starfill.mjs +3 -3
  95. package/fesm2022/primeng-icons-thlarge.mjs +3 -3
  96. package/fesm2022/primeng-icons-times.mjs +3 -3
  97. package/fesm2022/primeng-icons-timescircle.mjs +3 -3
  98. package/fesm2022/primeng-icons-trash.mjs +3 -3
  99. package/fesm2022/primeng-icons-undo.mjs +3 -3
  100. package/fesm2022/primeng-icons-upload.mjs +3 -3
  101. package/fesm2022/primeng-icons-windowmaximize.mjs +3 -3
  102. package/fesm2022/primeng-icons-windowminimize.mjs +3 -3
  103. package/fesm2022/primeng-iftalabel.mjs +10 -10
  104. package/fesm2022/primeng-image.mjs +10 -10
  105. package/fesm2022/primeng-imagecompare.mjs +10 -10
  106. package/fesm2022/primeng-inplace.mjs +16 -16
  107. package/fesm2022/primeng-inputgroup.mjs +10 -10
  108. package/fesm2022/primeng-inputgroupaddon.mjs +10 -10
  109. package/fesm2022/primeng-inputicon.mjs +10 -10
  110. package/fesm2022/primeng-inputmask.mjs +13 -13
  111. package/fesm2022/primeng-inputnumber.mjs +10 -10
  112. package/fesm2022/primeng-inputotp.mjs +10 -10
  113. package/fesm2022/primeng-inputtext.mjs +10 -10
  114. package/fesm2022/primeng-keyfilter.mjs +7 -7
  115. package/fesm2022/primeng-knob.mjs +10 -10
  116. package/fesm2022/primeng-listbox.mjs +10 -10
  117. package/fesm2022/primeng-megamenu.mjs +13 -13
  118. package/fesm2022/primeng-menu.mjs +16 -16
  119. package/fesm2022/primeng-menubar.mjs +16 -16
  120. package/fesm2022/primeng-message.mjs +10 -10
  121. package/fesm2022/primeng-metergroup.mjs +13 -13
  122. package/fesm2022/primeng-motion.mjs +17 -14
  123. package/fesm2022/primeng-motion.mjs.map +1 -1
  124. package/fesm2022/primeng-multiselect.mjs +13 -13
  125. package/fesm2022/primeng-orderlist.mjs +10 -10
  126. package/fesm2022/primeng-organizationchart.mjs +13 -13
  127. package/fesm2022/primeng-overlay.mjs +10 -10
  128. package/fesm2022/primeng-overlaybadge.mjs +10 -10
  129. package/fesm2022/primeng-paginator.mjs +10 -10
  130. package/fesm2022/primeng-panel.mjs +10 -10
  131. package/fesm2022/primeng-panelmenu.mjs +16 -16
  132. package/fesm2022/primeng-password.mjs +16 -16
  133. package/fesm2022/primeng-picklist.mjs +10 -10
  134. package/fesm2022/primeng-popover.mjs +10 -10
  135. package/fesm2022/primeng-progressbar.mjs +10 -10
  136. package/fesm2022/primeng-progressspinner.mjs +10 -10
  137. package/fesm2022/primeng-radiobutton.mjs +13 -13
  138. package/fesm2022/primeng-rating.mjs +10 -10
  139. package/fesm2022/primeng-ripple.mjs +10 -10
  140. package/fesm2022/primeng-scroller.mjs +10 -10
  141. package/fesm2022/primeng-scrollpanel.mjs +10 -10
  142. package/fesm2022/primeng-scrolltop.mjs +10 -10
  143. package/fesm2022/primeng-select.mjs +13 -13
  144. package/fesm2022/primeng-selectbutton.mjs +10 -10
  145. package/fesm2022/primeng-skeleton.mjs +10 -10
  146. package/fesm2022/primeng-slider.mjs +10 -10
  147. package/fesm2022/primeng-speeddial.mjs +10 -10
  148. package/fesm2022/primeng-splitbutton.mjs +10 -10
  149. package/fesm2022/primeng-splitter.mjs +10 -10
  150. package/fesm2022/primeng-stepper.mjs +43 -43
  151. package/fesm2022/primeng-steps.mjs +10 -10
  152. package/fesm2022/primeng-styleclass.mjs +7 -7
  153. package/fesm2022/primeng-table.mjs +85 -85
  154. package/fesm2022/primeng-tabs.mjs +34 -34
  155. package/fesm2022/primeng-tag.mjs +10 -10
  156. package/fesm2022/primeng-terminal.mjs +13 -13
  157. package/fesm2022/primeng-textarea.mjs +10 -10
  158. package/fesm2022/primeng-tieredmenu.mjs +13 -13
  159. package/fesm2022/primeng-timeline.mjs +10 -10
  160. package/fesm2022/primeng-toast.mjs +13 -13
  161. package/fesm2022/primeng-togglebutton.mjs +10 -10
  162. package/fesm2022/primeng-toggleswitch.mjs +10 -10
  163. package/fesm2022/primeng-toolbar.mjs +10 -10
  164. package/fesm2022/primeng-tooltip.mjs +10 -10
  165. package/fesm2022/primeng-tree.mjs +13 -13
  166. package/fesm2022/primeng-treeselect.mjs +10 -10
  167. package/fesm2022/primeng-treetable.mjs +58 -58
  168. package/fesm2022/primeng-usestyle.mjs +3 -3
  169. package/package.json +1 -1
@@ -25,10 +25,10 @@ class MessageStyle extends BaseStyle {
25
25
  name = 'message';
26
26
  style = style;
27
27
  classes = classes;
28
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MessageStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
29
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MessageStyle });
28
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MessageStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
29
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MessageStyle });
30
30
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MessageStyle, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MessageStyle, decorators: [{
32
32
  type: Injectable
33
33
  }] });
34
34
  /**
@@ -240,8 +240,8 @@ class Message extends BaseComponent {
240
240
  [this.size]: this.size
241
241
  });
242
242
  }
243
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: Message, deps: null, target: i0.ɵɵFactoryTarget.Component });
244
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: Message, isStandalone: true, selector: "p-message", inputs: { severity: { classPropertyName: "severity", publicName: "severity", isSignal: false, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: false, isRequired: false, transformFunction: null }, escape: { classPropertyName: "escape", publicName: "escape", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, style: { classPropertyName: "style", publicName: "style", isSignal: false, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: false, isRequired: false, transformFunction: null }, closable: { classPropertyName: "closable", publicName: "closable", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: false, isRequired: false, transformFunction: null }, closeIcon: { classPropertyName: "closeIcon", publicName: "closeIcon", isSignal: false, isRequired: false, transformFunction: null }, life: { classPropertyName: "life", publicName: "life", isSignal: false, isRequired: false, transformFunction: null }, showTransitionOptions: { classPropertyName: "showTransitionOptions", publicName: "showTransitionOptions", isSignal: false, isRequired: false, transformFunction: null }, hideTransitionOptions: { classPropertyName: "hideTransitionOptions", publicName: "hideTransitionOptions", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: false, isRequired: false, transformFunction: null }, motionOptions: { classPropertyName: "motionOptions", publicName: "motionOptions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onClose: "onClose" }, host: { attributes: { "role": "alert", "aria-live": "polite" }, properties: { "attr.data-p": "dataP", "class": "cn(cx(\"root\"), styleClass)", "animate.enter": "\"p-message-enter-active\"", "animate.leave": "\"p-message-leave-active\"", "class.p-message-leave-active": "!visible()" } }, providers: [MessageStyle, { provide: MESSAGE_INSTANCE, useExisting: Message }, { provide: PARENT_INSTANCE, useExisting: Message }], queries: [{ propertyName: "containerTemplate", first: true, predicate: ["container"] }, { propertyName: "iconTemplate", first: true, predicate: ["icon"] }, { propertyName: "closeIconTemplate", first: true, predicate: ["closeicon"] }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
243
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Message, deps: null, target: i0.ɵɵFactoryTarget.Component });
244
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.8", type: Message, isStandalone: true, selector: "p-message", inputs: { severity: { classPropertyName: "severity", publicName: "severity", isSignal: false, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: false, isRequired: false, transformFunction: null }, escape: { classPropertyName: "escape", publicName: "escape", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, style: { classPropertyName: "style", publicName: "style", isSignal: false, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: false, isRequired: false, transformFunction: null }, closable: { classPropertyName: "closable", publicName: "closable", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: false, isRequired: false, transformFunction: null }, closeIcon: { classPropertyName: "closeIcon", publicName: "closeIcon", isSignal: false, isRequired: false, transformFunction: null }, life: { classPropertyName: "life", publicName: "life", isSignal: false, isRequired: false, transformFunction: null }, showTransitionOptions: { classPropertyName: "showTransitionOptions", publicName: "showTransitionOptions", isSignal: false, isRequired: false, transformFunction: null }, hideTransitionOptions: { classPropertyName: "hideTransitionOptions", publicName: "hideTransitionOptions", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: false, isRequired: false, transformFunction: null }, motionOptions: { classPropertyName: "motionOptions", publicName: "motionOptions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onClose: "onClose" }, host: { attributes: { "role": "alert", "aria-live": "polite" }, properties: { "attr.data-p": "dataP", "class": "cn(cx(\"root\"), styleClass)", "animate.enter": "\"p-message-enter-active\"", "animate.leave": "\"p-message-leave-active\"", "class.p-message-leave-active": "!visible()" } }, providers: [MessageStyle, { provide: MESSAGE_INSTANCE, useExisting: Message }, { provide: PARENT_INSTANCE, useExisting: Message }], queries: [{ propertyName: "containerTemplate", first: true, predicate: ["container"] }, { propertyName: "iconTemplate", first: true, predicate: ["icon"] }, { propertyName: "closeIconTemplate", first: true, predicate: ["closeicon"] }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
245
245
  <div [pBind]="ptm('contentWrapper')" [class]="cx('contentWrapper')" [attr.data-p]="dataP">
246
246
  <div [pBind]="ptm('content')" [class]="cx('content')" [attr.data-p]="dataP">
247
247
  @if (iconTemplate || _iconTemplate) {
@@ -283,7 +283,7 @@ class Message extends BaseComponent {
283
283
  </div>
284
284
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: TimesIcon, selector: "[data-p-icon=\"times\"]" }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "ngmodule", type: SharedModule }, { kind: "directive", type: Bind, selector: "[pBind]", inputs: ["pBind"] }, { kind: "ngmodule", type: MotionModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
285
285
  }
286
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: Message, decorators: [{
286
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Message, decorators: [{
287
287
  type: Component,
288
288
  args: [{
289
289
  selector: 'p-message',
@@ -388,11 +388,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImpor
388
388
  args: [PrimeTemplate]
389
389
  }] } });
390
390
  class MessageModule {
391
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MessageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
392
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.6", ngImport: i0, type: MessageModule, imports: [Message, SharedModule], exports: [Message, SharedModule] });
393
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MessageModule, imports: [Message, SharedModule, SharedModule] });
391
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MessageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
392
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.8", ngImport: i0, type: MessageModule, imports: [Message, SharedModule], exports: [Message, SharedModule] });
393
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MessageModule, imports: [Message, SharedModule, SharedModule] });
394
394
  }
395
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MessageModule, decorators: [{
395
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MessageModule, decorators: [{
396
396
  type: NgModule,
397
397
  args: [{
398
398
  imports: [Message, SharedModule],
@@ -37,10 +37,10 @@ class MeterGroupStyle extends BaseStyle {
37
37
  name = 'metergroup';
38
38
  style = style;
39
39
  classes = classes;
40
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MeterGroupStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
41
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MeterGroupStyle });
40
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MeterGroupStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
41
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MeterGroupStyle });
42
42
  }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MeterGroupStyle, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MeterGroupStyle, decorators: [{
44
44
  type: Injectable
45
45
  }] });
46
46
  /**
@@ -103,8 +103,8 @@ class MeterGroupLabel extends BaseComponent {
103
103
  [this.labelOrientation]: this.labelOrientation
104
104
  });
105
105
  }
106
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MeterGroupLabel, deps: null, target: i0.ɵɵFactoryTarget.Component });
107
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.6", type: MeterGroupLabel, isStandalone: true, selector: "p-meterGroupLabel, p-metergrouplabel", inputs: { value: "value", labelPosition: "labelPosition", labelOrientation: "labelOrientation", min: "min", max: "max", iconTemplate: "iconTemplate" }, usesInheritance: true, ngImport: i0, template: `
106
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MeterGroupLabel, deps: null, target: i0.ɵɵFactoryTarget.Component });
107
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", type: MeterGroupLabel, isStandalone: true, selector: "p-meterGroupLabel, p-metergrouplabel", inputs: { value: "value", labelPosition: "labelPosition", labelOrientation: "labelOrientation", min: "min", max: "max", iconTemplate: "iconTemplate" }, usesInheritance: true, ngImport: i0, template: `
108
108
  <ol [class]="cx('labelList')" [pBind]="ptm('labelList')" [attr.data-p]="dataP">
109
109
  <li *ngFor="let labelItem of value; let index = index; trackBy: parentInstance.trackByFn" [class]="cx('label')" [pBind]="ptm('label')">
110
110
  <ng-container *ngIf="!iconTemplate">
@@ -117,7 +117,7 @@ class MeterGroupLabel extends BaseComponent {
117
117
  </ol>
118
118
  `, 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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: SharedModule }, { kind: "directive", type: Bind, selector: "[pBind]", inputs: ["pBind"] }] });
119
119
  }
120
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MeterGroupLabel, decorators: [{
120
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MeterGroupLabel, decorators: [{
121
121
  type: Component,
122
122
  args: [{
123
123
  selector: 'p-meterGroupLabel, p-metergrouplabel',
@@ -313,8 +313,8 @@ class MeterGroup extends BaseComponent {
313
313
  [this.orientation]: this.orientation
314
314
  });
315
315
  }
316
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MeterGroup, deps: [], target: i0.ɵɵFactoryTarget.Component });
317
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: MeterGroup, isStandalone: true, selector: "p-meterGroup, p-metergroup, p-meter-group", inputs: { value: "value", min: "min", max: "max", orientation: "orientation", labelPosition: "labelPosition", labelOrientation: "labelOrientation", styleClass: "styleClass" }, host: { properties: { "attr.aria-valuemin": "min", "attr.role": "\"meter\"", "attr.aria-valuemax": "max", "attr.aria-valuenow": "totalPercent()", "attr.data-p": "dataP", "class": "cn(cx('root'), styleClass)" } }, providers: [MeterGroupStyle, { provide: METERGROUP_INSTANCE, useExisting: MeterGroup }, { provide: PARENT_INSTANCE, useExisting: MeterGroup }], queries: [{ propertyName: "labelTemplate", first: true, predicate: ["label"] }, { propertyName: "meterTemplate", first: true, predicate: ["meter"] }, { propertyName: "endTemplate", first: true, predicate: ["end"] }, { propertyName: "startTemplate", first: true, predicate: ["start"] }, { propertyName: "iconTemplate", first: true, predicate: ["icon"] }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, hostDirectives: [{ directive: i2.Bind }], ngImport: i0, template: `
316
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MeterGroup, deps: [], target: i0.ɵɵFactoryTarget.Component });
317
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.8", type: MeterGroup, isStandalone: true, selector: "p-meterGroup, p-metergroup, p-meter-group", inputs: { value: "value", min: "min", max: "max", orientation: "orientation", labelPosition: "labelPosition", labelOrientation: "labelOrientation", styleClass: "styleClass" }, host: { properties: { "attr.aria-valuemin": "min", "attr.role": "\"meter\"", "attr.aria-valuemax": "max", "attr.aria-valuenow": "totalPercent()", "attr.data-p": "dataP", "class": "cn(cx('root'), styleClass)" } }, providers: [MeterGroupStyle, { provide: METERGROUP_INSTANCE, useExisting: MeterGroup }, { provide: PARENT_INSTANCE, useExisting: MeterGroup }], queries: [{ propertyName: "labelTemplate", first: true, predicate: ["label"] }, { propertyName: "meterTemplate", first: true, predicate: ["meter"] }, { propertyName: "endTemplate", first: true, predicate: ["end"] }, { propertyName: "startTemplate", first: true, predicate: ["start"] }, { propertyName: "iconTemplate", first: true, predicate: ["icon"] }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, hostDirectives: [{ directive: i2.Bind }], ngImport: i0, template: `
318
318
  @if (labelPosition === 'start') {
319
319
  <p-meterGroupLabel
320
320
  *ngIf="!labelTemplate && !_labelTemplate"
@@ -369,7 +369,7 @@ class MeterGroup extends BaseComponent {
369
369
  }
370
370
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: MeterGroupLabel, selector: "p-meterGroupLabel, p-metergrouplabel", inputs: ["value", "labelPosition", "labelOrientation", "min", "max", "iconTemplate"] }, { kind: "ngmodule", type: SharedModule }, { kind: "directive", type: Bind, selector: "[pBind]", inputs: ["pBind"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
371
371
  }
372
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MeterGroup, decorators: [{
372
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MeterGroup, decorators: [{
373
373
  type: Component,
374
374
  args: [{
375
375
  selector: 'p-meterGroup, p-metergroup, p-meter-group',
@@ -476,11 +476,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImpor
476
476
  args: [PrimeTemplate]
477
477
  }] } });
478
478
  class MeterGroupModule {
479
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MeterGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
480
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.6", ngImport: i0, type: MeterGroupModule, imports: [MeterGroup, SharedModule], exports: [MeterGroup, SharedModule] });
481
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MeterGroupModule, imports: [MeterGroup, SharedModule, SharedModule] });
479
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MeterGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
480
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.8", ngImport: i0, type: MeterGroupModule, imports: [MeterGroup, SharedModule], exports: [MeterGroup, SharedModule] });
481
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MeterGroupModule, imports: [MeterGroup, SharedModule, SharedModule] });
482
482
  }
483
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MeterGroupModule, decorators: [{
483
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MeterGroupModule, decorators: [{
484
484
  type: NgModule,
485
485
  args: [{
486
486
  imports: [MeterGroup, SharedModule],
@@ -16,7 +16,8 @@ function applyHiddenStyles(element, strategy) {
16
16
  originalStyles.set(element, {
17
17
  display: element.style.display,
18
18
  visibility: element.style.visibility,
19
- maxHeight: element.style.maxHeight
19
+ maxHeight: element.style.maxHeight,
20
+ overflow: element.style.overflow
20
21
  });
21
22
  }
22
23
  switch (strategy) {
@@ -26,6 +27,7 @@ function applyHiddenStyles(element, strategy) {
26
27
  case 'visibility':
27
28
  element.style.visibility = 'hidden';
28
29
  element.style.maxHeight = '0';
30
+ element.style.overflow = 'hidden';
29
31
  break;
30
32
  }
31
33
  }
@@ -40,6 +42,7 @@ function resetStyles(element, strategy) {
40
42
  case 'visibility':
41
43
  element.style.visibility = original?.visibility || '';
42
44
  element.style.maxHeight = original?.maxHeight || '';
45
+ element.style.overflow = original?.overflow || '';
43
46
  break;
44
47
  }
45
48
  originalStyles.delete(element);
@@ -57,10 +60,10 @@ class MotionStyle extends BaseStyle {
57
60
  name = 'motion';
58
61
  style = style;
59
62
  classes = classes;
60
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MotionStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
61
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MotionStyle });
63
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MotionStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
64
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MotionStyle });
62
65
  }
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MotionStyle, decorators: [{
66
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MotionStyle, decorators: [{
64
67
  type: Injectable
65
68
  }] });
66
69
  /**
@@ -376,14 +379,14 @@ class Motion extends BaseComponent {
376
379
  this.$el?.remove();
377
380
  this.isInitialMount = true;
378
381
  }
379
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: Motion, deps: [], target: i0.ɵɵFactoryTarget.Component });
380
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: Motion, isStandalone: true, selector: "p-motion", inputs: { visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null }, mountOnEnter: { classPropertyName: "mountOnEnter", publicName: "mountOnEnter", isSignal: true, isRequired: false, transformFunction: null }, unmountOnLeave: { classPropertyName: "unmountOnLeave", publicName: "unmountOnLeave", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, safe: { classPropertyName: "safe", publicName: "safe", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, appear: { classPropertyName: "appear", publicName: "appear", isSignal: true, isRequired: false, transformFunction: null }, enter: { classPropertyName: "enter", publicName: "enter", isSignal: true, isRequired: false, transformFunction: null }, leave: { classPropertyName: "leave", publicName: "leave", isSignal: true, isRequired: false, transformFunction: null }, duration: { classPropertyName: "duration", publicName: "duration", isSignal: true, isRequired: false, transformFunction: null }, hideStrategy: { classPropertyName: "hideStrategy", publicName: "hideStrategy", isSignal: true, isRequired: false, transformFunction: null }, enterFromClass: { classPropertyName: "enterFromClass", publicName: "enterFromClass", isSignal: true, isRequired: false, transformFunction: null }, enterToClass: { classPropertyName: "enterToClass", publicName: "enterToClass", isSignal: true, isRequired: false, transformFunction: null }, enterActiveClass: { classPropertyName: "enterActiveClass", publicName: "enterActiveClass", isSignal: true, isRequired: false, transformFunction: null }, leaveFromClass: { classPropertyName: "leaveFromClass", publicName: "leaveFromClass", isSignal: true, isRequired: false, transformFunction: null }, leaveToClass: { classPropertyName: "leaveToClass", publicName: "leaveToClass", isSignal: true, isRequired: false, transformFunction: null }, leaveActiveClass: { classPropertyName: "leaveActiveClass", publicName: "leaveActiveClass", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onBeforeEnter: "onBeforeEnter", onEnter: "onEnter", onAfterEnter: "onAfterEnter", onEnterCancelled: "onEnterCancelled", onBeforeLeave: "onBeforeLeave", onLeave: "onLeave", onAfterLeave: "onAfterLeave", onLeaveCancelled: "onLeaveCancelled" }, host: { properties: { "class": "cx('root')" } }, providers: [MotionStyle, { provide: MOTION_INSTANCE, useExisting: Motion }, { provide: PARENT_INSTANCE, useExisting: Motion }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
382
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Motion, deps: [], target: i0.ɵɵFactoryTarget.Component });
383
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.8", type: Motion, isStandalone: true, selector: "p-motion", inputs: { visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null }, mountOnEnter: { classPropertyName: "mountOnEnter", publicName: "mountOnEnter", isSignal: true, isRequired: false, transformFunction: null }, unmountOnLeave: { classPropertyName: "unmountOnLeave", publicName: "unmountOnLeave", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, safe: { classPropertyName: "safe", publicName: "safe", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, appear: { classPropertyName: "appear", publicName: "appear", isSignal: true, isRequired: false, transformFunction: null }, enter: { classPropertyName: "enter", publicName: "enter", isSignal: true, isRequired: false, transformFunction: null }, leave: { classPropertyName: "leave", publicName: "leave", isSignal: true, isRequired: false, transformFunction: null }, duration: { classPropertyName: "duration", publicName: "duration", isSignal: true, isRequired: false, transformFunction: null }, hideStrategy: { classPropertyName: "hideStrategy", publicName: "hideStrategy", isSignal: true, isRequired: false, transformFunction: null }, enterFromClass: { classPropertyName: "enterFromClass", publicName: "enterFromClass", isSignal: true, isRequired: false, transformFunction: null }, enterToClass: { classPropertyName: "enterToClass", publicName: "enterToClass", isSignal: true, isRequired: false, transformFunction: null }, enterActiveClass: { classPropertyName: "enterActiveClass", publicName: "enterActiveClass", isSignal: true, isRequired: false, transformFunction: null }, leaveFromClass: { classPropertyName: "leaveFromClass", publicName: "leaveFromClass", isSignal: true, isRequired: false, transformFunction: null }, leaveToClass: { classPropertyName: "leaveToClass", publicName: "leaveToClass", isSignal: true, isRequired: false, transformFunction: null }, leaveActiveClass: { classPropertyName: "leaveActiveClass", publicName: "leaveActiveClass", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onBeforeEnter: "onBeforeEnter", onEnter: "onEnter", onAfterEnter: "onAfterEnter", onEnterCancelled: "onEnterCancelled", onBeforeLeave: "onBeforeLeave", onLeave: "onLeave", onAfterLeave: "onAfterLeave", onLeaveCancelled: "onLeaveCancelled" }, host: { properties: { "class": "cx('root')" } }, providers: [MotionStyle, { provide: MOTION_INSTANCE, useExisting: Motion }, { provide: PARENT_INSTANCE, useExisting: Motion }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
381
384
  @if (rendered()) {
382
385
  <ng-content />
383
386
  }
384
387
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: BindModule }] });
385
388
  }
386
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: Motion, decorators: [{
389
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Motion, decorators: [{
387
390
  type: Component,
388
391
  args: [{
389
392
  selector: 'p-motion',
@@ -664,10 +667,10 @@ class MotionDirective extends BaseComponent {
664
667
  this.$el?.remove();
665
668
  this.isInitialMount = true;
666
669
  }
667
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MotionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
668
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.6", type: MotionDirective, isStandalone: true, selector: "[pMotion]", inputs: { visible: { classPropertyName: "visible", publicName: "pMotion", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "pMotionName", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "pMotionType", isSignal: true, isRequired: false, transformFunction: null }, safe: { classPropertyName: "safe", publicName: "pMotionSafe", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "pMotionDisabled", isSignal: true, isRequired: false, transformFunction: null }, appear: { classPropertyName: "appear", publicName: "pMotionAppear", isSignal: true, isRequired: false, transformFunction: null }, enter: { classPropertyName: "enter", publicName: "pMotionEnter", isSignal: true, isRequired: false, transformFunction: null }, leave: { classPropertyName: "leave", publicName: "pMotionLeave", isSignal: true, isRequired: false, transformFunction: null }, duration: { classPropertyName: "duration", publicName: "pMotionDuration", isSignal: true, isRequired: false, transformFunction: null }, hideStrategy: { classPropertyName: "hideStrategy", publicName: "pMotionHideStrategy", isSignal: true, isRequired: false, transformFunction: null }, enterFromClass: { classPropertyName: "enterFromClass", publicName: "pMotionEnterFromClass", isSignal: true, isRequired: false, transformFunction: null }, enterToClass: { classPropertyName: "enterToClass", publicName: "pMotionEnterToClass", isSignal: true, isRequired: false, transformFunction: null }, enterActiveClass: { classPropertyName: "enterActiveClass", publicName: "pMotionEnterActiveClass", isSignal: true, isRequired: false, transformFunction: null }, leaveFromClass: { classPropertyName: "leaveFromClass", publicName: "pMotionLeaveFromClass", isSignal: true, isRequired: false, transformFunction: null }, leaveToClass: { classPropertyName: "leaveToClass", publicName: "pMotionLeaveToClass", isSignal: true, isRequired: false, transformFunction: null }, leaveActiveClass: { classPropertyName: "leaveActiveClass", publicName: "pMotionLeaveActiveClass", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "pMotionOptions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onBeforeEnter: "pMotionOnBeforeEnter", onEnter: "pMotionOnEnter", onAfterEnter: "pMotionOnAfterEnter", onEnterCancelled: "pMotionOnEnterCancelled", onBeforeLeave: "pMotionOnBeforeLeave", onLeave: "pMotionOnLeave", onAfterLeave: "pMotionOnAfterLeave", onLeaveCancelled: "pMotionOnLeaveCancelled" }, providers: [MotionStyle, { provide: MOTION_DIRECTIVE_INSTANCE, useExisting: MotionDirective }, { provide: PARENT_INSTANCE, useExisting: MotionDirective }], usesInheritance: true, ngImport: i0 });
670
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MotionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
671
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.8", type: MotionDirective, isStandalone: true, selector: "[pMotion]", inputs: { visible: { classPropertyName: "visible", publicName: "pMotion", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "pMotionName", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "pMotionType", isSignal: true, isRequired: false, transformFunction: null }, safe: { classPropertyName: "safe", publicName: "pMotionSafe", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "pMotionDisabled", isSignal: true, isRequired: false, transformFunction: null }, appear: { classPropertyName: "appear", publicName: "pMotionAppear", isSignal: true, isRequired: false, transformFunction: null }, enter: { classPropertyName: "enter", publicName: "pMotionEnter", isSignal: true, isRequired: false, transformFunction: null }, leave: { classPropertyName: "leave", publicName: "pMotionLeave", isSignal: true, isRequired: false, transformFunction: null }, duration: { classPropertyName: "duration", publicName: "pMotionDuration", isSignal: true, isRequired: false, transformFunction: null }, hideStrategy: { classPropertyName: "hideStrategy", publicName: "pMotionHideStrategy", isSignal: true, isRequired: false, transformFunction: null }, enterFromClass: { classPropertyName: "enterFromClass", publicName: "pMotionEnterFromClass", isSignal: true, isRequired: false, transformFunction: null }, enterToClass: { classPropertyName: "enterToClass", publicName: "pMotionEnterToClass", isSignal: true, isRequired: false, transformFunction: null }, enterActiveClass: { classPropertyName: "enterActiveClass", publicName: "pMotionEnterActiveClass", isSignal: true, isRequired: false, transformFunction: null }, leaveFromClass: { classPropertyName: "leaveFromClass", publicName: "pMotionLeaveFromClass", isSignal: true, isRequired: false, transformFunction: null }, leaveToClass: { classPropertyName: "leaveToClass", publicName: "pMotionLeaveToClass", isSignal: true, isRequired: false, transformFunction: null }, leaveActiveClass: { classPropertyName: "leaveActiveClass", publicName: "pMotionLeaveActiveClass", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "pMotionOptions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onBeforeEnter: "pMotionOnBeforeEnter", onEnter: "pMotionOnEnter", onAfterEnter: "pMotionOnAfterEnter", onEnterCancelled: "pMotionOnEnterCancelled", onBeforeLeave: "pMotionOnBeforeLeave", onLeave: "pMotionOnLeave", onAfterLeave: "pMotionOnAfterLeave", onLeaveCancelled: "pMotionOnLeaveCancelled" }, providers: [MotionStyle, { provide: MOTION_DIRECTIVE_INSTANCE, useExisting: MotionDirective }, { provide: PARENT_INSTANCE, useExisting: MotionDirective }], usesInheritance: true, ngImport: i0 });
669
672
  }
670
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MotionDirective, decorators: [{
673
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MotionDirective, decorators: [{
671
674
  type: Directive,
672
675
  args: [{
673
676
  selector: '[pMotion]',
@@ -677,11 +680,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImpor
677
680
  }], ctorParameters: () => [], propDecorators: { visible: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotion", required: false }] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionName", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionType", required: false }] }], safe: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionSafe", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionDisabled", required: false }] }], appear: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionAppear", required: false }] }], enter: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionEnter", required: false }] }], leave: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionLeave", required: false }] }], duration: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionDuration", required: false }] }], hideStrategy: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionHideStrategy", required: false }] }], enterFromClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionEnterFromClass", required: false }] }], enterToClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionEnterToClass", required: false }] }], enterActiveClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionEnterActiveClass", required: false }] }], leaveFromClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionLeaveFromClass", required: false }] }], leaveToClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionLeaveToClass", required: false }] }], leaveActiveClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionLeaveActiveClass", required: false }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "pMotionOptions", required: false }] }], onBeforeEnter: [{ type: i0.Output, args: ["pMotionOnBeforeEnter"] }], onEnter: [{ type: i0.Output, args: ["pMotionOnEnter"] }], onAfterEnter: [{ type: i0.Output, args: ["pMotionOnAfterEnter"] }], onEnterCancelled: [{ type: i0.Output, args: ["pMotionOnEnterCancelled"] }], onBeforeLeave: [{ type: i0.Output, args: ["pMotionOnBeforeLeave"] }], onLeave: [{ type: i0.Output, args: ["pMotionOnLeave"] }], onAfterLeave: [{ type: i0.Output, args: ["pMotionOnAfterLeave"] }], onLeaveCancelled: [{ type: i0.Output, args: ["pMotionOnLeaveCancelled"] }] } });
678
681
 
679
682
  class MotionModule {
680
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MotionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
681
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.6", ngImport: i0, type: MotionModule, imports: [Motion, MotionDirective], exports: [Motion, MotionDirective] });
682
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MotionModule, imports: [Motion] });
683
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MotionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
684
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.8", ngImport: i0, type: MotionModule, imports: [Motion, MotionDirective], exports: [Motion, MotionDirective] });
685
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MotionModule, imports: [Motion] });
683
686
  }
684
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MotionModule, decorators: [{
687
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: MotionModule, decorators: [{
685
688
  type: NgModule,
686
689
  args: [{
687
690
  imports: [Motion, MotionDirective],
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-motion.mjs","sources":["../../src/motion/motion.utils.ts","../../src/motion/style/motion.style.ts","../../src/motion/motion.component.ts","../../src/motion/motion.directive.ts","../../src/motion/motion.module.ts","../../src/motion/primeng-motion.ts"],"sourcesContent":["const originalStyles = new WeakMap<HTMLElement, { display?: string; visibility?: string; maxHeight?: string }>();\n\nexport function applyHiddenStyles(element: HTMLElement, strategy: 'display' | 'visibility') {\n if (!element) return;\n\n if (!originalStyles.has(element)) {\n originalStyles.set(element, {\n display: element.style.display,\n visibility: element.style.visibility,\n maxHeight: element.style.maxHeight\n });\n }\n\n switch (strategy) {\n case 'display':\n element.style.display = 'none';\n break;\n case 'visibility':\n element.style.visibility = 'hidden';\n element.style.maxHeight = '0';\n break;\n }\n}\n\nexport function resetStyles(element: HTMLElement, strategy: 'display' | 'visibility') {\n if (!element) return;\n\n const original = originalStyles.get(element) ?? element.style;\n\n switch (strategy) {\n case 'display':\n element.style.display = original?.display || '';\n break;\n case 'visibility':\n element.style.visibility = original?.visibility || '';\n element.style.maxHeight = original?.maxHeight || '';\n break;\n }\n\n originalStyles.delete(element);\n}\n","import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst style = /*css*/ `\n .p-motion {\n display: block;\n }\n`;\n\nconst classes = {\n root: 'p-motion'\n};\n\n@Injectable()\nexport class MotionStyle extends BaseStyle {\n name = 'motion';\n\n style = style;\n\n classes = classes;\n}\n\n/**\n *\n * Motion and MotionDirective provide an easy way to add motion effects to Angular applications.\n *\n * [Live Demo](https://www.primeng.org/motion)\n *\n * @module motionstyle\n *\n */\nexport enum MotionClasses {\n /**\n * Class name of the root element\n */\n root = 'p-motion'\n}\n\nexport interface MotionStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport { afterRenderEffect, Component, computed, effect, inject, InjectionToken, input, output, signal, untracked } from '@angular/core';\nimport { type ClassNameOptions, createMotion, resolveDuration, type MotionEvent, type MotionInstance, type MotionOptions, type MotionPhase } from '@primeuix/motion';\nimport { nextFrame } from '@primeuix/utils';\nimport { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { Bind, BindModule } from 'primeng/bind';\nimport type { MotionPassThrough } from 'primeng/types/motion';\nimport { applyHiddenStyles, resetStyles } from './motion.utils';\nimport { MotionStyle } from './style/motion.style';\n\nconst MOTION_INSTANCE = new InjectionToken<Motion>('MOTION_INSTANCE');\n\n/**\n * Motion component is a container to apply motion effects to its content.\n * @group Components\n */\n@Component({\n selector: 'p-motion',\n standalone: true,\n imports: [CommonModule, BindModule],\n template: `\n @if (rendered()) {\n <ng-content />\n }\n `,\n providers: [MotionStyle, { provide: MOTION_INSTANCE, useExisting: Motion }, { provide: PARENT_INSTANCE, useExisting: Motion }],\n host: {\n '[class]': \"cx('root')\"\n },\n hostDirectives: [Bind]\n})\nexport class Motion extends BaseComponent<MotionPassThrough> {\n $pcMotion: Motion | undefined = inject(MOTION_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;\n\n bindDirectiveInstance = inject(Bind, { self: true });\n\n onAfterViewChecked(): void {\n const options = this.options() as any;\n const optionsAttrs = options?.root || {};\n this.bindDirectiveInstance.setAttrs({ ...this.ptms(['host', 'root']), ...optionsAttrs });\n }\n\n _componentStyle = inject(MotionStyle);\n\n /******************** Inputs ********************/\n\n /**\n * Whether the element is visible or not.\n * @group Props\n */\n visible = input<boolean>(false);\n /**\n * Whether to mount the element on enter.\n * @group Props\n */\n mountOnEnter = input<boolean>(true);\n /**\n * Whether to unmount the element on leave.\n * @group Props\n */\n unmountOnLeave = input<boolean>(true);\n /**\n * The name of the motion. It can be a predefined motion name or a custom one.\n * phases:\n * [name]-enter\n * [name]-enter-active\n * [name]-enter-to\n * [name]-leave\n * [name]-leave-active\n * [name]-leave-to\n * @group Props\n */\n name = input<MotionOptions['name']>(undefined);\n /**\n * The type of the motion, valid values 'transition' and 'animation'.\n * @group Props\n */\n type = input<MotionOptions['type']>(undefined);\n /**\n * Whether the motion is safe.\n * @group Props\n */\n safe = input<MotionOptions['safe']>(undefined);\n /**\n * Whether the motion is disabled.\n * @group Props\n */\n disabled = input<MotionOptions['disabled']>(false);\n /**\n * Whether the motion should appear.\n * @group Props\n */\n appear = input<MotionOptions['appear']>(false);\n /**\n * Whether the motion should enter.\n * @group Props\n */\n enter = input<MotionOptions['enter']>(true);\n /**\n * Whether the motion should leave.\n * @group Props\n */\n leave = input<MotionOptions['leave']>(true);\n /**\n * The duration of the motion.\n * @group Props\n */\n duration = input<MotionOptions['duration']>(undefined);\n /**\n * The hide strategy of the motion, valid values 'display' and 'visibility'.\n * @group Props\n */\n hideStrategy = input<'display' | 'visibility'>('display');\n /**\n * The enter from class of the motion.\n * @group Props\n */\n enterFromClass = input<ClassNameOptions['from']>(undefined);\n /**\n * The enter to class of the motion.\n * @group Props\n */\n enterToClass = input<ClassNameOptions['to']>(undefined);\n /**\n * The enter active class of the motion.\n * @group Props\n */\n enterActiveClass = input<ClassNameOptions['active']>(undefined);\n /**\n * The leave from class of the motion.\n * @group Props\n */\n leaveFromClass = input<ClassNameOptions['from']>(undefined);\n /**\n * The leave to class of the motion.\n * @group Props\n */\n leaveToClass = input<ClassNameOptions['to']>(undefined);\n /**\n * The leave active class of the motion.\n * @group Props\n */\n leaveActiveClass = input<ClassNameOptions['active']>(undefined);\n\n /******************** All Inputs ********************/\n\n /**\n * The motion options.\n * @group Props\n */\n options = input<MotionOptions>({});\n\n /******************** Outputs ********************/\n\n /**\n * Callback fired before the enter transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onBeforeEnter = output<MotionEvent | undefined>();\n /**\n * Callback fired when the enter transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onEnter = output<MotionEvent | undefined>();\n /**\n * Callback fired after the enter transition/animation ends.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onAfterEnter = output<MotionEvent | undefined>();\n /**\n * Callback fired when the enter transition/animation is cancelled.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onEnterCancelled = output<MotionEvent | undefined>();\n /**\n * Callback fired before the leave transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onBeforeLeave = output<MotionEvent | undefined>();\n /**\n * Callback fired when the leave transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onLeave = output<MotionEvent | undefined>();\n /**\n * Callback fired after the leave transition/animation ends.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onAfterLeave = output<MotionEvent | undefined>();\n /**\n * Callback fired when the leave transition/animation is cancelled.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onLeaveCancelled = output<MotionEvent | undefined>();\n\n /******************** Computed ********************/\n\n private motionOptions = computed<MotionOptions>(() => {\n const options = this.options();\n\n return {\n name: options.name ?? this.name(),\n type: options.type ?? this.type(),\n safe: options.safe ?? this.safe(),\n disabled: options.disabled ?? this.disabled(),\n appear: false,\n enter: options.enter ?? this.enter(),\n leave: options.leave ?? this.leave(),\n duration: options.duration ?? this.duration(),\n enterClass: {\n from: options.enterClass?.from ?? (!options.name ? this.enterFromClass() : undefined),\n to: options.enterClass?.to ?? (!options.name ? this.enterToClass() : undefined),\n active: options.enterClass?.active ?? (!options.name ? this.enterActiveClass() : undefined)\n },\n leaveClass: {\n from: options.leaveClass?.from ?? (!options.name ? this.leaveFromClass() : undefined),\n to: options.leaveClass?.to ?? (!options.name ? this.leaveToClass() : undefined),\n active: options.leaveClass?.active ?? (!options.name ? this.leaveActiveClass() : undefined)\n },\n onBeforeEnter: options.onBeforeEnter ?? this.handleBeforeEnter,\n onEnter: options.onEnter ?? this.handleEnter,\n onAfterEnter: options.onAfterEnter ?? this.handleAfterEnter,\n onEnterCancelled: options.onEnterCancelled ?? this.handleEnterCancelled,\n onBeforeLeave: options.onBeforeLeave ?? this.handleBeforeLeave,\n onLeave: options.onLeave ?? this.handleLeave,\n onAfterLeave: options.onAfterLeave ?? this.handleAfterLeave,\n onLeaveCancelled: options.onLeaveCancelled ?? this.handleLeaveCancelled\n };\n });\n\n private motion: MotionInstance | undefined;\n private isInitialMount = true;\n private cancelled = false;\n private destroyed = false;\n\n rendered = signal(false);\n\n private readonly handleBeforeEnter = (event?: MotionEvent) => !this.destroyed && this.onBeforeEnter.emit(event);\n private readonly handleEnter = (event?: MotionEvent) => !this.destroyed && this.onEnter.emit(event);\n private readonly handleAfterEnter = (event?: MotionEvent) => !this.destroyed && this.onAfterEnter.emit(event);\n private readonly handleEnterCancelled = (event?: MotionEvent) => !this.destroyed && this.onEnterCancelled.emit(event);\n private readonly handleBeforeLeave = (event?: MotionEvent) => !this.destroyed && this.onBeforeLeave.emit(event);\n private readonly handleLeave = (event?: MotionEvent) => !this.destroyed && this.onLeave.emit(event);\n private readonly handleAfterLeave = (event?: MotionEvent) => !this.destroyed && this.onAfterLeave.emit(event);\n private readonly handleLeaveCancelled = (event?: MotionEvent) => !this.destroyed && this.onLeaveCancelled.emit(event);\n\n constructor() {\n super();\n\n effect(() => {\n const hideStrategy = this.hideStrategy();\n\n if (this.isInitialMount) {\n applyHiddenStyles(this.$el, hideStrategy);\n this.rendered.set((this.visible() && this.mountOnEnter()) || !this.mountOnEnter());\n } else if (this.visible() && !this.rendered()) {\n applyHiddenStyles(this.$el, hideStrategy);\n this.rendered.set(true);\n }\n });\n\n effect(() => {\n if (!this.motion) {\n this.motion = createMotion(this.$el, this.motionOptions());\n } else {\n // @todo: Update motion options method to update options dynamically\n //this.motion.update(this.$el, this.motionOptions());\n }\n });\n\n afterRenderEffect(async () => {\n if (!this.$el) return;\n\n const shouldAppear = this.isInitialMount && this.visible() && this.appear();\n const hideStrategy = this.hideStrategy();\n\n if (this.visible()) {\n await nextFrame();\n resetStyles(this.$el, hideStrategy);\n\n if (shouldAppear || !this.isInitialMount) {\n this.applyMotionDuration('enter');\n this.motion?.enter();\n }\n } else if (!this.isInitialMount) {\n await nextFrame();\n this.applyMotionDuration('leave');\n this.motion?.leave()?.then(async () => {\n if (this.$el && !this.cancelled && !this.visible()) {\n applyHiddenStyles(this.$el, hideStrategy);\n\n if (this.unmountOnLeave()) {\n await nextFrame();\n if (!this.cancelled) {\n this.rendered.set(false);\n }\n }\n }\n });\n }\n\n this.isInitialMount = false;\n });\n }\n\n private applyMotionDuration(phase: MotionPhase): void {\n const options = untracked(this.motionOptions);\n const ms = resolveDuration(options.duration, phase);\n\n if (ms == null || !this.$el) return;\n\n const el = this.$el as HTMLElement;\n const durationValue = `${ms}ms`;\n\n if (options.type === 'transition') {\n el.style.transitionDuration = durationValue;\n } else {\n el.style.animationDuration = durationValue;\n }\n }\n\n onDestroy(): void {\n this.destroyed = true;\n this.cancelled = true;\n\n this.motion?.cancel();\n this.motion = undefined;\n\n resetStyles(this.$el, this.hideStrategy());\n\n this.$el?.remove();\n\n this.isInitialMount = true;\n }\n}\n","import { afterRenderEffect, computed, Directive, effect, inject, InjectionToken, input, output, untracked } from '@angular/core';\nimport { createMotion, resolveDuration, type ClassNameOptions, type MotionEvent, type MotionInstance, type MotionOptions, type MotionPhase } from '@primeuix/motion';\nimport { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { applyHiddenStyles, resetStyles } from './motion.utils';\nimport { MotionStyle } from './style/motion.style';\n\nconst MOTION_DIRECTIVE_INSTANCE = new InjectionToken<MotionDirective>('MOTION_DIRECTIVE_INSTANCE');\n\n/**\n * Motion Directive is directive to apply motion effects to elements.\n * @group Components\n */\n@Directive({\n selector: '[pMotion]',\n standalone: true,\n providers: [MotionStyle, { provide: MOTION_DIRECTIVE_INSTANCE, useExisting: MotionDirective }, { provide: PARENT_INSTANCE, useExisting: MotionDirective }]\n})\nexport class MotionDirective extends BaseComponent {\n $pcMotionDirective: MotionDirective | undefined = inject(MOTION_DIRECTIVE_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;\n\n /******************** Inputs ********************/\n\n /**\n * Whether the element is visible or not.\n * @group Props\n */\n visible = input<boolean>(false, { alias: 'pMotion' });\n /**\n * The name of the motion. It can be a predefined motion name or a custom one.\n * phases:\n * [name]-enter\n * [name]-enter-active\n * [name]-enter-to\n * [name]-leave\n * [name]-leave-active\n * [name]-leave-to\n * @group Props\n */\n name = input<MotionOptions['name']>(undefined, { alias: 'pMotionName' });\n /**\n * The type of the motion, valid values 'transition' and 'animation'.\n * @group Props\n */\n type = input<MotionOptions['type']>(undefined, { alias: 'pMotionType' });\n /**\n * Whether the motion is safe.\n * @group Props\n */\n safe = input<MotionOptions['safe']>(undefined, { alias: 'pMotionSafe' });\n /**\n * Whether the motion is disabled.\n * @group Props\n */\n disabled = input<MotionOptions['disabled']>(false, { alias: 'pMotionDisabled' });\n /**\n * Whether the motion should appear.\n * @group Props\n */\n appear = input<MotionOptions['appear']>(false, { alias: 'pMotionAppear' });\n /**\n * Whether the motion should enter.\n * @group Props\n */\n enter = input<MotionOptions['enter']>(true, { alias: 'pMotionEnter' });\n /**\n * Whether the motion should leave.\n * @group Props\n */\n leave = input<MotionOptions['leave']>(true, { alias: 'pMotionLeave' });\n /**\n * The duration of the motion.\n * @group Props\n */\n duration = input<MotionOptions['duration']>(undefined, { alias: 'pMotionDuration' });\n /**\n * The hide strategy of the motion, valid values 'display' and 'visibility'.\n * @group Props\n */\n hideStrategy = input<'display' | 'visibility'>('display', { alias: 'pMotionHideStrategy' });\n /**\n * The enter from class of the motion.\n * @group Props\n */\n enterFromClass = input<ClassNameOptions['from']>(undefined, { alias: 'pMotionEnterFromClass' });\n /**\n * The enter to class of the motion.\n * @group Props\n */\n enterToClass = input<ClassNameOptions['to']>(undefined, { alias: 'pMotionEnterToClass' });\n /**\n * The enter active class of the motion.\n * @group Props\n */\n enterActiveClass = input<ClassNameOptions['active']>(undefined, { alias: 'pMotionEnterActiveClass' });\n /**\n * The leave from class of the motion.\n * @group Props\n */\n leaveFromClass = input<ClassNameOptions['from']>(undefined, { alias: 'pMotionLeaveFromClass' });\n /**\n * The leave to class of the motion.\n * @group Props\n */\n leaveToClass = input<ClassNameOptions['to']>(undefined, { alias: 'pMotionLeaveToClass' });\n /**\n * The leave active class of the motion.\n * @group Props\n */\n leaveActiveClass = input<ClassNameOptions['active']>(undefined, { alias: 'pMotionLeaveActiveClass' });\n\n /******************** All Inputs ********************/\n\n /**\n * The motion options.\n * @group Props\n */\n options = input<MotionOptions>({}, { alias: 'pMotionOptions' });\n\n /******************** Outputs ********************/\n\n /**\n * Callback fired before the enter transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onBeforeEnter = output<MotionEvent | undefined>({ alias: 'pMotionOnBeforeEnter' });\n /**\n * Callback fired when the enter transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onEnter = output<MotionEvent | undefined>({ alias: 'pMotionOnEnter' });\n /**\n * Callback fired after the enter transition/animation ends.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onAfterEnter = output<MotionEvent | undefined>({ alias: 'pMotionOnAfterEnter' });\n /**\n * Callback fired when the enter transition/animation is cancelled.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onEnterCancelled = output<MotionEvent | undefined>({ alias: 'pMotionOnEnterCancelled' });\n /**\n * Callback fired before the leave transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onBeforeLeave = output<MotionEvent | undefined>({ alias: 'pMotionOnBeforeLeave' });\n /**\n * Callback fired when the leave transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onLeave = output<MotionEvent | undefined>({ alias: 'pMotionOnLeave' });\n /**\n * Callback fired after the leave transition/animation ends.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onAfterLeave = output<MotionEvent | undefined>({ alias: 'pMotionOnAfterLeave' });\n /**\n * Callback fired when the leave transition/animation is cancelled.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onLeaveCancelled = output<MotionEvent | undefined>({ alias: 'pMotionOnLeaveCancelled' });\n\n /******************** Computed ********************/\n\n private motionOptions = computed<MotionOptions>(() => {\n const options = this.options() ?? {};\n\n return {\n name: options.name ?? this.name(),\n type: options.type ?? this.type(),\n safe: options.safe ?? this.safe(),\n disabled: options.disabled ?? this.disabled(),\n appear: false,\n enter: options.enter ?? this.enter(),\n leave: options.leave ?? this.leave(),\n duration: options.duration ?? this.duration(),\n enterClass: {\n from: options.enterClass?.from ?? (!options.name ? this.enterFromClass() : undefined),\n to: options.enterClass?.to ?? (!options.name ? this.enterToClass() : undefined),\n active: options.enterClass?.active ?? (!options.name ? this.enterActiveClass() : undefined)\n },\n leaveClass: {\n from: options.leaveClass?.from ?? (!options.name ? this.leaveFromClass() : undefined),\n to: options.leaveClass?.to ?? (!options.name ? this.leaveToClass() : undefined),\n active: options.leaveClass?.active ?? (!options.name ? this.leaveActiveClass() : undefined)\n },\n onBeforeEnter: options.onBeforeEnter ?? this.handleBeforeEnter,\n onEnter: options.onEnter ?? this.handleEnter,\n onAfterEnter: options.onAfterEnter ?? this.handleAfterEnter,\n onEnterCancelled: options.onEnterCancelled ?? this.handleEnterCancelled,\n onBeforeLeave: options.onBeforeLeave ?? this.handleBeforeLeave,\n onLeave: options.onLeave ?? this.handleLeave,\n onAfterLeave: options.onAfterLeave ?? this.handleAfterLeave,\n onLeaveCancelled: options.onLeaveCancelled ?? this.handleLeaveCancelled\n };\n });\n\n private motion: MotionInstance | undefined;\n private isInitialMount = true;\n private cancelled = false;\n private destroyed = false;\n\n private readonly handleBeforeEnter = (event?: MotionEvent) => !this.destroyed && this.onBeforeEnter.emit(event);\n private readonly handleEnter = (event?: MotionEvent) => !this.destroyed && this.onEnter.emit(event);\n private readonly handleAfterEnter = (event?: MotionEvent) => !this.destroyed && this.onAfterEnter.emit(event);\n private readonly handleEnterCancelled = (event?: MotionEvent) => !this.destroyed && this.onEnterCancelled.emit(event);\n private readonly handleBeforeLeave = (event?: MotionEvent) => !this.destroyed && this.onBeforeLeave.emit(event);\n private readonly handleLeave = (event?: MotionEvent) => !this.destroyed && this.onLeave.emit(event);\n private readonly handleAfterLeave = (event?: MotionEvent) => !this.destroyed && this.onAfterLeave.emit(event);\n private readonly handleLeaveCancelled = (event?: MotionEvent) => !this.destroyed && this.onLeaveCancelled.emit(event);\n\n constructor() {\n super();\n\n effect(() => {\n if (!this.motion) {\n this.motion = createMotion(this.$el, this.motionOptions());\n } else {\n // @todo: Update motion options method to update options dynamically\n //this.motion.update(this.$el, this.motionOptions());\n }\n });\n\n afterRenderEffect(() => {\n if (!this.$el) return;\n\n const shouldAppear = this.isInitialMount && this.visible() && this.appear();\n const hideStrategy = this.hideStrategy();\n\n if (this.visible()) {\n resetStyles(this.$el, hideStrategy);\n\n if (shouldAppear || !this.isInitialMount) {\n this.applyMotionDuration('enter');\n this.motion?.enter();\n }\n } else if (!this.isInitialMount) {\n this.applyMotionDuration('leave');\n this.motion?.leave()?.then(() => {\n if (this.$el && !this.cancelled && !this.visible()) {\n applyHiddenStyles(this.$el, hideStrategy);\n }\n });\n } else {\n applyHiddenStyles(this.$el, hideStrategy);\n }\n\n this.isInitialMount = false;\n });\n }\n\n private applyMotionDuration(phase: MotionPhase): void {\n const options = untracked(this.motionOptions);\n const ms = resolveDuration(options.duration, phase);\n\n if (ms == null || !this.$el) return;\n\n const el = this.$el as HTMLElement;\n const durationValue = `${ms}ms`;\n\n if (options.type === 'transition') {\n el.style.transitionDuration = durationValue;\n } else {\n el.style.animationDuration = durationValue;\n }\n }\n\n onDestroy(): void {\n this.destroyed = true;\n this.cancelled = true;\n\n this.motion?.cancel();\n this.motion = undefined;\n\n resetStyles(this.$el, this.hideStrategy());\n\n this.$el?.remove();\n\n this.isInitialMount = true;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Motion } from './motion.component';\nimport { MotionDirective } from './motion.directive';\n\nexport * from './motion.component';\nexport * from './motion.directive';\n\n@NgModule({\n imports: [Motion, MotionDirective],\n exports: [Motion, MotionDirective]\n})\nexport class MotionModule {}\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-motion.mjs","sources":["../../src/motion/motion.utils.ts","../../src/motion/style/motion.style.ts","../../src/motion/motion.component.ts","../../src/motion/motion.directive.ts","../../src/motion/motion.module.ts","../../src/motion/primeng-motion.ts"],"sourcesContent":["const originalStyles = new WeakMap<HTMLElement, { display?: string; visibility?: string; maxHeight?: string; overflow?: string }>();\n\nexport function applyHiddenStyles(element: HTMLElement, strategy: 'display' | 'visibility') {\n if (!element) return;\n\n if (!originalStyles.has(element)) {\n originalStyles.set(element, {\n display: element.style.display,\n visibility: element.style.visibility,\n maxHeight: element.style.maxHeight,\n overflow: element.style.overflow\n });\n }\n\n switch (strategy) {\n case 'display':\n element.style.display = 'none';\n break;\n case 'visibility':\n element.style.visibility = 'hidden';\n element.style.maxHeight = '0';\n element.style.overflow = 'hidden';\n break;\n }\n}\n\nexport function resetStyles(element: HTMLElement, strategy: 'display' | 'visibility') {\n if (!element) return;\n\n const original = originalStyles.get(element) ?? element.style;\n\n switch (strategy) {\n case 'display':\n element.style.display = original?.display || '';\n break;\n case 'visibility':\n element.style.visibility = original?.visibility || '';\n element.style.maxHeight = original?.maxHeight || '';\n element.style.overflow = original?.overflow || '';\n break;\n }\n\n originalStyles.delete(element);\n}\n","import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst style = /*css*/ `\n .p-motion {\n display: block;\n }\n`;\n\nconst classes = {\n root: 'p-motion'\n};\n\n@Injectable()\nexport class MotionStyle extends BaseStyle {\n name = 'motion';\n\n style = style;\n\n classes = classes;\n}\n\n/**\n *\n * Motion and MotionDirective provide an easy way to add motion effects to Angular applications.\n *\n * [Live Demo](https://www.primeng.org/motion)\n *\n * @module motionstyle\n *\n */\nexport enum MotionClasses {\n /**\n * Class name of the root element\n */\n root = 'p-motion'\n}\n\nexport interface MotionStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport { afterRenderEffect, Component, computed, effect, inject, InjectionToken, input, output, signal, untracked } from '@angular/core';\nimport { type ClassNameOptions, createMotion, resolveDuration, type MotionEvent, type MotionInstance, type MotionOptions, type MotionPhase } from '@primeuix/motion';\nimport { nextFrame } from '@primeuix/utils';\nimport { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { Bind, BindModule } from 'primeng/bind';\nimport type { MotionPassThrough } from 'primeng/types/motion';\nimport { applyHiddenStyles, resetStyles } from './motion.utils';\nimport { MotionStyle } from './style/motion.style';\n\nconst MOTION_INSTANCE = new InjectionToken<Motion>('MOTION_INSTANCE');\n\n/**\n * Motion component is a container to apply motion effects to its content.\n * @group Components\n */\n@Component({\n selector: 'p-motion',\n standalone: true,\n imports: [CommonModule, BindModule],\n template: `\n @if (rendered()) {\n <ng-content />\n }\n `,\n providers: [MotionStyle, { provide: MOTION_INSTANCE, useExisting: Motion }, { provide: PARENT_INSTANCE, useExisting: Motion }],\n host: {\n '[class]': \"cx('root')\"\n },\n hostDirectives: [Bind]\n})\nexport class Motion extends BaseComponent<MotionPassThrough> {\n $pcMotion: Motion | undefined = inject(MOTION_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;\n\n bindDirectiveInstance = inject(Bind, { self: true });\n\n onAfterViewChecked(): void {\n const options = this.options() as any;\n const optionsAttrs = options?.root || {};\n this.bindDirectiveInstance.setAttrs({ ...this.ptms(['host', 'root']), ...optionsAttrs });\n }\n\n _componentStyle = inject(MotionStyle);\n\n /******************** Inputs ********************/\n\n /**\n * Whether the element is visible or not.\n * @group Props\n */\n visible = input<boolean>(false);\n /**\n * Whether to mount the element on enter.\n * @group Props\n */\n mountOnEnter = input<boolean>(true);\n /**\n * Whether to unmount the element on leave.\n * @group Props\n */\n unmountOnLeave = input<boolean>(true);\n /**\n * The name of the motion. It can be a predefined motion name or a custom one.\n * phases:\n * [name]-enter\n * [name]-enter-active\n * [name]-enter-to\n * [name]-leave\n * [name]-leave-active\n * [name]-leave-to\n * @group Props\n */\n name = input<MotionOptions['name']>(undefined);\n /**\n * The type of the motion, valid values 'transition' and 'animation'.\n * @group Props\n */\n type = input<MotionOptions['type']>(undefined);\n /**\n * Whether the motion is safe.\n * @group Props\n */\n safe = input<MotionOptions['safe']>(undefined);\n /**\n * Whether the motion is disabled.\n * @group Props\n */\n disabled = input<MotionOptions['disabled']>(false);\n /**\n * Whether the motion should appear.\n * @group Props\n */\n appear = input<MotionOptions['appear']>(false);\n /**\n * Whether the motion should enter.\n * @group Props\n */\n enter = input<MotionOptions['enter']>(true);\n /**\n * Whether the motion should leave.\n * @group Props\n */\n leave = input<MotionOptions['leave']>(true);\n /**\n * The duration of the motion.\n * @group Props\n */\n duration = input<MotionOptions['duration']>(undefined);\n /**\n * The hide strategy of the motion, valid values 'display' and 'visibility'.\n * @group Props\n */\n hideStrategy = input<'display' | 'visibility'>('display');\n /**\n * The enter from class of the motion.\n * @group Props\n */\n enterFromClass = input<ClassNameOptions['from']>(undefined);\n /**\n * The enter to class of the motion.\n * @group Props\n */\n enterToClass = input<ClassNameOptions['to']>(undefined);\n /**\n * The enter active class of the motion.\n * @group Props\n */\n enterActiveClass = input<ClassNameOptions['active']>(undefined);\n /**\n * The leave from class of the motion.\n * @group Props\n */\n leaveFromClass = input<ClassNameOptions['from']>(undefined);\n /**\n * The leave to class of the motion.\n * @group Props\n */\n leaveToClass = input<ClassNameOptions['to']>(undefined);\n /**\n * The leave active class of the motion.\n * @group Props\n */\n leaveActiveClass = input<ClassNameOptions['active']>(undefined);\n\n /******************** All Inputs ********************/\n\n /**\n * The motion options.\n * @group Props\n */\n options = input<MotionOptions>({});\n\n /******************** Outputs ********************/\n\n /**\n * Callback fired before the enter transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onBeforeEnter = output<MotionEvent | undefined>();\n /**\n * Callback fired when the enter transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onEnter = output<MotionEvent | undefined>();\n /**\n * Callback fired after the enter transition/animation ends.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onAfterEnter = output<MotionEvent | undefined>();\n /**\n * Callback fired when the enter transition/animation is cancelled.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onEnterCancelled = output<MotionEvent | undefined>();\n /**\n * Callback fired before the leave transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onBeforeLeave = output<MotionEvent | undefined>();\n /**\n * Callback fired when the leave transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onLeave = output<MotionEvent | undefined>();\n /**\n * Callback fired after the leave transition/animation ends.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onAfterLeave = output<MotionEvent | undefined>();\n /**\n * Callback fired when the leave transition/animation is cancelled.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onLeaveCancelled = output<MotionEvent | undefined>();\n\n /******************** Computed ********************/\n\n private motionOptions = computed<MotionOptions>(() => {\n const options = this.options();\n\n return {\n name: options.name ?? this.name(),\n type: options.type ?? this.type(),\n safe: options.safe ?? this.safe(),\n disabled: options.disabled ?? this.disabled(),\n appear: false,\n enter: options.enter ?? this.enter(),\n leave: options.leave ?? this.leave(),\n duration: options.duration ?? this.duration(),\n enterClass: {\n from: options.enterClass?.from ?? (!options.name ? this.enterFromClass() : undefined),\n to: options.enterClass?.to ?? (!options.name ? this.enterToClass() : undefined),\n active: options.enterClass?.active ?? (!options.name ? this.enterActiveClass() : undefined)\n },\n leaveClass: {\n from: options.leaveClass?.from ?? (!options.name ? this.leaveFromClass() : undefined),\n to: options.leaveClass?.to ?? (!options.name ? this.leaveToClass() : undefined),\n active: options.leaveClass?.active ?? (!options.name ? this.leaveActiveClass() : undefined)\n },\n onBeforeEnter: options.onBeforeEnter ?? this.handleBeforeEnter,\n onEnter: options.onEnter ?? this.handleEnter,\n onAfterEnter: options.onAfterEnter ?? this.handleAfterEnter,\n onEnterCancelled: options.onEnterCancelled ?? this.handleEnterCancelled,\n onBeforeLeave: options.onBeforeLeave ?? this.handleBeforeLeave,\n onLeave: options.onLeave ?? this.handleLeave,\n onAfterLeave: options.onAfterLeave ?? this.handleAfterLeave,\n onLeaveCancelled: options.onLeaveCancelled ?? this.handleLeaveCancelled\n };\n });\n\n private motion: MotionInstance | undefined;\n private isInitialMount = true;\n private cancelled = false;\n private destroyed = false;\n\n rendered = signal(false);\n\n private readonly handleBeforeEnter = (event?: MotionEvent) => !this.destroyed && this.onBeforeEnter.emit(event);\n private readonly handleEnter = (event?: MotionEvent) => !this.destroyed && this.onEnter.emit(event);\n private readonly handleAfterEnter = (event?: MotionEvent) => !this.destroyed && this.onAfterEnter.emit(event);\n private readonly handleEnterCancelled = (event?: MotionEvent) => !this.destroyed && this.onEnterCancelled.emit(event);\n private readonly handleBeforeLeave = (event?: MotionEvent) => !this.destroyed && this.onBeforeLeave.emit(event);\n private readonly handleLeave = (event?: MotionEvent) => !this.destroyed && this.onLeave.emit(event);\n private readonly handleAfterLeave = (event?: MotionEvent) => !this.destroyed && this.onAfterLeave.emit(event);\n private readonly handleLeaveCancelled = (event?: MotionEvent) => !this.destroyed && this.onLeaveCancelled.emit(event);\n\n constructor() {\n super();\n\n effect(() => {\n const hideStrategy = this.hideStrategy();\n\n if (this.isInitialMount) {\n applyHiddenStyles(this.$el, hideStrategy);\n this.rendered.set((this.visible() && this.mountOnEnter()) || !this.mountOnEnter());\n } else if (this.visible() && !this.rendered()) {\n applyHiddenStyles(this.$el, hideStrategy);\n this.rendered.set(true);\n }\n });\n\n effect(() => {\n if (!this.motion) {\n this.motion = createMotion(this.$el, this.motionOptions());\n } else {\n // @todo: Update motion options method to update options dynamically\n //this.motion.update(this.$el, this.motionOptions());\n }\n });\n\n afterRenderEffect(async () => {\n if (!this.$el) return;\n\n const shouldAppear = this.isInitialMount && this.visible() && this.appear();\n const hideStrategy = this.hideStrategy();\n\n if (this.visible()) {\n await nextFrame();\n resetStyles(this.$el, hideStrategy);\n\n if (shouldAppear || !this.isInitialMount) {\n this.applyMotionDuration('enter');\n this.motion?.enter();\n }\n } else if (!this.isInitialMount) {\n await nextFrame();\n this.applyMotionDuration('leave');\n this.motion?.leave()?.then(async () => {\n if (this.$el && !this.cancelled && !this.visible()) {\n applyHiddenStyles(this.$el, hideStrategy);\n\n if (this.unmountOnLeave()) {\n await nextFrame();\n if (!this.cancelled) {\n this.rendered.set(false);\n }\n }\n }\n });\n }\n\n this.isInitialMount = false;\n });\n }\n\n private applyMotionDuration(phase: MotionPhase): void {\n const options = untracked(this.motionOptions);\n const ms = resolveDuration(options.duration, phase);\n\n if (ms == null || !this.$el) return;\n\n const el = this.$el as HTMLElement;\n const durationValue = `${ms}ms`;\n\n if (options.type === 'transition') {\n el.style.transitionDuration = durationValue;\n } else {\n el.style.animationDuration = durationValue;\n }\n }\n\n onDestroy(): void {\n this.destroyed = true;\n this.cancelled = true;\n\n this.motion?.cancel();\n this.motion = undefined;\n\n resetStyles(this.$el, this.hideStrategy());\n\n this.$el?.remove();\n\n this.isInitialMount = true;\n }\n}\n","import { afterRenderEffect, computed, Directive, effect, inject, InjectionToken, input, output, untracked } from '@angular/core';\nimport { createMotion, resolveDuration, type ClassNameOptions, type MotionEvent, type MotionInstance, type MotionOptions, type MotionPhase } from '@primeuix/motion';\nimport { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { applyHiddenStyles, resetStyles } from './motion.utils';\nimport { MotionStyle } from './style/motion.style';\n\nconst MOTION_DIRECTIVE_INSTANCE = new InjectionToken<MotionDirective>('MOTION_DIRECTIVE_INSTANCE');\n\n/**\n * Motion Directive is directive to apply motion effects to elements.\n * @group Components\n */\n@Directive({\n selector: '[pMotion]',\n standalone: true,\n providers: [MotionStyle, { provide: MOTION_DIRECTIVE_INSTANCE, useExisting: MotionDirective }, { provide: PARENT_INSTANCE, useExisting: MotionDirective }]\n})\nexport class MotionDirective extends BaseComponent {\n $pcMotionDirective: MotionDirective | undefined = inject(MOTION_DIRECTIVE_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;\n\n /******************** Inputs ********************/\n\n /**\n * Whether the element is visible or not.\n * @group Props\n */\n visible = input<boolean>(false, { alias: 'pMotion' });\n /**\n * The name of the motion. It can be a predefined motion name or a custom one.\n * phases:\n * [name]-enter\n * [name]-enter-active\n * [name]-enter-to\n * [name]-leave\n * [name]-leave-active\n * [name]-leave-to\n * @group Props\n */\n name = input<MotionOptions['name']>(undefined, { alias: 'pMotionName' });\n /**\n * The type of the motion, valid values 'transition' and 'animation'.\n * @group Props\n */\n type = input<MotionOptions['type']>(undefined, { alias: 'pMotionType' });\n /**\n * Whether the motion is safe.\n * @group Props\n */\n safe = input<MotionOptions['safe']>(undefined, { alias: 'pMotionSafe' });\n /**\n * Whether the motion is disabled.\n * @group Props\n */\n disabled = input<MotionOptions['disabled']>(false, { alias: 'pMotionDisabled' });\n /**\n * Whether the motion should appear.\n * @group Props\n */\n appear = input<MotionOptions['appear']>(false, { alias: 'pMotionAppear' });\n /**\n * Whether the motion should enter.\n * @group Props\n */\n enter = input<MotionOptions['enter']>(true, { alias: 'pMotionEnter' });\n /**\n * Whether the motion should leave.\n * @group Props\n */\n leave = input<MotionOptions['leave']>(true, { alias: 'pMotionLeave' });\n /**\n * The duration of the motion.\n * @group Props\n */\n duration = input<MotionOptions['duration']>(undefined, { alias: 'pMotionDuration' });\n /**\n * The hide strategy of the motion, valid values 'display' and 'visibility'.\n * @group Props\n */\n hideStrategy = input<'display' | 'visibility'>('display', { alias: 'pMotionHideStrategy' });\n /**\n * The enter from class of the motion.\n * @group Props\n */\n enterFromClass = input<ClassNameOptions['from']>(undefined, { alias: 'pMotionEnterFromClass' });\n /**\n * The enter to class of the motion.\n * @group Props\n */\n enterToClass = input<ClassNameOptions['to']>(undefined, { alias: 'pMotionEnterToClass' });\n /**\n * The enter active class of the motion.\n * @group Props\n */\n enterActiveClass = input<ClassNameOptions['active']>(undefined, { alias: 'pMotionEnterActiveClass' });\n /**\n * The leave from class of the motion.\n * @group Props\n */\n leaveFromClass = input<ClassNameOptions['from']>(undefined, { alias: 'pMotionLeaveFromClass' });\n /**\n * The leave to class of the motion.\n * @group Props\n */\n leaveToClass = input<ClassNameOptions['to']>(undefined, { alias: 'pMotionLeaveToClass' });\n /**\n * The leave active class of the motion.\n * @group Props\n */\n leaveActiveClass = input<ClassNameOptions['active']>(undefined, { alias: 'pMotionLeaveActiveClass' });\n\n /******************** All Inputs ********************/\n\n /**\n * The motion options.\n * @group Props\n */\n options = input<MotionOptions>({}, { alias: 'pMotionOptions' });\n\n /******************** Outputs ********************/\n\n /**\n * Callback fired before the enter transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onBeforeEnter = output<MotionEvent | undefined>({ alias: 'pMotionOnBeforeEnter' });\n /**\n * Callback fired when the enter transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onEnter = output<MotionEvent | undefined>({ alias: 'pMotionOnEnter' });\n /**\n * Callback fired after the enter transition/animation ends.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onAfterEnter = output<MotionEvent | undefined>({ alias: 'pMotionOnAfterEnter' });\n /**\n * Callback fired when the enter transition/animation is cancelled.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onEnterCancelled = output<MotionEvent | undefined>({ alias: 'pMotionOnEnterCancelled' });\n /**\n * Callback fired before the leave transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onBeforeLeave = output<MotionEvent | undefined>({ alias: 'pMotionOnBeforeLeave' });\n /**\n * Callback fired when the leave transition/animation starts.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onLeave = output<MotionEvent | undefined>({ alias: 'pMotionOnLeave' });\n /**\n * Callback fired after the leave transition/animation ends.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onAfterLeave = output<MotionEvent | undefined>({ alias: 'pMotionOnAfterLeave' });\n /**\n * Callback fired when the leave transition/animation is cancelled.\n * @param {MotionEvent} [event] - The event object containing details about the motion.\n * @param {Element} event.element - The element being transitioned/animated.\n * @group Emits\n */\n onLeaveCancelled = output<MotionEvent | undefined>({ alias: 'pMotionOnLeaveCancelled' });\n\n /******************** Computed ********************/\n\n private motionOptions = computed<MotionOptions>(() => {\n const options = this.options() ?? {};\n\n return {\n name: options.name ?? this.name(),\n type: options.type ?? this.type(),\n safe: options.safe ?? this.safe(),\n disabled: options.disabled ?? this.disabled(),\n appear: false,\n enter: options.enter ?? this.enter(),\n leave: options.leave ?? this.leave(),\n duration: options.duration ?? this.duration(),\n enterClass: {\n from: options.enterClass?.from ?? (!options.name ? this.enterFromClass() : undefined),\n to: options.enterClass?.to ?? (!options.name ? this.enterToClass() : undefined),\n active: options.enterClass?.active ?? (!options.name ? this.enterActiveClass() : undefined)\n },\n leaveClass: {\n from: options.leaveClass?.from ?? (!options.name ? this.leaveFromClass() : undefined),\n to: options.leaveClass?.to ?? (!options.name ? this.leaveToClass() : undefined),\n active: options.leaveClass?.active ?? (!options.name ? this.leaveActiveClass() : undefined)\n },\n onBeforeEnter: options.onBeforeEnter ?? this.handleBeforeEnter,\n onEnter: options.onEnter ?? this.handleEnter,\n onAfterEnter: options.onAfterEnter ?? this.handleAfterEnter,\n onEnterCancelled: options.onEnterCancelled ?? this.handleEnterCancelled,\n onBeforeLeave: options.onBeforeLeave ?? this.handleBeforeLeave,\n onLeave: options.onLeave ?? this.handleLeave,\n onAfterLeave: options.onAfterLeave ?? this.handleAfterLeave,\n onLeaveCancelled: options.onLeaveCancelled ?? this.handleLeaveCancelled\n };\n });\n\n private motion: MotionInstance | undefined;\n private isInitialMount = true;\n private cancelled = false;\n private destroyed = false;\n\n private readonly handleBeforeEnter = (event?: MotionEvent) => !this.destroyed && this.onBeforeEnter.emit(event);\n private readonly handleEnter = (event?: MotionEvent) => !this.destroyed && this.onEnter.emit(event);\n private readonly handleAfterEnter = (event?: MotionEvent) => !this.destroyed && this.onAfterEnter.emit(event);\n private readonly handleEnterCancelled = (event?: MotionEvent) => !this.destroyed && this.onEnterCancelled.emit(event);\n private readonly handleBeforeLeave = (event?: MotionEvent) => !this.destroyed && this.onBeforeLeave.emit(event);\n private readonly handleLeave = (event?: MotionEvent) => !this.destroyed && this.onLeave.emit(event);\n private readonly handleAfterLeave = (event?: MotionEvent) => !this.destroyed && this.onAfterLeave.emit(event);\n private readonly handleLeaveCancelled = (event?: MotionEvent) => !this.destroyed && this.onLeaveCancelled.emit(event);\n\n constructor() {\n super();\n\n effect(() => {\n if (!this.motion) {\n this.motion = createMotion(this.$el, this.motionOptions());\n } else {\n // @todo: Update motion options method to update options dynamically\n //this.motion.update(this.$el, this.motionOptions());\n }\n });\n\n afterRenderEffect(() => {\n if (!this.$el) return;\n\n const shouldAppear = this.isInitialMount && this.visible() && this.appear();\n const hideStrategy = this.hideStrategy();\n\n if (this.visible()) {\n resetStyles(this.$el, hideStrategy);\n\n if (shouldAppear || !this.isInitialMount) {\n this.applyMotionDuration('enter');\n this.motion?.enter();\n }\n } else if (!this.isInitialMount) {\n this.applyMotionDuration('leave');\n this.motion?.leave()?.then(() => {\n if (this.$el && !this.cancelled && !this.visible()) {\n applyHiddenStyles(this.$el, hideStrategy);\n }\n });\n } else {\n applyHiddenStyles(this.$el, hideStrategy);\n }\n\n this.isInitialMount = false;\n });\n }\n\n private applyMotionDuration(phase: MotionPhase): void {\n const options = untracked(this.motionOptions);\n const ms = resolveDuration(options.duration, phase);\n\n if (ms == null || !this.$el) return;\n\n const el = this.$el as HTMLElement;\n const durationValue = `${ms}ms`;\n\n if (options.type === 'transition') {\n el.style.transitionDuration = durationValue;\n } else {\n el.style.animationDuration = durationValue;\n }\n }\n\n onDestroy(): void {\n this.destroyed = true;\n this.cancelled = true;\n\n this.motion?.cancel();\n this.motion = undefined;\n\n resetStyles(this.$el, this.hideStrategy());\n\n this.$el?.remove();\n\n this.isInitialMount = true;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Motion } from './motion.component';\nimport { MotionDirective } from './motion.directive';\n\nexport * from './motion.component';\nexport * from './motion.directive';\n\n@NgModule({\n imports: [Motion, MotionDirective],\n exports: [Motion, MotionDirective]\n})\nexport class MotionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}