UNPKG

primereact

Version:

PrimeReact is an open source UI library for React featuring a rich set of 80+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with Prime

2 lines (1 loc) 5.57 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),r=require("primereact/button"),n=require("primereact/dialog"),a=require("primereact/hooks"),c=require("primereact/overlayservice"),i=require("primereact/portal"),o=require("primereact/utils");function l(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var u=l(e);function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},s.apply(this,arguments)}function f(e){if(Array.isArray(e))return e}function p(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,c=[],i=!0,o=!1;try{for(r=r.call(e);!(i=(n=r.next()).done)&&(c.push(n.value),!t||c.length!==t);i=!0);}catch(e){o=!0,a=e}finally{try{i||null==r.return||r.return()}finally{if(o)throw a}}return c}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function b(e,t){if(e){if("string"==typeof e)return m(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?m(e,t):void 0}}function v(){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 g(e,t){return f(e)||p(e,t)||b(e,t)||v()}function d(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function j(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?y(Object(r),!0).forEach((function(t){d(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):y(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var O=u.memo(u.forwardRef((function(e,l){var f=g(u.useState(e.visible),2),p=f[0],m=f[1],b=g(u.useState(!1),2),v=b[0],d=b[1],y=u.useRef(null),j=function(){return y.current||e},h=function(t){return(y.current||e)[t]},N=function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return o.ObjectUtils.getPropValue(h(e),r)},P=h("acceptLabel")||t.localeOption("accept"),S=h("rejectLabel")||t.localeOption("reject"),E=function(){N("accept"),D("accept")},w=function(){N("reject"),D("reject")},C=function(){m(!0)},D=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"cancel";m(!1),N("onHide",e)},I=function(t){if(t.tagKey===e.tagKey){var r=p!==t.visible;h("target")!==t.target&&!e.target?(D(),y.current=t,d(!0)):r&&(y.current=t,t.visible?C():D())}};u.useEffect((function(){e.visible?C():D()}),[e.visible]),u.useEffect((function(){return e.target||e.message||c.OverlayService.on("confirm-dialog",I),function(){c.OverlayService.off("confirm-dialog",I)}}),[e.target]),a.useUpdateEffect((function(){v&&C()}),[v]),a.useUnmountEffect((function(){c.OverlayService.off("confirm-dialog",I)})),u.useImperativeHandle(l,(function(){return{props:e,confirm:I}}));var k,q,U,A,L,_,x=function(){var e=o.classNames("p-confirm-dialog-accept",h("acceptClassName")),t=o.classNames("p-confirm-dialog-reject",{"p-button-text":!h("rejectClassName")},h("rejectClassName")),n=u.createElement(u.Fragment,null,u.createElement(r.Button,{label:S,icon:h("rejectIcon"),className:t,onClick:w}),u.createElement(r.Button,{label:P,icon:h("acceptIcon"),className:e,onClick:E,autoFocus:!0}));if(h("footer")){var a={accept:E,reject:w,acceptClassName:e,rejectClassName:t,acceptLabel:P,rejectLabel:S,element:n,props:j()};return o.ObjectUtils.getJSXElement(h("footer"),a)}return n},T=(k=j(),q=o.classNames("p-confirm-dialog",h("className")),U=o.ObjectUtils.findDiffKeys(k,O.defaultProps),A=o.ObjectUtils.getJSXElement(h("message"),k),L=o.IconUtils.getJSXIcon(h("icon"),{className:"p-confirm-dialog-icon"},{props:k}),_=x(),u.createElement(n.Dialog,s({visible:p},U,{className:q,footer:_,onHide:D,breakpoints:h("breakpoints")}),L,u.createElement("span",{className:"p-confirm-dialog-message"},A)));return u.createElement(i.Portal,{element:T,appendTo:h("appendTo")})})));O.displayName="ConfirmDialog",O.defaultProps={__TYPE:"ConfirmDialog",tagKey:void 0,visible:void 0,message:null,rejectLabel:null,acceptLabel:null,icon:null,rejectIcon:null,acceptIcon:null,rejectClassName:null,acceptClassName:null,className:null,appendTo:null,footer:null,breakpoints:null,onHide:null,accept:null,reject:null},exports.ConfirmDialog=O,exports.confirmDialog=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(e=j(j({},e),{visible:void 0===e.visible||e.visible})).visible&&c.OverlayService.emit("confirm-dialog",e);var t=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};c.OverlayService.emit("confirm-dialog",j(j(j({},e),t),{visible:!0}))},r=function(){c.OverlayService.emit("confirm-dialog",{visible:!1})};return{show:t,hide:r}};