@xlork/react
Version:
XLork is a powerful Node.js package for parsing and manipulating CSV and XML files. With its intuitive API, XLork makes it easy to read, write, and modify CSV and XML data in your Node.js applications. Whether you're dealing with large datasets or just ne
3 lines (2 loc) • 7.23 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),n=require("react/jsx-runtime");function o(e,n){(null==n||n>e.length)&&(n=e.length);for(var o=0,r=Array(n);o<n;o++)r[o]=e[o];return r}function r(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var r,l,t,i,a=[],s=!0,d=!1;try{if(t=(o=o.call(e)).next,0===n){if(Object(o)!==o)return;s=!1}else for(;!(s=(r=t.call(o)).done)&&(a.push(r.value),a.length!==n);s=!0);}catch(e){d=!0,l=e}finally{try{if(!s&&null!=o.return&&(i=o.return(),Object(i)!==i))return}finally{if(d)throw l}}return a}}(e,n)||function(e,n){if(e){if("string"==typeof e)return o(e,n);var r={}.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)?o(e,n):void 0}}(e,n)||function(){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 l(e){return l="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},l(e)}function t(o){var t,i=o.settings,a=void 0===i?{}:i,s=o.licenseKey,d=o.user,c=o.loadOnDemand,u=void 0===c?null:c,f=o.origin,p=void 0===f?"https://app.xlork.com":f,_=o.children,m=void 0===_?null:_,x=o.onCancel,h=void 0===x?function(e){console.log("[onCancelDefault]",e)}:x,y=o.onComplete,b=void 0===y?function(e){console.log("[onCompleteDefault]",e)}:y;a=Object.assign({},{title:"Upload Data",allowInvalidSubmit:!0,theme:null,maxRecords:0,sampleUrl:null,columns:[],display:"popup",header:!0,branding:!1,history:!1,social:!0},a);var v="__xlork",g=r(e.useState(0),2),k=g[0],w=g[1],C=r(e.useState(!0),2),E=C[0],j=C[1],R=r(e.useState(p+"/embed/"+s),2),S=R[0];R[1];var I=r(e.useState({error:!0,message:""}),2),U=I[0],D=I[1],N=e.useCallback((function(e){var n,o=e.settings,r=e.licenseKey,l=e.user,t=e.embedURL,i=e.onComplete,a=e.onCancel,s="";if(r)if(l)if(null!=l&&l.email)if(t)if(i&&"function"!=typeof i)s="[REQUIRED] onComplete should be function type.";else if(a&&"function"!=typeof a)s="[REQUIRED] onCancel should be function type.";else if(o)if(null!=o&&o.hasOwnProperty("columns"))if(!(null!=o&&null!==(n=o.columns)&&void 0!==n&&n.length)>0);else{var d;null==o||null===(d=o.columns)||void 0===d||d.forEach((function(e){if(!e.label||!e.key)return s="[REQUIRED] each column should have label & key in 'columns'",!1}))}else s="[REQUIRED] should have required property 'columns'";else s="[REQUIRED] setting not defined.";else s="[REQUIRED] embedURL not defined.";else s="[REQUIRED] email(unique) not defined.";else s="[REQUIRED] user not defined.";else s="[REQUIRED] A Valid licenseKey is required.";return{error:!!s,message:s}}),[a]),A=e.useCallback((function(e){var n,o=null==e?void 0:e.data;if("object"==l(o)&&(null==o?void 0:o.channel)==v)switch(null==o?void 0:o.type){case"[IFRAME LOADED]":j(!1);var r={type:"[CONFIG INITILIZE]",channel:v,settings:a,licenseKey:s,user:d};window.frames.__xlork_iframe.postMessage(r,"*");break;case"[onComplete]":b&&b(o.value);case"[onCancel]":window.removeEventListener("message",A,!1),null===(n=document)||void 0===n||null===(n=n.body)||void 0===n||null===(n=n.classList)||void 0===n||n.remove("__xlork_modal_open"),"[onCancel]"==(null==o?void 0:o.type)&&h&&h(),w(0)}}),[a]),L=function(e){var o=e.title,r=void 0===o?"Connecting xlork ..":o;return n.jsx(n.Fragment,{children:n.jsxs("div",{className:"__xlork_loader",children:[n.jsxs("div",{className:"loader_ripple",children:[n.jsx("div",{}),n.jsx("div",{})]}),n.jsxs("span",{children:[" ",r]})]})})},O=function(){var e,n=N({settings:a,licenseKey:s,user:d,embedURL:S,onComplete:b,onCancel:h}),o=n.error,r=n.message;o?D({error:o,message:r}):(window.addEventListener("message",A,!1),w(1),j(!0),null===(e=document)||void 0===e||null===(e=e.body)||void 0===e||null===(e=e.classList)||void 0===e||e.add("__xlork_modal_open"))};return n.jsx(n.Fragment,{children:null!=U&&U.error&&null!=U&&U.message?n.jsxs("span",{className:"__xlork_error",children:["*",null==U?void 0:U.message]}):n.jsxs(n.Fragment,{children:[1==k&&n.jsxs("div",{className:"__xlork_iframe_container ".concat("inline"==(null===(t=a)||void 0===t?void 0:t.display)?"_inline":""),children:[E&&n.jsx(L,{}),n.jsx("iframe",{allowFullScreen:!0,name:"__xlork_iframe",src:"".concat(S),onLoad:function(){return j(!1)},className:E?"__xlork_hidden":"",id:"__xlork_iframe"})]}),0==k&&(u?u(O):m?n.jsx("div",{onClick:O,children:m}):n.jsx("button",{className:"btn __xlork_btn_default",onClick:O,children:"Click to upload"}))]})})}!function(e,n){void 0===n&&(n={});var o=n.insertAt;if(e&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],l=document.createElement("style");l.type="text/css","top"===o&&r.firstChild?r.insertBefore(l,r.firstChild):r.appendChild(l),l.styleSheet?l.styleSheet.cssText=e:l.appendChild(document.createTextNode(e))}}(".__xlork_hidden{display:none}.__xlork_modal_open{overflow:hidden}.__xlork_btn_default{background-color:#7b66f0;border:none;border-radius:4px;color:#fff;display:inline-block;font-size:16px;font-weight:600;height:fit-content;padding:15px 32px;text-align:center;text-decoration:none}.__xlork_error{background:hsla(0,0%,100%,.227);background:rgba(255,0,0,.031);border-radius:8px;color:red;padding:8px;width:60%}.__xlork_iframe_container{align-items:center;backdrop-filter:blur(4px);background:rgba(0,0,0,.5);box-sizing:border-box;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;min-height:400px;overflow:hidden;padding:16px;position:fixed;top:0;width:100%;z-index:2147483647}.__xlork_iframe_container iframe{border-width:0;height:100%;overflow:hidden;position:relative;width:100%;z-index:9999}.__xlork_iframe_container .__xlork_loader{align-items:center;color:#fff;display:flex;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:18px;font-weight:500;justify-content:center;width:100%}.__xlork_iframe_container .__xlork_loader .loader_ripple{display:inline-block;height:80px;position:relative;width:80px}.__xlork_iframe_container .__xlork_loader .loader_ripple div{animation:loader_ripple 1s cubic-bezier(0,.2,.8,1) infinite;border:4px solid #fff;border-radius:50%;opacity:1;position:absolute}.__xlork_iframe_container .__xlork_loader .loader_ripple div:nth-child(2){animation-delay:-.5s}.__xlork_iframe_container._inline{align-self:center;backdrop-filter:blur(4px);background:transparent;display:flex;height:100%;justify-self:center;position:relative;width:100%}.__xlork_iframe_container._inline .__xlork_loader{color:#707070}.__xlork_iframe_container._inline .__xlork_loader .loader_ripple div{border:4px solid #707070}@keyframes loader_ripple{0%{height:0;left:36px;opacity:1;top:36px;width:0}to{height:72px;left:0;opacity:0;top:0;width:72px}}"),exports.XlorkClient=t,exports.default=t;
//# sourceMappingURL=index.js.map