primereact 10.0.2 → 10.0.3

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 (200) hide show
  1. package/README.md +1 -4
  2. package/autocomplete/autocomplete.cjs.js +4 -2
  3. package/autocomplete/autocomplete.cjs.min.js +1 -1
  4. package/autocomplete/autocomplete.esm.js +4 -2
  5. package/autocomplete/autocomplete.esm.min.js +1 -1
  6. package/autocomplete/autocomplete.js +4 -2
  7. package/autocomplete/autocomplete.min.js +1 -1
  8. package/blockui/blockui.cjs.js +3 -6
  9. package/blockui/blockui.cjs.min.js +1 -1
  10. package/blockui/blockui.esm.js +3 -6
  11. package/blockui/blockui.esm.min.js +1 -1
  12. package/blockui/blockui.js +3 -6
  13. package/blockui/blockui.min.js +1 -1
  14. package/calendar/calendar.cjs.js +3 -5
  15. package/calendar/calendar.cjs.min.js +1 -1
  16. package/calendar/calendar.esm.js +3 -5
  17. package/calendar/calendar.esm.min.js +1 -1
  18. package/calendar/calendar.js +3 -5
  19. package/calendar/calendar.min.js +1 -1
  20. package/carousel/carousel.cjs.js +3 -1
  21. package/carousel/carousel.cjs.min.js +1 -1
  22. package/carousel/carousel.esm.js +3 -1
  23. package/carousel/carousel.esm.min.js +1 -1
  24. package/carousel/carousel.js +3 -1
  25. package/carousel/carousel.min.js +1 -1
  26. package/checkbox/checkbox.d.ts +5 -5
  27. package/componentbase/componentbase.d.ts +8 -0
  28. package/contextmenu/contextmenu.cjs.js +4 -1
  29. package/contextmenu/contextmenu.cjs.min.js +1 -1
  30. package/contextmenu/contextmenu.esm.js +4 -1
  31. package/contextmenu/contextmenu.esm.min.js +1 -1
  32. package/contextmenu/contextmenu.js +4 -1
  33. package/contextmenu/contextmenu.min.js +1 -1
  34. package/core/core.js +64 -27
  35. package/core/core.min.js +6 -6
  36. package/datatable/datatable.cjs.js +92 -41
  37. package/datatable/datatable.cjs.min.js +1 -1
  38. package/datatable/datatable.d.ts +27 -0
  39. package/datatable/datatable.esm.js +92 -41
  40. package/datatable/datatable.esm.min.js +1 -1
  41. package/datatable/datatable.js +92 -41
  42. package/datatable/datatable.min.js +1 -1
  43. package/dataview/dataview.cjs.js +24 -22
  44. package/dataview/dataview.cjs.min.js +1 -1
  45. package/dataview/dataview.esm.js +24 -22
  46. package/dataview/dataview.esm.min.js +1 -1
  47. package/dataview/dataview.js +24 -22
  48. package/dataview/dataview.min.js +1 -1
  49. package/dialog/dialog.cjs.js +2 -4
  50. package/dialog/dialog.cjs.min.js +1 -1
  51. package/dialog/dialog.esm.js +2 -4
  52. package/dialog/dialog.esm.min.js +1 -1
  53. package/dialog/dialog.js +2 -4
  54. package/dialog/dialog.min.js +1 -1
  55. package/dropdown/dropdown.cjs.js +29 -17
  56. package/dropdown/dropdown.cjs.min.js +1 -1
  57. package/dropdown/dropdown.esm.js +29 -17
  58. package/dropdown/dropdown.esm.min.js +1 -1
  59. package/dropdown/dropdown.js +29 -17
  60. package/dropdown/dropdown.min.js +1 -1
  61. package/editor/editor.cjs.js +1 -1
  62. package/editor/editor.cjs.min.js +1 -1
  63. package/editor/editor.esm.js +1 -1
  64. package/editor/editor.esm.min.js +1 -1
  65. package/editor/editor.js +1 -1
  66. package/editor/editor.min.js +1 -1
  67. package/galleria/galleria.cjs.js +3 -5
  68. package/galleria/galleria.cjs.min.js +1 -1
  69. package/galleria/galleria.esm.js +3 -5
  70. package/galleria/galleria.esm.min.js +1 -1
  71. package/galleria/galleria.js +3 -5
  72. package/galleria/galleria.min.js +1 -1
  73. package/hooks/hooks.cjs.js +2 -1
  74. package/hooks/hooks.cjs.min.js +1 -1
  75. package/hooks/hooks.d.ts +1 -1
  76. package/hooks/hooks.esm.js +2 -1
  77. package/hooks/hooks.esm.min.js +1 -1
  78. package/hooks/hooks.js +2 -1
  79. package/hooks/hooks.min.js +1 -1
  80. package/image/image.cjs.js +104 -106
  81. package/image/image.cjs.min.js +1 -1
  82. package/image/image.esm.js +104 -106
  83. package/image/image.esm.min.js +1 -1
  84. package/image/image.js +105 -107
  85. package/image/image.min.js +1 -1
  86. package/inputnumber/inputnumber.cjs.js +7 -4
  87. package/inputnumber/inputnumber.cjs.min.js +1 -1
  88. package/inputnumber/inputnumber.esm.js +7 -4
  89. package/inputnumber/inputnumber.esm.min.js +1 -1
  90. package/inputnumber/inputnumber.js +7 -4
  91. package/inputnumber/inputnumber.min.js +1 -1
  92. package/menu/menu.cjs.js +105 -1
  93. package/menu/menu.cjs.min.js +1 -1
  94. package/menu/menu.d.ts +5 -0
  95. package/menu/menu.esm.js +108 -4
  96. package/menu/menu.esm.min.js +1 -1
  97. package/menu/menu.js +105 -1
  98. package/menu/menu.min.js +1 -1
  99. package/multiselect/multiselect.cjs.js +26 -12
  100. package/multiselect/multiselect.cjs.min.js +1 -1
  101. package/multiselect/multiselect.d.ts +4 -0
  102. package/multiselect/multiselect.esm.js +26 -12
  103. package/multiselect/multiselect.esm.min.js +1 -1
  104. package/multiselect/multiselect.js +26 -12
  105. package/multiselect/multiselect.min.js +1 -1
  106. package/orderlist/orderlist.cjs.js +32 -34
  107. package/orderlist/orderlist.cjs.min.js +1 -1
  108. package/orderlist/orderlist.esm.js +32 -34
  109. package/orderlist/orderlist.esm.min.js +1 -1
  110. package/orderlist/orderlist.js +32 -34
  111. package/orderlist/orderlist.min.js +1 -1
  112. package/package.json +1 -1
  113. package/primereact.all.cjs.js +275 -171
  114. package/primereact.all.cjs.min.js +1 -1
  115. package/primereact.all.esm.js +275 -171
  116. package/primereact.all.esm.min.js +1 -1
  117. package/primereact.all.js +275 -171
  118. package/primereact.all.min.js +1 -1
  119. package/progressbar/progressbar.cjs.js +1 -1
  120. package/progressbar/progressbar.cjs.min.js +1 -1
  121. package/progressbar/progressbar.esm.js +1 -1
  122. package/progressbar/progressbar.esm.min.js +1 -1
  123. package/progressbar/progressbar.js +1 -1
  124. package/progressbar/progressbar.min.js +1 -1
  125. package/radiobutton/radiobutton.d.ts +3 -3
  126. package/resources/themes/arya-blue/theme.css +390 -518
  127. package/resources/themes/arya-green/theme.css +390 -518
  128. package/resources/themes/arya-orange/theme.css +390 -518
  129. package/resources/themes/arya-purple/theme.css +390 -518
  130. package/resources/themes/bootstrap4-dark-blue/theme.css +391 -518
  131. package/resources/themes/bootstrap4-dark-purple/theme.css +391 -518
  132. package/resources/themes/bootstrap4-light-blue/theme.css +391 -518
  133. package/resources/themes/bootstrap4-light-purple/theme.css +391 -518
  134. package/resources/themes/fluent-light/theme.css +417 -529
  135. package/resources/themes/lara-dark-blue/theme.css +395 -518
  136. package/resources/themes/lara-dark-indigo/theme.css +395 -518
  137. package/resources/themes/lara-dark-purple/theme.css +395 -518
  138. package/resources/themes/lara-dark-teal/theme.css +395 -518
  139. package/resources/themes/lara-light-blue/theme.css +564 -687
  140. package/resources/themes/lara-light-indigo/theme.css +402 -525
  141. package/resources/themes/lara-light-purple/theme.css +402 -525
  142. package/resources/themes/lara-light-teal/theme.css +402 -525
  143. package/resources/themes/luna-amber/theme.css +404 -531
  144. package/resources/themes/luna-blue/theme.css +404 -531
  145. package/resources/themes/luna-green/theme.css +404 -531
  146. package/resources/themes/luna-pink/theme.css +404 -531
  147. package/resources/themes/md-dark-deeppurple/theme.css +662 -739
  148. package/resources/themes/md-dark-indigo/theme.css +662 -739
  149. package/resources/themes/md-light-deeppurple/theme.css +567 -644
  150. package/resources/themes/md-light-indigo/theme.css +567 -644
  151. package/resources/themes/mdc-dark-deeppurple/theme.css +662 -739
  152. package/resources/themes/mdc-dark-indigo/theme.css +662 -739
  153. package/resources/themes/mdc-light-deeppurple/theme.css +567 -644
  154. package/resources/themes/mdc-light-indigo/theme.css +567 -644
  155. package/resources/themes/mira/theme.css +428 -525
  156. package/resources/themes/nano/theme.css +388 -518
  157. package/resources/themes/nova/theme.css +392 -518
  158. package/resources/themes/nova-accent/theme.css +389 -518
  159. package/resources/themes/nova-alt/theme.css +392 -518
  160. package/resources/themes/rhea/theme.css +389 -518
  161. package/resources/themes/saga-blue/theme.css +390 -518
  162. package/resources/themes/saga-green/theme.css +390 -518
  163. package/resources/themes/saga-orange/theme.css +390 -518
  164. package/resources/themes/saga-purple/theme.css +390 -518
  165. package/resources/themes/soho-dark/theme.css +421 -546
  166. package/resources/themes/soho-light/theme.css +400 -523
  167. package/resources/themes/tailwind-light/theme.css +432 -547
  168. package/resources/themes/vela-blue/theme.css +390 -518
  169. package/resources/themes/vela-green/theme.css +390 -518
  170. package/resources/themes/vela-orange/theme.css +390 -518
  171. package/resources/themes/vela-purple/theme.css +390 -518
  172. package/resources/themes/viva-dark/theme.css +414 -523
  173. package/resources/themes/viva-light/theme.css +414 -523
  174. package/scrollpanel/scrollpanel.cjs.js +33 -17
  175. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  176. package/scrollpanel/scrollpanel.esm.js +19 -3
  177. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  178. package/scrollpanel/scrollpanel.js +226 -210
  179. package/scrollpanel/scrollpanel.min.js +1 -1
  180. package/selectbutton/selectbutton.cjs.js +3 -2
  181. package/selectbutton/selectbutton.cjs.min.js +1 -1
  182. package/selectbutton/selectbutton.d.ts +6 -0
  183. package/selectbutton/selectbutton.esm.js +3 -2
  184. package/selectbutton/selectbutton.esm.min.js +1 -1
  185. package/selectbutton/selectbutton.js +4 -3
  186. package/selectbutton/selectbutton.min.js +1 -1
  187. package/sidebar/sidebar.cjs.js +87 -89
  188. package/sidebar/sidebar.cjs.min.js +1 -1
  189. package/sidebar/sidebar.esm.js +87 -89
  190. package/sidebar/sidebar.esm.min.js +1 -1
  191. package/sidebar/sidebar.js +88 -90
  192. package/sidebar/sidebar.min.js +1 -1
  193. package/utils/utils.cjs.js +23 -0
  194. package/utils/utils.cjs.min.js +1 -1
  195. package/utils/utils.d.ts +3 -0
  196. package/utils/utils.esm.js +23 -0
  197. package/utils/utils.esm.min.js +1 -1
  198. package/utils/utils.js +23 -0
  199. package/utils/utils.min.js +1 -1
  200. package/web-types.json +28 -1
@@ -1 +1 @@
1
- this.primereact=this.primereact||{},this.primereact.inputnumber=function(e,n,t,r,u,i,a,l,o,c,s){"use strict";function p(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function d(e){if(e&&e.__esModule)return e;var n=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})}})),n.default=e,Object.freeze(n)}var f=d(n),m=p(t);function b(){return b=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},b.apply(this,arguments)}function g(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function v(e){if(Array.isArray(e))return g(e)}function y(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function h(e,n){if(e){if("string"==typeof e)return g(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?g(e,n):void 0}}function x(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function I(e){return v(e)||y(e)||h(e)||x()}function w(e){return w="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},w(e)}function D(e,n){if("object"!==w(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,n||"default");if("object"!==w(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}function O(e){var n=D(e,"string");return"symbol"===w(n)?n:String(n)}function S(e){if(Array.isArray(e))return e}function R(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,u,i,a,l=[],o=!0,c=!1;try{if(i=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;o=!1}else for(;!(o=(r=i.call(t)).done)&&(l.push(r.value),l.length!==n);o=!0);}catch(e){c=!0,u=e}finally{try{if(!o&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(c)throw u}}return l}}function P(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var E=r.ComponentBase.extend({defaultProps:{__TYPE:"InputNumber",__parentMetadata:null,allowEmpty:!0,ariaLabelledBy:null,autoFocus:!1,buttonLayout:"stacked",className:null,currency:void 0,currencyDisplay:void 0,decrementButtonClassName:null,decrementButtonIcon:null,disabled:!1,format:!0,id:null,incrementButtonClassName:null,incrementButtonIcon:null,inputClassName:null,inputId:null,inputMode:null,inputRef:null,inputStyle:null,locale:void 0,localeMatcher:void 0,max:null,maxFractionDigits:void 0,maxLength:null,min:null,minFractionDigits:void 0,mode:"decimal",name:null,onBlur:null,onChange:null,onFocus:null,onKeyDown:null,onKeyUp:null,onValueChange:null,pattern:null,placeholder:null,prefix:null,readOnly:!1,required:!1,showButtons:!1,size:null,step:1,style:null,suffix:null,tabIndex:null,tooltip:null,tooltipOptions:null,type:"text",useGrouping:!0,value:null,children:void 0},css:{classes:{root:function(e){var n=e.props,t=e.focusedState,r=e.stacked,u=e.horizontal,i=e.vertical;return s.classNames("p-inputnumber p-component p-inputwrapper",{"p-inputwrapper-filled":null!=n.value&&n.value.toString().length>0,"p-inputwrapper-focus":t,"p-inputnumber-buttons-stacked":r,"p-inputnumber-buttons-horizontal":u,"p-inputnumber-buttons-vertical":i})},buttonGroup:"p-inputnumber-button-group",incrementButton:function(e){return s.classNames("p-inputnumber-button p-inputnumber-button-up p-button p-button-icon-only p-component",{"p-disabled":e.props.disabled})},incrementIcon:"p-button-icon",decrementButton:function(e){return s.classNames("p-inputnumber-button p-inputnumber-button-down p-button p-button-icon-only p-component",{"p-disabled":e.props.disabled})},decrementIcon:"p-button-icon"},styles:"\n@layer primereact {\n .p-inputnumber {\n display: inline-flex;\n }\n \n .p-inputnumber-button {\n display: flex;\n align-items: center;\n justify-content: center;\n flex: 0 0 auto;\n }\n \n .p-inputnumber-buttons-stacked .p-button.p-inputnumber-button .p-button-label,\n .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button .p-button-label {\n display: none;\n }\n \n .p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-up {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n padding: 0;\n }\n \n .p-inputnumber-buttons-stacked .p-inputnumber-input {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n \n .p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-down {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-left-radius: 0;\n padding: 0;\n }\n \n .p-inputnumber-buttons-stacked .p-inputnumber-button-group {\n display: flex;\n flex-direction: column;\n }\n \n .p-inputnumber-buttons-stacked .p-inputnumber-button-group .p-button.p-inputnumber-button {\n flex: 1 1 auto;\n }\n \n .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up {\n order: 3;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n \n .p-inputnumber-buttons-horizontal .p-inputnumber-input {\n order: 2;\n border-radius: 0;\n }\n \n .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down {\n order: 1;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n \n .p-inputnumber-buttons-vertical {\n flex-direction: column;\n }\n \n .p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-up {\n order: 1;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n width: 100%;\n }\n \n .p-inputnumber-buttons-vertical .p-inputnumber-input {\n order: 2;\n border-radius: 0;\n text-align: center;\n }\n \n .p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-down {\n order: 3;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n width: 100%;\n }\n \n .p-inputnumber-input {\n flex: 1 1 auto;\n }\n \n .p-fluid .p-inputnumber {\n width: 100%;\n }\n \n .p-fluid .p-inputnumber .p-inputnumber-input {\n width: 1%;\n }\n \n .p-fluid .p-inputnumber-buttons-vertical .p-inputnumber-input {\n width: 100%;\n }\n}\n"}});function j(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function C(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?j(Object(t),!0).forEach((function(n){var r,u,i;r=e,i=t[n],(u=O(u=n))in r?Object.defineProperty(r,u,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[u]=i})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):j(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var F=f.memo(f.forwardRef((function(e,n){var p,d,g=f.useContext(t.PrimeReactContext),v=E.getProps(e,g),y=f.useState(!1),x=(d=2,S(p=y)||R(p,d)||h(p,d)||P()),w=x[0],D=x[1],O=C(C({props:v},v.__parentMetadata),{},{state:{focused:w}}),j=E.setMetaData(O),F=j.ptm,N=j.cx;r.useHandleStyle(E.css.styles,j.isUnstyled,{name:"inputnumber"});var k=f.useRef(null),A=f.useRef(null),B=f.useRef(null),U=f.useRef(null),M=f.useRef(null),K=f.useRef(null),L=f.useRef(null),_=f.useRef(null),z=f.useRef(null),G=f.useRef(null),T=f.useRef(null),H=f.useRef(null),V=f.useRef(null),q=f.useRef(null),W=f.useRef(null),$=f.useRef(null),J=f.useRef(null),X=v.locale||g&&g.locale||m.default.locale,Y=v.showButtons&&"stacked"===v.buttonLayout,Q=v.showButtons&&"horizontal"===v.buttonLayout,Z=v.showButtons&&"vertical"===v.buttonLayout,ee=v.inputMode||("decimal"!==v.mode||v.minFractionDigits?"decimal":"numeric"),ne=function(){return{localeMatcher:v.localeMatcher,style:v.mode,currency:v.currency,currencyDisplay:v.currencyDisplay,useGrouping:v.useGrouping,minimumFractionDigits:v.minFractionDigits,maximumFractionDigits:v.maxFractionDigits}},te=function(){M.current=new Intl.NumberFormat(X,ne());var e=I(new Intl.NumberFormat(X,{useGrouping:!1}).format(9876543210)).reverse(),n=new Map(e.map((function(e,n){return[e,n]})));G.current=new RegExp("[".concat(e.join(""),"]"),"g"),T.current=ie(),H.current=ae(),V.current=le(),q.current=ue(),W.current=ce(),$.current=oe(),J.current=function(e){return n.get(e)}},re=function(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},ue=function(){var e=new Intl.NumberFormat(X,C(C({},ne()),{},{useGrouping:!1}));return new RegExp("[".concat(e.format(1.1).replace(V.current,"").trim().replace(G.current,""),"]"),"g")},ie=function(){var e=new Intl.NumberFormat(X,{useGrouping:!0});return K.current=e.format(1e6).trim().replace(G.current,"").charAt(0),new RegExp("[".concat(K.current,"]"),"g")},ae=function(){var e=new Intl.NumberFormat(X,{useGrouping:!1});return new RegExp("[".concat(e.format(-1).trim().replace(G.current,""),"]"),"g")},le=function(){if(v.currency){var e=new Intl.NumberFormat(X,{style:"currency",currency:v.currency,currencyDisplay:v.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0});return new RegExp("[".concat(e.format(1).replace(/\s/g,"").replace(G.current,"").replace(T.current,""),"]"),"g")}return new RegExp("[]","g")},oe=function(){if(v.prefix)L.current=v.prefix;else{var e=new Intl.NumberFormat(X,{style:v.mode,currency:v.currency,currencyDisplay:v.currencyDisplay});L.current=e.format(1).split("1")[0]}return new RegExp("".concat(re(L.current||"")),"g")},ce=function(){if(v.suffix)_.current=v.suffix;else{var e=new Intl.NumberFormat(X,{style:v.mode,currency:v.currency,currencyDisplay:v.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0});_.current=e.format(1).split("1")[1]}return new RegExp("".concat(re(_.current||"")),"g")},se=function(e){if(null!=e){if("-"===e)return e;if(v.format){var n=new Intl.NumberFormat(X,ne()).format(e);return v.prefix&&(n=v.prefix+n),v.suffix&&(n+=v.suffix),n}return e.toString()}return""},pe=function(e){var n=e.replace(W.current,"").replace($.current,"").trim().replace(/\s/g,"").replace(V.current,"").replace(T.current,"").replace(H.current,"-").replace(q.current,".").replace(G.current,J.current);if(n){if("-"===n)return n;var t=+n;return isNaN(t)?null:t}return null},de=function e(n,t,r){var u=t||500;Xe(),B.current=setTimeout((function(){e(n,40,r)}),u),fe(n,r)},fe=function(e,n){if(A.current){var t=v.step*n,r=pe(A.current.value)||0,u=_e(r+t);if(v.maxLength&&v.maxLength<se(u).length)return;Ke(e,r,u),!s.DomHandler.isTouchDevice()&&Ge(u,null,"spin"),We(e,u)}},me=function(){v.disabled||v.readOnly||Xe()},be=function(){v.disabled||v.readOnly||Xe()},ge=function(){v.disabled||v.readOnly||Xe()},ve=function(){v.disabled||v.readOnly||Xe()},ye=function(){v.disabled||v.readOnly||Xe()},he=function(){v.disabled||v.readOnly||Xe()},xe=function(e){v.disabled||v.readOnly||(z.current&&(e.target.value=U.current),z.current=!1)},Ie=function(e){if(!(v.disabled||v.readOnly||v.onKeyDown&&(v.onKeyDown(e),e.defaultPrevented)))if(U.current=e.target.value,e.shiftKey||e.altKey)z.current=!0;else{var n=e.target.selectionStart,t=e.target.selectionEnd,r=e.target.value,u=null;switch(e.altKey&&e.preventDefault(),e.which){case 38:fe(e,1),e.preventDefault();break;case 40:fe(e,-1),e.preventDefault();break;case 37:Ae(r.charAt(n-1))||e.preventDefault();break;case 39:Ae(r.charAt(n))||e.preventDefault();break;case 13:case 9:u=_e(pe(r)),A.current.value=se(u),A.current.setAttribute("aria-valuenow",u),We(e,u);break;case 8:if(e.preventDefault(),n===t){var i=r.charAt(n-1);if(Ae(i)){var a=Pe(r),l=a.decimalCharIndex,o=a.decimalCharIndexWithoutPrefix,c=qe(r);if(T.current.test(i))T.current.lastIndex=0,u=r.slice(0,n-2)+r.slice(n-1);else if(q.current.test(i))q.current.lastIndex=0,c?A.current.setSelectionRange(n-1,n-1):u=r.slice(0,n-1)+r.slice(n);else if(l>0&&n>l){var s=Re()&&(v.minFractionDigits||0)<c?"":"0";u=r.slice(0,n-1)+s+r.slice(n)}else 1===o?(u=r.slice(0,n-1)+"0"+r.slice(n),u=pe(u)>0?u:""):u=r.slice(0,n-1)+r.slice(n)}else if(V.current.test(i)){var p=Ee(r),d=p.minusCharIndex;d===p.currencyCharIndex-1&&(u=r.slice(0,d)+r.slice(n))}Ue(e,u,null,"delete-single")}else u=Fe(r,n,t),Ue(e,u,null,"delete-range");break;case 46:if(e.preventDefault(),n===t){var f=r.charAt(n),m=Pe(r),b=m.decimalCharIndex,g=m.decimalCharIndexWithoutPrefix;if(Ae(f)){var y=qe(r);if(T.current.test(f))T.current.lastIndex=0,u=r.slice(0,n)+r.slice(n+2);else if(q.current.test(f))q.current.lastIndex=0,y?A.current.setSelectionRange(n+1,n+1):u=r.slice(0,n)+r.slice(n+1);else if(b>0&&n>b){var h=Re()&&(v.minFractionDigits||0)<y?"":"0";u=r.slice(0,n)+h+r.slice(n+1)}else 1===g?(u=r.slice(0,n)+"0"+r.slice(n+1),u=pe(u)>0?u:""):u=r.slice(0,n)+r.slice(n+1)}Ue(e,u,null,"delete-back-single")}else u=Fe(r,n,t),Ue(e,u,null,"delete-range")}}},we=function(e){if(!(v.disabled||v.readOnly||v.onKeyUp&&(v.onKeyUp(e),e.defaultPrevented))){var n=e.which||e.keyCode;13!==n&&e.preventDefault();var t=String.fromCharCode(n),r=Se(t),u=Oe(t);(48<=n&&n<=57||u||r)&&je(e,t,{isDecimalSign:r,isMinusSign:u})}},De=function(e){if(e.preventDefault(),!v.disabled&&!v.readOnly){var n=(e.clipboardData||window.clipboardData).getData("Text");if(n){var t=pe(n);null!=t&&je(e,t.toString())}}},Oe=function(e){return!(!H.current.test(e)&&"-"!==e)&&(H.current.lastIndex=0,!0)},Se=function(e){return!!q.current.test(e)&&(q.current.lastIndex=0,!0)},Re=function(){return"decimal"===v.mode},Pe=function(e){var n=e.search(q.current);q.current.lastIndex=0;var t=e.replace($.current,"").trim().replace(/\s/g,"").replace(V.current,"").search(q.current);return q.current.lastIndex=0,{decimalCharIndex:n,decimalCharIndexWithoutPrefix:t}},Ee=function(e){var n=e.search(q.current);q.current.lastIndex=0;var t=e.search(H.current);H.current.lastIndex=0;var r=e.search(W.current);W.current.lastIndex=0;var u=e.search(V.current);return V.current.lastIndex=0,{decimalCharIndex:n,minusCharIndex:t,suffixCharIndex:r,currencyCharIndex:u}},je=function(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{isDecimalSign:!1,isMinusSign:!1},r=n.search(H.current);if(H.current.lastIndex=0,s.ObjectUtils.isEmpty(v.min)||v.min<0||-1===r){var u,i=A.current.selectionStart,a=A.current.selectionEnd,l=A.current.value.trim(),o=Ee(l),c=o.decimalCharIndex,p=o.suffixCharIndex,d=o.currencyCharIndex;if(t.isMinusSign){var f=-1===o.minusCharIndex;!f||0!==i&&i!==d+1||(u=l,(f||0!==a)&&(u=Ce(l,n,0,a)),Ue(e,u,n,"insert"))}else if(t.isDecimalSign)c>0&&i===c?Ue(e,l,n,"insert"):(c>i&&c<a||-1===c&&v.maxFractionDigits)&&(u=Ce(l,n,i,a),Ue(e,u,n,"insert"));else{var m=M.current.resolvedOptions().maximumFractionDigits,b=i!==a?"range-insert":"insert";if(c>0&&i>c){if(i+n.length-(c+1)<=m){var g=d>=i?d-1:p>=i?p:l.length;u=l.slice(0,i)+n+l.slice(i+n.length,g)+l.slice(g),Ue(e,u,n,b)}}else u=Ce(l,n,i,a),Ue(e,u,n,b)}}},Ce=function(e,n,t,r){if(2===("."===n?n:n.split(".")).length){var u=e.slice(t,r).search(q.current);return q.current.lastIndex=0,u>0?e.slice(0,t)+se(n)+e.slice(r):e||se(n)}if(r-t===e.length)return se(n);if(0===t){var i=s.ObjectUtils.isLetter(e[r])?r-1:r;return n+e.slice(i)}return r===e.length?e.slice(0,t)+n:e.slice(0,t)+n+e.slice(r)},Fe=function(e,n,t){return t-n===e.length?"":0===n?e.slice(t):t===e.length?e.slice(0,n):e.slice(0,n)+e.slice(t)},Ne=function(){var e=A.current.selectionStart,n=A.current.value,t=n.length,r=null,u=(L.current||"").length,i=(n=n.replace($.current,"")).charAt(e-=u);if(Ae(i))return e+u;for(var a=e-1;a>=0;){if(i=n.charAt(a),Ae(i)){r=a+u;break}a--}if(null!==r)A.current.setSelectionRange(r+1,r+1);else{for(a=e;a<t;){if(i=n.charAt(a),Ae(i)){r=a+u;break}a++}null!==r&&A.current.setSelectionRange(r,r)}return r||0},ke=function(){Ne()},Ae=function(e){return!(1!==e.length||!(G.current.test(e)||q.current.test(e)||T.current.test(e)||H.current.test(e)))&&(Be(),!0)},Be=function(){G.current.lastIndex=0,q.current.lastIndex=0,T.current.lastIndex=0,H.current.lastIndex=0},Ue=function(e,n,t,r){var u=A.current.value,i=null;null!=n&&(i=Me(pe(n)),Ge(i,t,r,n),Ke(e,u,i))},Me=function(e){return e||v.allowEmpty?e:v.min||0},Ke=function(e,n,t){v.onChange&&Le(n,t)&&v.onChange({originalEvent:e,value:t})},Le=function(e,n){return null===n&&null!==e||null!=n&&n!==("string"==typeof e?pe(e):e)},_e=function(e){return"-"===e?null:ze(e)},ze=function(e){return s.ObjectUtils.isEmpty(e)?null:null!==v.min&&e<v.min?v.min:null!==v.max&&e>v.max?v.max:e},Ge=function(e,n,t,r){n=n||"";var u=A.current,i=u.value,a=se(e),l=i.length;if(a!==r&&(a=Ve(a,r)),0===l){u.value=a,u.setSelectionRange(0,0);var o=Ne()+n.length;u.setSelectionRange(o,o)}else{var c=u.selectionStart,s=u.selectionEnd;if(v.maxLength&&v.maxLength<a.length)return;u.value=a;var p=a.length;if("range-insert"===t){var d=pe((i||"").slice(0,c)),f=(null!==d?d.toString():"").split("").join("(".concat(K.current,")?")),m=new RegExp(f,"g");m.test(a);var b=n.split("").join("(".concat(K.current,")?")),g=new RegExp(b,"g");g.test(a.slice(m.lastIndex)),u.setSelectionRange(s=m.lastIndex+g.lastIndex,s)}else if(p===l)"insert"===t||"delete-back-single"===t?u.setSelectionRange(s+1,s+1):"delete-single"===t?u.setSelectionRange(s-1,s-1):"delete-range"!==t&&"spin"!==t||u.setSelectionRange(s,s);else if("delete-back-single"===t){var y=i.charAt(s-1),h=i.charAt(s),x=l-p,I=T.current.test(h);I&&1===x?s+=1:!I&&Ae(y)&&(s+=-1*x+1),T.current.lastIndex=0,u.setSelectionRange(s,s)}else if("-"===i&&"insert"===t){u.setSelectionRange(0,0);var w=Ne()+n.length+1;u.setSelectionRange(w,w)}else u.setSelectionRange(s+=p-l,s)}u.setAttribute("aria-valuenow",e)},Te=function(e){e=Me(e);var n=A.current,t=n.value,r=He(e);t!==r&&(n.value=r,n.setAttribute("aria-valuenow",e))},He=function(e){return se(Me(e))},Ve=function(e,n){if(e&&n){var t=n.search(q.current);return q.current.lastIndex=0,-1!==t?e.split(q.current)[0]+n.slice(t):e}return e},qe=function(e){if(e){var n=e.split(q.current);if(2===n.length)return n[1].replace(W.current,"").trim().replace(/\s/g,"").replace(V.current,"").length}return 0},We=function(e,n){v.onValueChange&&v.onValueChange({originalEvent:e,value:n,stopPropagation:function(){e.stopPropagation()},preventDefault:function(){e.preventDefault()},target:{name:v.name,id:v.id,value:n}})},$e=function(e){if(D(!0),v.onFocus&&v.onFocus(e),(v.suffix||v.currency||v.prefix)&&A.current){var n=Ne();A.current.setSelectionRange(n,n)}},Je=function(e){if(D(!1),A.current){var n=A.current.value;if(Le(n,v.value)){var t=_e(pe(n));Te(t),We(e,t)}}v.onBlur&&v.onBlur(e)},Xe=function(){B.current&&clearInterval(B.current)},Ye=function(){Te(ze(v.value));var e=_e(v.value);null!==v.value&&v.value!==e&&We(null,e)},Qe=function(){return M.current};f.useImperativeHandle(n,(function(){return{props:v,focus:function(){return s.DomHandler.focus(A.current)},getFormatter:Qe,getElement:function(){return k.current},getInput:function(){return A.current}}})),f.useEffect((function(){s.ObjectUtils.combinedRefs(A,v.inputRef)}),[A,v.inputRef]),u.useMountEffect((function(){te();var e=_e(v.value);null!==v.value&&v.value!==e&&We(null,e)})),u.useUpdateEffect((function(){te(),Ye()}),[v.locale,v.localeMatcher,v.mode,v.currency,v.currencyDisplay,v.useGrouping,v.minFractionDigits,v.maxFractionDigits,v.suffix,v.prefix]),u.useUpdateEffect((function(){Ye()}),[v.value]);var Ze,en,nn,tn,rn,un=function(){var e=s.mergeProps({className:N("incrementIcon")},F("incrementIcon")),n=s.IconUtils.getJSXIcon(v.incrementButtonIcon||f.createElement(a.AngleUpIcon,e),C({},e),{props:v}),t=s.mergeProps({type:"button",className:s.classNames(v.incrementButtonClassName,N("incrementButton")),onPointerLeave:be,onPointerDown:function(e){return n=e,void(v.disabled||v.readOnly||(v.autoFocus&&s.DomHandler.focus(A.current,v.autoFocus),de(n,null,1)));var n},onPointerUp:me,onKeyDown:function(e){return n=e,void(v.disabled||v.readOnly||32!==n.keyCode&&13!==n.keyCode||de(n,null,1));var n},onKeyUp:ge,disabled:v.disabled,tabIndex:-1},F("incrementButton"));return f.createElement("button",t,n,f.createElement(o.Ripple,null))},an=function(){var e=s.mergeProps({className:N("decrementIcon")},F("decrementIcon")),n=s.IconUtils.getJSXIcon(v.decrementButtonIcon||f.createElement(i.AngleDownIcon,e),C({},e),{props:v}),t=s.mergeProps({type:"button",className:s.classNames(v.decrementButtonClassName,N("decrementButton")),onPointerLeave:ye,onPointerDown:function(e){return n=e,void(v.disabled||v.readOnly||(v.autoFocus&&s.DomHandler.focus(A.current,v.autoFocus),de(n,null,-1)));var n},onPointerUp:ve,onKeyDown:function(e){return n=e,void(v.disabled||v.readOnly||32!==n.keyCode&&13!==n.keyCode||de(n,null,-1));var n},onKeyUp:he,disabled:v.disabled,tabIndex:-1},F("decrementButton"));return f.createElement("button",t,n,f.createElement(o.Ripple,null))},ln=s.ObjectUtils.isNotEmpty(v.tooltip),on=E.getOtherProps(v),cn=s.ObjectUtils.reduceKeys(on,s.DomHandler.DATA_PROPS),sn=s.ObjectUtils.reduceKeys(on,s.DomHandler.ARIA_PROPS),pn=(Ze=s.classNames("p-inputnumber-input",v.inputClassName),en=He(v.value),f.createElement(l.InputText,b({ref:A,id:v.inputId,style:v.inputStyle,role:"spinbutton",className:Ze,defaultValue:en,type:v.type,size:v.size,tabIndex:v.tabIndex,inputMode:ee,maxLength:v.maxLength,disabled:v.disabled,required:v.required,pattern:v.pattern,placeholder:v.placeholder,readOnly:v.readOnly,name:v.name,autoFocus:v.autoFocus,onKeyDown:Ie,onKeyPress:we,onInput:xe,onClick:ke,onBlur:Je,onFocus:$e,onPaste:De,min:v.min,max:v.max,"aria-valuemin":v.min,"aria-valuemax":v.max,"aria-valuenow":v.value},sn,cn,{pt:F("input"),__parentMetadata:{parent:O}}))),dn=(nn=v.showButtons&&un(),tn=v.showButtons&&an(),rn=s.mergeProps({className:N("buttonGroup")},F("buttonGroup")),Y?f.createElement("span",rn,nn,tn):f.createElement(f.Fragment,null,nn,tn)),fn=s.mergeProps({id:v.id,ref:k,className:s.classNames(v.className,N("root",{focusedState:w,stacked:Y,horizontal:Q,vertical:Z})),style:v.style},on,F("root"));return f.createElement(f.Fragment,null,f.createElement("span",fn,pn,dn),ln&&f.createElement(c.Tooltip,b({target:k,content:v.tooltip},v.tooltipOptions,{pt:F("tooltip")})))})));return F.displayName="InputNumber",e.InputNumber=F,Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.api,primereact.componentbase,primereact.hooks,primereact.icons.angledown,primereact.icons.angleup,primereact.inputtext,primereact.ripple,primereact.tooltip,primereact.utils);
1
+ this.primereact=this.primereact||{},this.primereact.inputnumber=function(e,n,t,r,u,i,a,l,o,c,s){"use strict";function p(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function d(e){if(e&&e.__esModule)return e;var n=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})}})),n.default=e,Object.freeze(n)}var f=d(n),m=p(t);function b(){return b=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},b.apply(this,arguments)}function g(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function v(e){if(Array.isArray(e))return g(e)}function y(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function h(e,n){if(e){if("string"==typeof e)return g(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?g(e,n):void 0}}function x(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function I(e){return v(e)||y(e)||h(e)||x()}function w(e){return w="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},w(e)}function D(e,n){if("object"!==w(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,n||"default");if("object"!==w(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}function O(e){var n=D(e,"string");return"symbol"===w(n)?n:String(n)}function S(e){if(Array.isArray(e))return e}function R(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,u,i,a,l=[],o=!0,c=!1;try{if(i=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;o=!1}else for(;!(o=(r=i.call(t)).done)&&(l.push(r.value),l.length!==n);o=!0);}catch(e){c=!0,u=e}finally{try{if(!o&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(c)throw u}}return l}}function P(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var E=r.ComponentBase.extend({defaultProps:{__TYPE:"InputNumber",__parentMetadata:null,allowEmpty:!0,ariaLabelledBy:null,autoFocus:!1,buttonLayout:"stacked",className:null,currency:void 0,currencyDisplay:void 0,decrementButtonClassName:null,decrementButtonIcon:null,disabled:!1,format:!0,id:null,incrementButtonClassName:null,incrementButtonIcon:null,inputClassName:null,inputId:null,inputMode:null,inputRef:null,inputStyle:null,locale:void 0,localeMatcher:void 0,max:null,maxFractionDigits:void 0,maxLength:null,min:null,minFractionDigits:void 0,mode:"decimal",name:null,onBlur:null,onChange:null,onFocus:null,onKeyDown:null,onKeyUp:null,onValueChange:null,pattern:null,placeholder:null,prefix:null,readOnly:!1,required:!1,showButtons:!1,size:null,step:1,style:null,suffix:null,tabIndex:null,tooltip:null,tooltipOptions:null,type:"text",useGrouping:!0,value:null,children:void 0},css:{classes:{root:function(e){var n=e.props,t=e.focusedState,r=e.stacked,u=e.horizontal,i=e.vertical;return s.classNames("p-inputnumber p-component p-inputwrapper",{"p-inputwrapper-filled":null!=n.value&&n.value.toString().length>0,"p-inputwrapper-focus":t,"p-inputnumber-buttons-stacked":r,"p-inputnumber-buttons-horizontal":u,"p-inputnumber-buttons-vertical":i})},buttonGroup:"p-inputnumber-button-group",incrementButton:function(e){return s.classNames("p-inputnumber-button p-inputnumber-button-up p-button p-button-icon-only p-component",{"p-disabled":e.props.disabled})},incrementIcon:"p-button-icon",decrementButton:function(e){return s.classNames("p-inputnumber-button p-inputnumber-button-down p-button p-button-icon-only p-component",{"p-disabled":e.props.disabled})},decrementIcon:"p-button-icon"},styles:"\n@layer primereact {\n .p-inputnumber {\n display: inline-flex;\n }\n \n .p-inputnumber-button {\n display: flex;\n align-items: center;\n justify-content: center;\n flex: 0 0 auto;\n }\n \n .p-inputnumber-buttons-stacked .p-button.p-inputnumber-button .p-button-label,\n .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button .p-button-label {\n display: none;\n }\n \n .p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-up {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n padding: 0;\n }\n \n .p-inputnumber-buttons-stacked .p-inputnumber-input {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n \n .p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-down {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-left-radius: 0;\n padding: 0;\n }\n \n .p-inputnumber-buttons-stacked .p-inputnumber-button-group {\n display: flex;\n flex-direction: column;\n }\n \n .p-inputnumber-buttons-stacked .p-inputnumber-button-group .p-button.p-inputnumber-button {\n flex: 1 1 auto;\n }\n \n .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up {\n order: 3;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n \n .p-inputnumber-buttons-horizontal .p-inputnumber-input {\n order: 2;\n border-radius: 0;\n }\n \n .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down {\n order: 1;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n \n .p-inputnumber-buttons-vertical {\n flex-direction: column;\n }\n \n .p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-up {\n order: 1;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n width: 100%;\n }\n \n .p-inputnumber-buttons-vertical .p-inputnumber-input {\n order: 2;\n border-radius: 0;\n text-align: center;\n }\n \n .p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-down {\n order: 3;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n width: 100%;\n }\n \n .p-inputnumber-input {\n flex: 1 1 auto;\n }\n \n .p-fluid .p-inputnumber {\n width: 100%;\n }\n \n .p-fluid .p-inputnumber .p-inputnumber-input {\n width: 1%;\n }\n \n .p-fluid .p-inputnumber-buttons-vertical .p-inputnumber-input {\n width: 100%;\n }\n}\n"}});function j(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function C(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?j(Object(t),!0).forEach((function(n){var r,u,i;r=e,i=t[n],(u=O(u=n))in r?Object.defineProperty(r,u,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[u]=i})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):j(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var N=f.memo(f.forwardRef((function(e,n){var p,d,g=f.useContext(t.PrimeReactContext),v=E.getProps(e,g),y=f.useState(!1),x=(d=2,S(p=y)||R(p,d)||h(p,d)||P()),w=x[0],D=x[1],O=C(C({props:v},v.__parentMetadata),{},{state:{focused:w}}),j=E.setMetaData(O),N=j.ptm,F=j.cx;r.useHandleStyle(E.css.styles,j.isUnstyled,{name:"inputnumber"});var k=f.useRef(null),A=f.useRef(null),B=f.useRef(null),U=f.useRef(null),M=f.useRef(null),K=f.useRef(null),L=f.useRef(null),_=f.useRef(null),z=f.useRef(null),G=f.useRef(null),T=f.useRef(null),H=f.useRef(null),V=f.useRef(null),q=f.useRef(null),W=f.useRef(null),$=f.useRef(null),J=f.useRef(null),X=v.locale||g&&g.locale||m.default.locale,Y=v.showButtons&&"stacked"===v.buttonLayout,Q=v.showButtons&&"horizontal"===v.buttonLayout,Z=v.showButtons&&"vertical"===v.buttonLayout,ee=v.inputMode||("decimal"!==v.mode||v.minFractionDigits?"decimal":"numeric"),ne=function(){return{localeMatcher:v.localeMatcher,style:v.mode,currency:v.currency,currencyDisplay:v.currencyDisplay,useGrouping:v.useGrouping,minimumFractionDigits:v.minFractionDigits,maximumFractionDigits:v.maxFractionDigits}},te=function(){M.current=new Intl.NumberFormat(X,ne());var e=I(new Intl.NumberFormat(X,{useGrouping:!1}).format(9876543210)).reverse(),n=new Map(e.map((function(e,n){return[e,n]})));G.current=new RegExp("[".concat(e.join(""),"]"),"g"),T.current=ie(),H.current=ae(),V.current=le(),q.current=ue(),W.current=ce(),$.current=oe(),J.current=function(e){return n.get(e)}},re=function(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},ue=function(){var e=new Intl.NumberFormat(X,C(C({},ne()),{},{useGrouping:!1}));return new RegExp("[".concat(e.format(1.1).replace(V.current,"").trim().replace(G.current,""),"]"),"g")},ie=function(){var e=new Intl.NumberFormat(X,{useGrouping:!0});return K.current=e.format(1e6).trim().replace(G.current,"").charAt(0),new RegExp("[".concat(K.current,"]"),"g")},ae=function(){var e=new Intl.NumberFormat(X,{useGrouping:!1});return new RegExp("[".concat(e.format(-1).trim().replace(G.current,""),"]"),"g")},le=function(){if(v.currency){var e=new Intl.NumberFormat(X,{style:"currency",currency:v.currency,currencyDisplay:v.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0});return new RegExp("[".concat(e.format(1).replace(/\s/g,"").replace(G.current,"").replace(T.current,""),"]"),"g")}return new RegExp("[]","g")},oe=function(){if(v.prefix)L.current=v.prefix;else{var e=new Intl.NumberFormat(X,{style:v.mode,currency:v.currency,currencyDisplay:v.currencyDisplay});L.current=e.format(1).split("1")[0]}return new RegExp("".concat(re(L.current||"")),"g")},ce=function(){if(v.suffix)_.current=v.suffix;else{var e=new Intl.NumberFormat(X,{style:v.mode,currency:v.currency,currencyDisplay:v.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0});_.current=e.format(1).split("1")[1]}return new RegExp("".concat(re(_.current||"")),"g")},se=function(e){if(null!=e){if("-"===e)return e;if(v.format){var n=new Intl.NumberFormat(X,ne()).format(e);return v.prefix&&(n=v.prefix+n),v.suffix&&(n+=v.suffix),n}return e.toString()}return""},pe=function(e){var n=e.replace(W.current,"").replace($.current,"").trim().replace(/\s/g,"").replace(V.current,"").replace(T.current,"").replace(H.current,"-").replace(q.current,".").replace(G.current,J.current);if(n){if("-"===n)return n;var t=+n;return isNaN(t)?null:t}return null},de=function e(n,t,r){var u=t||500;Xe(),B.current=setTimeout((function(){e(n,40,r)}),u),fe(n,r)},fe=function(e,n){if(A.current){var t=v.step*n,r=pe(A.current.value)||0,u=_e(r+t);if(v.maxLength&&v.maxLength<se(u).length)return;Ke(e,r,u),!s.DomHandler.isTouchDevice()&&Ge(u,null,"spin"),We(e,u)}},me=function(){v.disabled||v.readOnly||Xe()},be=function(){v.disabled||v.readOnly||Xe()},ge=function(){v.disabled||v.readOnly||Xe()},ve=function(){v.disabled||v.readOnly||Xe()},ye=function(){v.disabled||v.readOnly||Xe()},he=function(){v.disabled||v.readOnly||Xe()},xe=function(e){v.disabled||v.readOnly||(z.current&&(e.target.value=U.current),z.current=!1)},Ie=function(e){if(!(v.disabled||v.readOnly||v.onKeyDown&&(v.onKeyDown(e),e.defaultPrevented)))if(U.current=e.target.value,e.shiftKey||e.altKey)z.current=!0;else{var n=e.target.selectionStart,t=e.target.selectionEnd,r=e.target.value,u=null;switch(e.altKey&&e.preventDefault(),e.which){case 38:fe(e,1),e.preventDefault();break;case 40:fe(e,-1),e.preventDefault();break;case 37:Ae(r.charAt(n-1))||e.preventDefault();break;case 39:Ae(r.charAt(n))||e.preventDefault();break;case 13:case 9:u=_e(pe(r)),A.current.value=se(u),A.current.setAttribute("aria-valuenow",u),We(e,u);break;case 8:if(e.preventDefault(),n===t){var i=r.charAt(n-1);if(Ae(i)){var a=Pe(r),l=a.decimalCharIndex,o=a.decimalCharIndexWithoutPrefix,c=qe(r);if(T.current.test(i))T.current.lastIndex=0,u=r.slice(0,n-2)+r.slice(n-1);else if(q.current.test(i))q.current.lastIndex=0,c?A.current.setSelectionRange(n-1,n-1):u=r.slice(0,n-1)+r.slice(n);else if(l>0&&n>l){var s=Re()&&(v.minFractionDigits||0)<c?"":"0";u=r.slice(0,n-1)+s+r.slice(n)}else 1===o?(u=r.slice(0,n-1)+"0"+r.slice(n),u=pe(u)>0?u:""):u=r.slice(0,n-1)+r.slice(n)}else if(V.current.test(i)){var p=Ee(r),d=p.minusCharIndex;d===p.currencyCharIndex-1&&(u=r.slice(0,d)+r.slice(n))}Ue(e,u,null,"delete-single")}else u=Ne(r,n,t),Ue(e,u,null,"delete-range");break;case 46:if(e.preventDefault(),n===t){var f=r.charAt(n),m=Pe(r),b=m.decimalCharIndex,g=m.decimalCharIndexWithoutPrefix;if(Ae(f)){var y=qe(r);if(T.current.test(f))T.current.lastIndex=0,u=r.slice(0,n)+r.slice(n+2);else if(q.current.test(f))q.current.lastIndex=0,y?A.current.setSelectionRange(n+1,n+1):u=r.slice(0,n)+r.slice(n+1);else if(b>0&&n>b){var h=Re()&&(v.minFractionDigits||0)<y?"":"0";u=r.slice(0,n)+h+r.slice(n+1)}else 1===g?(u=r.slice(0,n)+"0"+r.slice(n+1),u=pe(u)>0?u:""):u=r.slice(0,n)+r.slice(n+1)}Ue(e,u,null,"delete-back-single")}else u=Ne(r,n,t),Ue(e,u,null,"delete-range")}}},we=function(e){if(!(v.disabled||v.readOnly||v.onKeyUp&&(v.onKeyUp(e),e.defaultPrevented))){var n=e.which||e.keyCode;13!==n&&e.preventDefault();var t=String.fromCharCode(n),r=Se(t),u=Oe(t);(48<=n&&n<=57||u||r)&&je(e,t,{isDecimalSign:r,isMinusSign:u})}},De=function(e){if(e.preventDefault(),!v.disabled&&!v.readOnly){var n=(e.clipboardData||window.clipboardData).getData("Text");if(n){var t=pe(n);null!=t&&je(e,t.toString())}}},Oe=function(e){return!(!H.current.test(e)&&"-"!==e)&&(H.current.lastIndex=0,!0)},Se=function(e){return!!q.current.test(e)&&(q.current.lastIndex=0,!0)},Re=function(){return"decimal"===v.mode},Pe=function(e){var n=e.search(q.current);q.current.lastIndex=0;var t=e.replace($.current,"").trim().replace(/\s/g,"").replace(V.current,"").search(q.current);return q.current.lastIndex=0,{decimalCharIndex:n,decimalCharIndexWithoutPrefix:t}},Ee=function(e){var n=e.search(q.current);q.current.lastIndex=0;var t=e.search(H.current);H.current.lastIndex=0;var r=e.search(W.current);W.current.lastIndex=0;var u=e.search(V.current);return V.current.lastIndex=0,{decimalCharIndex:n,minusCharIndex:t,suffixCharIndex:r,currencyCharIndex:u}},je=function(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{isDecimalSign:!1,isMinusSign:!1},r=n.search(H.current);if(H.current.lastIndex=0,s.ObjectUtils.isEmpty(v.min)||v.min<0||-1===r){var u,i=A.current.selectionStart,a=A.current.selectionEnd,l=A.current.value.trim(),o=Ee(l),c=o.decimalCharIndex,p=o.suffixCharIndex,d=o.currencyCharIndex;if(t.isMinusSign){var f=-1===o.minusCharIndex;!f||0!==i&&i!==d+1||(u=l,(f||0!==a)&&(u=Ce(l,n,0,a)),Ue(e,u,n,"insert"))}else if(t.isDecimalSign)c>0&&i===c?Ue(e,l,n,"insert"):(c>i&&c<a||-1===c&&v.maxFractionDigits)&&(u=Ce(l,n,i,a),Ue(e,u,n,"insert"));else{var m=M.current.resolvedOptions().maximumFractionDigits,b=i!==a?"range-insert":"insert";if(c>0&&i>c){if(i+n.length-(c+1)<=m){var g=d>=i?d-1:p>=i?p:l.length;u=l.slice(0,i)+n+l.slice(i+n.length,g)+l.slice(g),Ue(e,u,n,b)}}else u=Ce(l,n,i,a),Ue(e,u,n,b)}}},Ce=function(e,n,t,r){if(2===("."===n?n:n.split(".")).length){var u=e.slice(t,r).search(q.current);return q.current.lastIndex=0,u>0?e.slice(0,t)+se(n)+e.slice(r):e||se(n)}if(r-t===e.length)return se(n);if(0===t){var i=s.ObjectUtils.isLetter(e[r])?r-1:r;return n+e.slice(i)}return r===e.length?e.slice(0,t)+n:e.slice(0,t)+n+e.slice(r)},Ne=function(e,n,t){return t-n===e.length?"":0===n?e.slice(t):t===e.length?e.slice(0,n):e.slice(0,n)+e.slice(t)},Fe=function(){var e=A.current.selectionStart,n=A.current.value,t=n.length,r=null,u=(L.current||"").length,i=(n=n.replace($.current,"")).charAt(e-=u);if(Ae(i))return e+u;for(var a=e-1;a>=0;){if(i=n.charAt(a),Ae(i)){r=a+u;break}a--}if(null!==r)A.current.setSelectionRange(r+1,r+1);else{for(a=e;a<t;){if(i=n.charAt(a),Ae(i)){r=a+u;break}a++}null!==r&&A.current.setSelectionRange(r,r)}return r||0},ke=function(){Fe()},Ae=function(e){return!(1!==e.length||!(G.current.test(e)||q.current.test(e)||T.current.test(e)||H.current.test(e)))&&(Be(),!0)},Be=function(){G.current.lastIndex=0,q.current.lastIndex=0,T.current.lastIndex=0,H.current.lastIndex=0},Ue=function(e,n,t,r){var u=A.current.value,i=null;null!=n&&(i=Me(pe(n)),Ge(i,t,r,n),Ke(e,u,i))},Me=function(e){return e||v.allowEmpty?e:v.min||0},Ke=function(e,n,t){v.onChange&&Le(n,t)&&v.onChange({originalEvent:e,value:t})},Le=function(e,n){return null===n&&null!==e||null!=n&&n!==("string"==typeof e?pe(e):e)},_e=function(e){return"-"===e?null:ze(e)},ze=function(e){return s.ObjectUtils.isEmpty(e)?null:null!==v.min&&e<v.min?v.min:null!==v.max&&e>v.max?v.max:e},Ge=function(e,n,t,r){n=n||"";var u=A.current,i=u.value,a=se(e),l=i.length;if(a!==r&&(a=Ve(a,r)),0===l){u.value=a,u.setSelectionRange(0,0);var o=Fe()+n.length;u.setSelectionRange(o,o)}else{var c=u.selectionStart,s=u.selectionEnd;if(v.maxLength&&v.maxLength<a.length)return;u.value=a;var p=a.length;if("range-insert"===t){var d=pe((i||"").slice(0,c)),f=(null!==d?d.toString():"").split("").join("(".concat(K.current,")?")),m=new RegExp(f,"g");m.test(a);var b=n.split("").join("(".concat(K.current,")?")),g=new RegExp(b,"g");g.test(a.slice(m.lastIndex)),u.setSelectionRange(s=m.lastIndex+g.lastIndex,s)}else if(p===l)"insert"===t||"delete-back-single"===t?u.setSelectionRange(s+1,s+1):"delete-single"===t?u.setSelectionRange(s-1,s-1):"delete-range"!==t&&"spin"!==t||u.setSelectionRange(s,s);else if("delete-back-single"===t){var y=i.charAt(s-1),h=i.charAt(s),x=l-p,I=T.current.test(h);I&&1===x?s+=1:!I&&Ae(y)&&(s+=-1*x+1),T.current.lastIndex=0,u.setSelectionRange(s,s)}else if("-"===i&&"insert"===t){u.setSelectionRange(0,0);var w=Fe()+n.length+1;u.setSelectionRange(w,w)}else u.setSelectionRange(s+=p-l,s)}u.setAttribute("aria-valuenow",e)},Te=function(e){e=Me(e);var n=A.current,t=n.value,r=He(e);t!==r&&(n.value=r,n.setAttribute("aria-valuenow",e))},He=function(e){return se(Me(e))},Ve=function(e,n){if(e&&n){var t=n.search(q.current);return q.current.lastIndex=0,-1!==t?e.split(q.current)[0]+n.slice(t):e}return e},qe=function(e){if(e){var n=e.split(q.current);if(2===n.length)return n[1].replace(W.current,"").trim().replace(/\s/g,"").replace(V.current,"").length}return 0},We=function(e,n){v.onValueChange&&v.onValueChange({originalEvent:e,value:n,stopPropagation:function(){e.stopPropagation()},preventDefault:function(){e.preventDefault()},target:{name:v.name,id:v.id,value:n}})},$e=function(e){if(D(!0),v.onFocus&&v.onFocus(e),(v.suffix||v.currency||v.prefix)&&A.current){var n=Fe();A.current.setSelectionRange(n,n)}},Je=function(e){if(D(!1),A.current){var n=A.current.value;if(Le(n,v.value)){var t=_e(pe(n));Te(t),We(e,t)}}v.onBlur&&v.onBlur(e)},Xe=function(){B.current&&clearInterval(B.current)},Ye=function(){Te(ze(v.value));var e=_e(v.value);null!==v.value&&v.value!==e&&We(null,e)},Qe=function(){return M.current};f.useImperativeHandle(n,(function(){return{props:v,focus:function(){return s.DomHandler.focus(A.current)},getFormatter:Qe,getElement:function(){return k.current},getInput:function(){return A.current}}})),f.useEffect((function(){s.ObjectUtils.combinedRefs(A,v.inputRef)}),[A,v.inputRef]),u.useMountEffect((function(){te();var e=_e(v.value);null!==v.value&&v.value!==e&&We(null,e)})),u.useUpdateEffect((function(){te(),Ye()}),[v.locale,v.localeMatcher,v.mode,v.currency,v.currencyDisplay,v.useGrouping,v.minFractionDigits,v.maxFractionDigits,v.suffix,v.prefix]),u.useUpdateEffect((function(){Ye()}),[v.value]);var Ze,en,nn,tn,rn,un=function(){var e=s.mergeProps({className:F("incrementIcon")},N("incrementIcon")),n=s.IconUtils.getJSXIcon(v.incrementButtonIcon||f.createElement(a.AngleUpIcon,e),C({},e),{props:v}),t=s.mergeProps({type:"button",className:s.classNames(v.incrementButtonClassName,F("incrementButton")),onPointerLeave:be,onPointerDown:function(e){return n=e,void(v.disabled||v.readOnly||(s.DomHandler.focus(A.current,v.autoFocus),de(n,null,1),n.preventDefault()));var n},onPointerUp:me,onKeyDown:function(e){return n=e,void(v.disabled||v.readOnly||32!==n.keyCode&&13!==n.keyCode||de(n,null,1));var n},onKeyUp:ge,disabled:v.disabled,tabIndex:-1},N("incrementButton"));return f.createElement("button",t,n,f.createElement(o.Ripple,null))},an=function(){var e=s.mergeProps({className:F("decrementIcon")},N("decrementIcon")),n=s.IconUtils.getJSXIcon(v.decrementButtonIcon||f.createElement(i.AngleDownIcon,e),C({},e),{props:v}),t=s.mergeProps({type:"button",className:s.classNames(v.decrementButtonClassName,F("decrementButton")),onPointerLeave:ye,onPointerDown:function(e){return n=e,void(v.disabled||v.readOnly||(s.DomHandler.focus(A.current,v.autoFocus),de(n,null,-1),n.preventDefault()));var n},onPointerUp:ve,onKeyDown:function(e){return n=e,void(v.disabled||v.readOnly||32!==n.keyCode&&13!==n.keyCode||de(n,null,-1));var n},onKeyUp:he,disabled:v.disabled,tabIndex:-1},N("decrementButton"));return f.createElement("button",t,n,f.createElement(o.Ripple,null))},ln=s.ObjectUtils.isNotEmpty(v.tooltip),on=E.getOtherProps(v),cn=s.ObjectUtils.reduceKeys(on,s.DomHandler.DATA_PROPS),sn=s.ObjectUtils.reduceKeys(on,s.DomHandler.ARIA_PROPS),pn=(Ze=s.classNames("p-inputnumber-input",v.inputClassName),en=He(v.value),f.createElement(l.InputText,b({ref:A,id:v.inputId,style:v.inputStyle,role:"spinbutton",className:Ze,defaultValue:en,type:v.type,size:v.size,tabIndex:v.tabIndex,inputMode:ee,maxLength:v.maxLength,disabled:v.disabled,required:v.required,pattern:v.pattern,placeholder:v.placeholder,readOnly:v.readOnly,name:v.name,autoFocus:v.autoFocus,onKeyDown:Ie,onKeyPress:we,onInput:xe,onClick:ke,onBlur:Je,onFocus:$e,onPaste:De,min:v.min,max:v.max,"aria-valuemin":v.min,"aria-valuemax":v.max,"aria-valuenow":v.value},sn,cn,{pt:N("input"),__parentMetadata:{parent:O}}))),dn=(nn=v.showButtons&&un(),tn=v.showButtons&&an(),rn=s.mergeProps({className:F("buttonGroup")},N("buttonGroup")),Y?f.createElement("span",rn,nn,tn):f.createElement(f.Fragment,null,nn,tn)),fn=s.mergeProps({id:v.id,className:s.classNames(v.className,F("root",{focusedState:w,stacked:Y,horizontal:Q,vertical:Z})),style:v.style},on,N("root"));return f.createElement(f.Fragment,null,f.createElement("span",b({ref:k},fn),pn,dn),ln&&f.createElement(c.Tooltip,b({target:k,content:v.tooltip},v.tooltipOptions,{pt:N("tooltip")})))})));return N.displayName="InputNumber",e.InputNumber=N,Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.api,primereact.componentbase,primereact.hooks,primereact.icons.angledown,primereact.icons.angleup,primereact.inputtext,primereact.ripple,primereact.tooltip,primereact.utils);
package/menu/menu.cjs.js CHANGED
@@ -201,7 +201,8 @@ var MenuBase = componentbase.ComponentBase.extend({
201
201
  transitionOptions: null,
202
202
  onShow: null,
203
203
  onHide: null,
204
- children: undefined
204
+ children: undefined,
205
+ closeOnEscape: true
205
206
  },
206
207
  css: {
207
208
  classes: classes,
@@ -210,6 +211,106 @@ var MenuBase = componentbase.ComponentBase.extend({
210
211
  }
211
212
  });
212
213
 
214
+ var usePrevious = function usePrevious(newValue) {
215
+ var ref = React__namespace.useRef(undefined);
216
+ React__namespace.useEffect(function () {
217
+ ref.current = newValue;
218
+ });
219
+ return ref.current;
220
+ };
221
+
222
+ /* eslint-disable */
223
+ var useUnmountEffect = function useUnmountEffect(fn) {
224
+ return React__namespace.useEffect(function () {
225
+ return fn;
226
+ }, []);
227
+ };
228
+ /* eslint-enable */
229
+
230
+ /* eslint-disable */
231
+ var useEventListener = function useEventListener(_ref) {
232
+ var _ref$target = _ref.target,
233
+ target = _ref$target === void 0 ? 'document' : _ref$target,
234
+ type = _ref.type,
235
+ listener = _ref.listener,
236
+ options = _ref.options,
237
+ _ref$when = _ref.when,
238
+ when = _ref$when === void 0 ? true : _ref$when;
239
+ var targetRef = React__namespace.useRef(null);
240
+ var listenerRef = React__namespace.useRef(null);
241
+ var prevListener = usePrevious(listener);
242
+ var prevOptions = usePrevious(options);
243
+ var bind = function bind() {
244
+ var bindOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
245
+ if (utils.ObjectUtils.isNotEmpty(bindOptions.target)) {
246
+ unbind();
247
+ (bindOptions.when || when) && (targetRef.current = utils.DomHandler.getTargetElement(bindOptions.target));
248
+ }
249
+ if (!listenerRef.current && targetRef.current) {
250
+ listenerRef.current = function (event) {
251
+ return listener && listener(event);
252
+ };
253
+ targetRef.current.addEventListener(type, listenerRef.current, options);
254
+ }
255
+ };
256
+ var unbind = function unbind() {
257
+ if (listenerRef.current) {
258
+ targetRef.current.removeEventListener(type, listenerRef.current, options);
259
+ listenerRef.current = null;
260
+ }
261
+ };
262
+ React__namespace.useEffect(function () {
263
+ if (when) {
264
+ targetRef.current = utils.DomHandler.getTargetElement(target);
265
+ } else {
266
+ unbind();
267
+ targetRef.current = null;
268
+ }
269
+ }, [target, when]);
270
+ React__namespace.useEffect(function () {
271
+ // to properly compare functions we can implicitly converting the function to it's body's text as a String
272
+ if (listenerRef.current && ('' + prevListener !== '' + listener || prevOptions !== options)) {
273
+ unbind();
274
+ when && bind();
275
+ }
276
+ }, [listener, options, when]);
277
+ useUnmountEffect(function () {
278
+ unbind();
279
+ });
280
+ return [bind, unbind];
281
+ };
282
+ /* eslint-enable */
283
+
284
+ var useOnEscapeKey = function useOnEscapeKey(ref, condition, callback) {
285
+ var handleEsc = function handleEsc(event) {
286
+ if (event.key === 'Esc' || event.key === 'Escape') {
287
+ event.stopImmediatePropagation();
288
+ callback(event);
289
+ }
290
+ return;
291
+ };
292
+ var _useEventListener = useEventListener({
293
+ type: 'keydown',
294
+ listener: handleEsc
295
+ }),
296
+ _useEventListener2 = _slicedToArray(_useEventListener, 2),
297
+ bindKeyDownListener = _useEventListener2[0],
298
+ unbindKeyDownListener = _useEventListener2[1];
299
+ React__namespace.useEffect(function () {
300
+ if (!condition) {
301
+ return;
302
+ }
303
+ if (!ref.current) {
304
+ return;
305
+ }
306
+ bindKeyDownListener();
307
+ return function () {
308
+ unbindKeyDownListener();
309
+ };
310
+ });
311
+ return [ref, callback];
312
+ };
313
+
213
314
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
214
315
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
215
316
  var Menu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
@@ -239,6 +340,9 @@ var Menu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.for
239
340
  });
240
341
  var menuRef = React__namespace.useRef(null);
241
342
  var targetRef = React__namespace.useRef(null);
343
+ useOnEscapeKey(targetRef, props.popup && props.closeOnEscape, function (event) {
344
+ hide(event);
345
+ });
242
346
  var _useOverlayListener = hooks.useOverlayListener({
243
347
  target: targetRef,
244
348
  overlay: menuRef,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),n=require("primereact/componentbase"),r=require("primereact/csstransition"),i=require("primereact/hooks"),a=require("primereact/overlayservice"),o=require("primereact/portal"),u=require("primereact/utils");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var c=s(e),m=l(t);function p(){return p=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},p.apply(this,arguments)}function d(e){return d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},d(e)}function f(e,t){if("object"!==d(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==d(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function b(e){var t=f(e,"string");return"symbol"===d(t)?t:String(t)}function y(e){if(Array.isArray(e))return e}function v(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,a,o,u=[],l=!0,s=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=a.call(n)).done)&&(u.push(r.value),u.length!==t);l=!0);}catch(e){s=!0,i=e}finally{try{if(!l&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(s)throw i}}return u}}function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function O(e,t){if(e){if("string"==typeof e)return g(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?g(e,t):void 0}}function h(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function x(e,t){return y(e)||v(e,t)||O(e,t)||h()}var P=n.ComponentBase.extend({defaultProps:{__TYPE:"Menu",id:null,model:null,popup:!1,popupAlignment:"left",style:null,className:null,autoZIndex:!0,baseZIndex:0,appendTo:null,transitionOptions:null,onShow:null,onHide:null,children:void 0},css:{classes:{root:function(e){var t=e.context;return u.classNames("p-menu p-component",{"p-menu-overlay":e.props.popup,"p-input-filled":t&&"filled"===t.inputStyle||"filled"===m.default.inputStyle,"p-ripple-disabled":t&&!1===t.ripple||!1===m.default.ripple})},menu:"p-menu-list p-reset",action:function(e){return u.classNames("p-menuitem-link",{"p-disabled":e.item.disabled})},menuitem:"p-menuitem",submenuHeader:function(e){return u.classNames("p-submenu-header",{"p-disabled":e.submenu.disabled})},separator:"p-menu-separator",label:"p-menuitem-text",icon:"p-menuitem-icon",transition:"p-connected-overlay"},styles:"\n@layer primereact {\n .p-menu-overlay {\n position: absolute;\n /* Github #3122: Prevent animation flickering */\n top: -9999px;\n left: -9999px;\n }\n \n .p-menu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n \n .p-menu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n }\n \n .p-menu .p-menuitem-text {\n line-height: 1;\n }\n}\n",inlineStyles:{submenuHeader:function(e){return e.submenu.style},menuitem:function(e){return e.item.style}}}});function S(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function j(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?S(Object(n),!0).forEach((function(t){var r,i,a;r=e,a=n[t],(i=b(i=t))in r?Object.defineProperty(r,i,{value:a,enumerable:!0,configurable:!0,writable:!0}):r[i]=a})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):S(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var E=c.memo(c.forwardRef((function(e,l){var s=c.useContext(t.PrimeReactContext),d=P.getProps(e,s),f=x(c.useState(d.id),2),b=f[0],y=f[1],v=x(c.useState(!d.popup),2),g=v[0],O=v[1],h=P.setMetaData({props:d,state:{id:b,visible:g}}),S=h.ptm,E=h.cx,w=h.sx;n.useHandleStyle(P.css.styles,h.isUnstyled,{name:"menu"});var N=c.useRef(null),I=c.useRef(null),D=x(i.useOverlayListener({target:I,overlay:N,listener:function(e,t){t.valid&&M(e)},when:g}),2),k=D[0],H=D[1],A=function(e,t){t.disabled?e.preventDefault():(t.url||e.preventDefault(),t.command&&t.command({originalEvent:e,item:t}),d.popup&&M(e))},C=function(e,t){var n=e.currentTarget.parentElement;switch(e.which){case 40:var r=T(n);r&&r.children[0].focus(),e.preventDefault();break;case 38:var i=_(n);i&&i.children[0].focus(),e.preventDefault()}},T=function e(t){var n=t.nextElementSibling;return n?u.DomHandler.getAttribute(n,'[data-p-disabled="true"]')||!u.DomHandler.getAttribute(n,'[data-pc-section="menuitem"]')?e(n):n:null},_=function e(t){var n=t.previousElementSibling;return n?u.DomHandler.getAttribute(n,'[data-p-disabled="true"]')||!u.DomHandler.getAttribute(n,'[data-pc-section="menuitem"]')?e(n):n:null},q=function(e){d.popup&&(g?M(e):U(e))},U=function(e){I.current=e.currentTarget,O(!0),d.onShow&&d.onShow(e)},M=function(e){I.current=e.currentTarget,O(!1),d.onHide&&d.onHide(e)},Z=function(){u.DomHandler.addStyles(N.current,{position:"absolute",top:"0",left:"0"}),u.ZIndexUtils.set("menu",N.current,s&&s.autoZIndex||m.default.autoZIndex,d.baseZIndex||s&&s.zIndex.menu||m.default.zIndex.menu),u.DomHandler.absolutePosition(N.current,I.current,d.popupAlignment)},R=function(){k()},z=function(){I.current=null,H()},J=function(){u.ZIndexUtils.clear(N.current)};i.useMountEffect((function(){b||y(u.UniqueComponentId())})),i.useUnmountEffect((function(){u.ZIndexUtils.clear(N.current)})),c.useImperativeHandle(l,(function(){return{props:d,toggle:q,show:U,hide:M,getElement:function(){return N.current},getTarget:function(){return I.current}}}));var K=function(e,t){var n=b+"_sub_"+t,r=e.items.map(B),i=u.mergeProps({id:n,key:n,role:"presentation",className:u.classNames(e.className,E("submenuHeader",{submenu:e})),style:w("submenuHeader",{submenu:e}),"data-p-disabled":e.disabled},S("submenuHeader"));return c.createElement(c.Fragment,{key:n},c.createElement("li",i,e.label),r)},X=function(e){var t=b+"_separator_"+e,n=u.mergeProps({id:t,key:t,className:E("separator"),role:"separator"},S("separator"));return c.createElement("li",n)},B=function(e,t){if(!1===e.visible)return null;var n=u.classNames("p-menuitem-link",{"p-disabled":e.disabled}),r=u.classNames("p-menuitem-icon",e.icon),i=u.mergeProps({className:E("icon")},S("icon")),a=u.IconUtils.getJSXIcon(e.icon,j({},i),{props:d}),o=u.mergeProps({className:E("label")},S("label")),l=e.label&&c.createElement("span",o,e.label),s=e.disabled?null:0,m=e.id||b+"_"+t,p=u.mergeProps({href:e.url||"#",className:E("action",{item:e}),role:"menuitem",target:e.target,onClick:function(t){return A(t,e)},onKeyDown:function(e){return C(e)},tabIndex:s,"aria-disabled":e.disabled,"data-p-disabled":e.disabled},S("action")),f=c.createElement("a",p,a,l);e.template&&(f=u.ObjectUtils.getJSXElement(e.template,e,{onClick:function(t){return A(t,e)},onKeyDown:function(e){return C(e)},className:n,tabIndex:s,labelClassName:"p-menuitem-text",iconClassName:r,element:f,props:d}));var y=u.mergeProps({id:m,key:m,className:u.classNames(e.className,E("menuitem")),style:w("menuitem",{item:e}),role:"none","data-p-disabled":e.disabled||!1},S("menuitem"));return c.createElement("li",y,f)},F=function(e,t){return e.separator?X(t):e.items?K(e,t):B(e,t)},G=function(){if(d.model){var e=d.model.map(F),t=u.mergeProps({className:u.classNames(d.className,E("root",{context:s})),style:d.style,onClick:function(e){return t=e,void(d.popup&&a.OverlayService.emit("overlay-click",{originalEvent:t,target:I.current}));var t}},P.getOtherProps(d),S("root")),n=u.mergeProps({className:E("menu"),role:"menu"},S("menu")),i=u.mergeProps({classNames:E("transition"),in:g,timeout:{enter:120,exit:100},options:d.transitionOptions,unmountOnExit:!0,onEnter:Z,onEntered:R,onExit:z,onExited:J},S("transition"));return c.createElement(r.CSSTransition,p({nodeRef:N},i),c.createElement("div",p({id:d.id,ref:N},t),c.createElement("ul",n,e)))}return null}();return d.popup?c.createElement(o.Portal,{element:G,appendTo:d.appendTo}):G})));E.displayName="Menu",exports.Menu=E;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),n=require("primereact/componentbase"),r=require("primereact/csstransition"),i=require("primereact/hooks"),o=require("primereact/overlayservice"),u=require("primereact/portal"),a=require("primereact/utils");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var c=s(e),p=l(t);function m(){return m=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},m.apply(this,arguments)}function f(e){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},f(e)}function d(e,t){if("object"!==f(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==f(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function b(e){var t=d(e,"string");return"symbol"===f(t)?t:String(t)}function y(e){if(Array.isArray(e))return e}function v(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,o,u,a=[],l=!0,s=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(a.push(r.value),a.length!==t);l=!0);}catch(e){s=!0,i=e}finally{try{if(!l&&null!=n.return&&(u=n.return(),Object(u)!==u))return}finally{if(s)throw i}}return a}}function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function E(e,t){if(e){if("string"==typeof e)return g(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?g(e,t):void 0}}function O(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function h(e,t){return y(e)||v(e,t)||E(e,t)||O()}var x=n.ComponentBase.extend({defaultProps:{__TYPE:"Menu",id:null,model:null,popup:!1,popupAlignment:"left",style:null,className:null,autoZIndex:!0,baseZIndex:0,appendTo:null,transitionOptions:null,onShow:null,onHide:null,children:void 0,closeOnEscape:!0},css:{classes:{root:function(e){var t=e.context;return a.classNames("p-menu p-component",{"p-menu-overlay":e.props.popup,"p-input-filled":t&&"filled"===t.inputStyle||"filled"===p.default.inputStyle,"p-ripple-disabled":t&&!1===t.ripple||!1===p.default.ripple})},menu:"p-menu-list p-reset",action:function(e){return a.classNames("p-menuitem-link",{"p-disabled":e.item.disabled})},menuitem:"p-menuitem",submenuHeader:function(e){return a.classNames("p-submenu-header",{"p-disabled":e.submenu.disabled})},separator:"p-menu-separator",label:"p-menuitem-text",icon:"p-menuitem-icon",transition:"p-connected-overlay"},styles:"\n@layer primereact {\n .p-menu-overlay {\n position: absolute;\n /* Github #3122: Prevent animation flickering */\n top: -9999px;\n left: -9999px;\n }\n \n .p-menu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n \n .p-menu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n }\n \n .p-menu .p-menuitem-text {\n line-height: 1;\n }\n}\n",inlineStyles:{submenuHeader:function(e){return e.submenu.style},menuitem:function(e){return e.item.style}}}}),P=function(e){var t=c.useRef(void 0);return c.useEffect((function(){t.current=e})),t.current},S=function(e,t,n){var r,i,o,u,l,s,p,m,f,d,b,y,v,g,E,O=(u=void 0===(o=(r={type:"keydown",listener:function(e){"Esc"!==e.key&&"Escape"!==e.key||(e.stopImmediatePropagation(),n(e))}}).target)?"document":o,l=r.type,s=r.listener,p=r.options,f=void 0===(m=r.when)||m,d=c.useRef(null),b=c.useRef(null),y=P(s),v=P(p),g=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};a.ObjectUtils.isNotEmpty(e.target)&&(E(),(e.when||f)&&(d.current=a.DomHandler.getTargetElement(e.target))),!b.current&&d.current&&(b.current=function(e){return s&&s(e)},d.current.addEventListener(l,b.current,p))},E=function(){b.current&&(d.current.removeEventListener(l,b.current,p),b.current=null)},c.useEffect((function(){f?d.current=a.DomHandler.getTargetElement(u):(E(),d.current=null)}),[u,f]),c.useEffect((function(){!b.current||""+y==""+s&&v===p||(E(),f&&g())}),[s,p,f]),i=function(){E()},c.useEffect((function(){return i}),[]),[g,E]),x=h(O,2),S=x[0],j=x[1];return c.useEffect((function(){if(t&&e.current)return S(),function(){j()}})),[e,n]};function j(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function w(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?j(Object(n),!0).forEach((function(t){var r,i,o;r=e,o=n[t],(i=b(i=t))in r?Object.defineProperty(r,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):r[i]=o})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):j(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var N=c.memo(c.forwardRef((function(e,l){var s=c.useContext(t.PrimeReactContext),f=x.getProps(e,s),d=h(c.useState(f.id),2),b=d[0],y=d[1],v=h(c.useState(!f.popup),2),g=v[0],E=v[1],O=x.setMetaData({props:f,state:{id:b,visible:g}}),P=O.ptm,j=O.cx,N=O.sx;n.useHandleStyle(x.css.styles,O.isUnstyled,{name:"menu"});var D=c.useRef(null),I=c.useRef(null);S(I,f.popup&&f.closeOnEscape,(function(e){R(e)}));var k=h(i.useOverlayListener({target:I,overlay:D,listener:function(e,t){t.valid&&R(e)},when:g}),2),H=k[0],T=k[1],A=function(e,t){t.disabled?e.preventDefault():(t.url||e.preventDefault(),t.command&&t.command({originalEvent:e,item:t}),f.popup&&R(e))},C=function(e,t){var n=e.currentTarget.parentElement;switch(e.which){case 40:var r=_(n);r&&r.children[0].focus(),e.preventDefault();break;case 38:var i=U(n);i&&i.children[0].focus(),e.preventDefault()}},_=function e(t){var n=t.nextElementSibling;return n?a.DomHandler.getAttribute(n,'[data-p-disabled="true"]')||!a.DomHandler.getAttribute(n,'[data-pc-section="menuitem"]')?e(n):n:null},U=function e(t){var n=t.previousElementSibling;return n?a.DomHandler.getAttribute(n,'[data-p-disabled="true"]')||!a.DomHandler.getAttribute(n,'[data-pc-section="menuitem"]')?e(n):n:null},q=function(e){f.popup&&(g?R(e):M(e))},M=function(e){I.current=e.currentTarget,E(!0),f.onShow&&f.onShow(e)},R=function(e){I.current=e.currentTarget,E(!1),f.onHide&&f.onHide(e)},Z=function(){a.DomHandler.addStyles(D.current,{position:"absolute",top:"0",left:"0"}),a.ZIndexUtils.set("menu",D.current,s&&s.autoZIndex||p.default.autoZIndex,f.baseZIndex||s&&s.zIndex.menu||p.default.zIndex.menu),a.DomHandler.absolutePosition(D.current,I.current,f.popupAlignment)},z=function(){H()},L=function(){I.current=null,T()},J=function(){a.ZIndexUtils.clear(D.current)};i.useMountEffect((function(){b||y(a.UniqueComponentId())})),i.useUnmountEffect((function(){a.ZIndexUtils.clear(D.current)})),c.useImperativeHandle(l,(function(){return{props:f,toggle:q,show:M,hide:R,getElement:function(){return D.current},getTarget:function(){return I.current}}}));var K=function(e,t){var n=b+"_sub_"+t,r=e.items.map(B),i=a.mergeProps({id:n,key:n,role:"presentation",className:a.classNames(e.className,j("submenuHeader",{submenu:e})),style:N("submenuHeader",{submenu:e}),"data-p-disabled":e.disabled},P("submenuHeader"));return c.createElement(c.Fragment,{key:n},c.createElement("li",i,e.label),r)},X=function(e){var t=b+"_separator_"+e,n=a.mergeProps({id:t,key:t,className:j("separator"),role:"separator"},P("separator"));return c.createElement("li",n)},B=function(e,t){if(!1===e.visible)return null;var n=a.classNames("p-menuitem-link",{"p-disabled":e.disabled}),r=a.classNames("p-menuitem-icon",e.icon),i=a.mergeProps({className:j("icon")},P("icon")),o=a.IconUtils.getJSXIcon(e.icon,w({},i),{props:f}),u=a.mergeProps({className:j("label")},P("label")),l=e.label&&c.createElement("span",u,e.label),s=e.disabled?null:0,p=e.id||b+"_"+t,m=a.mergeProps({href:e.url||"#",className:j("action",{item:e}),role:"menuitem",target:e.target,onClick:function(t){return A(t,e)},onKeyDown:function(e){return C(e)},tabIndex:s,"aria-disabled":e.disabled,"data-p-disabled":e.disabled},P("action")),d=c.createElement("a",m,o,l);e.template&&(d=a.ObjectUtils.getJSXElement(e.template,e,{onClick:function(t){return A(t,e)},onKeyDown:function(e){return C(e)},className:n,tabIndex:s,labelClassName:"p-menuitem-text",iconClassName:r,element:d,props:f}));var y=a.mergeProps({id:p,key:p,className:a.classNames(e.className,j("menuitem")),style:N("menuitem",{item:e}),role:"none","data-p-disabled":e.disabled||!1},P("menuitem"));return c.createElement("li",y,d)},F=function(e,t){return e.separator?X(t):e.items?K(e,t):B(e,t)},G=function(){if(f.model){var e=f.model.map(F),t=a.mergeProps({className:a.classNames(f.className,j("root",{context:s})),style:f.style,onClick:function(e){return t=e,void(f.popup&&o.OverlayService.emit("overlay-click",{originalEvent:t,target:I.current}));var t}},x.getOtherProps(f),P("root")),n=a.mergeProps({className:j("menu"),role:"menu"},P("menu")),i=a.mergeProps({classNames:j("transition"),in:g,timeout:{enter:120,exit:100},options:f.transitionOptions,unmountOnExit:!0,onEnter:Z,onEntered:z,onExit:L,onExited:J},P("transition"));return c.createElement(r.CSSTransition,m({nodeRef:D},i),c.createElement("div",m({id:f.id,ref:D},t),c.createElement("ul",n,e)))}return null}();return f.popup?c.createElement(u.Portal,{element:G,appendTo:f.appendTo}):G})));N.displayName="Menu",exports.Menu=N;
package/menu/menu.d.ts CHANGED
@@ -154,6 +154,11 @@ export interface MenuProps extends Omit<React.DetailedHTMLProps<React.HTMLAttrib
154
154
  * @defaultValue false
155
155
  */
156
156
  unstyled?: boolean;
157
+ /**
158
+ * Specifies if pressing escape key should hide the Menu Popup.
159
+ * @defaultValue true
160
+ */
161
+ closeOnEscape?: boolean | undefined;
157
162
  }
158
163
 
159
164
  /**
package/menu/menu.esm.js CHANGED
@@ -3,10 +3,10 @@ import * as React from 'react';
3
3
  import PrimeReact, { PrimeReactContext } from 'primereact/api';
4
4
  import { ComponentBase, useHandleStyle } from 'primereact/componentbase';
5
5
  import { CSSTransition } from 'primereact/csstransition';
6
- import { useOverlayListener, useMountEffect, useUnmountEffect } from 'primereact/hooks';
6
+ import { useOverlayListener, useMountEffect, useUnmountEffect as useUnmountEffect$1 } from 'primereact/hooks';
7
7
  import { OverlayService } from 'primereact/overlayservice';
8
8
  import { Portal } from 'primereact/portal';
9
- import { classNames, UniqueComponentId, ZIndexUtils, mergeProps, DomHandler, IconUtils, ObjectUtils } from 'primereact/utils';
9
+ import { classNames, DomHandler, ObjectUtils, UniqueComponentId, ZIndexUtils, mergeProps, IconUtils } from 'primereact/utils';
10
10
 
11
11
  function _extends() {
12
12
  _extends = Object.assign ? Object.assign.bind() : function (target) {
@@ -174,7 +174,8 @@ var MenuBase = ComponentBase.extend({
174
174
  transitionOptions: null,
175
175
  onShow: null,
176
176
  onHide: null,
177
- children: undefined
177
+ children: undefined,
178
+ closeOnEscape: true
178
179
  },
179
180
  css: {
180
181
  classes: classes,
@@ -183,6 +184,106 @@ var MenuBase = ComponentBase.extend({
183
184
  }
184
185
  });
185
186
 
187
+ var usePrevious = function usePrevious(newValue) {
188
+ var ref = React.useRef(undefined);
189
+ React.useEffect(function () {
190
+ ref.current = newValue;
191
+ });
192
+ return ref.current;
193
+ };
194
+
195
+ /* eslint-disable */
196
+ var useUnmountEffect = function useUnmountEffect(fn) {
197
+ return React.useEffect(function () {
198
+ return fn;
199
+ }, []);
200
+ };
201
+ /* eslint-enable */
202
+
203
+ /* eslint-disable */
204
+ var useEventListener = function useEventListener(_ref) {
205
+ var _ref$target = _ref.target,
206
+ target = _ref$target === void 0 ? 'document' : _ref$target,
207
+ type = _ref.type,
208
+ listener = _ref.listener,
209
+ options = _ref.options,
210
+ _ref$when = _ref.when,
211
+ when = _ref$when === void 0 ? true : _ref$when;
212
+ var targetRef = React.useRef(null);
213
+ var listenerRef = React.useRef(null);
214
+ var prevListener = usePrevious(listener);
215
+ var prevOptions = usePrevious(options);
216
+ var bind = function bind() {
217
+ var bindOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
218
+ if (ObjectUtils.isNotEmpty(bindOptions.target)) {
219
+ unbind();
220
+ (bindOptions.when || when) && (targetRef.current = DomHandler.getTargetElement(bindOptions.target));
221
+ }
222
+ if (!listenerRef.current && targetRef.current) {
223
+ listenerRef.current = function (event) {
224
+ return listener && listener(event);
225
+ };
226
+ targetRef.current.addEventListener(type, listenerRef.current, options);
227
+ }
228
+ };
229
+ var unbind = function unbind() {
230
+ if (listenerRef.current) {
231
+ targetRef.current.removeEventListener(type, listenerRef.current, options);
232
+ listenerRef.current = null;
233
+ }
234
+ };
235
+ React.useEffect(function () {
236
+ if (when) {
237
+ targetRef.current = DomHandler.getTargetElement(target);
238
+ } else {
239
+ unbind();
240
+ targetRef.current = null;
241
+ }
242
+ }, [target, when]);
243
+ React.useEffect(function () {
244
+ // to properly compare functions we can implicitly converting the function to it's body's text as a String
245
+ if (listenerRef.current && ('' + prevListener !== '' + listener || prevOptions !== options)) {
246
+ unbind();
247
+ when && bind();
248
+ }
249
+ }, [listener, options, when]);
250
+ useUnmountEffect(function () {
251
+ unbind();
252
+ });
253
+ return [bind, unbind];
254
+ };
255
+ /* eslint-enable */
256
+
257
+ var useOnEscapeKey = function useOnEscapeKey(ref, condition, callback) {
258
+ var handleEsc = function handleEsc(event) {
259
+ if (event.key === 'Esc' || event.key === 'Escape') {
260
+ event.stopImmediatePropagation();
261
+ callback(event);
262
+ }
263
+ return;
264
+ };
265
+ var _useEventListener = useEventListener({
266
+ type: 'keydown',
267
+ listener: handleEsc
268
+ }),
269
+ _useEventListener2 = _slicedToArray(_useEventListener, 2),
270
+ bindKeyDownListener = _useEventListener2[0],
271
+ unbindKeyDownListener = _useEventListener2[1];
272
+ React.useEffect(function () {
273
+ if (!condition) {
274
+ return;
275
+ }
276
+ if (!ref.current) {
277
+ return;
278
+ }
279
+ bindKeyDownListener();
280
+ return function () {
281
+ unbindKeyDownListener();
282
+ };
283
+ });
284
+ return [ref, callback];
285
+ };
286
+
186
287
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
187
288
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
188
289
  var Menu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (inProps, ref) {
@@ -212,6 +313,9 @@ var Menu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (inPr
212
313
  });
213
314
  var menuRef = React.useRef(null);
214
315
  var targetRef = React.useRef(null);
316
+ useOnEscapeKey(targetRef, props.popup && props.closeOnEscape, function (event) {
317
+ hide(event);
318
+ });
215
319
  var _useOverlayListener = useOverlayListener({
216
320
  target: targetRef,
217
321
  overlay: menuRef,
@@ -315,7 +419,7 @@ var Menu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (inPr
315
419
  setIdState(UniqueComponentId());
316
420
  }
317
421
  });
318
- useUnmountEffect(function () {
422
+ useUnmountEffect$1(function () {
319
423
  ZIndexUtils.clear(menuRef.current);
320
424
  });
321
425
  React.useImperativeHandle(ref, function () {
@@ -1 +1 @@
1
- import*as e from"react";import t,{PrimeReactContext as n}from"primereact/api";import{ComponentBase as r,useHandleStyle as i}from"primereact/componentbase";import{CSSTransition as o}from"primereact/csstransition";import{useOverlayListener as a,useMountEffect as u,useUnmountEffect as l}from"primereact/hooks";import{OverlayService as c}from"primereact/overlayservice";import{Portal as s}from"primereact/portal";import{classNames as p,UniqueComponentId as m,ZIndexUtils as d,mergeProps as f,DomHandler as b,IconUtils as y,ObjectUtils as v}from"primereact/utils";function g(){return g=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},g.apply(this,arguments)}function h(e){return h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},h(e)}function O(e,t){if("object"!==h(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==h(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function x(e){var t=O(e,"string");return"symbol"===h(t)?t:String(t)}function S(e){if(Array.isArray(e))return e}function E(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,o,a,u=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(u.push(r.value),u.length!==t);l=!0);}catch(e){c=!0,i=e}finally{try{if(!l&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw i}}return u}}function w(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function j(e,t){if(e){if("string"==typeof e)return w(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?w(e,t):void 0}}function N(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function P(e,t){return S(e)||E(e,t)||j(e,t)||N()}var k=r.extend({defaultProps:{__TYPE:"Menu",id:null,model:null,popup:!1,popupAlignment:"left",style:null,className:null,autoZIndex:!0,baseZIndex:0,appendTo:null,transitionOptions:null,onShow:null,onHide:null,children:void 0},css:{classes:{root:function(e){var n=e.context;return p("p-menu p-component",{"p-menu-overlay":e.props.popup,"p-input-filled":n&&"filled"===n.inputStyle||"filled"===t.inputStyle,"p-ripple-disabled":n&&!1===n.ripple||!1===t.ripple})},menu:"p-menu-list p-reset",action:function(e){return p("p-menuitem-link",{"p-disabled":e.item.disabled})},menuitem:"p-menuitem",submenuHeader:function(e){return p("p-submenu-header",{"p-disabled":e.submenu.disabled})},separator:"p-menu-separator",label:"p-menuitem-text",icon:"p-menuitem-icon",transition:"p-connected-overlay"},styles:"\n@layer primereact {\n .p-menu-overlay {\n position: absolute;\n /* Github #3122: Prevent animation flickering */\n top: -9999px;\n left: -9999px;\n }\n \n .p-menu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n \n .p-menu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n }\n \n .p-menu .p-menuitem-text {\n line-height: 1;\n }\n}\n",inlineStyles:{submenuHeader:function(e){return e.submenu.style},menuitem:function(e){return e.item.style}}}});function I(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function A(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?I(Object(n),!0).forEach((function(t){var r,i,o;r=e,o=n[t],(i=x(i=t))in r?Object.defineProperty(r,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):r[i]=o})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):I(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var D=e.memo(e.forwardRef((function(r,h){var O=e.useContext(n),x=k.getProps(r,O),S=P(e.useState(x.id),2),E=S[0],w=S[1],j=P(e.useState(!x.popup),2),N=j[0],I=j[1],D=k.setMetaData({props:x,state:{id:E,visible:N}}),T=D.ptm,H=D.cx,C=D.sx;i(k.css.styles,D.isUnstyled,{name:"menu"});var _=e.useRef(null),Z=e.useRef(null),M=P(a({target:Z,overlay:_,listener:function(e,t){t.valid&&Y(e)},when:N}),2),R=M[0],z=M[1],J=function(e,t){t.disabled?e.preventDefault():(t.url||e.preventDefault(),t.command&&t.command({originalEvent:e,item:t}),x.popup&&Y(e))},K=function(e,t){var n=e.currentTarget.parentElement;switch(e.which){case 40:var r=U(n);r&&r.children[0].focus(),e.preventDefault();break;case 38:var i=X(n);i&&i.children[0].focus(),e.preventDefault()}},U=function e(t){var n=t.nextElementSibling;return n?b.getAttribute(n,'[data-p-disabled="true"]')||!b.getAttribute(n,'[data-pc-section="menuitem"]')?e(n):n:null},X=function e(t){var n=t.previousElementSibling;return n?b.getAttribute(n,'[data-p-disabled="true"]')||!b.getAttribute(n,'[data-pc-section="menuitem"]')?e(n):n:null},F=function(e){x.popup&&(N?Y(e):G(e))},G=function(e){Z.current=e.currentTarget,I(!0),x.onShow&&x.onShow(e)},Y=function(e){Z.current=e.currentTarget,I(!1),x.onHide&&x.onHide(e)},$=function(){b.addStyles(_.current,{position:"absolute",top:"0",left:"0"}),d.set("menu",_.current,O&&O.autoZIndex||t.autoZIndex,x.baseZIndex||O&&O.zIndex.menu||t.zIndex.menu),b.absolutePosition(_.current,Z.current,x.popupAlignment)},q=function(){R()},B=function(){Z.current=null,z()},L=function(){d.clear(_.current)};u((function(){E||w(m())})),l((function(){d.clear(_.current)})),e.useImperativeHandle(h,(function(){return{props:x,toggle:F,show:G,hide:Y,getElement:function(){return _.current},getTarget:function(){return Z.current}}}));var Q=function(t,n){var r=E+"_sub_"+n,i=t.items.map(W),o=f({id:r,key:r,role:"presentation",className:p(t.className,H("submenuHeader",{submenu:t})),style:C("submenuHeader",{submenu:t}),"data-p-disabled":t.disabled},T("submenuHeader"));return e.createElement(e.Fragment,{key:r},e.createElement("li",o,t.label),i)},V=function(t){var n=E+"_separator_"+t,r=f({id:n,key:n,className:H("separator"),role:"separator"},T("separator"));return e.createElement("li",r)},W=function(t,n){if(!1===t.visible)return null;var r=p("p-menuitem-link",{"p-disabled":t.disabled}),i=p("p-menuitem-icon",t.icon),o=f({className:H("icon")},T("icon")),a=y.getJSXIcon(t.icon,A({},o),{props:x}),u=f({className:H("label")},T("label")),l=t.label&&e.createElement("span",u,t.label),c=t.disabled?null:0,s=t.id||E+"_"+n,m=f({href:t.url||"#",className:H("action",{item:t}),role:"menuitem",target:t.target,onClick:function(e){return J(e,t)},onKeyDown:function(e){return K(e)},tabIndex:c,"aria-disabled":t.disabled,"data-p-disabled":t.disabled},T("action")),d=e.createElement("a",m,a,l);t.template&&(d=v.getJSXElement(t.template,t,{onClick:function(e){return J(e,t)},onKeyDown:function(e){return K(e)},className:r,tabIndex:c,labelClassName:"p-menuitem-text",iconClassName:i,element:d,props:x}));var b=f({id:s,key:s,className:p(t.className,H("menuitem")),style:C("menuitem",{item:t}),role:"none","data-p-disabled":t.disabled||!1},T("menuitem"));return e.createElement("li",b,d)},ee=function(e,t){return e.separator?V(t):e.items?Q(e,t):W(e,t)},te=function(){if(x.model){var t=x.model.map(ee),n=f({className:p(x.className,H("root",{context:O})),style:x.style,onClick:function(e){return t=e,void(x.popup&&c.emit("overlay-click",{originalEvent:t,target:Z.current}));var t}},k.getOtherProps(x),T("root")),r=f({className:H("menu"),role:"menu"},T("menu")),i=f({classNames:H("transition"),in:N,timeout:{enter:120,exit:100},options:x.transitionOptions,unmountOnExit:!0,onEnter:$,onEntered:q,onExit:B,onExited:L},T("transition"));return e.createElement(o,g({nodeRef:_},i),e.createElement("div",g({id:x.id,ref:_},n),e.createElement("ul",r,t)))}return null}();return x.popup?e.createElement(s,{element:te,appendTo:x.appendTo}):te})));D.displayName="Menu";export{D as Menu};
1
+ import*as e from"react";import t,{PrimeReactContext as n}from"primereact/api";import{ComponentBase as r,useHandleStyle as i}from"primereact/componentbase";import{CSSTransition as o}from"primereact/csstransition";import{useOverlayListener as u,useMountEffect as a,useUnmountEffect as l}from"primereact/hooks";import{OverlayService as c}from"primereact/overlayservice";import{Portal as s}from"primereact/portal";import{classNames as p,DomHandler as m,ObjectUtils as f,UniqueComponentId as d,ZIndexUtils as b,mergeProps as y,IconUtils as v}from"primereact/utils";function g(){return g=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},g.apply(this,arguments)}function E(e){return E="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},E(e)}function h(e,t){if("object"!==E(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==E(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function O(e){var t=h(e,"string");return"symbol"===E(t)?t:String(t)}function x(e){if(Array.isArray(e))return e}function w(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,o,u,a=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(a.push(r.value),a.length!==t);l=!0);}catch(e){c=!0,i=e}finally{try{if(!l&&null!=n.return&&(u=n.return(),Object(u)!==u))return}finally{if(c)throw i}}return a}}function S(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function j(e,t){if(e){if("string"==typeof e)return S(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?S(e,t):void 0}}function N(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function P(e,t){return x(e)||w(e,t)||j(e,t)||N()}var k=r.extend({defaultProps:{__TYPE:"Menu",id:null,model:null,popup:!1,popupAlignment:"left",style:null,className:null,autoZIndex:!0,baseZIndex:0,appendTo:null,transitionOptions:null,onShow:null,onHide:null,children:void 0,closeOnEscape:!0},css:{classes:{root:function(e){var n=e.context;return p("p-menu p-component",{"p-menu-overlay":e.props.popup,"p-input-filled":n&&"filled"===n.inputStyle||"filled"===t.inputStyle,"p-ripple-disabled":n&&!1===n.ripple||!1===t.ripple})},menu:"p-menu-list p-reset",action:function(e){return p("p-menuitem-link",{"p-disabled":e.item.disabled})},menuitem:"p-menuitem",submenuHeader:function(e){return p("p-submenu-header",{"p-disabled":e.submenu.disabled})},separator:"p-menu-separator",label:"p-menuitem-text",icon:"p-menuitem-icon",transition:"p-connected-overlay"},styles:"\n@layer primereact {\n .p-menu-overlay {\n position: absolute;\n /* Github #3122: Prevent animation flickering */\n top: -9999px;\n left: -9999px;\n }\n \n .p-menu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n \n .p-menu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n }\n \n .p-menu .p-menuitem-text {\n line-height: 1;\n }\n}\n",inlineStyles:{submenuHeader:function(e){return e.submenu.style},menuitem:function(e){return e.item.style}}}}),I=function(t){var n=e.useRef(void 0);return e.useEffect((function(){n.current=t})),n.current},A=function(t,n,r){var i,o,u,a,l,c,s,p,d,b,y,v,g,E,h,O=(a=void 0===(u=(i={type:"keydown",listener:function(e){"Esc"!==e.key&&"Escape"!==e.key||(e.stopImmediatePropagation(),r(e))}}).target)?"document":u,l=i.type,c=i.listener,s=i.options,d=void 0===(p=i.when)||p,b=e.useRef(null),y=e.useRef(null),v=I(c),g=I(s),E=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};f.isNotEmpty(e.target)&&(h(),(e.when||d)&&(b.current=m.getTargetElement(e.target))),!y.current&&b.current&&(y.current=function(e){return c&&c(e)},b.current.addEventListener(l,y.current,s))},h=function(){y.current&&(b.current.removeEventListener(l,y.current,s),y.current=null)},e.useEffect((function(){d?b.current=m.getTargetElement(a):(h(),b.current=null)}),[a,d]),e.useEffect((function(){!y.current||""+v==""+c&&g===s||(h(),d&&E())}),[c,s,d]),o=function(){h()},e.useEffect((function(){return o}),[]),[E,h]),x=P(O,2),w=x[0],S=x[1];return e.useEffect((function(){if(n&&t.current)return w(),function(){S()}})),[t,r]};function T(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function D(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?T(Object(n),!0).forEach((function(t){var r,i,o;r=e,o=n[t],(i=O(i=t))in r?Object.defineProperty(r,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):r[i]=o})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):T(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var H=e.memo(e.forwardRef((function(r,E){var h=e.useContext(n),O=k.getProps(r,h),x=P(e.useState(O.id),2),w=x[0],S=x[1],j=P(e.useState(!O.popup),2),N=j[0],I=j[1],T=k.setMetaData({props:O,state:{id:w,visible:N}}),H=T.ptm,C=T.cx,R=T.sx;i(k.css.styles,T.isUnstyled,{name:"menu"});var _=e.useRef(null),Z=e.useRef(null);A(Z,O.popup&&O.closeOnEscape,(function(e){Y(e)}));var M=P(u({target:Z,overlay:_,listener:function(e,t){t.valid&&Y(e)},when:N}),2),U=M[0],z=M[1],J=function(e,t){t.disabled?e.preventDefault():(t.url||e.preventDefault(),t.command&&t.command({originalEvent:e,item:t}),O.popup&&Y(e))},K=function(e,t){var n=e.currentTarget.parentElement;switch(e.which){case 40:var r=L(n);r&&r.children[0].focus(),e.preventDefault();break;case 38:var i=X(n);i&&i.children[0].focus(),e.preventDefault()}},L=function e(t){var n=t.nextElementSibling;return n?m.getAttribute(n,'[data-p-disabled="true"]')||!m.getAttribute(n,'[data-pc-section="menuitem"]')?e(n):n:null},X=function e(t){var n=t.previousElementSibling;return n?m.getAttribute(n,'[data-p-disabled="true"]')||!m.getAttribute(n,'[data-pc-section="menuitem"]')?e(n):n:null},F=function(e){O.popup&&(N?Y(e):G(e))},G=function(e){Z.current=e.currentTarget,I(!0),O.onShow&&O.onShow(e)},Y=function(e){Z.current=e.currentTarget,I(!1),O.onHide&&O.onHide(e)},$=function(){m.addStyles(_.current,{position:"absolute",top:"0",left:"0"}),b.set("menu",_.current,h&&h.autoZIndex||t.autoZIndex,O.baseZIndex||h&&h.zIndex.menu||t.zIndex.menu),m.absolutePosition(_.current,Z.current,O.popupAlignment)},q=function(){U()},B=function(){Z.current=null,z()},Q=function(){b.clear(_.current)};a((function(){w||S(d())})),l((function(){b.clear(_.current)})),e.useImperativeHandle(E,(function(){return{props:O,toggle:F,show:G,hide:Y,getElement:function(){return _.current},getTarget:function(){return Z.current}}}));var V=function(t,n){var r=w+"_sub_"+n,i=t.items.map(ee),o=y({id:r,key:r,role:"presentation",className:p(t.className,C("submenuHeader",{submenu:t})),style:R("submenuHeader",{submenu:t}),"data-p-disabled":t.disabled},H("submenuHeader"));return e.createElement(e.Fragment,{key:r},e.createElement("li",o,t.label),i)},W=function(t){var n=w+"_separator_"+t,r=y({id:n,key:n,className:C("separator"),role:"separator"},H("separator"));return e.createElement("li",r)},ee=function(t,n){if(!1===t.visible)return null;var r=p("p-menuitem-link",{"p-disabled":t.disabled}),i=p("p-menuitem-icon",t.icon),o=y({className:C("icon")},H("icon")),u=v.getJSXIcon(t.icon,D({},o),{props:O}),a=y({className:C("label")},H("label")),l=t.label&&e.createElement("span",a,t.label),c=t.disabled?null:0,s=t.id||w+"_"+n,m=y({href:t.url||"#",className:C("action",{item:t}),role:"menuitem",target:t.target,onClick:function(e){return J(e,t)},onKeyDown:function(e){return K(e)},tabIndex:c,"aria-disabled":t.disabled,"data-p-disabled":t.disabled},H("action")),d=e.createElement("a",m,u,l);t.template&&(d=f.getJSXElement(t.template,t,{onClick:function(e){return J(e,t)},onKeyDown:function(e){return K(e)},className:r,tabIndex:c,labelClassName:"p-menuitem-text",iconClassName:i,element:d,props:O}));var b=y({id:s,key:s,className:p(t.className,C("menuitem")),style:R("menuitem",{item:t}),role:"none","data-p-disabled":t.disabled||!1},H("menuitem"));return e.createElement("li",b,d)},te=function(e,t){return e.separator?W(t):e.items?V(e,t):ee(e,t)},ne=function(){if(O.model){var t=O.model.map(te),n=y({className:p(O.className,C("root",{context:h})),style:O.style,onClick:function(e){return t=e,void(O.popup&&c.emit("overlay-click",{originalEvent:t,target:Z.current}));var t}},k.getOtherProps(O),H("root")),r=y({className:C("menu"),role:"menu"},H("menu")),i=y({classNames:C("transition"),in:N,timeout:{enter:120,exit:100},options:O.transitionOptions,unmountOnExit:!0,onEnter:$,onEntered:q,onExit:B,onExited:Q},H("transition"));return e.createElement(o,g({nodeRef:_},i),e.createElement("div",g({id:O.id,ref:_},n),e.createElement("ul",r,t)))}return null}();return O.popup?e.createElement(s,{element:ne,appendTo:O.appendTo}):ne})));H.displayName="Menu";export{H as Menu};
package/menu/menu.js CHANGED
@@ -191,7 +191,8 @@ this.primereact.menu = (function (exports, React, PrimeReact, componentbase, css
191
191
  transitionOptions: null,
192
192
  onShow: null,
193
193
  onHide: null,
194
- children: undefined
194
+ children: undefined,
195
+ closeOnEscape: true
195
196
  },
196
197
  css: {
197
198
  classes: classes,
@@ -200,6 +201,106 @@ this.primereact.menu = (function (exports, React, PrimeReact, componentbase, css
200
201
  }
201
202
  });
202
203
 
204
+ var usePrevious = function usePrevious(newValue) {
205
+ var ref = React__namespace.useRef(undefined);
206
+ React__namespace.useEffect(function () {
207
+ ref.current = newValue;
208
+ });
209
+ return ref.current;
210
+ };
211
+
212
+ /* eslint-disable */
213
+ var useUnmountEffect = function useUnmountEffect(fn) {
214
+ return React__namespace.useEffect(function () {
215
+ return fn;
216
+ }, []);
217
+ };
218
+ /* eslint-enable */
219
+
220
+ /* eslint-disable */
221
+ var useEventListener = function useEventListener(_ref) {
222
+ var _ref$target = _ref.target,
223
+ target = _ref$target === void 0 ? 'document' : _ref$target,
224
+ type = _ref.type,
225
+ listener = _ref.listener,
226
+ options = _ref.options,
227
+ _ref$when = _ref.when,
228
+ when = _ref$when === void 0 ? true : _ref$when;
229
+ var targetRef = React__namespace.useRef(null);
230
+ var listenerRef = React__namespace.useRef(null);
231
+ var prevListener = usePrevious(listener);
232
+ var prevOptions = usePrevious(options);
233
+ var bind = function bind() {
234
+ var bindOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
235
+ if (utils.ObjectUtils.isNotEmpty(bindOptions.target)) {
236
+ unbind();
237
+ (bindOptions.when || when) && (targetRef.current = utils.DomHandler.getTargetElement(bindOptions.target));
238
+ }
239
+ if (!listenerRef.current && targetRef.current) {
240
+ listenerRef.current = function (event) {
241
+ return listener && listener(event);
242
+ };
243
+ targetRef.current.addEventListener(type, listenerRef.current, options);
244
+ }
245
+ };
246
+ var unbind = function unbind() {
247
+ if (listenerRef.current) {
248
+ targetRef.current.removeEventListener(type, listenerRef.current, options);
249
+ listenerRef.current = null;
250
+ }
251
+ };
252
+ React__namespace.useEffect(function () {
253
+ if (when) {
254
+ targetRef.current = utils.DomHandler.getTargetElement(target);
255
+ } else {
256
+ unbind();
257
+ targetRef.current = null;
258
+ }
259
+ }, [target, when]);
260
+ React__namespace.useEffect(function () {
261
+ // to properly compare functions we can implicitly converting the function to it's body's text as a String
262
+ if (listenerRef.current && ('' + prevListener !== '' + listener || prevOptions !== options)) {
263
+ unbind();
264
+ when && bind();
265
+ }
266
+ }, [listener, options, when]);
267
+ useUnmountEffect(function () {
268
+ unbind();
269
+ });
270
+ return [bind, unbind];
271
+ };
272
+ /* eslint-enable */
273
+
274
+ var useOnEscapeKey = function useOnEscapeKey(ref, condition, callback) {
275
+ var handleEsc = function handleEsc(event) {
276
+ if (event.key === 'Esc' || event.key === 'Escape') {
277
+ event.stopImmediatePropagation();
278
+ callback(event);
279
+ }
280
+ return;
281
+ };
282
+ var _useEventListener = useEventListener({
283
+ type: 'keydown',
284
+ listener: handleEsc
285
+ }),
286
+ _useEventListener2 = _slicedToArray(_useEventListener, 2),
287
+ bindKeyDownListener = _useEventListener2[0],
288
+ unbindKeyDownListener = _useEventListener2[1];
289
+ React__namespace.useEffect(function () {
290
+ if (!condition) {
291
+ return;
292
+ }
293
+ if (!ref.current) {
294
+ return;
295
+ }
296
+ bindKeyDownListener();
297
+ return function () {
298
+ unbindKeyDownListener();
299
+ };
300
+ });
301
+ return [ref, callback];
302
+ };
303
+
203
304
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
204
305
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
205
306
  var Menu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
@@ -229,6 +330,9 @@ this.primereact.menu = (function (exports, React, PrimeReact, componentbase, css
229
330
  });
230
331
  var menuRef = React__namespace.useRef(null);
231
332
  var targetRef = React__namespace.useRef(null);
333
+ useOnEscapeKey(targetRef, props.popup && props.closeOnEscape, function (event) {
334
+ hide(event);
335
+ });
232
336
  var _useOverlayListener = hooks.useOverlayListener({
233
337
  target: targetRef,
234
338
  overlay: menuRef,