primeng 21.1.2 → 21.1.4

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 (232) hide show
  1. package/fesm2022/primeng-accordion.mjs +37 -37
  2. package/fesm2022/primeng-accordion.mjs.map +1 -1
  3. package/fesm2022/primeng-animateonscroll.mjs +7 -7
  4. package/fesm2022/primeng-api.mjs +31 -31
  5. package/fesm2022/primeng-autocomplete.mjs +18 -18
  6. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  7. package/fesm2022/primeng-autofocus.mjs +7 -7
  8. package/fesm2022/primeng-avatar.mjs +10 -10
  9. package/fesm2022/primeng-avatargroup.mjs +10 -10
  10. package/fesm2022/primeng-badge.mjs +22 -22
  11. package/fesm2022/primeng-badge.mjs.map +1 -1
  12. package/fesm2022/primeng-base.mjs +3 -3
  13. package/fesm2022/primeng-basecomponent.mjs +14 -14
  14. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  15. package/fesm2022/primeng-baseeditableholder.mjs +9 -9
  16. package/fesm2022/primeng-baseeditableholder.mjs.map +1 -1
  17. package/fesm2022/primeng-baseinput.mjs +14 -14
  18. package/fesm2022/primeng-baseinput.mjs.map +1 -1
  19. package/fesm2022/primeng-basemodelholder.mjs +5 -5
  20. package/fesm2022/primeng-basemodelholder.mjs.map +1 -1
  21. package/fesm2022/primeng-bind.mjs +12 -12
  22. package/fesm2022/primeng-bind.mjs.map +1 -1
  23. package/fesm2022/primeng-blockui.mjs +10 -10
  24. package/fesm2022/primeng-breadcrumb.mjs +10 -10
  25. package/fesm2022/primeng-button.mjs +34 -34
  26. package/fesm2022/primeng-button.mjs.map +1 -1
  27. package/fesm2022/primeng-buttongroup.mjs +10 -10
  28. package/fesm2022/primeng-card.mjs +11 -11
  29. package/fesm2022/primeng-card.mjs.map +1 -1
  30. package/fesm2022/primeng-carousel.mjs +10 -10
  31. package/fesm2022/primeng-cascadeselect.mjs +26 -26
  32. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  33. package/fesm2022/primeng-chart.mjs +10 -10
  34. package/fesm2022/primeng-checkbox.mjs +14 -14
  35. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  36. package/fesm2022/primeng-chip.mjs +10 -10
  37. package/fesm2022/primeng-classnames.mjs +9 -9
  38. package/fesm2022/primeng-classnames.mjs.map +1 -1
  39. package/fesm2022/primeng-colorpicker.mjs +14 -14
  40. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  41. package/fesm2022/primeng-config.mjs +16 -16
  42. package/fesm2022/primeng-config.mjs.map +1 -1
  43. package/fesm2022/primeng-confirmdialog.mjs +12 -12
  44. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  45. package/fesm2022/primeng-confirmpopup.mjs +20 -20
  46. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  47. package/fesm2022/primeng-contextmenu.mjs +24 -24
  48. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  49. package/fesm2022/primeng-dataview.mjs +10 -10
  50. package/fesm2022/primeng-datepicker.mjs +14 -14
  51. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  52. package/fesm2022/primeng-dialog.mjs +19 -19
  53. package/fesm2022/primeng-dialog.mjs.map +1 -1
  54. package/fesm2022/primeng-divider.mjs +10 -10
  55. package/fesm2022/primeng-dock.mjs +12 -12
  56. package/fesm2022/primeng-dock.mjs.map +1 -1
  57. package/fesm2022/primeng-dragdrop.mjs +10 -10
  58. package/fesm2022/primeng-drawer.mjs +18 -18
  59. package/fesm2022/primeng-drawer.mjs.map +1 -1
  60. package/fesm2022/primeng-dynamicdialog.mjs +16 -16
  61. package/fesm2022/primeng-editor.mjs +10 -10
  62. package/fesm2022/primeng-fieldset.mjs +12 -12
  63. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  64. package/fesm2022/primeng-fileupload.mjs +18 -18
  65. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  66. package/fesm2022/primeng-floatlabel.mjs +10 -10
  67. package/fesm2022/primeng-fluid.mjs +10 -10
  68. package/fesm2022/primeng-focustrap.mjs +7 -7
  69. package/fesm2022/primeng-galleria.mjs +28 -28
  70. package/fesm2022/primeng-galleria.mjs.map +1 -1
  71. package/fesm2022/primeng-iconfield.mjs +10 -10
  72. package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
  73. package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
  74. package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
  75. package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
  76. package/fesm2022/primeng-icons-angledown.mjs +3 -3
  77. package/fesm2022/primeng-icons-angleleft.mjs +3 -3
  78. package/fesm2022/primeng-icons-angleright.mjs +3 -3
  79. package/fesm2022/primeng-icons-angleup.mjs +3 -3
  80. package/fesm2022/primeng-icons-arrowdown.mjs +3 -3
  81. package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
  82. package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
  83. package/fesm2022/primeng-icons-arrowleft.mjs +3 -3
  84. package/fesm2022/primeng-icons-arrowright.mjs +3 -3
  85. package/fesm2022/primeng-icons-arrowup.mjs +3 -3
  86. package/fesm2022/primeng-icons-ban.mjs +3 -3
  87. package/fesm2022/primeng-icons-bars.mjs +3 -3
  88. package/fesm2022/primeng-icons-baseicon.mjs +6 -6
  89. package/fesm2022/primeng-icons-blank.mjs +3 -3
  90. package/fesm2022/primeng-icons-calendar.mjs +3 -3
  91. package/fesm2022/primeng-icons-caretleft.mjs +3 -3
  92. package/fesm2022/primeng-icons-caretright.mjs +3 -3
  93. package/fesm2022/primeng-icons-check.mjs +3 -3
  94. package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
  95. package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
  96. package/fesm2022/primeng-icons-chevronright.mjs +3 -3
  97. package/fesm2022/primeng-icons-chevronup.mjs +3 -3
  98. package/fesm2022/primeng-icons-exclamationtriangle.mjs +3 -3
  99. package/fesm2022/primeng-icons-eye.mjs +3 -3
  100. package/fesm2022/primeng-icons-eyeslash.mjs +3 -3
  101. package/fesm2022/primeng-icons-filter.mjs +3 -3
  102. package/fesm2022/primeng-icons-filterfill.mjs +3 -3
  103. package/fesm2022/primeng-icons-filterslash.mjs +3 -3
  104. package/fesm2022/primeng-icons-home.mjs +3 -3
  105. package/fesm2022/primeng-icons-infocircle.mjs +3 -3
  106. package/fesm2022/primeng-icons-minus.mjs +3 -3
  107. package/fesm2022/primeng-icons-pencil.mjs +3 -3
  108. package/fesm2022/primeng-icons-plus.mjs +3 -3
  109. package/fesm2022/primeng-icons-refresh.mjs +3 -3
  110. package/fesm2022/primeng-icons-search.mjs +3 -3
  111. package/fesm2022/primeng-icons-searchminus.mjs +3 -3
  112. package/fesm2022/primeng-icons-searchplus.mjs +3 -3
  113. package/fesm2022/primeng-icons-sortalt.mjs +3 -3
  114. package/fesm2022/primeng-icons-sortamountdown.mjs +3 -3
  115. package/fesm2022/primeng-icons-sortamountupalt.mjs +3 -3
  116. package/fesm2022/primeng-icons-spinner.mjs +3 -3
  117. package/fesm2022/primeng-icons-star.mjs +3 -3
  118. package/fesm2022/primeng-icons-starfill.mjs +3 -3
  119. package/fesm2022/primeng-icons-thlarge.mjs +3 -3
  120. package/fesm2022/primeng-icons-times.mjs +3 -3
  121. package/fesm2022/primeng-icons-timescircle.mjs +3 -3
  122. package/fesm2022/primeng-icons-trash.mjs +3 -3
  123. package/fesm2022/primeng-icons-undo.mjs +3 -3
  124. package/fesm2022/primeng-icons-upload.mjs +3 -3
  125. package/fesm2022/primeng-icons-windowmaximize.mjs +3 -3
  126. package/fesm2022/primeng-icons-windowminimize.mjs +3 -3
  127. package/fesm2022/primeng-iftalabel.mjs +10 -10
  128. package/fesm2022/primeng-image.mjs +20 -20
  129. package/fesm2022/primeng-image.mjs.map +1 -1
  130. package/fesm2022/primeng-imagecompare.mjs +10 -10
  131. package/fesm2022/primeng-inplace.mjs +16 -16
  132. package/fesm2022/primeng-inputgroup.mjs +10 -10
  133. package/fesm2022/primeng-inputgroupaddon.mjs +10 -10
  134. package/fesm2022/primeng-inputicon.mjs +10 -10
  135. package/fesm2022/primeng-inputmask.mjs +21 -21
  136. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  137. package/fesm2022/primeng-inputnumber.mjs +10 -10
  138. package/fesm2022/primeng-inputotp.mjs +13 -13
  139. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  140. package/fesm2022/primeng-inputtext.mjs +17 -17
  141. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  142. package/fesm2022/primeng-keyfilter.mjs +7 -7
  143. package/fesm2022/primeng-knob.mjs +11 -11
  144. package/fesm2022/primeng-knob.mjs.map +1 -1
  145. package/fesm2022/primeng-listbox.mjs +18 -18
  146. package/fesm2022/primeng-listbox.mjs.map +1 -1
  147. package/fesm2022/primeng-megamenu.mjs +16 -16
  148. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  149. package/fesm2022/primeng-menu.mjs +27 -27
  150. package/fesm2022/primeng-menu.mjs.map +1 -1
  151. package/fesm2022/primeng-menubar.mjs +20 -20
  152. package/fesm2022/primeng-menubar.mjs.map +1 -1
  153. package/fesm2022/primeng-message.mjs +13 -13
  154. package/fesm2022/primeng-message.mjs.map +1 -1
  155. package/fesm2022/primeng-metergroup.mjs +13 -13
  156. package/fesm2022/primeng-motion.mjs +53 -52
  157. package/fesm2022/primeng-motion.mjs.map +1 -1
  158. package/fesm2022/primeng-multiselect.mjs +29 -29
  159. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  160. package/fesm2022/primeng-orderlist.mjs +20 -12
  161. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  162. package/fesm2022/primeng-organizationchart.mjs +13 -13
  163. package/fesm2022/primeng-overlay.mjs +17 -17
  164. package/fesm2022/primeng-overlay.mjs.map +1 -1
  165. package/fesm2022/primeng-overlaybadge.mjs +10 -10
  166. package/fesm2022/primeng-paginator.mjs +12 -12
  167. package/fesm2022/primeng-paginator.mjs.map +1 -1
  168. package/fesm2022/primeng-panel.mjs +12 -12
  169. package/fesm2022/primeng-panel.mjs.map +1 -1
  170. package/fesm2022/primeng-panelmenu.mjs +25 -25
  171. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  172. package/fesm2022/primeng-password.mjs +26 -26
  173. package/fesm2022/primeng-password.mjs.map +1 -1
  174. package/fesm2022/primeng-picklist.mjs +12 -12
  175. package/fesm2022/primeng-picklist.mjs.map +1 -1
  176. package/fesm2022/primeng-popover.mjs +14 -14
  177. package/fesm2022/primeng-popover.mjs.map +1 -1
  178. package/fesm2022/primeng-progressbar.mjs +10 -10
  179. package/fesm2022/primeng-progressspinner.mjs +10 -10
  180. package/fesm2022/primeng-radiobutton.mjs +16 -16
  181. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  182. package/fesm2022/primeng-rating.mjs +11 -11
  183. package/fesm2022/primeng-rating.mjs.map +1 -1
  184. package/fesm2022/primeng-ripple.mjs +10 -10
  185. package/fesm2022/primeng-scroller.mjs +10 -10
  186. package/fesm2022/primeng-scrollpanel.mjs +10 -10
  187. package/fesm2022/primeng-scrolltop.mjs +14 -14
  188. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  189. package/fesm2022/primeng-select.mjs +23 -23
  190. package/fesm2022/primeng-select.mjs.map +1 -1
  191. package/fesm2022/primeng-selectbutton.mjs +12 -12
  192. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  193. package/fesm2022/primeng-skeleton.mjs +10 -10
  194. package/fesm2022/primeng-slider.mjs +10 -10
  195. package/fesm2022/primeng-speeddial.mjs +11 -11
  196. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  197. package/fesm2022/primeng-splitbutton.mjs +15 -15
  198. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  199. package/fesm2022/primeng-splitter.mjs +12 -12
  200. package/fesm2022/primeng-splitter.mjs.map +1 -1
  201. package/fesm2022/primeng-stepper.mjs +71 -71
  202. package/fesm2022/primeng-stepper.mjs.map +1 -1
  203. package/fesm2022/primeng-steps.mjs +10 -10
  204. package/fesm2022/primeng-styleclass.mjs +7 -7
  205. package/fesm2022/primeng-table.mjs +100 -100
  206. package/fesm2022/primeng-table.mjs.map +1 -1
  207. package/fesm2022/primeng-tabs.mjs +61 -61
  208. package/fesm2022/primeng-tabs.mjs.map +1 -1
  209. package/fesm2022/primeng-tag.mjs +10 -10
  210. package/fesm2022/primeng-terminal.mjs +13 -13
  211. package/fesm2022/primeng-textarea.mjs +16 -16
  212. package/fesm2022/primeng-textarea.mjs.map +1 -1
  213. package/fesm2022/primeng-tieredmenu.mjs +24 -24
  214. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  215. package/fesm2022/primeng-timeline.mjs +10 -10
  216. package/fesm2022/primeng-toast.mjs +19 -19
  217. package/fesm2022/primeng-toast.mjs.map +1 -1
  218. package/fesm2022/primeng-togglebutton.mjs +11 -11
  219. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  220. package/fesm2022/primeng-toggleswitch.mjs +11 -11
  221. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  222. package/fesm2022/primeng-toolbar.mjs +10 -10
  223. package/fesm2022/primeng-tooltip.mjs +15 -15
  224. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  225. package/fesm2022/primeng-tree.mjs +24 -24
  226. package/fesm2022/primeng-tree.mjs.map +1 -1
  227. package/fesm2022/primeng-treeselect.mjs +17 -17
  228. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  229. package/fesm2022/primeng-treetable.mjs +58 -58
  230. package/fesm2022/primeng-usestyle.mjs +3 -3
  231. package/package.json +1 -1
  232. package/types/primeng-orderlist.d.ts +7 -3
@@ -57,10 +57,10 @@ class MotionStyle extends BaseStyle {
57
57
  name = 'motion';
58
58
  style = style;
59
59
  classes = classes;
60
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: MotionStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
61
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: MotionStyle });
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 });
62
62
  }
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: MotionStyle, decorators: [{
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MotionStyle, decorators: [{
64
64
  type: Injectable
65
65
  }] });
66
66
  /**
@@ -99,17 +99,17 @@ class Motion extends BaseComponent {
99
99
  * Whether the element is visible or not.
100
100
  * @group Props
101
101
  */
102
- visible = input(false, ...(ngDevMode ? [{ debugName: "visible" }] : []));
102
+ visible = input(false, ...(ngDevMode ? [{ debugName: "visible" }] : /* istanbul ignore next */ []));
103
103
  /**
104
104
  * Whether to mount the element on enter.
105
105
  * @group Props
106
106
  */
107
- mountOnEnter = input(true, ...(ngDevMode ? [{ debugName: "mountOnEnter" }] : []));
107
+ mountOnEnter = input(true, ...(ngDevMode ? [{ debugName: "mountOnEnter" }] : /* istanbul ignore next */ []));
108
108
  /**
109
109
  * Whether to unmount the element on leave.
110
110
  * @group Props
111
111
  */
112
- unmountOnLeave = input(true, ...(ngDevMode ? [{ debugName: "unmountOnLeave" }] : []));
112
+ unmountOnLeave = input(true, ...(ngDevMode ? [{ debugName: "unmountOnLeave" }] : /* istanbul ignore next */ []));
113
113
  /**
114
114
  * The name of the motion. It can be a predefined motion name or a custom one.
115
115
  * phases:
@@ -121,83 +121,83 @@ class Motion extends BaseComponent {
121
121
  * [name]-leave-to
122
122
  * @group Props
123
123
  */
124
- name = input(undefined, ...(ngDevMode ? [{ debugName: "name" }] : []));
124
+ name = input(undefined, ...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
125
125
  /**
126
126
  * The type of the motion, valid values 'transition' and 'animation'.
127
127
  * @group Props
128
128
  */
129
- type = input(undefined, ...(ngDevMode ? [{ debugName: "type" }] : []));
129
+ type = input(undefined, ...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
130
130
  /**
131
131
  * Whether the motion is safe.
132
132
  * @group Props
133
133
  */
134
- safe = input(undefined, ...(ngDevMode ? [{ debugName: "safe" }] : []));
134
+ safe = input(undefined, ...(ngDevMode ? [{ debugName: "safe" }] : /* istanbul ignore next */ []));
135
135
  /**
136
136
  * Whether the motion is disabled.
137
137
  * @group Props
138
138
  */
139
- disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
139
+ disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
140
140
  /**
141
141
  * Whether the motion should appear.
142
142
  * @group Props
143
143
  */
144
- appear = input(false, ...(ngDevMode ? [{ debugName: "appear" }] : []));
144
+ appear = input(false, ...(ngDevMode ? [{ debugName: "appear" }] : /* istanbul ignore next */ []));
145
145
  /**
146
146
  * Whether the motion should enter.
147
147
  * @group Props
148
148
  */
149
- enter = input(true, ...(ngDevMode ? [{ debugName: "enter" }] : []));
149
+ enter = input(true, ...(ngDevMode ? [{ debugName: "enter" }] : /* istanbul ignore next */ []));
150
150
  /**
151
151
  * Whether the motion should leave.
152
152
  * @group Props
153
153
  */
154
- leave = input(true, ...(ngDevMode ? [{ debugName: "leave" }] : []));
154
+ leave = input(true, ...(ngDevMode ? [{ debugName: "leave" }] : /* istanbul ignore next */ []));
155
155
  /**
156
156
  * The duration of the motion.
157
157
  * @group Props
158
158
  */
159
- duration = input(undefined, ...(ngDevMode ? [{ debugName: "duration" }] : []));
159
+ duration = input(undefined, ...(ngDevMode ? [{ debugName: "duration" }] : /* istanbul ignore next */ []));
160
160
  /**
161
161
  * The hide strategy of the motion, valid values 'display' and 'visibility'.
162
162
  * @group Props
163
163
  */
164
- hideStrategy = input('display', ...(ngDevMode ? [{ debugName: "hideStrategy" }] : []));
164
+ hideStrategy = input('display', ...(ngDevMode ? [{ debugName: "hideStrategy" }] : /* istanbul ignore next */ []));
165
165
  /**
166
166
  * The enter from class of the motion.
167
167
  * @group Props
168
168
  */
169
- enterFromClass = input(undefined, ...(ngDevMode ? [{ debugName: "enterFromClass" }] : []));
169
+ enterFromClass = input(undefined, ...(ngDevMode ? [{ debugName: "enterFromClass" }] : /* istanbul ignore next */ []));
170
170
  /**
171
171
  * The enter to class of the motion.
172
172
  * @group Props
173
173
  */
174
- enterToClass = input(undefined, ...(ngDevMode ? [{ debugName: "enterToClass" }] : []));
174
+ enterToClass = input(undefined, ...(ngDevMode ? [{ debugName: "enterToClass" }] : /* istanbul ignore next */ []));
175
175
  /**
176
176
  * The enter active class of the motion.
177
177
  * @group Props
178
178
  */
179
- enterActiveClass = input(undefined, ...(ngDevMode ? [{ debugName: "enterActiveClass" }] : []));
179
+ enterActiveClass = input(undefined, ...(ngDevMode ? [{ debugName: "enterActiveClass" }] : /* istanbul ignore next */ []));
180
180
  /**
181
181
  * The leave from class of the motion.
182
182
  * @group Props
183
183
  */
184
- leaveFromClass = input(undefined, ...(ngDevMode ? [{ debugName: "leaveFromClass" }] : []));
184
+ leaveFromClass = input(undefined, ...(ngDevMode ? [{ debugName: "leaveFromClass" }] : /* istanbul ignore next */ []));
185
185
  /**
186
186
  * The leave to class of the motion.
187
187
  * @group Props
188
188
  */
189
- leaveToClass = input(undefined, ...(ngDevMode ? [{ debugName: "leaveToClass" }] : []));
189
+ leaveToClass = input(undefined, ...(ngDevMode ? [{ debugName: "leaveToClass" }] : /* istanbul ignore next */ []));
190
190
  /**
191
191
  * The leave active class of the motion.
192
192
  * @group Props
193
193
  */
194
- leaveActiveClass = input(undefined, ...(ngDevMode ? [{ debugName: "leaveActiveClass" }] : []));
194
+ leaveActiveClass = input(undefined, ...(ngDevMode ? [{ debugName: "leaveActiveClass" }] : /* istanbul ignore next */ []));
195
195
  /******************** All Inputs ********************/
196
196
  /**
197
197
  * The motion options.
198
198
  * @group Props
199
199
  */
200
- options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
200
+ options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : /* istanbul ignore next */ []));
201
201
  /******************** Outputs ********************/
202
202
  /**
203
203
  * Callback fired before the enter transition/animation starts.
@@ -286,12 +286,12 @@ class Motion extends BaseComponent {
286
286
  onAfterLeave: options.onAfterLeave ?? this.handleAfterLeave,
287
287
  onLeaveCancelled: options.onLeaveCancelled ?? this.handleLeaveCancelled
288
288
  };
289
- }, ...(ngDevMode ? [{ debugName: "motionOptions" }] : []));
289
+ }, ...(ngDevMode ? [{ debugName: "motionOptions" }] : /* istanbul ignore next */ []));
290
290
  motion;
291
291
  isInitialMount = true;
292
292
  cancelled = false;
293
293
  destroyed = false;
294
- rendered = signal(false, ...(ngDevMode ? [{ debugName: "rendered" }] : []));
294
+ rendered = signal(false, ...(ngDevMode ? [{ debugName: "rendered" }] : /* istanbul ignore next */ []));
295
295
  handleBeforeEnter = (event) => !this.destroyed && this.onBeforeEnter.emit(event);
296
296
  handleEnter = (event) => !this.destroyed && this.onEnter.emit(event);
297
297
  handleAfterEnter = (event) => !this.destroyed && this.onAfterEnter.emit(event);
@@ -376,14 +376,14 @@ class Motion extends BaseComponent {
376
376
  this.$el?.remove();
377
377
  this.isInitialMount = true;
378
378
  }
379
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: Motion, deps: [], target: i0.ɵɵFactoryTarget.Component });
380
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.0", 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: `
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: `
381
381
  @if (rendered()) {
382
382
  <ng-content />
383
383
  }
384
384
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: BindModule }] });
385
385
  }
386
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: Motion, decorators: [{
386
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: Motion, decorators: [{
387
387
  type: Component,
388
388
  args: [{
389
389
  selector: 'p-motion',
@@ -414,7 +414,7 @@ class MotionDirective extends BaseComponent {
414
414
  * Whether the element is visible or not.
415
415
  * @group Props
416
416
  */
417
- visible = input(false, { ...(ngDevMode ? { debugName: "visible" } : {}), alias: 'pMotion' });
417
+ visible = input(false, { ...(ngDevMode ? { debugName: "visible" } : /* istanbul ignore next */ {}), alias: 'pMotion' });
418
418
  /**
419
419
  * The name of the motion. It can be a predefined motion name or a custom one.
420
420
  * phases:
@@ -426,83 +426,83 @@ class MotionDirective extends BaseComponent {
426
426
  * [name]-leave-to
427
427
  * @group Props
428
428
  */
429
- name = input(undefined, { ...(ngDevMode ? { debugName: "name" } : {}), alias: 'pMotionName' });
429
+ name = input(undefined, { ...(ngDevMode ? { debugName: "name" } : /* istanbul ignore next */ {}), alias: 'pMotionName' });
430
430
  /**
431
431
  * The type of the motion, valid values 'transition' and 'animation'.
432
432
  * @group Props
433
433
  */
434
- type = input(undefined, { ...(ngDevMode ? { debugName: "type" } : {}), alias: 'pMotionType' });
434
+ type = input(undefined, { ...(ngDevMode ? { debugName: "type" } : /* istanbul ignore next */ {}), alias: 'pMotionType' });
435
435
  /**
436
436
  * Whether the motion is safe.
437
437
  * @group Props
438
438
  */
439
- safe = input(undefined, { ...(ngDevMode ? { debugName: "safe" } : {}), alias: 'pMotionSafe' });
439
+ safe = input(undefined, { ...(ngDevMode ? { debugName: "safe" } : /* istanbul ignore next */ {}), alias: 'pMotionSafe' });
440
440
  /**
441
441
  * Whether the motion is disabled.
442
442
  * @group Props
443
443
  */
444
- disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : {}), alias: 'pMotionDisabled' });
444
+ disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), alias: 'pMotionDisabled' });
445
445
  /**
446
446
  * Whether the motion should appear.
447
447
  * @group Props
448
448
  */
449
- appear = input(false, { ...(ngDevMode ? { debugName: "appear" } : {}), alias: 'pMotionAppear' });
449
+ appear = input(false, { ...(ngDevMode ? { debugName: "appear" } : /* istanbul ignore next */ {}), alias: 'pMotionAppear' });
450
450
  /**
451
451
  * Whether the motion should enter.
452
452
  * @group Props
453
453
  */
454
- enter = input(true, { ...(ngDevMode ? { debugName: "enter" } : {}), alias: 'pMotionEnter' });
454
+ enter = input(true, { ...(ngDevMode ? { debugName: "enter" } : /* istanbul ignore next */ {}), alias: 'pMotionEnter' });
455
455
  /**
456
456
  * Whether the motion should leave.
457
457
  * @group Props
458
458
  */
459
- leave = input(true, { ...(ngDevMode ? { debugName: "leave" } : {}), alias: 'pMotionLeave' });
459
+ leave = input(true, { ...(ngDevMode ? { debugName: "leave" } : /* istanbul ignore next */ {}), alias: 'pMotionLeave' });
460
460
  /**
461
461
  * The duration of the motion.
462
462
  * @group Props
463
463
  */
464
- duration = input(undefined, { ...(ngDevMode ? { debugName: "duration" } : {}), alias: 'pMotionDuration' });
464
+ duration = input(undefined, { ...(ngDevMode ? { debugName: "duration" } : /* istanbul ignore next */ {}), alias: 'pMotionDuration' });
465
465
  /**
466
466
  * The hide strategy of the motion, valid values 'display' and 'visibility'.
467
467
  * @group Props
468
468
  */
469
- hideStrategy = input('display', { ...(ngDevMode ? { debugName: "hideStrategy" } : {}), alias: 'pMotionHideStrategy' });
469
+ hideStrategy = input('display', { ...(ngDevMode ? { debugName: "hideStrategy" } : /* istanbul ignore next */ {}), alias: 'pMotionHideStrategy' });
470
470
  /**
471
471
  * The enter from class of the motion.
472
472
  * @group Props
473
473
  */
474
- enterFromClass = input(undefined, { ...(ngDevMode ? { debugName: "enterFromClass" } : {}), alias: 'pMotionEnterFromClass' });
474
+ enterFromClass = input(undefined, { ...(ngDevMode ? { debugName: "enterFromClass" } : /* istanbul ignore next */ {}), alias: 'pMotionEnterFromClass' });
475
475
  /**
476
476
  * The enter to class of the motion.
477
477
  * @group Props
478
478
  */
479
- enterToClass = input(undefined, { ...(ngDevMode ? { debugName: "enterToClass" } : {}), alias: 'pMotionEnterToClass' });
479
+ enterToClass = input(undefined, { ...(ngDevMode ? { debugName: "enterToClass" } : /* istanbul ignore next */ {}), alias: 'pMotionEnterToClass' });
480
480
  /**
481
481
  * The enter active class of the motion.
482
482
  * @group Props
483
483
  */
484
- enterActiveClass = input(undefined, { ...(ngDevMode ? { debugName: "enterActiveClass" } : {}), alias: 'pMotionEnterActiveClass' });
484
+ enterActiveClass = input(undefined, { ...(ngDevMode ? { debugName: "enterActiveClass" } : /* istanbul ignore next */ {}), alias: 'pMotionEnterActiveClass' });
485
485
  /**
486
486
  * The leave from class of the motion.
487
487
  * @group Props
488
488
  */
489
- leaveFromClass = input(undefined, { ...(ngDevMode ? { debugName: "leaveFromClass" } : {}), alias: 'pMotionLeaveFromClass' });
489
+ leaveFromClass = input(undefined, { ...(ngDevMode ? { debugName: "leaveFromClass" } : /* istanbul ignore next */ {}), alias: 'pMotionLeaveFromClass' });
490
490
  /**
491
491
  * The leave to class of the motion.
492
492
  * @group Props
493
493
  */
494
- leaveToClass = input(undefined, { ...(ngDevMode ? { debugName: "leaveToClass" } : {}), alias: 'pMotionLeaveToClass' });
494
+ leaveToClass = input(undefined, { ...(ngDevMode ? { debugName: "leaveToClass" } : /* istanbul ignore next */ {}), alias: 'pMotionLeaveToClass' });
495
495
  /**
496
496
  * The leave active class of the motion.
497
497
  * @group Props
498
498
  */
499
- leaveActiveClass = input(undefined, { ...(ngDevMode ? { debugName: "leaveActiveClass" } : {}), alias: 'pMotionLeaveActiveClass' });
499
+ leaveActiveClass = input(undefined, { ...(ngDevMode ? { debugName: "leaveActiveClass" } : /* istanbul ignore next */ {}), alias: 'pMotionLeaveActiveClass' });
500
500
  /******************** All Inputs ********************/
501
501
  /**
502
502
  * The motion options.
503
503
  * @group Props
504
504
  */
505
- options = input({}, { ...(ngDevMode ? { debugName: "options" } : {}), alias: 'pMotionOptions' });
505
+ options = input({}, { ...(ngDevMode ? { debugName: "options" } : /* istanbul ignore next */ {}), alias: 'pMotionOptions' });
506
506
  /******************** Outputs ********************/
507
507
  /**
508
508
  * Callback fired before the enter transition/animation starts.
@@ -591,7 +591,7 @@ class MotionDirective extends BaseComponent {
591
591
  onAfterLeave: options.onAfterLeave ?? this.handleAfterLeave,
592
592
  onLeaveCancelled: options.onLeaveCancelled ?? this.handleLeaveCancelled
593
593
  };
594
- }, ...(ngDevMode ? [{ debugName: "motionOptions" }] : []));
594
+ }, ...(ngDevMode ? [{ debugName: "motionOptions" }] : /* istanbul ignore next */ []));
595
595
  motion;
596
596
  isInitialMount = true;
597
597
  cancelled = false;
@@ -661,12 +661,13 @@ class MotionDirective extends BaseComponent {
661
661
  this.motion?.cancel();
662
662
  this.motion = undefined;
663
663
  resetStyles(this.$el, this.hideStrategy());
664
+ this.$el?.remove();
664
665
  this.isInitialMount = true;
665
666
  }
666
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: MotionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
667
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.0", 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 });
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 });
668
669
  }
669
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: MotionDirective, decorators: [{
670
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MotionDirective, decorators: [{
670
671
  type: Directive,
671
672
  args: [{
672
673
  selector: '[pMotion]',
@@ -676,11 +677,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
676
677
  }], 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"] }] } });
677
678
 
678
679
  class MotionModule {
679
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: MotionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
680
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.0", ngImport: i0, type: MotionModule, imports: [Motion, MotionDirective], exports: [Motion, MotionDirective] });
681
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: MotionModule, imports: [Motion] });
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] });
682
683
  }
683
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: MotionModule, decorators: [{
684
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: MotionModule, decorators: [{
684
685
  type: NgModule,
685
686
  args: [{
686
687
  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.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 }>();\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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"}