(function(K){typeof define=="function"&&define.amd?define(K):K()})(function(){"use strict";var RC=Object.defineProperty,qC=Object.defineProperties;var MC=Object.getOwnPropertyDescriptors;var $s=Object.getOwnPropertySymbols;var Dy=Object.prototype.hasOwnProperty,Ey=Object.prototype.propertyIsEnumerable;var pu=Math.pow,Ly=(K,le,re)=>le in K?RC(K,le,{enumerable:!0,configurable:!0,writable:!0,value:re}):K[le]=re,I=(K,le)=>{for(var re in le||(le={}))Dy.call(le,re)&&Ly(K,re,le[re]);if($s)for(var re of $s(le))Ey.call(le,re)&&Ly(K,re,le[re]);return K},k=(K,le)=>qC(K,MC(le));var We=(K,le)=>{var re={};for(var qe in K)Dy.call(K,qe)&&le.indexOf(qe)<0&&(re[qe]=K[qe]);if(K!=null&&$s)for(var qe of $s(K))le.indexOf(qe)<0&&Ey.call(K,qe)&&(re[qe]=K[qe]);return re};function K(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var le={exports:{}},re={},qe={exports:{}},U={};/** * @license React * react.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var ta=Symbol.for("react.element"),wy=Symbol.for("react.portal"),Ny=Symbol.for("react.fragment"),jy=Symbol.for("react.strict_mode"),By=Symbol.for("react.profiler"),Py=Symbol.for("react.provider"),Uy=Symbol.for("react.context"),Oy=Symbol.for("react.forward_ref"),ky=Symbol.for("react.suspense"),Ry=Symbol.for("react.memo"),qy=Symbol.for("react.lazy"),fu=Symbol.iterator;function My(e){return e===null||typeof e!="object"?null:(e=fu&&e[fu]||e["@@iterator"],typeof e=="function"?e:null)}var yu={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},bu=Object.assign,hu={};function br(e,t,r){this.props=e,this.context=t,this.refs=hu,this.updater=r||yu}br.prototype.isReactComponent={},br.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},br.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function gu(){}gu.prototype=br.prototype;function Gs(e,t,r){this.props=e,this.context=t,this.refs=hu,this.updater=r||yu}var Ws=Gs.prototype=new gu;Ws.constructor=Gs,bu(Ws,br.prototype),Ws.isPureReactComponent=!0;var vu=Array.isArray,Au=Object.prototype.hasOwnProperty,Hs={current:null},Tu={key:!0,ref:!0,__self:!0,__source:!0};function Cu(e,t,r){var a,n={},s=null,l=null;if(t!=null)for(a in t.ref!==void 0&&(l=t.ref),t.key!==void 0&&(s=""+t.key),t)Au.call(t,a)&&!Tu.hasOwnProperty(a)&&(n[a]=t[a]);var i=arguments.length-2;if(i===1)n.children=r;else if(1>>1,de=D[ee];if(0>>1;een(mu,P))yrn(Zs,mu)?(D[ee]=Zs,D[yr]=P,ee=yr):(D[ee]=mu,D[fr]=P,ee=fr);else if(yrn(Zs,P))D[ee]=Zs,D[yr]=P,ee=yr;else break e}}return B}function n(D,B){var P=D.sortIndex-B.sortIndex;return P!==0?P:D.id-B.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;e.unstable_now=function(){return s.now()}}else{var l=Date,i=l.now();e.unstable_now=function(){return l.now()-i}}var o=[],u=[],d=1,c=null,m=3,b=!1,h=!1,g=!1,T=typeof setTimeout=="function"?setTimeout:null,f=typeof clearTimeout=="function"?clearTimeout:null,p=typeof setImmediate!="undefined"?setImmediate:null;typeof navigator!="undefined"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function y(D){for(var B=r(u);B!==null;){if(B.callback===null)a(u);else if(B.startTime<=D)a(u),B.sortIndex=B.expirationTime,t(o,B);else break;B=r(u)}}function v(D){if(g=!1,y(D),!h)if(r(o)!==null)h=!0,_s(A);else{var B=r(u);B!==null&&se(v,B.startTime-D)}}function A(D,B){h=!1,g&&(g=!1,f(S),S=-1),b=!0;var P=m;try{for(y(B),c=r(o);c!==null&&(!(c.expirationTime>B)||D&&!ue());){var ee=c.callback;if(typeof ee=="function"){c.callback=null,m=c.priorityLevel;var de=ee(c.expirationTime<=B);B=e.unstable_now(),typeof de=="function"?c.callback=de:c===r(o)&&a(o),y(B)}else a(o);c=r(o)}if(c!==null)var Vs=!0;else{var fr=r(u);fr!==null&&se(v,fr.startTime-B),Vs=!1}return Vs}finally{c=null,m=P,b=!1}}var x=!1,L=null,S=-1,O=5,j=-1;function ue(){return!(e.unstable_now()-jD||125ee?(D.sortIndex=P,t(u,D),r(o)===null&&D===r(u)&&(g?(f(S),S=-1):g=!0,se(v,P-ee))):(D.sortIndex=de,t(o,D),h||b||(h=!0,_s(A))),D},e.unstable_shouldYield=ue,e.unstable_wrapCallback=function(D){var B=m;return function(){var P=m;m=B;try{return D.apply(this,arguments)}finally{m=P}}}})(Eu),Du.exports=Eu;var Yy=Du.exports;/** * @license React * react-dom.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var Xy=w,je=Yy;function C(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;rt}return!1}function Ce(e,t,r,a,n,s,l){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=a,this.attributeNamespace=n,this.mustUseProperty=r,this.propertyName=e,this.type=t,this.sanitizeURL=s,this.removeEmptyString=l}var ce={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){ce[e]=new Ce(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];ce[t]=new Ce(t,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){ce[e]=new Ce(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){ce[e]=new Ce(e,2,!1,e,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){ce[e]=new Ce(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){ce[e]=new Ce(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){ce[e]=new Ce(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){ce[e]=new Ce(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){ce[e]=new Ce(e,5,!1,e.toLowerCase(),null,!1,!1)});var Js=/[\-:]([a-z])/g;function el(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(Js,el);ce[t]=new Ce(t,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(Js,el);ce[t]=new Ce(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(Js,el);ce[t]=new Ce(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){ce[e]=new Ce(e,1,!1,e.toLowerCase(),null,!1,!1)}),ce.xlinkHref=new Ce("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){ce[e]=new Ce(e,1,!1,e.toLowerCase(),null,!0,!0)});function tl(e,t,r,a){var n=ce.hasOwnProperty(t)?ce[t]:null;(n!==null?n.type!==0:a||!(2i||n[l]!==s[i]){var o=` `+n[l].replace(" at new "," at ");return e.displayName&&o.includes("")&&(o=o.replace("",e.displayName)),o}while(1<=l&&0<=i);break}}}finally{ul=!1,Error.prepareStackTrace=r}return(e=e?e.displayName||e.name:"")?na(e):""}function ab(e){switch(e.tag){case 5:return na(e.type);case 16:return na("Lazy");case 13:return na("Suspense");case 19:return na("SuspenseList");case 0:case 2:case 15:return e=dl(e.type,!1),e;case 11:return e=dl(e.type.render,!1),e;case 1:return e=dl(e.type,!0),e;default:return""}}function cl(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case vr:return"Fragment";case gr:return"Portal";case al:return"Profiler";case rl:return"StrictMode";case sl:return"Suspense";case ll:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case Pu:return(e.displayName||"Context")+".Consumer";case Bu:return(e._context.displayName||"Context")+".Provider";case nl:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case il:return t=e.displayName||null,t!==null?t:cl(e.type)||"Memo";case Ct:t=e._payload,e=e._init;try{return cl(e(t))}catch(r){}}return null}function nb(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return cl(t);case 8:return t===rl?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function St(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function ku(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function sb(e){var t=ku(e)?"checked":"value",r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),a=""+e[t];if(!e.hasOwnProperty(t)&&typeof r!="undefined"&&typeof r.get=="function"&&typeof r.set=="function"){var n=r.get,s=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return n.call(this)},set:function(l){a=""+l,s.call(this,l)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return a},setValue:function(l){a=""+l},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function fn(e){e._valueTracker||(e._valueTracker=sb(e))}function Ru(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var r=t.getValue(),a="";return e&&(a=ku(e)?e.checked?"true":"false":e.value),e=a,e!==r?(t.setValue(e),!0):!1}function yn(e){if(e=e||(typeof document!="undefined"?document:void 0),typeof e=="undefined")return null;try{return e.activeElement||e.body}catch(t){return e.body}}function ml(e,t){var r=t.checked;return $({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:r!=null?r:e._wrapperState.initialChecked})}function qu(e,t){var r=t.defaultValue==null?"":t.defaultValue,a=t.checked!=null?t.checked:t.defaultChecked;r=St(t.value!=null?t.value:r),e._wrapperState={initialChecked:a,initialValue:r,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Mu(e,t){t=t.checked,t!=null&&tl(e,"checked",t,!1)}function pl(e,t){Mu(e,t);var r=St(t.value),a=t.type;if(r!=null)a==="number"?(r===0&&e.value===""||e.value!=r)&&(e.value=""+r):e.value!==""+r&&(e.value=""+r);else if(a==="submit"||a==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?fl(e,t.type,r):t.hasOwnProperty("defaultValue")&&fl(e,t.type,St(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function zu(e,t,r){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var a=t.type;if(!(a!=="submit"&&a!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,r||t===e.value||(e.value=t),e.defaultValue=t}r=e.name,r!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,r!==""&&(e.name=r)}function fl(e,t,r){(t!=="number"||yn(e.ownerDocument)!==e)&&(r==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+r&&(e.defaultValue=""+r))}var sa=Array.isArray;function Ar(e,t,r,a){if(e=e.options,t){t={};for(var n=0;n"+t.valueOf().toString()+"",t=bn.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function la(e,t){if(t){var r=e.firstChild;if(r&&r===e.lastChild&&r.nodeType===3){r.nodeValue=t;return}}e.textContent=t}var ia={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},lb=["Webkit","ms","Moz","O"];Object.keys(ia).forEach(function(e){lb.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),ia[t]=ia[e]})});function Gu(e,t,r){return t==null||typeof t=="boolean"||t===""?"":r||typeof t!="number"||t===0||ia.hasOwnProperty(e)&&ia[e]?(""+t).trim():t+"px"}function Wu(e,t){e=e.style;for(var r in t)if(t.hasOwnProperty(r)){var a=r.indexOf("--")===0,n=Gu(r,t[r],a);r==="float"&&(r="cssFloat"),a?e.setProperty(r,n):e[r]=n}}var ib=$({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function hl(e,t){if(t){if(ib[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(C(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(C(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(C(61))}if(t.style!=null&&typeof t.style!="object")throw Error(C(62))}}function gl(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var vl=null;function Al(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Tl=null,Tr=null,Cr=null;function Hu(e){if(e=wa(e)){if(typeof Tl!="function")throw Error(C(280));var t=e.stateNode;t&&(t=Mn(t),Tl(e.stateNode,e.type,t))}}function Ku(e){Tr?Cr?Cr.push(e):Cr=[e]:Tr=e}function Qu(){if(Tr){var e=Tr,t=Cr;if(Cr=Tr=null,Hu(e),t)for(e=0;e>>=0,e===0?32:31-(gb(e)/vb|0)|0}var Tn=64,Cn=4194304;function ca(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Sn(e,t){var r=e.pendingLanes;if(r===0)return 0;var a=0,n=e.suspendedLanes,s=e.pingedLanes,l=r&268435455;if(l!==0){var i=l&~n;i!==0?a=ca(i):(s&=l,s!==0&&(a=ca(s)))}else l=r&~n,l!==0?a=ca(l):s!==0&&(a=ca(s));if(a===0)return 0;if(t!==0&&t!==a&&!(t&n)&&(n=a&-a,s=t&-t,n>=s||n===16&&(s&4194240)!==0))return t;if(a&4&&(a|=r&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=a;0r;r++)t.push(e);return t}function ma(e,t,r){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-He(t),e[t]=r}function Sb(e,t){var r=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var a=e.eventTimes;for(e=e.expirationTimes;0=Aa),xd=" ",Id=!1;function Ld(e,t){switch(e){case"keyup":return Yb.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Dd(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Ir=!1;function Jb(e,t){switch(e){case"compositionend":return Dd(t);case"keypress":return t.which!==32?null:(Id=!0,xd);case"textInput":return e=t.data,e===xd&&Id?null:e;default:return null}}function eh(e,t){if(Ir)return e==="compositionend"||!Ml&&Ld(e,t)?(e=gd(),En=Pl=Et=null,Ir=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:r,offset:t-e};e=a}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=Ud(r)}}function kd(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?kd(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Rd(){for(var e=window,t=yn();t instanceof e.HTMLIFrameElement;){try{var r=typeof t.contentWindow.location.href=="string"}catch(a){r=!1}if(r)e=t.contentWindow;else break;t=yn(e.document)}return t}function _l(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function uh(e){var t=Rd(),r=e.focusedElem,a=e.selectionRange;if(t!==r&&r&&r.ownerDocument&&kd(r.ownerDocument.documentElement,r)){if(a!==null&&_l(r)){if(t=a.start,e=a.end,e===void 0&&(e=t),"selectionStart"in r)r.selectionStart=t,r.selectionEnd=Math.min(e,r.value.length);else if(e=(t=r.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var n=r.textContent.length,s=Math.min(a.start,n);a=a.end===void 0?s:Math.min(a.end,n),!e.extend&&s>a&&(n=a,a=s,s=n),n=Od(r,s);var l=Od(r,a);n&&l&&(e.rangeCount!==1||e.anchorNode!==n.node||e.anchorOffset!==n.offset||e.focusNode!==l.node||e.focusOffset!==l.offset)&&(t=t.createRange(),t.setStart(n.node,n.offset),e.removeAllRanges(),s>a?(e.addRange(t),e.extend(l.node,l.offset)):(t.setEnd(l.node,l.offset),e.addRange(t)))}}for(t=[],e=r;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;r=document.documentMode,Lr=null,Vl=null,xa=null,Zl=!1;function qd(e,t,r){var a=r.window===r?r.document:r.nodeType===9?r:r.ownerDocument;Zl||Lr==null||Lr!==yn(a)||(a=Lr,"selectionStart"in a&&_l(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),xa&&Sa(xa,a)||(xa=a,a=kn(Vl,"onSelect"),0jr||(e.current=ri[jr],ri[jr]=null,jr--)}function z(e,t){jr++,ri[jr]=e.current,e.current=t}var Bt={},ye=jt(Bt),Ie=jt(!1),Qt=Bt;function Br(e,t){var r=e.type.contextTypes;if(!r)return Bt;var a=e.stateNode;if(a&&a.__reactInternalMemoizedUnmaskedChildContext===t)return a.__reactInternalMemoizedMaskedChildContext;var n={},s;for(s in r)n[s]=t[s];return a&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=n),n}function Le(e){return e=e.childContextTypes,e!=null}function zn(){_(Ie),_(ye)}function Jd(e,t,r){if(ye.current!==Bt)throw Error(C(168));z(ye,t),z(Ie,r)}function ec(e,t,r){var a=e.stateNode;if(t=t.childContextTypes,typeof a.getChildContext!="function")return r;a=a.getChildContext();for(var n in a)if(!(n in t))throw Error(C(108,nb(e)||"Unknown",n));return $({},r,a)}function Fn(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Bt,Qt=ye.current,z(ye,e),z(Ie,Ie.current),!0}function tc(e,t,r){var a=e.stateNode;if(!a)throw Error(C(169));r?(e=ec(e,t,Qt),a.__reactInternalMemoizedMergedChildContext=e,_(Ie),_(ye),z(ye,e)):_(Ie),z(Ie,r)}var mt=null,_n=!1,ai=!1;function rc(e){mt===null?mt=[e]:mt.push(e)}function Th(e){_n=!0,rc(e)}function Pt(){if(!ai&&mt!==null){ai=!0;var e=0,t=M;try{var r=mt;for(M=1;e>=l,n-=l,pt=1<<32-He(t)+n|r<S?(O=L,L=null):O=L.sibling;var j=m(f,L,y[S],v);if(j===null){L===null&&(L=O);break}e&&L&&j.alternate===null&&t(f,L),p=s(j,p,S),x===null?A=j:x.sibling=j,x=j,L=O}if(S===y.length)return r(f,L),Z&&Xt(f,S),A;if(L===null){for(;SS?(O=L,L=null):O=L.sibling;var ue=m(f,L,j.value,v);if(ue===null){L===null&&(L=O);break}e&&L&&ue.alternate===null&&t(f,L),p=s(ue,p,S),x===null?A=ue:x.sibling=ue,x=ue,L=O}if(j.done)return r(f,L),Z&&Xt(f,S),A;if(L===null){for(;!j.done;S++,j=y.next())j=c(f,j.value,v),j!==null&&(p=s(j,p,S),x===null?A=j:x.sibling=j,x=j);return Z&&Xt(f,S),A}for(L=a(f,L);!j.done;S++,j=y.next())j=b(L,f,S,j.value,v),j!==null&&(e&&j.alternate!==null&&L.delete(j.key===null?S:j.key),p=s(j,p,S),x===null?A=j:x.sibling=j,x=j);return e&&L.forEach(function(Gt){return t(f,Gt)}),Z&&Xt(f,S),A}function T(f,p,y,v){if(typeof y=="object"&&y!==null&&y.type===vr&&y.key===null&&(y=y.props.children),typeof y=="object"&&y!==null){switch(y.$$typeof){case pn:e:{for(var A=y.key,x=p;x!==null;){if(x.key===A){if(A=y.type,A===vr){if(x.tag===7){r(f,x.sibling),p=n(x,y.props.children),p.return=f,f=p;break e}}else if(x.elementType===A||typeof A=="object"&&A!==null&&A.$$typeof===Ct&&oc(A)===x.type){r(f,x.sibling),p=n(x,y.props),p.ref=Na(f,x,y),p.return=f,f=p;break e}r(f,x);break}else t(f,x);x=x.sibling}y.type===vr?(p=lr(y.props.children,f.mode,v,y.key),p.return=f,f=p):(v=bs(y.type,y.key,y.props,null,f.mode,v),v.ref=Na(f,p,y),v.return=f,f=v)}return l(f);case gr:e:{for(x=y.key;p!==null;){if(p.key===x)if(p.tag===4&&p.stateNode.containerInfo===y.containerInfo&&p.stateNode.implementation===y.implementation){r(f,p.sibling),p=n(p,y.children||[]),p.return=f,f=p;break e}else{r(f,p);break}else t(f,p);p=p.sibling}p=eo(y,f.mode,v),p.return=f,f=p}return l(f);case Ct:return x=y._init,T(f,p,x(y._payload),v)}if(sa(y))return h(f,p,y,v);if(aa(y))return g(f,p,y,v);Gn(f,y)}return typeof y=="string"&&y!==""||typeof y=="number"?(y=""+y,p!==null&&p.tag===6?(r(f,p.sibling),p=n(p,y),p.return=f,f=p):(r(f,p),p=Ji(y,f.mode,v),p.return=f,f=p),l(f)):r(f,p)}return T}var kr=uc(!0),dc=uc(!1),Wn=jt(null),Hn=null,Rr=null,ui=null;function di(){ui=Rr=Hn=null}function ci(e){var t=Wn.current;_(Wn),e._currentValue=t}function mi(e,t,r){for(;e!==null;){var a=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,a!==null&&(a.childLanes|=t)):a!==null&&(a.childLanes&t)!==t&&(a.childLanes|=t),e===r)break;e=e.return}}function qr(e,t){Hn=e,ui=Rr=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(De=!0),e.firstContext=null)}function Fe(e){var t=e._currentValue;if(ui!==e)if(e={context:e,memoizedValue:t,next:null},Rr===null){if(Hn===null)throw Error(C(308));Rr=e,Hn.dependencies={lanes:0,firstContext:e}}else Rr=Rr.next=e;return t}var Jt=null;function pi(e){Jt===null?Jt=[e]:Jt.push(e)}function cc(e,t,r,a){var n=t.interleaved;return n===null?(r.next=r,pi(t)):(r.next=n.next,n.next=r),t.interleaved=r,yt(e,a)}function yt(e,t){e.lanes|=t;var r=e.alternate;for(r!==null&&(r.lanes|=t),r=e,e=e.return;e!==null;)e.childLanes|=t,r=e.alternate,r!==null&&(r.childLanes|=t),r=e,e=e.return;return r.tag===3?r.stateNode:null}var Ut=!1;function fi(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function mc(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function bt(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Ot(e,t,r){var a=e.updateQueue;if(a===null)return null;if(a=a.shared,q&2){var n=a.pending;return n===null?t.next=t:(t.next=n.next,n.next=t),a.pending=t,yt(e,r)}return n=a.interleaved,n===null?(t.next=t,pi(a)):(t.next=n.next,n.next=t),a.interleaved=t,yt(e,r)}function Kn(e,t,r){if(t=t.updateQueue,t!==null&&(t=t.shared,(r&4194240)!==0)){var a=t.lanes;a&=e.pendingLanes,r|=a,t.lanes=r,El(e,r)}}function pc(e,t){var r=e.updateQueue,a=e.alternate;if(a!==null&&(a=a.updateQueue,r===a)){var n=null,s=null;if(r=r.firstBaseUpdate,r!==null){do{var l={eventTime:r.eventTime,lane:r.lane,tag:r.tag,payload:r.payload,callback:r.callback,next:null};s===null?n=s=l:s=s.next=l,r=r.next}while(r!==null);s===null?n=s=t:s=s.next=t}else n=s=t;r={baseState:a.baseState,firstBaseUpdate:n,lastBaseUpdate:s,shared:a.shared,effects:a.effects},e.updateQueue=r;return}e=r.lastBaseUpdate,e===null?r.firstBaseUpdate=t:e.next=t,r.lastBaseUpdate=t}function Qn(e,t,r,a){var n=e.updateQueue;Ut=!1;var s=n.firstBaseUpdate,l=n.lastBaseUpdate,i=n.shared.pending;if(i!==null){n.shared.pending=null;var o=i,u=o.next;o.next=null,l===null?s=u:l.next=u,l=o;var d=e.alternate;d!==null&&(d=d.updateQueue,i=d.lastBaseUpdate,i!==l&&(i===null?d.firstBaseUpdate=u:i.next=u,d.lastBaseUpdate=o))}if(s!==null){var c=n.baseState;l=0,d=u=o=null,i=s;do{var m=i.lane,b=i.eventTime;if((a&m)===m){d!==null&&(d=d.next={eventTime:b,lane:0,tag:i.tag,payload:i.payload,callback:i.callback,next:null});e:{var h=e,g=i;switch(m=t,b=r,g.tag){case 1:if(h=g.payload,typeof h=="function"){c=h.call(b,c,m);break e}c=h;break e;case 3:h.flags=h.flags&-65537|128;case 0:if(h=g.payload,m=typeof h=="function"?h.call(b,c,m):h,m==null)break e;c=$({},c,m);break e;case 2:Ut=!0}}i.callback!==null&&i.lane!==0&&(e.flags|=64,m=n.effects,m===null?n.effects=[i]:m.push(i))}else b={eventTime:b,lane:m,tag:i.tag,payload:i.payload,callback:i.callback,next:null},d===null?(u=d=b,o=c):d=d.next=b,l|=m;if(i=i.next,i===null){if(i=n.shared.pending,i===null)break;m=i,i=m.next,m.next=null,n.lastBaseUpdate=m,n.shared.pending=null}}while(!0);if(d===null&&(o=c),n.baseState=o,n.firstBaseUpdate=u,n.lastBaseUpdate=d,t=n.shared.interleaved,t!==null){n=t;do l|=n.lane,n=n.next;while(n!==t)}else s===null&&(n.shared.lanes=0);rr|=l,e.lanes=l,e.memoizedState=c}}function fc(e,t,r){if(e=t.effects,t.effects=null,e!==null)for(t=0;tr?r:4,e(!0);var a=vi.transition;vi.transition={};try{e(!1),t()}finally{M=r,vi.transition=a}}function Pc(){return _e().memoizedState}function Ih(e,t,r){var a=Mt(e);if(r={lane:a,action:r,hasEagerState:!1,eagerState:null,next:null},Uc(e))Oc(t,r);else if(r=cc(e,t,r,a),r!==null){var n=xe();et(r,e,a,n),kc(r,t,a)}}function Lh(e,t,r){var a=Mt(e),n={lane:a,action:r,hasEagerState:!1,eagerState:null,next:null};if(Uc(e))Oc(t,n);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var l=t.lastRenderedState,i=s(l,r);if(n.hasEagerState=!0,n.eagerState=i,Ke(i,l)){var o=t.interleaved;o===null?(n.next=n,pi(t)):(n.next=o.next,o.next=n),t.interleaved=n;return}}catch(u){}finally{}r=cc(e,t,n,a),r!==null&&(n=xe(),et(r,e,a,n),kc(r,t,a))}}function Uc(e){var t=e.alternate;return e===W||t!==null&&t===W}function Oc(e,t){Ua=Jn=!0;var r=e.pending;r===null?t.next=t:(t.next=r.next,r.next=t),e.pending=t}function kc(e,t,r){if(r&4194240){var a=t.lanes;a&=e.pendingLanes,r|=a,t.lanes=r,El(e,r)}}var rs={readContext:Fe,useCallback:be,useContext:be,useEffect:be,useImperativeHandle:be,useInsertionEffect:be,useLayoutEffect:be,useMemo:be,useReducer:be,useRef:be,useState:be,useDebugValue:be,useDeferredValue:be,useTransition:be,useMutableSource:be,useSyncExternalStore:be,useId:be,unstable_isNewReconciler:!1},Dh={readContext:Fe,useCallback:function(e,t){return st().memoizedState=[e,t===void 0?null:t],e},useContext:Fe,useEffect:Ic,useImperativeHandle:function(e,t,r){return r=r!=null?r.concat([e]):null,es(4194308,4,Ec.bind(null,t,e),r)},useLayoutEffect:function(e,t){return es(4194308,4,e,t)},useInsertionEffect:function(e,t){return es(4,2,e,t)},useMemo:function(e,t){var r=st();return t=t===void 0?null:t,e=e(),r.memoizedState=[e,t],e},useReducer:function(e,t,r){var a=st();return t=r!==void 0?r(t):t,a.memoizedState=a.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},a.queue=e,e=e.dispatch=Ih.bind(null,W,e),[a.memoizedState,e]},useRef:function(e){var t=st();return e={current:e},t.memoizedState=e},useState:Sc,useDebugValue:Li,useDeferredValue:function(e){return st().memoizedState=e},useTransition:function(){var e=Sc(!1),t=e[0];return e=xh.bind(null,e[1]),st().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,r){var a=W,n=st();if(Z){if(r===void 0)throw Error(C(407));r=r()}else{if(r=t(),oe===null)throw Error(C(349));tr&30||gc(a,t,r)}n.memoizedState=r;var s={value:r,getSnapshot:t};return n.queue=s,Ic(Ac.bind(null,a,s,e),[e]),a.flags|=2048,Ra(9,vc.bind(null,a,s,r,t),void 0,null),r},useId:function(){var e=st(),t=oe.identifierPrefix;if(Z){var r=ft,a=pt;r=(a&~(1<<32-He(a)-1)).toString(32)+r,t=":"+t+"R"+r,r=Oa++,0<\/script>",e=e.removeChild(e.firstChild)):typeof a.is=="string"?e=l.createElement(r,{is:a.is}):(e=l.createElement(r),r==="select"&&(l=e,a.multiple?l.multiple=!0:a.size&&(l.size=a.size))):e=l.createElementNS(e,r),e[at]=t,e[Ea]=a,rm(e,t,!1,!1),t.stateNode=e;e:{switch(l=gl(r,a),r){case"dialog":F("cancel",e),F("close",e),n=a;break;case"iframe":case"object":case"embed":F("load",e),n=a;break;case"video":case"audio":for(n=0;nVr&&(t.flags|=128,a=!0,qa(s,!1),t.lanes=4194304)}else{if(!a)if(e=Yn(l),e!==null){if(t.flags|=128,a=!0,r=e.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),qa(s,!0),s.tail===null&&s.tailMode==="hidden"&&!l.alternate&&!Z)return he(t),null}else 2*X()-s.renderingStartTime>Vr&&r!==1073741824&&(t.flags|=128,a=!0,qa(s,!1),t.lanes=4194304);s.isBackwards?(l.sibling=t.child,t.child=l):(r=s.last,r!==null?r.sibling=l:t.child=l,s.last=l)}return s.tail!==null?(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=X(),t.sibling=null,r=G.current,z(G,a?r&1|2:r&1),t):(he(t),null);case 22:case 23:return Qi(),a=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==a&&(t.flags|=8192),a&&t.mode&1?Oe&1073741824&&(he(t),t.subtreeFlags&6&&(t.flags|=8192)):he(t),null;case 24:return null;case 25:return null}throw Error(C(156,t.tag))}function Oh(e,t){switch(si(t),t.tag){case 1:return Le(t.type)&&zn(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Mr(),_(Ie),_(ye),gi(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return bi(t),null;case 13:if(_(G),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(C(340));Or()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return _(G),null;case 4:return Mr(),null;case 10:return ci(t.type._context),null;case 22:case 23:return Qi(),null;case 24:return null;default:return null}}var ls=!1,ge=!1,kh=typeof WeakSet=="function"?WeakSet:Set,E=null;function Fr(e,t){var r=e.ref;if(r!==null)if(typeof r=="function")try{r(null)}catch(a){Q(e,t,a)}else r.current=null}function qi(e,t,r){try{r()}catch(a){Q(e,t,a)}}var sm=!1;function Rh(e,t){if(Ql=Ln,e=Rd(),_l(e)){if("selectionStart"in e)var r={start:e.selectionStart,end:e.selectionEnd};else e:{r=(r=e.ownerDocument)&&r.defaultView||window;var a=r.getSelection&&r.getSelection();if(a&&a.rangeCount!==0){r=a.anchorNode;var n=a.anchorOffset,s=a.focusNode;a=a.focusOffset;try{r.nodeType,s.nodeType}catch(v){r=null;break e}var l=0,i=-1,o=-1,u=0,d=0,c=e,m=null;t:for(;;){for(var b;c!==r||n!==0&&c.nodeType!==3||(i=l+n),c!==s||a!==0&&c.nodeType!==3||(o=l+a),c.nodeType===3&&(l+=c.nodeValue.length),(b=c.firstChild)!==null;)m=c,c=b;for(;;){if(c===e)break t;if(m===r&&++u===n&&(i=l),m===s&&++d===a&&(o=l),(b=c.nextSibling)!==null)break;c=m,m=c.parentNode}c=b}r=i===-1||o===-1?null:{start:i,end:o}}else r=null}r=r||{start:0,end:0}}else r=null;for(Yl={focusedElem:e,selectionRange:r},Ln=!1,E=t;E!==null;)if(t=E,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,E=e;else for(;E!==null;){t=E;try{var h=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(h!==null){var g=h.memoizedProps,T=h.memoizedState,f=t.stateNode,p=f.getSnapshotBeforeUpdate(t.elementType===t.type?g:Ye(t.type,g),T);f.__reactInternalSnapshotBeforeUpdate=p}break;case 3:var y=t.stateNode.containerInfo;y.nodeType===1?y.textContent="":y.nodeType===9&&y.documentElement&&y.removeChild(y.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(C(163))}}catch(v){Q(t,t.return,v)}if(e=t.sibling,e!==null){e.return=t.return,E=e;break}E=t.return}return h=sm,sm=!1,h}function Ma(e,t,r){var a=t.updateQueue;if(a=a!==null?a.lastEffect:null,a!==null){var n=a=a.next;do{if((n.tag&e)===e){var s=n.destroy;n.destroy=void 0,s!==void 0&&qi(t,r,s)}n=n.next}while(n!==a)}}function is(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var r=t=t.next;do{if((r.tag&e)===e){var a=r.create;r.destroy=a()}r=r.next}while(r!==t)}}function Mi(e){var t=e.ref;if(t!==null){var r=e.stateNode;switch(e.tag){case 5:e=r;break;default:e=r}typeof t=="function"?t(e):t.current=e}}function lm(e){var t=e.alternate;t!==null&&(e.alternate=null,lm(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[at],delete t[Ea],delete t[ti],delete t[vh],delete t[Ah])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function im(e){return e.tag===5||e.tag===3||e.tag===4}function om(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||im(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function zi(e,t,r){var a=e.tag;if(a===5||a===6)e=e.stateNode,t?r.nodeType===8?r.parentNode.insertBefore(e,t):r.insertBefore(e,t):(r.nodeType===8?(t=r.parentNode,t.insertBefore(e,r)):(t=r,t.appendChild(e)),r=r._reactRootContainer,r!=null||t.onclick!==null||(t.onclick=qn));else if(a!==4&&(e=e.child,e!==null))for(zi(e,t,r),e=e.sibling;e!==null;)zi(e,t,r),e=e.sibling}function Fi(e,t,r){var a=e.tag;if(a===5||a===6)e=e.stateNode,t?r.insertBefore(e,t):r.appendChild(e);else if(a!==4&&(e=e.child,e!==null))for(Fi(e,t,r),e=e.sibling;e!==null;)Fi(e,t,r),e=e.sibling}var me=null,Xe=!1;function kt(e,t,r){for(r=r.child;r!==null;)um(e,t,r),r=r.sibling}function um(e,t,r){if(rt&&typeof rt.onCommitFiberUnmount=="function")try{rt.onCommitFiberUnmount(An,r)}catch(i){}switch(r.tag){case 5:ge||Fr(r,t);case 6:var a=me,n=Xe;me=null,kt(e,t,r),me=a,Xe=n,me!==null&&(Xe?(e=me,r=r.stateNode,e.nodeType===8?e.parentNode.removeChild(r):e.removeChild(r)):me.removeChild(r.stateNode));break;case 18:me!==null&&(Xe?(e=me,r=r.stateNode,e.nodeType===8?ei(e.parentNode,r):e.nodeType===1&&ei(e,r),ha(e)):ei(me,r.stateNode));break;case 4:a=me,n=Xe,me=r.stateNode.containerInfo,Xe=!0,kt(e,t,r),me=a,Xe=n;break;case 0:case 11:case 14:case 15:if(!ge&&(a=r.updateQueue,a!==null&&(a=a.lastEffect,a!==null))){n=a=a.next;do{var s=n,l=s.destroy;s=s.tag,l!==void 0&&(s&2||s&4)&&qi(r,t,l),n=n.next}while(n!==a)}kt(e,t,r);break;case 1:if(!ge&&(Fr(r,t),a=r.stateNode,typeof a.componentWillUnmount=="function"))try{a.props=r.memoizedProps,a.state=r.memoizedState,a.componentWillUnmount()}catch(i){Q(r,t,i)}kt(e,t,r);break;case 21:kt(e,t,r);break;case 22:r.mode&1?(ge=(a=ge)||r.memoizedState!==null,kt(e,t,r),ge=a):kt(e,t,r);break;default:kt(e,t,r)}}function dm(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var r=e.stateNode;r===null&&(r=e.stateNode=new kh),t.forEach(function(a){var n=Gh.bind(null,e,a);r.has(a)||(r.add(a),a.then(n,n))})}}function Je(e,t){var r=t.deletions;if(r!==null)for(var a=0;an&&(n=l),a&=~s}if(a=n,a=X()-a,a=(120>a?120:480>a?480:1080>a?1080:1920>a?1920:3e3>a?3e3:4320>a?4320:1960*Mh(a/1960))-a,10e?16:e,qt===null)var a=!1;else{if(e=qt,qt=null,ms=0,q&6)throw Error(C(331));var n=q;for(q|=4,E=e.current;E!==null;){var s=E,l=s.child;if(E.flags&16){var i=s.deletions;if(i!==null){for(var o=0;oX()-Zi?nr(e,0):Vi|=r),we(e,t)}function Sm(e,t){t===0&&(e.mode&1?(t=Cn,Cn<<=1,!(Cn&130023424)&&(Cn=4194304)):t=1);var r=xe();e=yt(e,t),e!==null&&(ma(e,t,r),we(e,r))}function $h(e){var t=e.memoizedState,r=0;t!==null&&(r=t.retryLane),Sm(e,r)}function Gh(e,t){var r=0;switch(e.tag){case 13:var a=e.stateNode,n=e.memoizedState;n!==null&&(r=n.retryLane);break;case 19:a=e.stateNode;break;default:throw Error(C(314))}a!==null&&a.delete(t),Sm(e,r)}var xm;xm=function(e,t,r){if(e!==null)if(e.memoizedProps!==t.pendingProps||Ie.current)De=!0;else{if(!(e.lanes&r)&&!(t.flags&128))return De=!1,Ph(e,t,r);De=!!(e.flags&131072)}else De=!1,Z&&t.flags&1048576&&ac(t,Zn,t.index);switch(t.lanes=0,t.tag){case 2:var a=t.type;ss(e,t),e=t.pendingProps;var n=Br(t,ye.current);qr(t,r),n=Ti(null,t,a,e,n,r);var s=Ci();return t.flags|=1,typeof n=="object"&&n!==null&&typeof n.render=="function"&&n.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Le(a)?(s=!0,Fn(t)):s=!1,t.memoizedState=n.state!==null&&n.state!==void 0?n.state:null,fi(t),n.updater=as,t.stateNode=n,n._reactInternals=t,Ei(t,a,e,r),t=Bi(null,t,a,!0,s,r)):(t.tag=0,Z&&s&&ni(t),Se(null,t,n,r),t=t.child),t;case 16:a=t.elementType;e:{switch(ss(e,t),e=t.pendingProps,n=a._init,a=n(a._payload),t.type=a,n=t.tag=Hh(a),e=Ye(a,e),n){case 0:t=ji(null,t,a,e,r);break e;case 1:t=Qc(null,t,a,e,r);break e;case 11:t=$c(null,t,a,e,r);break e;case 14:t=Gc(null,t,a,Ye(a.type,e),r);break e}throw Error(C(306,a,""))}return t;case 0:return a=t.type,n=t.pendingProps,n=t.elementType===a?n:Ye(a,n),ji(e,t,a,n,r);case 1:return a=t.type,n=t.pendingProps,n=t.elementType===a?n:Ye(a,n),Qc(e,t,a,n,r);case 3:e:{if(Yc(t),e===null)throw Error(C(387));a=t.pendingProps,s=t.memoizedState,n=s.element,mc(e,t),Qn(t,a,null,r);var l=t.memoizedState;if(a=l.element,s.isDehydrated)if(s={element:a,isDehydrated:!1,cache:l.cache,pendingSuspenseBoundaries:l.pendingSuspenseBoundaries,transitions:l.transitions},t.updateQueue.baseState=s,t.memoizedState=s,t.flags&256){n=zr(Error(C(423)),t),t=Xc(e,t,a,r,n);break e}else if(a!==n){n=zr(Error(C(424)),t),t=Xc(e,t,a,r,n);break e}else for(Ue=Nt(t.stateNode.containerInfo.firstChild),Pe=t,Z=!0,Qe=null,r=dc(t,null,a,r),t.child=r;r;)r.flags=r.flags&-3|4096,r=r.sibling;else{if(Or(),a===n){t=ht(e,t,r);break e}Se(e,t,a,r)}t=t.child}return t;case 5:return yc(t),e===null&&ii(t),a=t.type,n=t.pendingProps,s=e!==null?e.memoizedProps:null,l=n.children,Xl(a,n)?l=null:s!==null&&Xl(a,s)&&(t.flags|=32),Kc(e,t),Se(e,t,l,r),t.child;case 6:return e===null&&ii(t),null;case 13:return Jc(e,t,r);case 4:return yi(t,t.stateNode.containerInfo),a=t.pendingProps,e===null?t.child=kr(t,null,a,r):Se(e,t,a,r),t.child;case 11:return a=t.type,n=t.pendingProps,n=t.elementType===a?n:Ye(a,n),$c(e,t,a,n,r);case 7:return Se(e,t,t.pendingProps,r),t.child;case 8:return Se(e,t,t.pendingProps.children,r),t.child;case 12:return Se(e,t,t.pendingProps.children,r),t.child;case 10:e:{if(a=t.type._context,n=t.pendingProps,s=t.memoizedProps,l=n.value,z(Wn,a._currentValue),a._currentValue=l,s!==null)if(Ke(s.value,l)){if(s.children===n.children&&!Ie.current){t=ht(e,t,r);break e}}else for(s=t.child,s!==null&&(s.return=t);s!==null;){var i=s.dependencies;if(i!==null){l=s.child;for(var o=i.firstContext;o!==null;){if(o.context===a){if(s.tag===1){o=bt(-1,r&-r),o.tag=2;var u=s.updateQueue;if(u!==null){u=u.shared;var d=u.pending;d===null?o.next=o:(o.next=d.next,d.next=o),u.pending=o}}s.lanes|=r,o=s.alternate,o!==null&&(o.lanes|=r),mi(s.return,r,t),i.lanes|=r;break}o=o.next}}else if(s.tag===10)l=s.type===t.type?null:s.child;else if(s.tag===18){if(l=s.return,l===null)throw Error(C(341));l.lanes|=r,i=l.alternate,i!==null&&(i.lanes|=r),mi(l,r,t),l=s.sibling}else l=s.child;if(l!==null)l.return=s;else for(l=s;l!==null;){if(l===t){l=null;break}if(s=l.sibling,s!==null){s.return=l.return,l=s;break}l=l.return}s=l}Se(e,t,n.children,r),t=t.child}return t;case 9:return n=t.type,a=t.pendingProps.children,qr(t,r),n=Fe(n),a=a(n),t.flags|=1,Se(e,t,a,r),t.child;case 14:return a=t.type,n=Ye(a,t.pendingProps),n=Ye(a.type,n),Gc(e,t,a,n,r);case 15:return Wc(e,t,t.type,t.pendingProps,r);case 17:return a=t.type,n=t.pendingProps,n=t.elementType===a?n:Ye(a,n),ss(e,t),t.tag=1,Le(a)?(e=!0,Fn(t)):e=!1,qr(t,r),qc(t,a,n),Ei(t,a,n,r),Bi(null,t,a,!0,e,r);case 19:return tm(e,t,r);case 22:return Hc(e,t,r)}throw Error(C(156,t.tag))};function Im(e,t){return nd(e,t)}function Wh(e,t,r,a){this.tag=e,this.key=r,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=a,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ze(e,t,r,a){return new Wh(e,t,r,a)}function Xi(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Hh(e){if(typeof e=="function")return Xi(e)?1:0;if(e!=null){if(e=e.$$typeof,e===nl)return 11;if(e===il)return 14}return 2}function Ft(e,t){var r=e.alternate;return r===null?(r=Ze(e.tag,t,e.key,e.mode),r.elementType=e.elementType,r.type=e.type,r.stateNode=e.stateNode,r.alternate=e,e.alternate=r):(r.pendingProps=t,r.type=e.type,r.flags=0,r.subtreeFlags=0,r.deletions=null),r.flags=e.flags&14680064,r.childLanes=e.childLanes,r.lanes=e.lanes,r.child=e.child,r.memoizedProps=e.memoizedProps,r.memoizedState=e.memoizedState,r.updateQueue=e.updateQueue,t=e.dependencies,r.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},r.sibling=e.sibling,r.index=e.index,r.ref=e.ref,r}function bs(e,t,r,a,n,s){var l=2;if(a=e,typeof e=="function")Xi(e)&&(l=1);else if(typeof e=="string")l=5;else e:switch(e){case vr:return lr(r.children,n,s,t);case rl:l=8,n|=8;break;case al:return e=Ze(12,r,t,n|2),e.elementType=al,e.lanes=s,e;case sl:return e=Ze(13,r,t,n),e.elementType=sl,e.lanes=s,e;case ll:return e=Ze(19,r,t,n),e.elementType=ll,e.lanes=s,e;case Uu:return hs(r,n,s,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case Bu:l=10;break e;case Pu:l=9;break e;case nl:l=11;break e;case il:l=14;break e;case Ct:l=16,a=null;break e}throw Error(C(130,e==null?e:typeof e,""))}return t=Ze(l,r,t,n),t.elementType=e,t.type=a,t.lanes=s,t}function lr(e,t,r,a){return e=Ze(7,e,a,t),e.lanes=r,e}function hs(e,t,r,a){return e=Ze(22,e,a,t),e.elementType=Uu,e.lanes=r,e.stateNode={isHidden:!1},e}function Ji(e,t,r){return e=Ze(6,e,null,t),e.lanes=r,e}function eo(e,t,r){return t=Ze(4,e.children!==null?e.children:[],e.key,t),t.lanes=r,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Kh(e,t,r,a,n){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Dl(0),this.expirationTimes=Dl(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Dl(0),this.identifierPrefix=a,this.onRecoverableError=n,this.mutableSourceEagerHydrationData=null}function to(e,t,r,a,n,s,l,i,o){return e=new Kh(e,t,r,i,o),t===1?(t=1,s===!0&&(t|=8)):t=0,s=Ze(3,null,null,t),e.current=s,s.stateNode=e,s.memoizedState={element:a,isDehydrated:r,cache:null,transitions:null,pendingSuspenseBoundaries:null},fi(s),e}function Qh(e,t,r){var a=3 div.content) to specify which HTML element to include in the ingestion. The first matching HTML element and its child elements are ingested. You can enter only one jQuery selector.",type:"custom",dataType:"text",editable:!0,required:!1}]},{name:"Elasticsearch",label:"Elasticsearch",ingressDescription:"Ingest data from Elasticsearch",iconUrl:"/icons/Elasticsearch.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]))*((\\.aws\\.sfdc\\.cl)|(\\.io))$"},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"Port",label:"Port",type:"port",dataType:"text",defaultValue:"9200",ingress:!0,editable:!0,required:!0,pattern:"\\d+",minLength:1,maxLength:5}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"EnterpriseDB",label:"EnterpriseDB",ingressDescription:"Ingest data from an EnterpriseDB database",iconUrl:"/icons/EnterpriseDB.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]))*$"},{name:"Database",label:"Database",type:"jdbcDatabase",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"Port",label:"Port",type:"port",dataType:"text",defaultValue:"5444",ingress:!0,editable:!0,required:!0,pattern:"\\d+",minLength:1,maxLength:5},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}],customErrorLabels:{INVALID_CREDENTIALS:"User credentials are invalid"}},{name:"EpicorERP",label:"Epicor Kinetic",ingressDescription:"Ingest data from Epicor Kinetic",iconUrl:"/icons/EpicorERP.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],connectionAttributes:[{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"Basic",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"AzureADOpenID",label:"Named credentials for Azure Active Directory OpenID authentication",attributes:["namedCredential","AzureTenant"]},{value:"Basic",label:"Basic Authentication",attributes:["User","Password"]}]},{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9-]{1,256}\\.(epicorsaas|EpicorSaas)\\.com$"},{name:"ERPInstance",label:"ERP Instance",tooltip:`The name of the installed ERP application. `,type:"custom",dataType:"text",ingress:!0,editable:!0,required:!0},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"Service",label:"Service",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!0},{name:"ApiKey",label:"API Key",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!1,maxLength:255},{name:"Company",label:"Company",type:"custom",dataType:"text",ingress:!0,editable:!0},{name:"ApiVersion",label:"API Version",type:"custom",dataType:"combobox",defaultValue:"v1",ingress:!0,egress:!0,editable:!0,required:!1,options:[{value:"v1",label:"V1"},{value:"v2",label:"V2",attributes:["Company"]}]},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"AzureTenant",label:"Azure Tenant",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,maxLength:127},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"EventBusConnector",label:"Salesforce Platform Events",ingressDescription:"Ingest real-time platform events",iconUrl:"/icons/EventBusConnector.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0}]},{name:"ExcelOnline",label:"Microsoft 365 Excel Online",ingressDescription:"Ingest data from Microsoft 365 Excel Online",iconUrl:"/icons/ExcelOnline.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"AzureTenant",label:"Azure Tenant",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,maxLength:127},{name:"AzureEnvironment",label:"Azure Environment",type:"custom",dataType:"combobox",defaultValue:"GLOBAL",ingress:!0,egress:!0,editable:!0,required:!1,options:[{value:"GLOBAL",label:"GLOBAL"},{value:"CHINA",label:"CHINA"}]},{name:"DefineTables",label:"Define Tables",tooltip:`Assign table names to ranges. Form: [Table Name]=[Catalog].[Schema].[{Workbook Name}_{Worksheet Name}!{Range}]`,type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,maxLength:256},{name:"Workbook",label:"Workbook",tooltip:"The name or Id of the workbook.",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,maxLength:256},{name:"Drive",label:"Drive",tooltip:"The id of the drive",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,maxLength:256},{name:"SharepointURL",label:"Sharepoint URL",tooltip:"The base URL of your Sharepoint Server",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,pattern:"^https:\\/\\/[a-zA-Z0-9-]{1,256}\\.sharepoint\\.com$"},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Facebook",label:"Facebook",ingressDescription:"Ingest data from Facebook",iconUrl:"/icons/Facebook.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"AuthenticateAsPage",label:"Page ID",tooltip:"The name or Id of a page to authenticate as when making requests to Facebook.",type:"custom",dataType:"text",ingress:!0,editable:!0,maxLength:127},{name:"Target",label:"Target",tooltip:"Filters the results of all streams to records that match this specified target.",type:"custom",dataType:"text",ingress:!0,editable:!0,maxLength:127},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"FacebookAds",label:"Meta Ads",ingressDescription:"Ingest campaign delivery and conversion data from Meta Ads",iconUrl:"/icons/FacebookAds.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"accountId",label:"Account ID",type:"custom",dataType:"text",ingress:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"startDate",label:"Start Date",type:"custom",dataType:"date",editable:!0},{name:"endDate",label:"End Date",type:"custom",dataType:"date",editable:!0},{name:"useUnifiedAttributionSetting",label:"Use Unified Attribution Setting",type:"custom",dataType:"hidden",defaultValue:"false"},{name:"attributionWindow",label:"Attribution Window",type:"custom",dataType:"combobox",defaultValue:"SEVEN_DAY_CLICK",editable:!0,options:[{value:"SEVEN_DAY_CLICK",label:"7-day click"},{value:"ONE_DAY_CLICK",label:"1-day click"},{value:"SEVEN_DAY_CLICK_OR_ONE_DAY_VIEW",label:"7-day click or 1-day view"},{value:"ONE_DAY_CLICK_OR_ONE_DAY_VIEW",label:"1-day click or 1-day view"},{value:"MULTIPLE",label:"Multiple"}]}]},{name:"FacebookConversion",label:"Meta Conversion API",egressDescription:"Target Meta Conversions API for DMO Event Streaming Activation",iconUrl:"/icons/FacebookConversion.svg",releaseLevel:"GA",features:["Egress","ObjectBased"],featuresConfig:{Egress:{accessCheck:"CDP.isFacebookConversionEnabled"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,egress:!0,editable:!0,required:!0},{name:"accountId",label:"Account ID",type:"custom",dataType:"text",egress:!0,required:!0}],extractAttributes:[]},{name:"GCS",label:"Google Cloud Storage",ingressDescription:"Connect to Google Cloud Storage to import data from Data cloud",egressDescription:"Connect to Google Cloud Storage to export data from Data cloud",iconUrl:"/icons/GCS.svg",releaseLevel:"GA",features:["Ingress","Egress","FileBased","UniqueConnection","Batch","Unstructured"],featuresConfig:{Ingress:{frequentIngest:"true"},FileBased:{supportDataSync:"true",supportParquetFileType:"true",supportEnhancedRefresh:"true"},UniqueConnection:{uniqueAttributes:"bucketName,parentDirectory"}},connectionAttributes:[{name:"bucketName",label:"Bucket Name",type:"custom",dataType:"text",ingress:!0,egress:!0,required:!0},{name:"parentDirectory",label:"Parent Directory",tooltip:"To select any root folder, write the name without a leading slash, for example 'Import/CRM/', not '/Import/Analytics/'.",type:"fileBasedParentDirectory",dataType:"text",defaultValue:"",ingress:!0,egress:!0,required:!0,pattern:"^(.+)\\/$"},{name:"accessKey",label:"Access Key",type:"custom",dataType:"password",secure:!0,ingress:!0,egress:!0,editable:!0,required:!0},{name:"secretKey",label:"Secret Key",type:"custom",dataType:"password",secure:!0,ingress:!0,egress:!0,editable:!0,required:!0}],extractAttributes:[{name:"fileType",label:"File Type",type:"fileBasedFileType",dataType:"radio",defaultValue:"CSV",required:!0,options:[{value:"CSV",label:"CSV",attributes:["delimiter","headerlessRetrievalEnabled"]},{value:"PARQUET",label:"Parquet"}]},{name:"delimiter",label:"Delimiter",type:"fileBasedDelimiter",dataType:"text",readonly:!0,hidden:!0},{name:"escapeChar",label:"Escape Char",type:"fileBasedEscapeChar",dataType:"text",readonly:!0,hidden:!0},{name:"quoteChar",label:"Quote Char",type:"fileBasedQuoteChar",dataType:"text",readonly:!0,hidden:!0},{name:"importDirectory",label:"Import From Directory",tooltip:"To select the root directory, leave this field blank. To select any other folder, write the name without a leading slash, for example 'Sales/OrderHeaders/', not '/Sales/OrderHeaders/'.",type:"fileBasedImportDirectory",dataType:"text",editable:!0},{name:"fileName",label:"File Name",tooltip:"If all file names in directory follow a uniform naming pattern, set this field as wildcard with file extension, for example *.csv. If multiple file name patterns exist in same directory, increase specificity of pattern logic using wildcard until only one file pattern is identified.",type:"fileBasedFileName",dataType:"text",defaultValue:"*",editable:!0,required:!0},{name:"headerlessRetrievalEnabled",label:"Is headerless retrieval enabled",type:"fileBasedHeaderlessRetrievalEnabled",dataType:"checkbox",defaultValue:"false",editable:!0},{name:"failWhenNoData",label:"Log an error if no file is found",type:"fileBasedFailWhenNoData",dataType:"checkbox",defaultValue:"false",editable:!0}],customErrorLabels:{BUCKET_NOT_FOUND:"Bucket not found for the given location",DIRECTORY_NOT_FOUND:"Parent Directory not found for the given location",AUTHENTICATION_FAILED:"Authentication failed due to invalid or expired credentials",UNAUTHORIZED:"Permission denied for accessing resources in the given location",FILE_NOT_FOUND:"Given file is not present in the given location",INTERNAL_SERVER_ERROR:"Internal server error",BAD_REQUEST:"Invalid arguments",CLIENT_SIDE_ERROR:"Something's wrong on client side configuration. Please check and retry"}},{name:"GoogleAdManager",label:"Google Ad Manager",ingressDescription:"Ingest data from Google Ad Manager",iconUrl:"/icons/GoogleAdManager.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"NetworkCode",label:"Network Code",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"\\d+",maxLength:127},{name:"Version",label:"Version",type:"custom",dataType:"text",defaultValue:"v202308",ingress:!0,editable:!0,required:!0,maxLength:127}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"GoogleAds",label:"Google Ads",ingressDescription:"Ingest campaign delivery and conversion data from Google Ads",iconUrl:"/icons/GoogleAds.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"customerId",label:"Customer ID",type:"custom",dataType:"text",ingress:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"startDate",label:"Start Date",type:"custom",dataType:"date",editable:!0},{name:"endDate",label:"End Date",type:"custom",dataType:"date",editable:!0}]},{name:"GoogleAnalyticsEMI",label:"Google Analytics for MI",ingressDescription:"Ingest web analytics data for Marketing Intelligence from Google Analytics",iconUrl:"/icons/GoogleAnalyticsEMI.svg",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],releaseLevel:"GA",featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",type:"namedCredential",label:"Named Credential",dataType:"namedcredential",editable:!0,secure:!0,required:!0,ingress:!0},{type:"custom",name:"propertyId",label:"Property Id",dataType:"text",required:!0,ingress:!0}],extractAttributes:[{name:"objectName",type:"objectBasedObjectName",label:"Object Name",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",type:"objectBasedIncrementalColumn",label:"Incremental Column",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",type:"objectBasedDeleteColumn",label:"Delete Column",dataType:"text",editable:!0},{name:"startDate",type:"custom",label:"Start Date",dataType:"date",editable:!0},{name:"endDate",type:"custom",label:"End Date",dataType:"date",editable:!0}]},{name:"GoogleCampaignManager",label:"Google Campaign Manager",ingressDescription:"Ingest data from Google Campaign Manager",iconUrl:"/icons/GoogleCampaignManager.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"ProfileID",label:"Profile ID",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,maxLength:127}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"GoogleContacts",label:"Google Contacts",ingressDescription:"Ingest data from Google Contacts",iconUrl:"/icons/GoogleContacts.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"GoogleDV360",label:"Google Display and Video 360",egressDescription:"Target Google Ads for Segment Activations and Learn Audience Insights",iconUrl:"/icons/GoogleDV360.svg",releaseLevel:"GA",features:["Egress","ObjectBased"],featuresConfig:{Egress:{accessCheck:"CDP.isGoogleAdsEgressEnabled"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,egress:!0,editable:!0,required:!0},{name:"customerId",label:"Customer ID",type:"custom",dataType:"text",ingress:!0,egress:!0,required:!0}],extractAttributes:[]},{name:"GoogleDfaEMI",label:"Google DFA for MI",ingressDescription:"Ingest data for Marketing Intelligence from Google DFA",iconUrl:"/icons/GoogleDfaEMI.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{type:"custom",name:"profileId",label:"Profile ID",dataType:"text",ingress:!0,required:!0},{type:"custom",name:"accountId",label:"Account ID",dataType:"text",ingress:!0,required:!0},{type:"custom",name:"advertiserIds",label:"Advertiser IDs (Insert ids separated by commas. Supports multiple advertisers.)",dataType:"text",ingress:!0,required:!1}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"startDate",label:"Start Date",type:"custom",dataType:"date",editable:!0},{name:"endDate",label:"End Date",type:"custom",dataType:"date",editable:!0},{type:"custom",name:"getBasicRichMediaMetrics",label:"Basic Rich Media Metrics",dataType:"checkbox",defaultValue:"false",editable:!0},{type:"custom",name:"getAdvancedRichMediaMetrics",label:"Advanced Rich Media Metrics",dataType:"checkbox",defaultValue:"false",editable:!0},{type:"custom",name:"getActiveViewMetrics",label:"Active View Metrics",dataType:"checkbox",defaultValue:"false",editable:!0},{type:"custom",name:"getVerificationMetrics",label:"Verification Metrics (Selecting this option will disable the location breakdown)",dataType:"checkbox",defaultValue:"false",editable:!0},{type:"custom",name:"getFloodlightMetrics",label:"Floodlight Metrics",dataType:"checkbox",defaultValue:"false",editable:!0},{type:"custom",name:"locationBreakdown",label:"Location Breakdown (Selecting this option will disable the Verification metrics)",dataType:"combobox",editable:!0,defaultValue:"NONE",options:[{label:"None",value:"NONE"},{label:"City",value:"CITY"}]}]},{name:"GoogleDrive",label:"Google Drive",ingressDescription:"Ingest CSV files and spreadsheets from Google Drive",iconUrl:"/icons/GoogleDrive.svg",releaseLevel:"BETA",features:["Ingress","FileBased","Batch"],featuresConfig:{FileBased:{objectName:"fileType",customFileSelector:"fileUrl,fileType"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"fileUrl",label:"Google Drive URL",type:"custom",dataType:"text",editable:!0,required:!0,pattern:"^(https:\\/\\/drive\\.google\\.com\\/file\\/d\\/|https:\\/\\/docs\\.google\\.com\\/spreadsheets\\/d\\/)([-\\w]{28,50})\\/.+$"},{name:"fileType",label:"File Type",type:"custom",dataType:"radio",defaultValue:"CSV",required:!0,options:[{value:"CSV",label:"CSV"},{value:"spreadsheet",label:"Google/Excel Sheet"}]}]},{name:"GoogleSheet",label:"Google Sheets",ingressDescription:"Ingest spreadsheets from Google Sheets",iconUrl:"/icons/GoogleSheet.svg",releaseLevel:"BETA",features:["Ingress","FileBased","Batch"],featuresConfig:{FileBased:{objectName:"fileType",customFileSelector:"fileUrl,fileType"}},connectionAttributes:[{type:"namedCredential",name:"namedCredential",label:"Named Credential",dataType:"namedcredential",editable:!0,secure:!0,required:!0,ingress:!0}],extractAttributes:[{type:"custom",name:"fileUrl",label:"Google Sheet URL",dataType:"text",required:!0,editable:!0,pattern:"^(https:\\/\\/docs\\.google\\.com\\/spreadsheets\\/d\\/)([-\\w]{28,50})\\/.+$"},{name:"fileType",label:"File Type",type:"custom",dataType:"radio",defaultValue:"spreadsheet",required:!0,options:[{value:"spreadsheet",label:"Google Sheet"}]}]},{name:"GoogleSpanner",label:"Google Spanner",ingressDescription:"Ingest data from a Google Spanner database",iconUrl:"/icons/GoogleSpanner.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"InstanceId",label:"Instance ID",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!0},{name:"Schema",label:"Schema",type:"jdbcSchema",dataType:"text",defaultValue:"public",ingress:!0,required:!0,maxLength:100},{name:"Database",label:"Database",type:"jdbcDatabase",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"DatabaseDialect",label:"Database Dialect",type:"custom",dataType:"combobox",defaultValue:"GoogleStandardSQL",ingress:!0,egress:!0,editable:!0,required:!1,options:[{value:"GoogleStandardSQL",label:"GoogleStandardSQL"},{value:"PostgreSQL",label:"PostgreSQL"}]},{name:"ProjectId",label:"Project ID",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"GraphQL",label:"GraphQL",ingressDescription:"Ingest data from GraphQL",iconUrl:"/icons/GraphQL.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9\\-\\_]+(\\.[a-z0-9\\-\\_]+)+(\\/[a-zA-Z0-9#\\-\\_]+\\/?)*$"},{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"Basic",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]},{value:"Basic",label:"Basic Authentication",attributes:["User","Password"]}]},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Greenplum",label:"Greenplum",ingressDescription:"Ingest data from Greenplum",iconUrl:"/icons/Greenplum.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9]))*$"},{name:"Port",label:"Port",type:"port",dataType:"text",defaultValue:"5432",ingress:!0,editable:!0,required:!0,pattern:"\\d+",minLength:1,maxLength:5},{name:"Database",label:"Database",type:"jdbcDatabase",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}],customErrorLabels:{INVALID_CONNECTION:"Could not connect to the URL provided",INVALID_CREDENTIALS:"User credentials are invalid"}},{name:"HerokuPostgres",label:"Heroku PostgreSQL",ingressDescription:"Ingest data from a PostgreSQL database on Heroku",iconUrl:"/icons/HerokuPostgres.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"},ObjectBased:{"2levelSelection":"true"}},connectionAttributes:[{name:"jdbc_connection_url",label:"Connection URL",type:"jdbcConnectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"([A-Za-z0-9_-]+[\\.])*amazonaws\\.com(:[0-9]{4,5})?"},{name:"SCHEMA",label:"Schema",type:"jdbcSchema",dataType:"text",ingress:!0,required:!1,maxLength:100},{name:"DATABASE",label:"Database",type:"jdbcDatabase",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{type:"custom",name:"credentialType",label:"Authentication Method",dataType:"combobox",defaultValue:"UsernamePasswordAuthentication",editable:!0,required:!0,secure:!0,ingress:!0,options:[{value:"UsernamePasswordAuthentication",label:"Username & Password",attributes:[]},{value:"mTLSAuthentication",label:"Mutual TLS based authentication",attributes:["sslrootcert","sslcert","sslkey"]}]},{name:"user",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{type:"custom",name:"sslrootcert",label:"SSL Root Certificate",placeholder:"Upload SSL Root Certificate...",dataType:"passwordfile",editable:!0,required:!0,secure:!0,masked:!0,ingress:!0},{type:"custom",name:"sslcert",label:"SSL Client Certificate",placeholder:"Upload SSL Client Certificate...",dataType:"passwordfile",editable:!0,required:!0,secure:!0,masked:!0,ingress:!0},{type:"custom",name:"sslkey",label:"SSL Key",placeholder:"Upload SSL Key...",dataType:"passwordfile",editable:!0,required:!0,secure:!0,masked:!0,ingress:!0}],extractAttributes:[{name:"SCHEMA",label:"Schema",type:"objectBasedObjectSchema",dataType:"text",readonly:!0,required:!0,maxLength:100},{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"IBMCloudObjectStorage",label:"IBM Cloud Object Storage",ingressDescription:"Ingest data from IBM Cloud Object Storage",iconUrl:"/icons/IBMCloudObjectStorage.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"ApiKey",label:"Api Key",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:255},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"},{name:"CloudObjectStorageCRN",label:"Cloud Object Storage CRN",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"ICEBERG",label:"Apache Iceberg",ingressDescription:"Connect to Apache Iceberg tables shared with Salesforce CDP.",iconUrl:"/icons/ICEBERG.svg",releaseLevel:"BETA",features:["Ingress","BYOL","ObjectBased"],featuresConfig:{ObjectBased:{"3levelSelection":"true"}},connectionAttributes:[{name:"catalogType",label:"Catalog Type",type:"custom",dataType:"text",defaultValue:"ICEBERG_REST",readonly:!0,ingress:!0,editable:!1,required:!0},{name:"storageSourceType",label:"Storage Type",type:"custom",dataType:"combobox",secure:!0,defaultValue:"CATALOG_PROVIDED",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"S3",label:"S3",attributes:["bucketName","s3AccessKey","s3AccessSecret"]},{value:"CATALOG_PROVIDED",label:"CATALOG_PROVIDED",attributes:[]},{value:"AZURE",label:"AZURE",attributes:["storageAccountName","sasToken"]}]},{name:"isMTlsEnabled",label:"MTLS Connection",tooltip:"Required to enable mTLS Connection",type:"custom",dataType:"checkbox",defaultValue:"false",ingress:!0,editable:!0},{name:"catalogEndpoint",label:"Catalog Endpoint",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!0},{name:"catalogAccessToken",label:"Client Access Token",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0},{name:"storageAccountName",label:"Storage Account Name",type:"custom",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0},{name:"sasToken",label:"SAS Token",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0},{name:"bucketName",label:"Bucket Name",type:"custom",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0},{name:"s3AccessKey",label:"Access Key",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0},{name:"s3AccessSecret",label:"Secret Key",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"DATABASE",label:"Database",type:"objectBasedObjectDatabase",dataType:"text",readonly:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"SCHEMA",label:"Schema",type:"objectBasedObjectSchema",dataType:"text",readonly:!0,required:!0,maxLength:100},{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0}],customErrorLabels:{INVALID_FORMAT_VERSION:"format-version={0} for table={1} is not in supported format versions set={2}. Table is invalid.",INVALID_WRITE_MODE:"Write modes={0} for table={1} are not in supported write modes set={2}. Table is invalid.",INVALID_DATA_FILES:"Data file={0} does not exist in table={1}. Table is invalid."}},{name:"Informix",label:"IBM Informix",ingressDescription:"Ingest data from an IBM Informix database",iconUrl:"/icons/Informix.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9]))*$"},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"Port",label:"Port",type:"port",dataType:"text",defaultValue:"50000",ingress:!0,editable:!0,required:!0,pattern:"\\d+",minLength:1,maxLength:5},{name:"Database",label:"Database",type:"jdbcDatabase",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"},{name:"AlternateServers",label:"Alternate Servers",tooltip:`This property allows you to specify multiple servers in addition to the one configured in Server and Port . Specify both a server name and port in AlternateServers; separate servers with a comma. For example: AlternateServers=localhost:27018,localhost:27019`,type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,pattern:"^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9]))*(:[0-9]{4,5}))(,([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9]))*(:[0-9]{4,5}))*$",maxLength:255}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Instagram",label:"Instagram",ingressDescription:"Ingest data from Instagram",iconUrl:"/icons/Instagram.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"BusinessAccountId",label:"BusinessAccountId",tooltip:"Set this only if you have more than one Instagram business account managed with the same Facebook account",type:"custom",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!1}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Intercom",label:"Intercom",ingressDescription:"Ingest Contact and Data Event data from Intercom",iconUrl:"/icons/Intercom.svg",releaseLevel:"PILOT",features:["Ingress","ObjectBased"],connectionAttributes:[{name:"token",label:"Token",placeholder:"Enter token...",type:"custom",dataType:"password",secure:!0,masked:!0,ingress:!0,egress:!1,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0}]},{name:"Jira",label:"Jira",ingressDescription:"Ingest data from Jira",iconUrl:"/icons/Jira.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9-]{1,63}\\.atlassian\\.net$"},{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"apiTokenAuthentication",ingress:!0,editable:!0,required:!0,options:[{value:"apiTokenAuthentication",label:"API Token",attributes:["User","APIToken"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]}]},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"APIToken",label:"API Token",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!1,maxLength:255},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"JiraServiceDesk",label:"Jira Service Desk",ingressDescription:"Ingest data from Jira Service Desk",iconUrl:"/icons/JiraServiceDesk.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9-]{1,63}\\.atlassian\\.net$"},{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"apiTokenAuthentication",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"apiTokenAuthentication",label:"API Token",attributes:["User","APIToken"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]}]},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"APIToken",label:"API Token",type:"custom",dataType:"password",secure:!0,masked:!0,ingress:!0,editable:!0,required:!1,maxLength:255},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"LinkedInAdsEMI",label:"LinkedIn Ads for MI",ingressDescription:"Ingest data for Marketing Intelligence from LinkedIn Ads",iconUrl:"/icons/LinkedInAdsEMI.svg",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],releaseLevel:"GA",featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"accountId",label:"Account ID",type:"custom",dataType:"text",ingress:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"startDate",label:"Start Date",type:"custom",dataType:"date",editable:!0},{name:"endDate",label:"End Date",type:"custom",dataType:"date",editable:!0},{name:"demographicView",label:"Demographic view",type:"custom",dataType:"combobox",editable:!0,defaultValue:"NONE",options:[{label:"None",value:"NONE"},{label:"Company Size [Ad Level]",value:"Company Size [Ad Level]"},{label:"Company Industry [Ad Level]",value:"Company Industry [Ad Level]"},{label:"Company [Ad Level]",value:"Company [Ad Level]"},{label:"Job Seniority [Ad Level]",value:"Job Seniority [Ad Level]"},{label:"Job Title [Ad Level]",value:"Job Title [Ad Level]"},{label:"Job Function [Ad Level]",value:"Job Function [Ad Level]"},{label:"County [Ad Level]",value:"County [Ad Level]"},{label:"Country/Region [Ad Level]",value:"Country/Region [Ad Level]"},{label:"Location [Ad Level]",value:"Location [Ad Level]"}]}]},{name:"LinkedInSalesNavigator",label:"LinkedIn Sales Navigator",ingressDescription:"Ingest data from LinkedIn Sales Navigator",iconUrl:"/icons/LinkedInSalesNavigator.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","Batch"],connectionAttributes:[{type:"namedCredential",name:"namedCredential",label:"Named Credential",dataType:"namedcredential",editable:!0,secure:!0,required:!0,ingress:!0}],extractAttributes:[{name:"objectName",type:"objectBasedObjectName",label:"Object Name",dataType:"text",readonly:!0,required:!0},{type:"custom",name:"startDate",label:"Start Date",dataType:"datetime",editable:!0,required:!0},{type:"custom",name:"endDate",label:"End Date",dataType:"datetime",editable:!0,required:!0}]},{name:"LinkedInSalesNavigatorEgress",label:"LinkedIn Sales Navigator",egressDescription:"Target LinkedIn Sales Navigator Application Platform for Segment Activations",iconUrl:"/icons/LinkedInSalesNavigatorEgress.svg",releaseLevel:"ACCESS_CHECK",accessCheck:"CDP.isLinkedinSalesNavigatorIEgressEnabled",features:["Egress","ObjectBased","WDCConnector","Batch"],connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,egress:!0,editable:!0,required:!0}],extractAttributes:[]},{name:"Linkedin",label:"LinkedIn",ingressDescription:"Ingest data from LinkedIn",iconUrl:"/icons/Linkedin.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"APIVersion",label:"API Version",type:"custom",dataType:"text",defaultValue:"202308",ingress:!0,egress:!0,editable:!0,pattern:"^[0-9]{6}$",minLength:6,maxLength:6},{name:"CompanyId",label:"Company ID",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!1,required:!1},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"LinkedinAds",label:"LinkedIn Ads",ingressDescription:"Ingest data from LinkedIn Ads",iconUrl:"/icons/LinkedinAds.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"APIVersion",label:"API Version",type:"custom",dataType:"text",defaultValue:"202308",ingress:!0,egress:!0,editable:!0,pattern:"^[0-9]{6}$",minLength:6,maxLength:6},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"LinkedinAdsEgress",label:"LinkedIn Ads",egressDescription:"Target LinkedIn Ads for Segment Activations",iconUrl:"/icons/LinkedinAdsEgress.svg",releaseLevel:"ACCESS_CHECK",accessCheck:"CDP.isLinkedInAdsEgressEnabled",features:["Egress","ObjectBased"],connectionAttributes:[{name:"APIVersion",label:"API Version",type:"custom",dataType:"text",defaultValue:"202308",editable:!0,egress:!0,pattern:"^[0-9]{6}$",minLength:6,maxLength:6},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,egress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,egress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[]},{name:"Mailchimp",label:"Mailchimp",ingressDescription:"Ingest data from Mailchimp",iconUrl:"/icons/Mailchimp.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"APIKey",label:"API Key",type:"custom",dataType:"text",secure:!0,masked:!0,ingress:!0,editable:!0,required:!0},{name:"IncludeCustomFields",label:"Include Custom Fields",tooltip:"A boolean indicating if you would like to include custom fields that are added to the ListMembers view.",type:"custom",dataType:"checkbox",defaultValue:"true",ingress:!0,egress:!0,editable:!0,required:!1}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"MicrosoftAds",label:"Microsoft Advertising",ingressDescription:"Ingest data from Microsoft Advertising",iconUrl:"/icons/MicrosoftAds.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"AzureTenant",label:"Azure Tenant",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,maxLength:127},{name:"AzureEnvironment",label:"Azure Environment",type:"custom",dataType:"combobox",defaultValue:"GLOBAL",ingress:!0,egress:!0,editable:!0,required:!1,options:[{value:"GLOBAL",label:"GLOBAL"},{value:"CHINA",label:"CHINA"}]},{name:"CustomerId",label:"Customer ID",type:"custom",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:127},{name:"AccountId",label:"Account ID",type:"custom",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!1,maxLength:127},{name:"DeveloperToken",label:"Developer Token",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:127},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"MicrosoftAnalysisServices",label:"Microsoft SQL Server Analysis Services",ingressDescription:"Ingest data from Microsoft SQL Server Analysis Services",iconUrl:"/icons/MicrosoftAnalysisServices.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9]+(\\.[a-z0-9]+)+(\\/[a-zA-Z0-9#]+\\/?)*.dll"},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"MicrosoftDynamics365",label:"Microsoft Dynamics 365",ingressDescription:"Ingest data from Microsoft Dynamics 365",iconUrl:"/icons/MicrosoftDynamics365.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"AzureTenant",label:"Azure Tenant",tooltip:"The Microsoft Online tenant being used to access data. This is a required field when setting OAuthGrantType to CLIENT. If not specified, your default tenant is used.",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,maxLength:127},{name:"AzureEnvironment",label:"Azure Environment",type:"custom",dataType:"combobox",defaultValue:"GLOBAL",ingress:!0,egress:!0,editable:!0,required:!1,options:[{value:"GLOBAL",label:"GLOBAL"},{value:"CHINA",label:"CHINA"}]},{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]))*\\.dynamics\\.com(/[a-zA-Z0-9]{2,})*$"},{name:"Edition",label:"Edition",type:"custom",dataType:"combobox",defaultValue:"FinOpsOnline",ingress:!0,editable:!0,required:!0,options:[{value:"CustomerService",label:"CustomerService",attributes:["ApiVersion"]},{value:"FieldService",label:"FieldService",attributes:["ApiVersion"]},{value:"FinOpsOnline",label:"FinOpsOnline"},{value:"HumanResources",label:"HumanResources"},{value:"Marketing",label:"Marketing",attributes:["ApiVersion"]},{value:"ProjectOperations",label:"ProjectOperations",attributes:["ApiVersion"]},{value:"Sales",label:"Sales",attributes:["ApiVersion"]}]},{name:"ApiVersion",label:"API Version",tooltip:"This can be specified to access a new version of the API once it is released.",type:"custom",dataType:"text",defaultValue:"9.0",ingress:!0,editable:!0,required:!1,pattern:"^\\d+(\\.\\d+)*$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"MicrosoftOneDrive",label:"Microsoft OneDrive",ingressDescription:"Ingest CSV files and spreadsheets from Microsoft OneDrive",iconUrl:"/icons/MicrosoftOneDrive.svg",releaseLevel:"BETA",features:["Ingress","FileBased","Batch"],featuresConfig:{FileBased:{objectName:"fileType",customFileSelector:"fileUrl,fileType"}},connectionAttributes:[{type:"namedCredential",name:"namedCredential",label:"Named Credential",dataType:"namedcredential",editable:!0,secure:!0,required:!0,ingress:!0}],extractAttributes:[{type:"custom",name:"fileUrl",label:"Microsoft OneDrive URL",dataType:"text",required:!0,editable:!0,pattern:"^(https:\\/\\/onedrive\\.live\\.com\\/).+$"},{type:"custom",name:"fileType",label:"File Type",dataType:"radio",defaultValue:"CSV",required:!0,options:[{value:"CSV",label:"CSV"},{value:"spreadsheet",label:"Excel Sheet"}]}]},{name:"MicrosoftPowerBiXmla",label:"Microsoft Power BI XMLA",ingressDescription:"Ingest data from Microsoft Power BI XMLA",iconUrl:"/icons/MicrosoftPowerBiXmla.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"AzureTenant",label:"Azure Tenant",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,maxLength:127},{name:"AzureEnvironment",label:"Azure Environment",type:"custom",dataType:"combobox",defaultValue:"GLOBAL",ingress:!0,egress:!0,editable:!0,required:!1,options:[{value:"GLOBAL",label:"GLOBAL"},{value:"CHINA",label:"CHINA"}]},{name:"Catalog",label:"Catalog",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,maxLength:255},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"MicrosoftSharePoint",label:"Microsoft SharePoint",ingressDescription:"Ingest CSV files and spreadsheets from Microsoft SharePoint",iconUrl:"/icons/MicrosoftSharePoint.svg",releaseLevel:"BETA",features:["Ingress","FileBased","Batch"],featuresConfig:{FileBased:{objectName:"fileType",customFileSelector:"fileUrl,fileType"}},connectionAttributes:[{type:"namedCredential",name:"namedCredential",label:"Named Credential",dataType:"namedcredential",editable:!0,secure:!0,required:!0,ingress:!0}],extractAttributes:[{type:"custom",name:"fileUrl",label:"Microsoft SharePoint URL",dataType:"text",required:!0,editable:!0},{type:"custom",name:"fileType",label:"File Type",dataType:"radio",defaultValue:"CSV",required:!0,options:[{value:"CSV",label:"CSV"},{value:"spreadsheet",label:"Excel Sheet"}]}]},{name:"MicrosoftTeams",label:"Microsoft Teams",ingressDescription:"Ingest data from Microsoft Teams",iconUrl:"/icons/MicrosoftTeams.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"AzureTenant",label:"Azure Tenant",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,maxLength:127},{name:"AzureEnvironment",label:"Azure Environment",type:"custom",dataType:"combobox",defaultValue:"GLOBAL",ingress:!0,egress:!0,editable:!0,required:!1,options:[{value:"GLOBAL",label:"GLOBAL"},{value:"CHINA",label:"CHINA"}]}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Monday",label:"Monday",ingressDescription:"Ingest data from Monday",iconUrl:"/icons/Monday.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"apiTokenAuthentication",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"apiTokenAuthentication",label:"API Token",attributes:["APIToken"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]}]},{name:"SCHEMA",label:"Schema",type:"custom",dataType:"text",defaultValue:"",ingress:!0,egress:!0,editable:!0,required:!1},{name:"APIToken",label:"API Token",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!1,maxLength:255},{name:"Domain",label:"Domain",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!1,pattern:"^https:\\/\\/[a-z0-9-]{1,63}\\.monday\\.com(:[0-9]{3,5})?$"},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"MongoDB",label:"MongoDB",ingressDescription:"Ingest data from a MongoDB database",iconUrl:"/icons/MongoDB.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(mongodb\\+srv:\\/\\/)?([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]))*$"},{name:"Database",label:"Database",type:"jdbcDatabase",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"Port",label:"Port",type:"custom",dataType:"text",defaultValue:"27017",ingress:!0,egress:!0,required:!1,pattern:"\\d+",minLength:1,maxLength:5},{name:"AuthDatabase",label:"AuthDatabase",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!1,maxLength:255},{name:"ReplicaSet",label:"ReplicaSet",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!1,maxLength:255},{name:"DNSServer",label:"DNSServer",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!1,maxLength:255},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}],customErrorLabels:{INVALID_CONNECTION:"Could not connect to the URL provided"}},{name:"MuleSoftDirect",label:"MuleSoft Content",ingressDescription:"Connect to MuleSoft Content to import data to Data cloud",iconUrl:"/icons/MuleSoftDirect.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","Unstructured","NoConnection"],featuresConfig:{Ingress:{frequentIngest:"true"},NoConnection:{readonly:"true"}},connectionAttributes:[{name:"mulesoftAppUrl",label:"MuleSoft App Url",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!1,required:!0},{name:"appIdentifier",label:"App Identifier",type:"custom",dataType:"text",ingress:!0,egress:!1,editable:!1,required:!0},{name:"sourceId",label:"Source Id",type:"custom",dataType:"text",ingress:!0,egress:!1,editable:!1,required:!0},{name:"sourceSystem",label:"Source System",type:"custom",dataType:"text",ingress:!0,egress:!1,editable:!1,required:!0},{name:"apiKey",label:"API Key",type:"custom",dataType:"password",secure:!0,ingress:!0,egress:!0,editable:!0,required:!0},{name:"apiSecret",label:"API Secret",type:"custom",dataType:"password",secure:!0,ingress:!0,egress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"fileUrl",label:"Google Drive URL",type:"custom",dataType:"text",editable:!0,required:!0,pattern:"^(https:\\/\\/drive\\.google\\.com\\/file\\/d\\/|https:\\/\\/docs\\.google\\.com\\/spreadsheets\\/d\\/)([-\\w]{28,50})\\/.+$"},{name:"fileType",label:"File Type",type:"custom",dataType:"radio",defaultValue:"CSV",required:!0,options:[{value:"CSV",label:"CSV"},{value:"spreadsheet",label:"Google/Excel Sheet"}]}],customErrorLabels:{APP_NOT_FOUND:"App not found for the given location",SOURCE_SYSTEM_NOT_FOUND:"Source system not found for the given location",AUTHENTICATION_FAILED:"Authentication failed due to invalid or expired credentials",UNAUTHORIZED:"Permission denied for accessing resources in the given location",INTERNAL_SERVER_ERROR:"Internal server error",BAD_REQUEST:"Invalid arguments",CLIENT_SIDE_ERROR:"Something's wrong on client side configuration. Please check and retry",INVALID_CREDENTIALS:"Either api id(Username) or api secret(password) is not correct",UNABLE_TO_ACCESS_MULESOFT:"Unable to access provided mulesoft api/url",INVALID_INPUT:"Provided input/configuration parameters to connect are incorrect",MISSING_REQUIRED_PROPERTIES:"Required parameters are missing",CLIENT_PROTOCOL_ERROR:"Invalid client protocol or incorrect URI",UNKNOWN_HOST:"Host/mulesoft app uri name is incorrect or it does not exists",INVALID_ACCESS_PERMISSIONS:"No proper privileges to access given mulesoft app uri",ERROR_CODE_UNSPECIFIED:""}},{name:"Neo4j",label:"Neo4j",ingressDescription:"Ingest data from Neo4j",iconUrl:"/icons/Neo4j.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]))*$"},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"Database",label:"Database",type:"jdbcDatabase",dataType:"text",defaultValue:"neo4j",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"Port",label:"Port",type:"port",dataType:"text",defaultValue:"7473",ingress:!0,editable:!0,required:!0,pattern:"\\d+",minLength:1,maxLength:5},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"OCI",label:"Omnichannel Inventory",ingressDescription:"Connect to OCI.",iconUrl:"/icons/OCI.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","NoConnection","Batch"],connectionAttributes:[{name:"externalOrgId",label:"External Organization ID",type:"custom",dataType:"text",ingress:!0,editable:!1,required:!1}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0}]},{name:"OData",label:"OData",ingressDescription:"Ingest data from OData",iconUrl:"/icons/OData.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"basicAuthentication",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"basicAuthentication",label:"Basic",attributes:["User","Password"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]},{value:"none",label:"None"}]},{name:"URL",label:"URL",tooltip:"URL to the Organization root or the OData services file",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,pattern:"^https:\\/\\/[a-zA-Z0-9.-]{1,63}\\.odata\\.org\\/[a-zA-Z0-9./-]*$"},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"},{name:"FeedURL",label:"Feed Url",tooltip:"You can use this property when the OData service does not have a root document.",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,pattern:"^https:\\/\\/[a-zA-Z0-9.-]{1,63}\\.odata\\.org\\/[a-zA-Z0-9./-]*$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0}]},{name:"Odoo",label:"Odoo",ingressDescription:"Ingest data from Odoo",iconUrl:"/icons/Odoo.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9-]{1,63}\\.odoo\\.com$"},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"APIToken",label:"API Token or Password",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:255},{name:"Database",label:"Database",type:"jdbcDatabase",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"OracleEloqua",label:"Oracle Eloqua",ingressDescription:"Ingest data from Oracle Eloqua",iconUrl:"/icons/OracleEloqua.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","Batch"],connectionAttributes:[{name:"startDate",label:"Start Date",type:"custom",dataType:"datetime",ingress:!0,editable:!0,required:!0},{name:"endDate",label:"End Date",type:"custom",dataType:"datetime",ingress:!0,editable:!0,required:!0},{name:"companyName",label:"Company Name",type:"custom",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0},{name:"username",label:"User Name",type:"custom",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0},{name:"password",label:"Password",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0}]},{name:"OracleFusionCloudFinancials",label:"Oracle Fusion Cloud Financials",ingressDescription:"Ingest data from Oracle Fusion Cloud Financials",iconUrl:"/icons/OracleFusionCloudFinancials.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9-]{1,63}\\.[A-Za-z0-9_-]{1,20}\\.[A-Za-z0-9_-]{1,100}\\.oraclecloud\\.com(:[0-9]{4,5})?$"},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"OracleFusionCloudHCM",label:"Oracle Fusion Cloud HCM",ingressDescription:"Ingest data from Oracle Cloud Human Capital Management",iconUrl:"/icons/OracleFusionCloudHCM.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?([a-z0-9-]{1,63}\\.)?[A-Za-z0-9_-]{1,20}\\.[A-Za-z0-9_-]{1,100}\\.(oraclecloud|oraclepdemos)\\.com(:[0-9]{4,5})?$"},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"OracleNetSuite",label:"Oracle NetSuite",ingressDescription:"Ingest data from Oracle NetSuite",iconUrl:"/icons/OracleNetSuite.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"AccountId",label:"Account Id",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!0,maxLength:127},{name:"Version",label:"Version",type:"custom",dataType:"text",defaultValue:"2022_2",ingress:!0,editable:!0,required:!0,maxLength:127},{name:"RoleId",label:"Role Id",type:"custom",dataType:"text",secure:!0,defaultValue:"",ingress:!0,editable:!0,required:!1,maxLength:127},{name:"IncludeChildTables",label:"Include Child Tables",type:"custom",dataType:"text",secure:!0,defaultValue:"false",ingress:!0,editable:!0,required:!1,maxLength:127},{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"Basic",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"Basic",label:"Basic Authentication",attributes:["user","password","RoleId","IncludeChildTables"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]}]},{name:"user",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{type:"custom",name:"Schema",label:"Schema",dataType:"combobox",defaultValue:"SuiteQL",editable:!0,ingress:!0,options:[{value:"SuiteTalk",label:"SuiteTalk"},{value:"SuiteQL",label:"SuiteQL"}]}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"OracleSCM",label:"Oracle Fusion Cloud SCM",ingressDescription:"Ingest data from Oracle Cloud Supply Chain Management",iconUrl:"/icons/OracleSCM.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9-]{1,63}\\.[A-Za-z0-9_-]{1,20}\\.[A-Za-z0-9_-]{1,100}\\.(oraclecloud|oraclepdemos)\\.com(:[0-9]{4,5})?$"},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}],customErrorLabels:{INVALID_CONNECTION:"Could not connect to the URL provided",INVALID_CREDENTIALS:"User credentials are invalid"}},{name:"OracleSalesCloud",label:"Oracle Sales Cloud",ingressDescription:"Ingest data from Oracle Sales Cloud",iconUrl:"/icons/OracleSalesCloud.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9-]{1,256}\\.[a-z0-9-]{1,256}\\.oraclecloud\\.com$"},{name:"Username",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"OracleServiceCloud",label:"Oracle Service Cloud",ingressDescription:"Ingest data from Oracle Service Cloud",iconUrl:"/icons/OracleServiceCloud.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?([a-z0-9-]{1,63}\\.oraclecloud\\.com)$"},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"PayPal",label:"PayPal",ingressDescription:"Ingest data from PayPal",iconUrl:"/icons/PayPal.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"Schema",label:"PayPal API",type:"custom",dataType:"combobox",secure:!0,defaultValue:"SOAP",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"SOAP",label:"SOAP API",attributes:["User","Password","Signature"]},{value:"REST",label:"REST API",attributes:["namedCredential"]}]},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"Signature",label:"Signature",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:127},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"UseSandbox",label:"Use Sandbox",tooltip:"Check this box if you are using a Sandbox test account.",type:"custom",dataType:"checkbox",defaultValue:"false",ingress:!0,egress:!0,editable:!0,required:!1}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Paylocity",label:"Paylocity",ingressDescription:"Ingest data from Paylocity",iconUrl:"/icons/Paylocity.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"CompanyId",label:"Company Id",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!1,required:!0},{name:"CustomFieldsCategory",label:"Custom Fields Category",tooltip:"The custom field category in the company. Add comma separated values to set more than one custom fields category.",type:"custom",dataType:"text",defaultValue:"PayrollAndHR",ingress:!0,egress:!0,editable:!1,required:!1},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Pinterest",label:"Pinterest",ingressDescription:"Ingest data from Pinterest",iconUrl:"/icons/Pinterest.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"PinterestAdsEMI",label:"Pinterest Ads for MI",ingressDescription:"Ingest data for Marketing Intelligence from Pinterest Ads",iconUrl:"/icons/PinterestAdsEMI.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"accountId",label:"Account ID",type:"custom",dataType:"text",ingress:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"startDate",label:"Start Date",type:"custom",dataType:"date",editable:!0},{name:"endDate",label:"End Date",type:"custom",dataType:"date",editable:!0},{type:"custom",name:"granularity",label:"Granularity",dataType:"combobox",editable:!0,defaultValue:"DAY",options:[{label:"Hour",value:"HOUR"},{label:"Day",value:"DAY"},{label:"Week",value:"WEEK"},{label:"Month",value:"MONTH"},{label:"Total",value:"TOTAL"}]},{type:"custom",name:"clickWindowDays",label:"Click Window Days",dataType:"combobox",editable:!0,defaultValue:"THIRTY",options:[{label:"1",value:"ONE"},{label:"7",value:"SEVEN"},{label:"30",value:"THIRTY"},{label:"60",value:"SIXTY"}]},{type:"custom",name:"engagementWindowDays",label:"Engagement Window Days",dataType:"combobox",editable:!0,defaultValue:"THIRTY",options:[{label:"1",value:"ONE"},{label:"7",value:"SEVEN"},{label:"30",value:"THIRTY"},{label:"60",value:"SIXTY"}]},{type:"custom",name:"viewWindowDays",label:"View Window Days",dataType:"combobox",editable:!0,defaultValue:"ONE",options:[{label:"1",value:"ONE"},{label:"7",value:"SEVEN"},{label:"30",value:"THIRTY"},{label:"60",value:"SIXTY"}]},{type:"custom",name:"conversionReportTime",label:"Conversion Report Time",dataType:"combobox",editable:!0,defaultValue:"TIME_OF_AD_ACTION",options:[{label:"TIME_OF_AD_ACTION",value:"TIME_OF_AD_ACTION"},{label:"TIME_OF_CONVERSION",value:"TIME_OF_CONVERSION"}]}]},{name:"Pipedrive",label:"Pipedrive",ingressDescription:"Ingest data from Pipedrive",iconUrl:"/icons/Pipedrive.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]\\.pipedrive\\.com$"},{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"apiTokenAuthentication",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"apiTokenAuthentication",label:"API Token",attributes:["APIToken"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]}]},{name:"APIToken",label:"API Token",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:127},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}],customErrorLabels:{INVALID_OAUTH_CREDENTIALS:"The Client ID or Client Secret is incorrect and/or missing."}},{name:"REDSHIFT",label:"Amazon Redshift",ingressDescription:"Connect to live Redshift tables shared with Salesforce CDP.",iconUrl:"/icons/REDSHIFT.svg",releaseLevel:"ACCESS_CHECK",accessCheck:"CDP.isRedshiftConnectorEnabled",features:["Ingress","BYOL"],connectionAttributes:[{name:"authenticationOption",label:"Authentication Option",type:"custom",dataType:"radiobuttons",secure:!0,defaultValue:"usernameAndPassword",ingress:!0,editable:!0,required:!0,options:[{value:"usernameAndPassword",label:"UserName/Password",attributes:["username","password"]},{value:"idp",label:"Identity Provider Based",attributes:["iamRoleName","externalId"]}],accessCheck:"CDP.isRedshiftIdpSupportEnabled"},{name:"username",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"hasPrivateNetworkRoute",label:"Use Private Connect",type:"custom",ingress:!0,dataType:"toggle",editable:!0,defaultValue:"false",options:[{value:"true",label:"Private Network Route",attributes:["outboundnetworkconnection","clusterIdentifier","isServerless"]},{value:"false",label:"URL",attributes:["url"]}]},{name:"outboundnetworkconnection",label:"Private Network Route",type:"custom",dataType:"privatenetworkroute",ingress:!0},{name:"iamRoleName",label:"IAM Role Name",placeholder:"Enter IAM Role Name",type:"custom",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,pattern:"^arn:aws:iam::(\\d{12})?:role/[\\w+=,.@-]{1,128}$",accessCheck:"CDP.isRedshiftIdpSupportEnabled"},{name:"externalId",label:"External ID",tooltip:"Make sure you copy the External ID and paste it into IAM Role before you test the connection and save the connector. [Learn More](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html)",type:"custom",dataType:"idp",secure:!0,readonly:!0,ingress:!0,required:!0,pattern:"^app:DE809C7E:[0-9A-F]{8}$",accessCheck:"CDP.isRedshiftIdpSupportEnabled"},{name:"url",label:"Connection URL",type:"jdbcConnectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"[A-Za-z0-9-]{1,63}\\.[A-Za-z0-9_-]{1,20}\\.[A-Za-z0-9_-]{1,100}\\.((redshift|redshift-serverless)\\.)?amazonaws\\.com(:[0-9]{4,5})?"},{name:"database",label:"Database",type:"jdbcDatabase",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"clusterIdentifier",label:"Redshift Cluster Identifier",tooltip:"Required for Identity Provider Based Auth (Provide Workgroup Name in case of Serverless)",type:"custom",dataType:"text",pattern:"^[a-zA-Z0-9-_]+$",maxLength:100,accessCheck:"CDP.isRedshiftIdpSupportEnabled",ingress:!0,editable:!0},{name:"isServerless",type:"custom",label:"Redshift Serverless Mode",tooltip:"Required for Identity Provider Based Auth",dataType:"checkbox",defaultValue:"false",accessCheck:"CDP.isRedshiftIdpSupportEnabled",ingress:!0,editable:!0}],extractAttributes:[{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0}]},{name:"Redis",label:"Redis",ingressDescription:"Ingest data from a Redis database",iconUrl:"/icons/Redis.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","Batch"],connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]))*(\\.ec2\\.cloud\\.redislabs\\.com|\\.amazonaws\\.com)$"},{name:"Port",label:"Port",type:"port",dataType:"text",defaultValue:"6379",ingress:!0,editable:!0,required:!0,pattern:"\\d+",minLength:1,maxLength:5},{name:"password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}],customErrorLabels:{INVALID_CONNECTION:"Could not connect to the URL provided",INVALID_CREDENTIALS:"User credentials are invalid"}},{name:"SAPConcur",label:"SAP Concur",ingressDescription:"Ingest data from SAP Concur",iconUrl:"/icons/SAPConcur.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"},{name:"UseSandbox",label:"Use Sandbox",tooltip:"Check this box if you are using a Sandbox test account.",type:"custom",dataType:"checkbox",defaultValue:"false",ingress:!0,egress:!0,editable:!0,required:!1},{name:"Region",label:"Region",type:"custom",dataType:"combobox",defaultValue:"US",ingress:!0,editable:!0,required:!1,options:[{value:"US",label:"US"},{value:"EU",label:"Europe"},{value:"CN",label:"China"}]},{name:"ConcurInstanceURL",label:"Concur Instance URL",tooltip:"Set this connection property if you are using API versions V1-V3 and the server does not accept the Base URL with region information.",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!1,pattern:"^https:\\/\\/[a-z0-9-]{1,256}\\.api\\.concursolutions\\.com(:[0-9]{4,5})?(\\/[a-z0-9-]{1,256})*$"},{name:"LoginId",label:"Login Id",tooltip:"Login ID of the user. Can be used if the user account associated with the OAuth 2.0 access token has a Concur account with one of these roles: Web Services Administrator for Professional or Can Administer for Standard.",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!1},{name:"UserId",label:"User Id",tooltip:"The unique identifier of the SAP Concur user. Used only for tables that expose V4 endpoints of the SAP Concur API.",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!1}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"SAPHana",label:"SAP HANA",ingressDescription:"Ingest data from an SAP HANA database",iconUrl:"/icons/SAPHana.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"Server",tooltip:"Set this property to the name or network address of the SAP HANA database instance.",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,pattern:"^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]))*\\.(hanacloud|sap)\\.(ondemand|txuer)\\.(com|net)$"},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"Port",label:"Port",type:"port",dataType:"text",defaultValue:"39013",ingress:!0,editable:!0,required:!0,pattern:"\\d+",minLength:1,maxLength:5},{name:"Database",label:"Database",type:"jdbcDatabase",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"SAPHybris",label:"SAP Hybris",ingressDescription:"Ingest data from SAP Hybris",iconUrl:"/icons/SAPHybris.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"Basic",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"Basic",label:"Basic Authentication",attributes:["User","Password"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential","Resource","AzureTenant"]}]},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"connectWith",label:"Connect With",type:"custom",dataType:"radiobuttons",defaultValue:"tenantName",ingress:!0,required:!1,options:[{value:"tenantName",label:"Tenant Name",attributes:["Tenant","UseCustomService"]},{value:"customUrl",label:"Custom URL",attributes:["URL"]}]},{name:"URL",label:"URL",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!1,pattern:"^https:\\/\\/[a-z0-9-]{1,256}\\.crm\\.ondemand\\.com(:[0-9]{4,5})?(\\/[a-z0-9-]{1,256})*$"},{name:"Tenant",label:"Tenant",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!1},{name:"UseCustomService",label:"Use Custom Service",tooltip:"If not sure, leave this unchecked",type:"custom",dataType:"checkbox",defaultValue:"false",ingress:!0,egress:!0,editable:!0,required:!1},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"Resource",label:"Resource",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!1},{name:"AzureTenant",label:"Azure Tenant",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!1},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"SFTP",label:"Secure File Transfer (SFTP)",ingressDescription:"Import files from an SFTP-enabled server using SSH",egressDescription:"Export files to an SFTP-enabled server using SSH",iconUrl:"/icons/SFTP.svg",releaseLevel:"GA",features:["Ingress","Egress","FileBased","Batch"],featuresConfig:{FileBased:{supportParquetFileType:"true",supportEnhancedRefresh:"true"}},connectionAttributes:[{name:"remoteHost",label:"Host Name",type:"server",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!0,pattern:"^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]))*$",minLength:1,maxLength:253},{name:"remotePort",label:"Port",type:"port",dataType:"text",defaultValue:"22",ingress:!0,egress:!0,editable:!0,required:!0,pattern:"\\d+",minLength:1,maxLength:5},{name:"parentDirectory",label:"Parent Directory",tooltip:"To select the root directory, leave this field '/'. To select any other folder, write the name without a leading slash, for example 'Import/CRM/', not '/Import/Analytics/'.",type:"fileBasedParentDirectory",dataType:"text",defaultValue:"/",ingress:!0,egress:!0,editable:!0,required:!0},{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"sshClientCert",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"sshClientCertWithoutPassword",label:"SSH Private Key",attributes:["user","sshClientCert","sshClientCertPassword"]},{value:"sshClientCert",label:"SSH Private Key & Password",attributes:["user","password","sshClientCert","sshClientCertPassword"]}]},{name:"user",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,egress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,egress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"sshClientCert",label:"SSH Private Key",placeholder:"Enter or Upload SSH Private Key...",type:"custom",dataType:"passwordfile",secure:!0,ingress:!0,egress:!0,editable:!0,required:!0,pattern:"^-----BEGIN .* PRIVATE KEY-----.*$"},{name:"sshClientCertPassword",label:"Passphrase",placeholder:"Enter passphrase...",type:"custom",dataType:"password",secure:!0,ingress:!0,egress:!0,editable:!0},{name:"pgpEncryption",label:"PGP Encryption",type:"custom",dataType:"passwordfile",secure:!0,ingress:!1,egress:!0,editable:!0},{name:"pgpPrivateKey",label:"PGP Private Key",placeholder:"Enter or Upload PGP Private Key...",type:"pgpPrivateKey",dataType:"passwordfile",secure:!0,ingress:!0,egress:!1,editable:!0,pattern:"^-----BEGIN PGP PRIVATE KEY BLOCK-----.*$"},{name:"pgpPassphrase",label:"PGP Private Key Passphrase",placeholder:"Enter PGP Private Key Passphrase...",type:"pgpPassphrase",dataType:"password",secure:!0,ingress:!0,egress:!1,editable:!0}],extractAttributes:[{name:"fileType",label:"File Type",type:"fileBasedFileType",dataType:"radio",defaultValue:"CSV",required:!0,options:[{value:"CSV",label:"CSV",attributes:["delimiter","headerlessRetrievalEnabled"]},{value:"PARQUET",label:"Parquet"}]},{name:"delimiter",label:"Delimiter",type:"fileBasedDelimiter",dataType:"text",readonly:!0,hidden:!0},{name:"escapeChar",label:"Escape Char",type:"fileBasedEscapeChar",dataType:"text",readonly:!0,hidden:!0},{name:"quoteChar",label:"Quote Char",type:"fileBasedQuoteChar",dataType:"text",readonly:!0,hidden:!0},{name:"importDirectory",label:"Import From Directory",tooltip:"To select the root directory, leave this field blank. To select any other folder, write the name without a leading slash, for example 'Sales/OrderHeaders/', not '/Sales/OrderHeaders/'.",type:"fileBasedImportDirectory",dataType:"text",editable:!0},{name:"fileName",label:"File Name",tooltip:"If all file names in directory follow a uniform naming pattern, set this field as wildcard with file extension, for example *.csv. If multiple file name patterns exist in same directory, increase specificity of pattern logic using wildcard until only one file pattern is identified.",type:"fileBasedFileName",dataType:"text",defaultValue:"*",editable:!0,required:!0},{name:"headerlessRetrievalEnabled",label:"Is headerless retrieval enabled",type:"fileBasedHeaderlessRetrievalEnabled",dataType:"checkbox",defaultValue:"false",editable:!0},{name:"failWhenNoData",label:"Log an error if no file is found",type:"fileBasedFailWhenNoData",dataType:"checkbox",defaultValue:"false",editable:!0},{name:"refreshOnlyNewFiles",label:"Refresh only new files",type:"fileBasedRefreshOnlyNewFiles",dataType:"checkbox",defaultValue:"true",editable:!0}],customErrorLabels:{FILE_NOT_FOUND:"File not found, check directory and file name."}},{name:"SNOWFLAKE",label:"Snowflake",ingressDescription:"Connect directly to Snowflake to access data stored externally.",iconUrl:"/icons/SNOWFLAKE.svg",releaseLevel:"GA",features:["Ingress","BYOL","NoConnection"],connectionAttributes:[{name:"user",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"accountUrl",label:"Account URL",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!0},{name:"region",label:"Region",type:"custom",dataType:"text",readonly:!0,ingress:!0},{name:"warehouse",label:"Warehouse",type:"custom",dataType:"text",readonly:!0,ingress:!0},{name:"privateKey",label:"SSH Private Key",placeholder:"Enter or Upload SSH Private Key...",type:"custom",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,required:!0},{name:"unloadData",label:"Leverage Snowflake Data Unload",tooltip:"Check this box if you want to leverage Snowflake Data Unloading, suitable for large workloads.",type:"custom",dataType:"checkbox",defaultValue:"false",ingress:!0,editable:!0,required:!1}]},{name:"SNOWFLAKE_POLARIS",label:"Snowflake File Federation",ingressDescription:"Connect to Snowflake Iceberg tables shared with Salesforce CDP.",iconUrl:"/icons/SNOWFLAKE_POLARIS.svg",releaseLevel:"BETA",features:["Ingress","BYOL","ObjectBased"],featuresConfig:{ObjectBased:{"3levelSelection":"true"}},connectionAttributes:[{name:"catalogUrl",label:"Catalog Url",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!0},{name:"catalogName",label:"Catalog Name",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!0},{name:"catalogClientId",label:"Client Id",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0},{name:"catalogClientSecret",label:"Client Secret",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"DATABASE",label:"Database",type:"objectBasedObjectDatabase",dataType:"text",readonly:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"SCHEMA",label:"Schema",type:"objectBasedObjectSchema",dataType:"text",readonly:!0,required:!0,maxLength:100},{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0}],customErrorLabels:{INVALID_FORMAT_VERSION:"format-version={0} for table={1} is not in supported format versions set={2}. Table is invalid.",INVALID_WRITE_MODE:"Write modes={0} for table={1} are not in supported write modes set={2}. Table is invalid.",INVALID_DATA_FILES:"Data file={0} does not exist in table={1}. Table is invalid."}},{name:"SalesforceCRM",label:"Salesforce CRM",ingressDescription:"Ingest data from Salesforce CRM",iconUrl:"/icons/SalesforceCRM.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{Ingress:{accessCheck:"CDP.isSalesforceCRMEnabled"},IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"tenantId",label:"Tenant Id",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!0},{name:"orgId",label:"Organization Id",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0}]},{name:"SalesforceCommerceCloud",label:"Salesforce Commerce Cloud",ingressDescription:"Ingest data from Salesforce Commerce Cloud",iconUrl:"/icons/SalesforceCommerceCloud.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{Ingress:{accessCheck:"CDP.isSalesforceMarketingCloudEnabled"},IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"tenantId",label:"Tenant Id",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!0},{name:"orgId",label:"Organization Id",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0}]},{name:"SalesforceMarketingCloud",label:"Salesforce Marketing Cloud",ingressDescription:"Ingest data from Salesforce Commerce Cloud",egressDescription:"Target Salesforce Marketing Cloud for Segment Activations",iconUrl:"/icons/SalesforceMarketingCloud.svg",releaseLevel:"GA",features:["Ingress","Egress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{Ingress:{accessCheck:"CDP.isSalesforceMarketingCloudEnabled"},Egress:{accessCheck:"CDP.isSalesforceMarketingCloudEnabled"},IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"tenantId",label:"Tenant Id",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!0},{name:"orgId",label:"Organization Id",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0}]},{name:"Salesloft",label:"Salesloft",ingressDescription:"Ingest data from Salesloft",iconUrl:"/icons/Salesloft.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"apiTokenAuthentication",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"apiTokenAuthentication",label:"API Key",attributes:["APIKey"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]}]},{name:"APIKey",label:"API Key",type:"custom",dataType:"password",secure:!0,ingress:!0,egress:!0,editable:!0,required:!1},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"SapSuccessFactors",label:"SAP SuccessFactors",ingressDescription:"Ingest data from SAP SuccessFactors",iconUrl:"/icons/SapSuccessFactors.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"basicAuthentication",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"basicAuthentication",label:"Basic",attributes:["Password"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]}]},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9-]{1,256}\\.sapsf\\.com(:[0-9]{4,5})?$"},{name:"CompanyId",label:"Company ID",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!1,required:!0},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}],customErrorLabels:{INVALID_CONNECTION:"Could not connect to the URL provided",INVALID_CREDENTIALS:"User credentials are invalid"}},{name:"SendGrid",label:"SendGrid",ingressDescription:"Ingest data from SendGrid",iconUrl:"/icons/SendGrid.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"APIKey",label:"API Key",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0},{name:"Schema",label:"Schema",tooltip:"The type of schema to use. Default is NMC",type:"custom",dataType:"combobox",defaultValue:"NMC",ingress:!0,editable:!0,required:!0,options:[{value:"NMC",label:"NMC"},{value:"Legacy",label:"Legacy"}]}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"ShipStation",label:"ShipStation",ingressDescription:"Ingest data from Shipstation",iconUrl:"/icons/ShipStation.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"APIKey",label:"API Key",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:255},{name:"APISecret",label:"API Secret",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:255},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Shopify",label:"Shopify",ingressDescription:"Ingest data from Shopify",iconUrl:"/icons/Shopify.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])\\.myshopify\\.com*$"},{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"apiTokenAuthentication",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"apiTokenAuthentication",label:"API Token",attributes:["AccessToken"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]}]},{name:"AccessToken",label:"Access Token",tooltip:"Admin API Access Token for a custom app.",type:"custom",dataType:"password",secure:!0,masked:!0,ingress:!0,editable:!0,required:!1,maxLength:255},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"SingleStore",label:"SingleStore",ingressDescription:"Ingest data from a SingleStore database",iconUrl:"/icons/SingleStore.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]))*(\\.svc\\.singlestore\\.com)$"},{name:"Database",label:"Database",type:"jdbcDatabase",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"Port",label:"Port",type:"port",dataType:"text",defaultValue:"3306",ingress:!0,editable:!0,required:!0,pattern:"\\d+",minLength:1,maxLength:5}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}],customErrorLabels:{INVALID_CONNECTION:"Could not connect to the URL provided",INVALID_CREDENTIALS:"User credentials are invalid",INVALID_DATABASE_NAME:"Could not connect with the database provided",MISSING_DATABASE_NAME:"The database name is missing"}},{name:"Smartsheet",label:"Smartsheet",ingressDescription:"Ingest data from Smartsheet",iconUrl:"/icons/Smartsheet.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"personalAccessTokenAuthentication",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"personalAccessTokenAuthentication",label:"Personal Access Token",attributes:["PersonalAccessToken"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]}]},{name:"PersonalAccessToken",label:"Personal Access Token",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!1},{name:"Region",label:"Region",type:"custom",dataType:"combobox",defaultValue:"GLOBAL",ingress:!0,editable:!0,required:!1,options:[{value:"GLOBAL",label:"GLOBAL"},{value:"EU",label:"EU"},{value:"GOV",label:"GOV"}]},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"SnapchatAds",label:"Snapchat Ads",ingressDescription:"Ingest data from Snapchat Ads",iconUrl:"/icons/SnapchatAds.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"AccountId",label:"Account ID",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,maxLength:36},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"SnapchatAdsEMI",label:"Snapchat Ads for MI",ingressDescription:"Ingest data for Marketing Intelligence from Snapchat Ads",iconUrl:"/icons/SnapchatAdsEMI.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"accountId",label:"Account ID",type:"custom",dataType:"text",ingress:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"startDate",label:"Start Date",type:"custom",dataType:"date",editable:!0},{name:"endDate",label:"End Date",type:"custom",dataType:"date",editable:!0},{name:"additionalBreakdown",label:"Additional Breakdown",type:"custom",dataType:"combobox",editable:!0,defaultValue:"NONE",options:[{value:"NONE",label:"None"},{value:"AGE",label:"Age"},{value:"GENDER",label:"Gender"},{value:"AGE_GENDER",label:"Age & Gender"},{value:"DEVICE",label:"Device Operating System"},{value:"COUNTRY",label:"Country"}]},{type:"custom",name:"swipeAttributionWindow",label:"Swipe Attribution Window",dataType:"combobox",editable:!0,defaultValue:"DAY_28",options:[{label:"1 Day",value:"DAY_1"},{label:"7 Days",value:"DAY_7"},{label:"28 Days",value:"DAY_28"}]},{type:"custom",name:"viewAttributionWindow",label:"View Attribution Window",dataType:"combobox",editable:!0,defaultValue:"DAY_1",options:[{label:"1 Hour",value:"HOUR_1"},{label:"3 Hours",value:"HOUR_3"},{label:"6 Hours",value:"HOUR_6"},{label:"1 Day",value:"DAY_1"},{label:"7 Days",value:"DAY_7"}]}]},{name:"SnapchatAdsEgress",label:"Snapchat Ads",egressDescription:"Target Snapchat Ads for Segment Activations",iconUrl:"/icons/SnapchatAdsEgress.svg",releaseLevel:"ACCESS_CHECK",accessCheck:"CDP.isSnapchatAdsEgressEnabled",features:["Egress","ObjectBased"],connectionAttributes:[{name:"AccountId",label:"Account ID",type:"custom",dataType:"text",egress:!0,editable:!0,maxLength:36},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,egress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,egress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[]},{name:"SparkSQL",label:"Spark SQL",ingressDescription:"Ingest data from Spark SQL",iconUrl:"/icons/SparkSQL.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]))*(\\/[a-zA-Z0-9_\\-\\/]+)?$"},{name:"Database",label:"Database",type:"jdbcDatabase",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"Port",label:"Port",type:"port",dataType:"text",defaultValue:"10000",ingress:!0,editable:!0,required:!0,pattern:"\\d+",minLength:1,maxLength:5},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Splunk",label:"Splunk",ingressDescription:"Ingest data from Splunk",iconUrl:"/icons/Splunk.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"Basic",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"AccessToken",label:"Access Token",attributes:["AccessToken"]},{value:"Basic",label:"Basic Authentication",attributes:["User","Password"]}]},{name:"AccessToken",label:"Access Token",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]))*(:\\d{2,5})?$"},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Square",label:"Square",ingressDescription:"Ingest data from Square",iconUrl:"/icons/Square.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"UseSandbox",label:"Use Sandbox",tooltip:"Check this box if you are using a Sandbox test account.",type:"custom",dataType:"checkbox",defaultValue:"false",ingress:!0,egress:!0,editable:!0,required:!1},{name:"LocationId",label:"LocationId",tooltip:"The Id of a business location",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!1},{name:"Schema",label:"Schema",tooltip:"Set this property to v1 to use the Square Connect API v1 or v2 to use the Square Connect API v2",type:"custom",dataType:"combobox",defaultValue:"v1",ingress:!0,egress:!0,editable:!0,required:!1,options:[{value:"v1",label:"v1"},{value:"v2",label:"v2"}]},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Streak",label:"Streak",ingressDescription:"Ingest data from Streak",iconUrl:"/icons/Streak.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"ApiKey",label:"API Key",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:127}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Stripe",label:"Stripe",ingressDescription:"Ingest data from Stripe",iconUrl:"/icons/Stripe.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"AccountId",label:"Account Id",tooltip:"The ID of the Account that you want to use. By default the provider uses the authenticated account.",type:"custom",dataType:"text",secure:!1,ingress:!0,editable:!0,required:!1,maxLength:127},{name:"LiveAPIKey",label:"API Key",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:127}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0}]},{name:"SugarCRM",label:"SugarCRM",ingressDescription:"Ingest data from SugarCRM",iconUrl:"/icons/SugarCRM.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?([a-z0-9-]{1,256}\\.)+sugarcrm\\.com$"},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"SuiteCRM",label:"SuiteCRM",ingressDescription:"Ingest data from SuiteCRM",iconUrl:"/icons/SuiteCRM.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9-]{1,63}\\.suiteondemand\\.com$"},{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"Basic",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"OAuthClient",label:"Named credentials for OAuth Client based authentication",attributes:["namedCredential"]},{value:"OAuthPassword",label:"Named credentials for OAuth Password based authentication",attributes:["namedCredential","user","password"]},{value:"Basic",label:"Basic Authentication",attributes:["user","password"]}]},{name:"user",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"SurveyMonkey",label:"SurveyMonkey",ingressDescription:"Ingest data from SurveyMonkey",iconUrl:"/icons/SurveyMonkey.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"accessTokenAuthentication",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"accessTokenAuthentication",label:"Access Token",attributes:["AccessToken"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]}]},{name:"AccessToken",label:"Access Token",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:255},{name:"AccessURL",label:"Access Url",tooltip:"Depending on the originating datacenter of the SurveyMonkey account, the API Access URL may be different than https://api.surveymonkey.com, for instance https://api.surveymonkey.ca for the Canadian datacenter.",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!1,pattern:"^https:\\/\\/api\\.(surveymonkey\\.com|eu\\.surveymonkey\\.com|surveymonkey\\.ca)$",maxLength:255},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}],customErrorLabels:{INVALID_OAUTH_CREDENTIALS:"The Client ID or Client Secret is incorrect and/or missing."}},{name:"SybaseASE",label:"SAP ASE",ingressDescription:"Ingest data from SAP ASE",iconUrl:"/icons/SybaseASE.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]))*$"},{name:"Port",label:"Port",type:"port",dataType:"text",defaultValue:"5000",ingress:!0,editable:!0,required:!0,pattern:"\\d+",minLength:1,maxLength:5},{name:"Database",label:"Database",type:"jdbcDatabase",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"SybaseIQ",label:"SAP IQ",ingressDescription:"Ingest data from SAP IQ",iconUrl:"/icons/SybaseIQ.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]))*$"},{name:"Port",label:"Port",type:"port",dataType:"text",defaultValue:"2638",ingress:!0,editable:!0,required:!0,pattern:"\\d+",minLength:1,maxLength:5},{name:"Database",label:"Database",type:"jdbcDatabase",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"TenantBillingUsageConnector",label:"Tenant Billing Usage",ingressDescription:"Extract Tenant Billing Usage Events from the Event Bus API",iconUrl:"/icons/default.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","NoConnection","IncrementalUpdate","Batch"],connectionAttributes:[{name:"tenantId",label:"Tenant Id",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!0},{name:"orgId",label:"Organization Id",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0}]},{name:"TheTradeDeskEMI",label:"The Trade Desk for MI",ingressDescription:"Ingest data for Marketing Intelligence from The Trade Desk",iconUrl:"/icons/TheTradeDeskEMI.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"username",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{type:"custom",name:"partnerID",label:"Partner ID",dataType:"text",ingress:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{type:"custom",name:"startDate",label:"Start Date",dataType:"date",editable:!0},{type:"custom",name:"endDate",label:"End Date",dataType:"date",editable:!0},{type:"custom",name:"additionalBreakdown",label:"Location Breakdown (Creative data and Frequency are not pulled once Location Breakdown is set).",dataType:"combobox",editable:!0,defaultValue:"NONE",options:[{label:"None",value:"NONE"},{label:"Country",value:"COUNTRY"},{label:"Region",value:"REGION"},{label:"City",value:"CITY"},{label:"Metro",value:"METRO"}]}]},{name:"TigerGraph",label:"TigerGraph",ingressDescription:"Ingest data from TigerGraph",iconUrl:"/icons/TigerGraph.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9-]{1,256}\\.i\\.tgcloud\\.io$"},{name:"SCHEMA",label:"Schema",type:"jdbcSchema",dataType:"text",ingress:!0,required:!0,maxLength:100},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"TiktokAdsEMI",label:"Tiktok Ads for MI",ingressDescription:"Ingest data for Marketing Intelligence from Tiktok Ads",iconUrl:"/icons/TiktokAdsEMI.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"accountId",label:"Advertiser ID",type:"custom",dataType:"text",ingress:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"startDate",label:"Start Date",type:"custom",dataType:"date",editable:!0},{name:"endDate",label:"End Date",type:"custom",dataType:"date",editable:!0},{type:"custom",name:"isSkan",label:"Get SKAN In-App events",dataType:"checkbox",defaultValue:"false",required:!1,editable:!0},{type:"custom",name:"additionalBreakdown",label:"Additional Breakdown",dataType:"combobox",editable:!0,defaultValue:"NONE",options:[{label:"None",value:"NONE"},{label:"Age & Gender",value:"AGE_GENDER"},{label:"Country",value:"COUNTRY"},{label:"Region",value:"REGION"}]}]},{name:"TpmAwsS3Testing",label:"RCG TPM Spike for Aws S3 connection",ingressDescription:"An extended connector for testing S3 ARN authentication",iconUrl:"/icons/AwsS3.svg",releaseLevel:"IN_DEV",features:["Ingress","ObjectBased","NoConnection","Batch"],extendedFrom:"AwsS3",featuresConfig:{Ingress:{frequentIngest:"true"},NoConnection:{readonly:"true"}},connectionAttributes:[],extractAttributes:[{name:"objectName",type:"objectBasedObjectName",label:"Object Name",dataType:"text",readonly:!0,required:!0}],customErrorLabels:{AUTHENTICATION_FAILED:"Authentication failed due to invalid or expired credentials",INTERNAL_SERVER_ERROR:"Internal server error",BAD_REQUEST:"Invalid arguments",CLIENT_SIDE_ERROR:"Something's wrong on client side configuration. Please check and retry"}},{name:"Trello",label:"Trello",ingressDescription:"Ingest data from Trello",iconUrl:"/icons/Trello.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"APIKey",label:"API key",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:127},{name:"Token",label:"Token",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:255}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Twilio",label:"Twilio",ingressDescription:"Ingest data from Twilio",iconUrl:"/icons/Twilio.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"AuthToken",label:"Auth Token",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:127},{name:"AccountSID",label:"Account SID",type:"custom",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:34}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"TwitterAds",label:"X Ads",ingressDescription:"Ingest data from X Ads",iconUrl:"/icons/TwitterAds.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"},{name:"AccountId",label:"Account ID",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"UploadedFiles",label:"File Upload",ingressDescription:"Upload file from your local drive",iconUrl:"/icons/UploadedFiles.svg",releaseLevel:"GA",features:["Ingress","FileBased","Batch","NoConnection"],featuresConfig:{FileBased:{fileUpload:"true"},NoConnection:{readonly:"true"}},extractAttributes:[{name:"driveLibraryId",label:"Drive Library Id for SFDrive Credentials Request",type:"custom",dataType:"text",hidden:!0},{name:"parentDirectory",label:"Parent Directory",tooltip:"To select the root directory, leave this field '/'. To select any other folder, write the name without a leading slash, for example 'Import/CRM/', not '/Import/Analytics/'.",type:"fileBasedParentDirectory",dataType:"text",defaultValue:"/",hidden:!0,required:!0},{name:"importDirectory",label:"Import From Directory",tooltip:"To select the root directory, leave this field blank. To select any other folder, write the name without a leading slash, for example 'Sales/OrderHeaders/', not '/Sales/OrderHeaders/'.",type:"fileBasedImportDirectory",dataType:"text",hidden:!0,editable:!0},{name:"fileName",label:"File Name",tooltip:"If all file names in directory follow a uniform naming pattern, set this field as wildcard with file extension, for example *.csv. If multiple file name patterns exist in same directory, increase specificity of pattern logic using wildcard until only one file pattern is identified.",type:"fileBasedFileName",dataType:"text",hidden:!0,required:!0,editable:!0},{name:"fileType",label:"File Type",type:"custom",dataType:"radio",defaultValue:"CSV",required:!0,hidden:!0,options:[{value:"CSV",label:"CSV",attributes:["delimiter"]},{value:"EXCEL",label:"Excel",attributes:["subRange","sheetName","headerlessRetrievalEnabled"]}]},{name:"delimiter",label:"Delimiter",type:"fileBasedDelimiter",dataType:"text",readonly:!0,hidden:!0},{name:"headerlessRetrievalEnabled",label:"Is headerless retrieval enabled",type:"fileBasedHeaderlessRetrievalEnabled",dataType:"checkbox",defaultValue:"false",editable:!0},{name:"subRange",label:"Sub Range",dataType:"text",type:"custom"},{name:"sheetName",label:"Sheet Name",dataType:"text",type:"custom"}],customErrorLabels:{BUCKET_NOT_FOUND:"Container not found for the given location",DIRECTORY_NOT_FOUND:"Directory not found for the given location",AUTHENTICATION_FAILED:"Authentication failed due to invalid or expired credentials",UNAUTHORIZED:"Permission denied for accessing resources in the given location",FILE_NOT_FOUND:"Given file is not present in the given location",INTERNAL_SERVER_ERROR:"Internal server error",BAD_REQUEST:"Invalid arguments",CLIENT_SIDE_ERROR:"Something's wrong on client side configuration. Please check and retry"}},{name:"VeevaVault",label:"VeevaVault",ingressDescription:"Ingest data from Veeva Vault",iconUrl:"/icons/VeevaVault.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9-]{1,256}\\.veevavault\\.com$"},{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"Basic",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"AzureADOpenID",label:"Named credentials for Azure Active Directory OpenID authentication",attributes:["namedCredential","AzureTenant"]},{value:"Basic",label:"Basic Authentication",attributes:["User","Password"]}]},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"AzureTenant",label:"Azure Tenant",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,maxLength:127},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"WooCommerce",label:"WooCommerce",ingressDescription:"Ingest data from WooCommerce",iconUrl:"/icons/WooCommerce.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],connectionAttributes:[{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"Basic",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"Basic",label:"Basic Authentication",attributes:["ConsumerKey","ConsumerSecret"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]}]},{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9-]{1,256}\\.woocommerce\\.com$"},{name:"ConsumerKey",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"ConsumerSecret",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"WordPress",label:"WordPress",ingressDescription:"Ingest data from WordPress",iconUrl:"/icons/WordPress.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"basicAuthentication",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"Basic",label:"Basic",attributes:["User","Password"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]}]},{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?[a-z0-9-.]{1,255}\\.(com|gov|org|edu|mil|au|uk|us|cs|jp)$"},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"custom",dataType:"passwordfile",secure:!0,masked:!0,ingress:!0,editable:!0,required:!1,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Workday",label:"Workday",ingressDescription:"Ingest data from Workday",iconUrl:"/icons/Workday.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","BYOL","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"},BYOL:{accessCheck:"CDP.isWorkDayBYOLConnectorEnabled"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])(\\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9]))*(\\.workday\\.com|\\.myworkday\\.net)$"},{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"radiobuttons",secure:!0,defaultValue:"passwordBasedAuthentication",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"passwordBasedAuthentication",label:"Username & Password",attributes:["User","Password"]},{value:"integrationSystemUserAuthentication",label:"Client Id, Client Secret & Refresh Token",attributes:["OAuthClientId","OAuthClientSecret","OAuthRefreshToken"]}],accessCheck:"CDP.isWorkDayBYOLConnectorEnabled"},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"OAuthClientId",label:"Client Id",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,accessCheck:"CDP.isWorkDayBYOLConnectorEnabled"},{name:"OAuthClientSecret",label:"Client Secret",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,accessCheck:"CDP.isWorkDayBYOLConnectorEnabled"},{name:"OAuthRefreshToken",label:"OAuth Refresh Token",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,accessCheck:"CDP.isWorkDayBYOLConnectorEnabled"},{name:"Tenant",label:"Tenant",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!0,maxLength:255},{name:"Service",label:"Service",tooltip:`The specific SOAP service or services to retrieve data from. Enter as a comma seperated list. If you set WSDL URL, this property will be ignored`,type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,pattern:"^([a-zA-Z-_]+)(,[a-zA-Z-_]+)*$"},{name:"WSDLVersion",label:"WSDL Version",tooltip:`The version of the WSDL to use, default value is v36.1. If you set WSDL URL, this property will be ignored`,type:"custom",dataType:"text",defaultValue:"v36.1",ingress:!0,editable:!0,required:!1,pattern:"^v(\\d+|\\d+\\.\\d+)$"},{name:"WSDLURL",label:"WSDL URL",tooltip:"The URL to load Workday WSDL from. If provided, this will override Service and WSDL Version.",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,pattern:"^https:\\/\\/[a-zA-Z0-9][a-zA-Z0-9-_.]+(\\/[a-zA-Z0-9][a-zA-Z0-9-_.]+)+\\.wsdl$"},{name:"CustomReportUrl",label:"Custom Report URL",tooltip:"The URL to load Workday Custom Reports.",type:"custom",dataType:"text",ingress:!0,editable:!0,required:!1,accessCheck:"CDP.isWorkDayBYOLConnectorEnabled"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"XAdsEMI",label:"X Ads for MI",ingressDescription:"Ingest data for Marketing Intelligence from X Ads",iconUrl:"/icons/XAdsEMI.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"accountId",label:"Account ID",type:"custom",dataType:"text",ingress:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"startDate",label:"Start Date",type:"custom",dataType:"date",editable:!0},{name:"endDate",label:"End Date",type:"custom",dataType:"date",editable:!0},{type:"custom",name:"Placement",label:"Placement",dataType:"combobox",editable:!0,defaultValue:"ALL_ON_TWITTER",options:[{label:"All On Twitter",value:"ALL_ON_TWITTER"},{label:"Publisher Network",value:"PUBLISHER_NETWORK"}]},{type:"custom",name:"breakdown",label:"Breakdown",dataType:"combobox",editable:!0,defaultValue:"NONE",options:[{label:"None",value:"NONE"},{label:"Country",value:"COUNTRY"},{label:"Device",value:"DEVICE"}]}]},{name:"YoutubeAdsEMI",label:"YouTube Ads for MI",ingressDescription:"Ingest data for Marketing Intelligence from YouTube Ads",iconUrl:"/icons/YoutubeAdsEMI.svg",releaseLevel:"GA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{type:"custom",name:"customerId",label:"Customer ID",dataType:"text",ingress:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{type:"custom",name:"startDate",label:"Start Date",dataType:"date",editable:!0},{type:"custom",name:"endDate",label:"End Date",dataType:"date",editable:!0},{type:"custom",name:"additionalBreakdown",label:"Additional Breakdown",dataType:"combobox",editable:!0,defaultValue:"NONE",options:[{label:"None",value:"NONE"},{label:"Country",value:"COUNTRY"},{label:"Region",value:"REGION"},{label:"City",value:"CITY"},{label:"Metro",value:"METRO"}]}]},{name:"YoutubeAnalytics",label:"YouTube Analytics",ingressDescription:"Ingest data from YouTube Analytics",iconUrl:"/icons/YoutubeAnalytics.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"ChannelId",label:"Channel ID",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0},{name:"ContentOwnerId",label:"Content Owner ID",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"Zendesk",label:"Zendesk",ingressDescription:"Ingest data from Zendesk",iconUrl:"/icons/Zendesk.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"AuthScheme",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"Basic",ingress:!0,editable:!0,required:!0,options:[{value:"Basic",label:"Password",attributes:["Password"]},{value:"APIToken",label:"API Token",attributes:["APIToken"]}]},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^https:\\/\\/[a-z0-9-]{1,63}\\.zendesk\\.com(:443)?$"},{name:"APIToken",label:"API Token",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:255}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"ZoomInfo",label:"ZoomInfo",ingressDescription:"Ingest company and contact data from ZoomInfo",iconUrl:"/icons/ZoomInfo.svg",releaseLevel:"ACCESS_CHECK",accessCheck:"CDP.isZoomInfoConnectorEnabled",features:["Ingress","ObjectBased","Batch"],connectionAttributes:[{name:"user",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"searchFilter",label:"Search Filter",type:"custom",dataType:"textarea",editable:!0}],customErrorLabels:{INVALID_CREDENTIALS:"Enter valid credentials and try again.",INVALID_ACCESS_PERMISSIONS:"You do not have permission to access the ZoomInfo data stream. Contact your account executive.",EMPTY_SEARCH_FILTER:"Enter a search filter.",OBJECT_NOT_SUPPORTED:"Object not supported",INVALID_SEARCH_CRITERIA:"Enter valid search criteria.",UNABLE_TO_PROCESS_SEARCH_FILTER:"Something went wrong with the search. Try again later.",UNABLE_TO_VERIFY_SEARCH_REQUEST:"Something went wrong with the search. Try again later.",UNABLE_TO_CHECK_USAGE_LIMITS:"Something went wrong. Try again later.",USAGE_LIMITS:"Usage Limit Reached. Contact your account executive to increase this limit.",UNABLE_TO_ACCESS_ZOOMINFO:"We could not access ZoomInfo. Try again later.",UNABLE_TO_CONNECT_ZOOMINFO:"We could not connect to ZoomInfo. Try again later.",UNABLE_TO_LOAD_DATA:"We could not load the data. Try again later.",UNABLE_TO_GET_RESPONSE:"We could not get a response. Check your connection and try again.",GENERIC_FAILURE:"Something went wrong. Try again later.",NO_RECORDS_FOUND:"Something went wrong. Try again later.",BULK_JOB_STUCK:"This job is still queued. Check back later..",INVALID_INPUT:"Enter valid input."}},{name:"Zuora",label:"Zuora",ingressDescription:"Ingest data from Zuora",iconUrl:"/icons/Zuora.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"},{name:"Tenant",label:"Tenant",type:"custom",dataType:"combobox",defaultValue:"USProduction",ingress:!0,egress:!0,editable:!0,required:!1,options:[{value:"USProduction",label:"US Production"},{value:"USAPISandbox",label:"US API Sandbox"},{value:"USPerformanceTest",label:"US Performance Test"},{value:"USCloudProduction",label:"US Cloud Production"},{value:"USCloudAPISandbox",label:"US Cloud API Sandbox"},{value:"USCentralSandbox",label:"US Central Sandbox"},{value:"EUProduction",label:"EU Production"},{value:"EUSandbox",label:"EU Sandbox"},{value:"EUCentralSandbox",label:"EU Central Sandbox"}]},{name:"URL",label:"URL",tooltip:"The URL of the US Production Copy environment",type:"custom",dataType:"text",ingress:!0,egress:!0,editable:!0,required:!1,pattern:"^https:\\/\\/[a-zA-Z0-9.-]+\\bzuora\\.com$"},{name:"ZuoraService",label:"Zuora Service",type:"custom",dataType:"combobox",defaultValue:"AQuADataExport",ingress:!0,egress:!0,editable:!0,required:!1,options:[{value:"DataQuery",label:"Data Query"},{value:"AQuADataExport",label:"AQuA Data Export"}]}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"act",label:"Act! CRM",ingressDescription:"Ingest data from Act! CRM",iconUrl:"/icons/act.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^https:\\/\\/api(us|uk|au|eu)\\.act\\.com$"},{name:"ActDatabase",label:"Database",type:"jdbcDatabase",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^[a-zA-Z0-9-_]+$",maxLength:100}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"eBay",label:"eBay",ingressDescription:"Ingest data from eBay",iconUrl:"/icons/eBay.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"SiteID",label:"SiteID",tooltip:'Set this to the eBay site ID. By default it is "0" (the U.S. site)',type:"custom",dataType:"text",secure:!1,defaultValue:"0",ingress:!0,editable:!0,required:!0},{name:"RuName",label:"RuName",tooltip:"Set this to the eBay Redirect URL used to sign-in",type:"custom",dataType:"text",secure:!1,ingress:!0,editable:!0,required:!0},{name:"UseSandbox",label:"Use Sandbox",tooltip:"Check this if you are using a Sandbox or developer test account.",type:"custom",dataType:"checkbox",defaultValue:"false",ingress:!0,egress:!0,editable:!0,required:!1},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"eBayAnalytics",label:"eBay Analytics",ingressDescription:"Ingest data from eBay Analytics",iconUrl:"/icons/eBayAnalytics.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"MarketplaceId",label:"Marketplace Id",tooltip:"The identification number for the eBay Marketplace. DEFAULT has no value assigned to it",type:"custom",dataType:"combobox",defaultValue:"DEFAULT",ingress:!0,egress:!0,editable:!0,required:!1,options:[{value:"DEFAULT",label:"DEFAULT"},{value:"EBAY_US",label:"EBAY_US"},{value:"EBAY_DE",label:"EBAY_DE"},{value:"EBAY_GB",label:"EBAY_GB"},{value:"EBAY_AU",label:"EBAY_AU"}]},{name:"RuName",label:"RuName",tooltip:"Set this to the eBay Redirect URL used to sign-in",type:"custom",dataType:"text",secure:!1,ingress:!0,editable:!0,required:!0},{name:"UseSandbox",label:"Use Sandbox",tooltip:"Check this if you are using a Sandbox or developer test account.",type:"custom",dataType:"checkbox",defaultValue:"false",ingress:!0,egress:!0,editable:!0,required:!1},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"hubspot",label:"HubSpot",ingressDescription:"Ingest data from Hubspot",iconUrl:"/icons/hubspot.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"privateAppTokenAuthentication",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"privateAppTokenAuthentication",label:"Private App Token",attributes:["OAuthAccessToken"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]}]},{name:"OAuthAccessToken",label:"Private Access Token",type:"custom",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,maxLength:127},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},{name:"servicenow",label:"ServiceNow",ingressDescription:"Ingest data from ServiceNow",iconUrl:"/icons/servicenow.svg",releaseLevel:"BETA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"connection_url",label:"URL",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"^(https:\\/\\/)?([a-z0-9-]{1,256}\\.service-now\\.com)$"},{name:"credentialType",label:"Authentication Method",type:"custom",dataType:"combobox",secure:!0,defaultValue:"Basic",ingress:!0,egress:!0,editable:!0,required:!0,options:[{value:"Basic",label:"Basic Authentication",attributes:["User","Password"]},{value:"namedCredentialAuthentication",label:"Named Credential",attributes:["namedCredential"]}]},{name:"User",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128},{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}],customErrorLabels:{INVALID_CONNECTION:"Could not connect to the URL provided",INVALID_CREDENTIALS:"User credentials are invalid"}},{name:"uEkWebsite",label:"Unstructured Web Content",ingressDescription:"Ingest publicly-available website content as data.",iconUrl:"/icons/uEkWebsite.svg",accessCheck:"CDP.isUnstructuredWebsiteConnectorEnabled",releaseLevel:"ACCESS_CHECK",features:["Ingress","Unstructured","ObjectBased"],connectionAttributes:[{name:"connection_url",label:"URL",tooltip:"The connector begins crawling your website starting at this URL.",type:"connectionUrl",dataType:"text",ingress:!0,editable:!0,required:!0,pattern:"(https?:\\/\\/(?:www\\.|(?!www))[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\\.[^\\s]{2,}|www\\.[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\\.[^\\s]{2,}|https?:\\/\\/(?:www\\.|(?!www))[a-zA-Z0-9]+\\.[^\\s]{2,}|www\\.[a-zA-Z0-9]+\\.[^\\s]{2,})"},{type:"custom",name:"userAgent",tooltip:"Customize the pre-filled default user agent string if your website requires it.",label:"User Agent Header",editable:!0,defaultValue:"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; SFbot/1.0; +http://www.salesforce.com/bot.html) Chrome/W.X.Y.Z Safari/537.36",dataType:"text",required:!1,ingress:!0},{name:"Username",label:"Username",placeholder:"Enter username...",type:"username",dataType:"text",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:100},{name:"Password",label:"Password",placeholder:"Enter password...",type:"password",dataType:"password",secure:!0,ingress:!0,editable:!0,required:!0,minLength:1,maxLength:128}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{type:"custom",name:"crawlDepth",label:"Crawl Depth",defaultValue:"1",dataType:"combobox",editable:!0,tooltip:"The number of levels that are included for ingestion, from the starting URL you provided. For example, if you enter your website's home page URL and set the crawl depth as 1, the home page and its immediate links are ingested. If the crawl depth is 2, then the home page, its linked pages, and the pages those pages link to are ingested.",required:!1,options:[{value:"0",label:"0"},{value:"1",label:"1"},{value:"2",label:"2"}]},{type:"custom",name:"selector",placeholder:"Enter a jQuery selector...",label:"Included Page Element",tooltip:"Enter a jQuery selector (e.g., body > div.content) to specify which HTML element to include in the ingestion. The first matching HTML element and its child elements are ingested. You can enter only one jQuery selector.",dataType:"text",editable:!0,required:!1},{type:"custom",name:"urlRegex",placeholder:"Enter a regular expression...",label:"Included Web Pages",tooltip:'Enter a regular expression that matches pages you want to include in the ingestion. For example, if you enter .*content.*, all pages under the starting URL with the string "content" in their URL path are included.',dataType:"text",editable:!0,required:!1}]}],ag=[{label:"Adobe Marketo",iconUrl:"/mulesoft/icons/AdobeMarketo.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Amazon DynamoDB",iconUrl:"/mulesoft/icons/AmazonDynamoDB.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Amazon EC2",iconUrl:"/mulesoft/icons/AmazonEC2.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Amazon Kinesis",iconUrl:"/mulesoft/icons/AmazonKinesis.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Amazon Lambda",iconUrl:"/mulesoft/icons/AmazonLambda.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Amazon RDS",iconUrl:"/mulesoft/icons/AmazonRDS.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Amazon Redshift",iconUrl:"/mulesoft/icons/AmazonRedshift.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Amazon S3",iconUrl:"/mulesoft/icons/AmazonS3.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Amazon SNS",iconUrl:"/mulesoft/icons/AmazonSNS.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Amazon SQS",iconUrl:"/mulesoft/icons/AmazonSQS.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"AMQP",iconUrl:"/mulesoft/icons/AMQP.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Anypoint Custom Metrics",iconUrl:"/mulesoft/icons/AnypointCustomMetrics.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Anypoint MQ",iconUrl:"/mulesoft/icons/AnypointMQ.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Apache Cassandra",iconUrl:"/mulesoft/icons/ApacheCassandra.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Apache Kafka",iconUrl:"/mulesoft/icons/ApacheKafka.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"AS2",iconUrl:"/mulesoft/icons/AS2.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Asana",iconUrl:"/mulesoft/icons/Asana.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Azure Cosmos DB",iconUrl:"/mulesoft/icons/AzureCosmosDB.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Azure Data Lake Storage",iconUrl:"/mulesoft/icons/AzureDataLakeStorage.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Azure Key Vault",iconUrl:"/mulesoft/icons/AzureKeyVault.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Azure Key Vault Properties Provider",iconUrl:"/mulesoft/icons/AzureKeyVaultPropertiesProvider.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Azure Service Bus",iconUrl:"/mulesoft/icons/AzureServiceBus.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Azure Service Bus Management",iconUrl:"/mulesoft/icons/AzureServiceBusManagement.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Box",iconUrl:"/mulesoft/icons/Box.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"BMC Remedy",iconUrl:"/mulesoft/icons/BMCRemedy.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"CAQH",iconUrl:"/mulesoft/icons/CAQH.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"CloudHub",iconUrl:"/mulesoft/icons/CloudHub.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Confluent Schema Registry",iconUrl:"/mulesoft/icons/ConfluentSchemaRegistry.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Database",iconUrl:"/mulesoft/icons/Database.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"DocuSign",iconUrl:"/mulesoft/icons/DocuSign.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Dropbox",iconUrl:"/mulesoft/icons/Dropbox.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"EDIFACT EDI",iconUrl:"/mulesoft/icons/EDIFACTEDI.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Email",iconUrl:"/mulesoft/icons/Email.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"File",iconUrl:"/mulesoft/icons/File.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"FTP",iconUrl:"/mulesoft/icons/FTP.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"FTPS",iconUrl:"/mulesoft/icons/FTPS.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Gmail",iconUrl:"/mulesoft/icons/Gmail.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Google BigQuery",iconUrl:"/mulesoft/icons/GoogleBigQuery.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Google Calendar",iconUrl:"/mulesoft/icons/GoogleCalendar.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Google Drive",iconUrl:"/mulesoft/icons/GoogleDrive.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Google Pub/Sub",iconUrl:"/mulesoft/icons/GooglePubSub.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Google Sheets",iconUrl:"/mulesoft/icons/GoogleSheets.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Hadoop (HDFS)",iconUrl:"/mulesoft/icons/Hadoop.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"HL7 EDI",iconUrl:"/mulesoft/icons/HL7EDI.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"HL7 MLLP",iconUrl:"/mulesoft/icons/HL7MLLP.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"HTTP",iconUrl:"/mulesoft/icons/HTTP.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"IBM CTG",iconUrl:"/mulesoft/icons/IBMCTG.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"IBM MQ",iconUrl:"/mulesoft/icons/IBMMQ.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Intercom",iconUrl:"/mulesoft/icons/Intercom.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Jira",iconUrl:"/mulesoft/icons/Jira.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"JMS",iconUrl:"/mulesoft/icons/JMS.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"LDAP",iconUrl:"/mulesoft/icons/LDAP.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Mailchimp Marketing",iconUrl:"/mulesoft/icons/MailchimpMarketing.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft .NET",iconUrl:"/mulesoft/icons/MicrosoftDotNET.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft Dynamics 365 Business Central",iconUrl:"/mulesoft/icons/MicrosoftDynamics365BusinessCentral.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft Dynamics 365",iconUrl:"/mulesoft/icons/MicrosoftDynamics365.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft Dynamics 365 For Finance and Operations",iconUrl:"/mulesoft/icons/MicrosoftDynamics365FinanceOperations.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft Dynamics AX 2012",iconUrl:"/mulesoft/icons/MicrosoftDynamicsAX2012.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft Dynamics CRM",iconUrl:"/mulesoft/icons/MicrosoftDynamicsCRM.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft Dynamics GP",iconUrl:"/mulesoft/icons/MicrosoftDynamicsGP.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft Dynamics NAV",iconUrl:"/mulesoft/icons/MicrosoftDynamicsNAV.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft Excel Online",iconUrl:"/mulesoft/icons/MicrosoftExcelOnline.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft MSMQ",iconUrl:"/mulesoft/icons/MicrosoftMSMQ.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft OneDrive",iconUrl:"/mulesoft/icons/MicrosoftOneDrive.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft Outlook 365",iconUrl:"/mulesoft/icons/MicrosoftOutlook365.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft Power BI",iconUrl:"/mulesoft/icons/MicrosoftPowerBI.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft Service Bus",iconUrl:"/mulesoft/icons/MicrosoftServiceBus.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft SharePoint",iconUrl:"/mulesoft/icons/MicrosoftSharePoint.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft Teams",iconUrl:"/mulesoft/icons/MicrosoftTeams.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Microsoft Windows PowerShell",iconUrl:"/mulesoft/icons/MicrosoftWindowsPowerShell.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"MongoDB",iconUrl:"/mulesoft/icons/MongoDB.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"MQTT",iconUrl:"/mulesoft/icons/MQTT.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Neo4j",iconUrl:"/mulesoft/icons/Neo4j.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"NetSuite",iconUrl:"/mulesoft/icons/NetSuite.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"NetSuite OpenAir",iconUrl:"/mulesoft/icons/NetSuiteOpenAi.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"NetSuite Restlet",iconUrl:"/mulesoft/icons/NetSuiteRestlet.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Object Store",iconUrl:"/mulesoft/icons/ObjectStore.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Oracle EBS 12.1",iconUrl:"/mulesoft/icons/OracleEBS121.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Oracle EBS 12.2",iconUrl:"/mulesoft/icons/OracleEBS122.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Oracle PeopleSoft",iconUrl:"/mulesoft/icons/OraclePeopleSoft.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Oracle Siebel",iconUrl:"/mulesoft/icons/OracleSiebel.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"QuickBooks Online",iconUrl:"/mulesoft/icons/QuickBooksOnline.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Redis",iconUrl:"/mulesoft/icons/Redis.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Roostify",iconUrl:"/mulesoft/icons/Roostify.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"RosettaNet",iconUrl:"/mulesoft/icons/RosettaNet.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Salesforce CDP",iconUrl:"/mulesoft/icons/SalesforceCDP.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Salesforce Commerce Cloud B2C Data",iconUrl:"/mulesoft/icons/SalesforceCommerceCloudB2CData.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Salesforce Commerce Cloud B2C Shop API",iconUrl:"/mulesoft/icons/SalesforceCommerceCloudB2CShopAPI.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Salesforce Composite",iconUrl:"/mulesoft/icons/SalesforceComposite.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Salesforce",iconUrl:"/mulesoft/icons/Salesforce.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Salesforce Einstein Analytics",iconUrl:"/mulesoft/icons/SalesforceEinsteinAnalytics.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Salesforce Marketing Cloud",iconUrl:"/mulesoft/icons/SalesforceMarketingCloud.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Salesforce Marketing Cloud REST",iconUrl:"/mulesoft/icons/SalesforceMarketingCloudREST.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Salesforce Pub/Sub",iconUrl:"/mulesoft/icons/SalesforcePubSub.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"SAP Concur",iconUrl:"/mulesoft/icons/SAPConcur.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"SAP",iconUrl:"/mulesoft/icons/SAP.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"SAP S/4HANA OData",iconUrl:"/mulesoft/icons/SAPS4HANAOData.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"SAP S/4HANA SOAP",iconUrl:"/mulesoft/icons/SAPS4HANASOAP.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"SAP SuccessFactors",iconUrl:"/mulesoft/icons/SAPSuccessFactors.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"ServiceNow",iconUrl:"/mulesoft/icons/ServiceNow.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"SFTP",iconUrl:"/mulesoft/icons/SFTP.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Shopify",iconUrl:"/mulesoft/icons/Shopify.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Slack",iconUrl:"/mulesoft/icons/Slack.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Smartsheet",iconUrl:"/mulesoft/icons/Smartsheet.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Snowflake",iconUrl:"/mulesoft/icons/Snowflake.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Sockets",iconUrl:"/mulesoft/icons/Sockets.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Stripe",iconUrl:"/mulesoft/icons/Stripe.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Tableau",iconUrl:"/mulesoft/icons/Tableau.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"TRADACOMS EDI",iconUrl:"/mulesoft/icons/TRADACOMSEDI.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Trello",iconUrl:"/mulesoft/icons/Trello.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Twilio",iconUrl:"/mulesoft/icons/Twilio.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Validation Module",iconUrl:"/mulesoft/icons/ValidationModule.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Veeva Vault",iconUrl:"/mulesoft/icons/VeevaVault.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"VM",iconUrl:"/mulesoft/icons/VM.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Web Service Consumer",iconUrl:"/mulesoft/icons/WebServiceConsumer.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"WebSockets",iconUrl:"/mulesoft/icons/WebSockets.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Workday",iconUrl:"/mulesoft/icons/Workday.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"X12 EDI",iconUrl:"/mulesoft/icons/X12EDI.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Xero Accounting",iconUrl:"/mulesoft/icons/XeroAccounting.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Zendesk",iconUrl:"/mulesoft/icons/Zendesk.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Zoom",iconUrl:"/mulesoft/icons/Zoom.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Zuora AQuA",iconUrl:"/mulesoft/icons/Zuora.svg",releaseLevel:"MuleSoft",ingressDescription:""},{label:"Zuora",iconUrl:"/mulesoft/icons/ZuoraAQuA.svg",releaseLevel:"MuleSoft",ingressDescription:""}],ng={name:"Dbeaver Corporation",label:"Dbeaver Corporation",ingressDescription:"Data Management Tool **",iconUrl:"/icons/dbeaver.png",releaseLevel:"GA",features:["Ingress","ObjectBased","IncrementalUpdate","Batch"],featuresConfig:{IncrementalUpdate:{deleteSupport:"true"}},connectionAttributes:[{name:"namedCredential",label:"Named Credential",type:"namedCredential",dataType:"namedcredential",secure:!0,ingress:!0,editable:!0,required:!0},{name:"SSLServerCert",label:"SSL Server Certificate",type:"sslServerCert",dataType:"passwordfile",secure:!0,ingress:!0,editable:!0,pattern:"^(\\-{5}BEGIN[A-Z\\s]+\\-{5}(\\n|\\r|\\r\\n)?)([0-9a-zA-Z\\+\\/=]+(\\n|\\r|\\r\\n)?)+(\\-{5}END[A-Z\\s]+\\-{5})|([0-9A-Z]{2}\\:)+([0-9A-Z]{2})$"},{name:"UseUAT",label:"Use UAT",tooltip:"To connect to a ADP UAT account",type:"custom",dataType:"checkbox",defaultValue:"false",ingress:!0,egress:!0,editable:!0,required:!1}],extractAttributes:[{name:"objectName",label:"Object Name",type:"objectBasedObjectName",dataType:"text",readonly:!0,required:!0},{name:"incrementalColumn",label:"Incremental Column",type:"objectBasedIncrementalColumn",dataType:"text",editable:!0,required:!0},{name:"deleteColumn",label:"Delete Column",type:"objectBasedDeleteColumn",dataType:"text",editable:!0},{name:"FILTER",label:"Filter",type:"jdbcFilter",dataType:"text",editable:!0}]},Pm=w.createContext({});function sg(e){const t=w.useRef(null);return t.current===null&&(t.current=e()),t.current}const so=w.createContext(null),Um=w.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});function lg(e=!0){const t=w.useContext(so);if(t===null)return[!0,null];const{isPresent:r,onExitComplete:a,register:n}=t,s=w.useId();w.useEffect(()=>{e&&n(s)},[e]);const l=w.useCallback(()=>e&&a&&a(s),[s,a,e]);return!r&&a?[!1,l]:[!0]}const lo=typeof window!="undefined",ig=lo?w.useLayoutEffect:w.useEffect,ke=e=>e;let Om=ke;function io(e){let t;return()=>(t===void 0&&(t=e()),t)}const $r=(e,t,r)=>{const a=t-e;return a===0?1:(r-e)/a},vt=e=>e*1e3,At=e=>e/1e3,og={useManualTiming:!1};function ug(e){let t=new Set,r=new Set,a=!1,n=!1;const s=new WeakSet;let l={delta:0,timestamp:0,isProcessing:!1};function i(u){s.has(u)&&(o.schedule(u),e()),u(l)}const o={schedule:(u,d=!1,c=!1)=>{const b=c&&a?t:r;return d&&s.add(u),b.has(u)||b.add(u),u},cancel:u=>{r.delete(u),s.delete(u)},process:u=>{if(l=u,a){n=!0;return}a=!0,[t,r]=[r,t],t.forEach(i),t.clear(),a=!1,n&&(n=!1,o.process(u))}};return o}const xs=["read","resolveKeyframes","update","preRender","render","postRender"],dg=40;function km(e,t){let r=!1,a=!0;const n={delta:0,timestamp:0,isProcessing:!1},s=()=>r=!0,l=xs.reduce((f,p)=>(f[p]=ug(s),f),{}),{read:i,resolveKeyframes:o,update:u,preRender:d,render:c,postRender:m}=l,b=()=>{const f=performance.now();r=!1,n.delta=a?1e3/60:Math.max(Math.min(f-n.timestamp,dg),1),n.timestamp=f,n.isProcessing=!0,i.process(n),o.process(n),u.process(n),d.process(n),c.process(n),m.process(n),n.isProcessing=!1,r&&t&&(a=!1,e(b))},h=()=>{r=!0,a=!0,n.isProcessing||e(b)};return{schedule:xs.reduce((f,p)=>{const y=l[p];return f[p]=(v,A=!1,x=!1)=>(r||h(),y.schedule(v,A,x)),f},{}),cancel:f=>{for(let p=0;pqm[e].some(r=>!!t[r])};function cg(e){for(const t in e)Gr[t]=I(I({},Gr[t]),e[t])}const mg=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function Is(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||mg.has(e)}let Mm=e=>!Is(e);function pg(e){e&&(Mm=t=>t.startsWith("on")?!Is(t):e(t))}try{pg(require("@emotion/is-prop-valid").default)}catch(e){}function fg(e,t,r){const a={};for(const n in e)n==="values"&&typeof e.values=="object"||(Mm(n)||r===!0&&Is(n)||!t&&!Is(n)||e.draggable&&n.startsWith("onDrag"))&&(a[n]=e[n]);return a}function yg(e){if(typeof Proxy=="undefined")return e;const t=new Map,r=(...a)=>e(...a);return new Proxy(r,{get:(a,n)=>n==="create"?e:(t.has(n)||t.set(n,e(n)),t.get(n))})}const Ls=w.createContext({});function Za(e){return typeof e=="string"||Array.isArray(e)}function Ds(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}const uo=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],co=["initial",...uo];function Es(e){return Ds(e.animate)||co.some(t=>Za(e[t]))}function zm(e){return!!(Es(e)||e.variants)}function bg(e,t){if(Es(e)){const{initial:r,animate:a}=e;return{initial:r===!1||Za(r)?r:void 0,animate:Za(a)?a:void 0}}return e.inherit!==!1?t:{}}function hg(e){const{initial:t,animate:r}=bg(e,w.useContext(Ls));return w.useMemo(()=>({initial:t,animate:r}),[Fm(t),Fm(r)])}function Fm(e){return Array.isArray(e)?e.join(" "):e}const gg=Symbol.for("motionComponentSymbol");function Wr(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function vg(e,t,r){return w.useCallback(a=>{a&&e.onMount&&e.onMount(a),t&&(a?t.mount(a):t.unmount()),r&&(typeof r=="function"?r(a):Wr(r)&&(r.current=a))},[t])}const mo=e=>e.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),_m="data-"+mo("framerAppearId"),{schedule:po}=km(queueMicrotask,!1),Vm=w.createContext({});function Ag(e,t,r,a,n){var s,l;const{visualElement:i}=w.useContext(Ls),o=w.useContext(Rm),u=w.useContext(so),d=w.useContext(Um).reducedMotion,c=w.useRef(null);a=a||o.renderer,!c.current&&a&&(c.current=a(e,{visualState:t,parent:i,props:r,presenceContext:u,blockInitialAnimation:u?u.initial===!1:!1,reducedMotionConfig:d}));const m=c.current,b=w.useContext(Vm);m&&!m.projection&&n&&(m.type==="html"||m.type==="svg")&&Tg(c.current,r,n,b);const h=w.useRef(!1);w.useInsertionEffect(()=>{m&&h.current&&m.update(r,u)});const g=r[_m],T=w.useRef(!!g&&!(!((s=window.MotionHandoffIsComplete)===null||s===void 0)&&s.call(window,g))&&((l=window.MotionHasOptimisedAnimation)===null||l===void 0?void 0:l.call(window,g)));return ig(()=>{m&&(h.current=!0,window.MotionIsMounted=!0,m.updateFeatures(),po.render(m.render),T.current&&m.animationState&&m.animationState.animateChanges())}),w.useEffect(()=>{m&&(!T.current&&m.animationState&&m.animationState.animateChanges(),T.current&&(queueMicrotask(()=>{var f;(f=window.MotionHandoffMarkAsComplete)===null||f===void 0||f.call(window,g)}),T.current=!1))}),m}function Tg(e,t,r,a){const{layoutId:n,layout:s,drag:l,dragConstraints:i,layoutScroll:o,layoutRoot:u}=t;e.projection=new r(e.latestValues,t["data-framer-portal-id"]?void 0:Zm(e.parent)),e.projection.setOptions({layoutId:n,layout:s,alwaysMeasureLayout:!!l||i&&Wr(i),visualElement:e,animationType:typeof s=="string"?s:"both",initialPromotionConfig:a,layoutScroll:o,layoutRoot:u})}function Zm(e){if(e)return e.options.allowProjection!==!1?e.projection:Zm(e.parent)}function Cg({preloadedFeatures:e,createVisualElement:t,useRender:r,useVisualState:a,Component:n}){var s,l;e&&cg(e);function i(u,d){let c;const m=k(I(I({},w.useContext(Um)),u),{layoutId:Sg(u)}),{isStatic:b}=m,h=hg(u),g=a(u,b);if(!b&&lo){xg();const T=Ig(m);c=T.MeasureLayout,h.visualElement=Ag(n,g,m,t,T.ProjectionNode)}return R.jsxs(Ls.Provider,{value:h,children:[c&&h.visualElement?R.jsx(c,I({visualElement:h.visualElement},m)):null,r(n,u,vg(g,h.visualElement,d),g,b,h.visualElement)]})}i.displayName=`motion.${typeof n=="string"?n:`create(${(l=(s=n.displayName)!==null&&s!==void 0?s:n.name)!==null&&l!==void 0?l:""})`}`;const o=w.forwardRef(i);return o[gg]=n,o}function Sg({layoutId:e}){const t=w.useContext(Pm).id;return t&&e!==void 0?t+"-"+e:e}function xg(e,t){w.useContext(Rm).strict}function Ig(e){const{drag:t,layout:r}=Gr;if(!t&&!r)return{};const a=I(I({},t),r);return{MeasureLayout:t!=null&&t.isEnabled(e)||r!=null&&r.isEnabled(e)?a.MeasureLayout:void 0,ProjectionNode:a.ProjectionNode}}const Lg=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function fo(e){return typeof e!="string"||e.includes("-")?!1:!!(Lg.indexOf(e)>-1||/[A-Z]/u.test(e))}function $m(e){const t=[{},{}];return e==null||e.values.forEach((r,a)=>{t[0][a]=r.get(),t[1][a]=r.getVelocity()}),t}function yo(e,t,r,a){if(typeof t=="function"){const[n,s]=$m(a);t=t(r!==void 0?r:e.custom,n,s)}if(typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"){const[n,s]=$m(a);t=t(r!==void 0?r:e.custom,n,s)}return t}const bo=e=>Array.isArray(e),Dg=e=>!!(e&&typeof e=="object"&&e.mix&&e.toValue),Eg=e=>bo(e)?e[e.length-1]||0:e,ve=e=>!!(e&&e.getVelocity);function ws(e){const t=ve(e)?e.get():e;return Dg(t)?t.toValue():t}function wg({scrapeMotionValuesFromProps:e,createRenderState:t,onUpdate:r},a,n,s){const l={latestValues:Ng(a,n,s,e),renderState:t()};return r&&(l.onMount=i=>r(I({props:a,current:i},l)),l.onUpdate=i=>r(i)),l}const Gm=e=>(t,r)=>{const a=w.useContext(Ls),n=w.useContext(so),s=()=>wg(e,t,a,n);return r?s():sg(s)};function Ng(e,t,r,a){const n={},s=a(e,{});for(const b in s)n[b]=ws(s[b]);let{initial:l,animate:i}=e;const o=Es(e),u=zm(e);t&&u&&!o&&e.inherit!==!1&&(l===void 0&&(l=t.initial),i===void 0&&(i=t.animate));let d=r?r.initial===!1:!1;d=d||l===!1;const c=d?i:l;if(c&&typeof c!="boolean"&&!Ds(c)){const b=Array.isArray(c)?c:[c];for(let h=0;ht=>typeof t=="string"&&t.startsWith(e),Hm=Wm("--"),jg=Wm("var(--"),ho=e=>jg(e)?Bg.test(e.split("/*")[0].trim()):!1,Bg=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,Km=(e,t)=>t&&typeof e=="number"?t.transform(e):e,Tt=(e,t,r)=>r>t?t:rtypeof e=="number",parse:parseFloat,transform:e=>e},$a=k(I({},Kr),{transform:e=>Tt(0,1,e)}),Ns=k(I({},Kr),{default:1}),Ga=e=>({test:t=>typeof t=="string"&&t.endsWith(e)&&t.split(" ").length===1,parse:parseFloat,transform:t=>`${t}${e}`}),Vt=Ga("deg"),it=Ga("%"),N=Ga("px"),Pg=Ga("vh"),Ug=Ga("vw"),Qm=k(I({},it),{parse:e=>it.parse(e)/100,transform:e=>it.transform(e*100)}),Og={borderWidth:N,borderTopWidth:N,borderRightWidth:N,borderBottomWidth:N,borderLeftWidth:N,borderRadius:N,radius:N,borderTopLeftRadius:N,borderTopRightRadius:N,borderBottomRightRadius:N,borderBottomLeftRadius:N,width:N,maxWidth:N,height:N,maxHeight:N,top:N,right:N,bottom:N,left:N,padding:N,paddingTop:N,paddingRight:N,paddingBottom:N,paddingLeft:N,margin:N,marginTop:N,marginRight:N,marginBottom:N,marginLeft:N,backgroundPositionX:N,backgroundPositionY:N},kg={rotate:Vt,rotateX:Vt,rotateY:Vt,rotateZ:Vt,scale:Ns,scaleX:Ns,scaleY:Ns,scaleZ:Ns,skew:Vt,skewX:Vt,skewY:Vt,distance:N,translateX:N,translateY:N,translateZ:N,x:N,y:N,z:N,perspective:N,transformPerspective:N,opacity:$a,originX:Qm,originY:Qm,originZ:N},Ym=k(I({},Kr),{transform:Math.round}),go=k(I(I({},Og),kg),{zIndex:Ym,size:N,fillOpacity:$a,strokeOpacity:$a,numOctaves:Ym}),Rg={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},qg=Hr.length;function Mg(e,t,r){let a="",n=!0;for(let s=0;s({style:{},transform:{},transformOrigin:{},vars:{}}),Jm=()=>k(I({},To()),{attrs:{}}),Co=e=>typeof e=="string"&&e.toLowerCase()==="svg";function ep(e,{style:t,vars:r},a,n){Object.assign(e.style,t,n&&n.getProjectionStyles(a));for(const s in r)e.style.setProperty(s,r[s])}const tp=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]);function rp(e,t,r,a){ep(e,t,void 0,a);for(const n in t.attrs)e.setAttribute(tp.has(n)?n:mo(n),t.attrs[n])}const js={};function Zg(e){Object.assign(js,e)}function ap(e,{layout:t,layoutId:r}){return ir.has(e)||e.startsWith("origin")||(t||r!==void 0)&&(!!js[e]||e==="opacity")}function So(e,t,r){var a;const{style:n}=e,s={};for(const l in n)(ve(n[l])||t.style&&ve(t.style[l])||ap(l,e)||((a=r==null?void 0:r.getValue(l))===null||a===void 0?void 0:a.liveStyle)!==void 0)&&(s[l]=n[l]);return s}function np(e,t,r){const a=So(e,t,r);for(const n in e)if(ve(e[n])||ve(t[n])){const s=Hr.indexOf(n)!==-1?"attr"+n.charAt(0).toUpperCase()+n.substring(1):n;a[s]=e[n]}return a}function $g(e,t){try{t.dimensions=typeof e.getBBox=="function"?e.getBBox():e.getBoundingClientRect()}catch(r){t.dimensions={x:0,y:0,width:0,height:0}}}const sp=["x","y","width","height","cx","cy","r"],Gg={useVisualState:Gm({scrapeMotionValuesFromProps:np,createRenderState:Jm,onUpdate:({props:e,prevProps:t,current:r,renderState:a,latestValues:n})=>{if(!r)return;let s=!!e.drag;if(!s){for(const i in n)if(ir.has(i)){s=!0;break}}if(!s)return;let l=!t;if(t)for(let i=0;i{$g(r,a),V.render(()=>{Ao(a,n,Co(r.tagName),e.transformTemplate),rp(r,a)})})}})},Wg={useVisualState:Gm({scrapeMotionValuesFromProps:So,createRenderState:To})};function lp(e,t,r){for(const a in t)!ve(t[a])&&!ap(a,r)&&(e[a]=t[a])}function Hg({transformTemplate:e},t){return w.useMemo(()=>{const r=To();return vo(r,t,e),Object.assign({},r.vars,r.style)},[t])}function Kg(e,t){const r=e.style||{},a={};return lp(a,r,e),Object.assign(a,Hg(e,t)),a}function Qg(e,t){const r={},a=Kg(e,t);return e.drag&&e.dragListener!==!1&&(r.draggable=!1,a.userSelect=a.WebkitUserSelect=a.WebkitTouchCallout="none",a.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(r.tabIndex=0),r.style=a,r}function Yg(e,t,r,a){const n=w.useMemo(()=>{const s=Jm();return Ao(s,t,Co(a),e.transformTemplate),k(I({},s.attrs),{style:I({},s.style)})},[t]);if(e.style){const s={};lp(s,e.style,e),n.style=I(I({},s),n.style)}return n}function Xg(e=!1){return(r,a,n,{latestValues:s},l)=>{const o=(fo(r)?Yg:Qg)(a,s,l,r),u=fg(a,typeof r=="string",e),d=r!==w.Fragment?k(I(I({},u),o),{ref:n}):{},{children:c}=a,m=w.useMemo(()=>ve(c)?c.get():c,[c]);return w.createElement(r,k(I({},d),{children:m}))}}function Jg(e,t){return function(a,{forwardMotionProps:n}={forwardMotionProps:!1}){const s=fo(a)?Gg:Wg,l=k(I({},s),{preloadedFeatures:e,useRender:Xg(n),createVisualElement:t,Component:a});return Cg(l)}}function ip(e,t){if(!Array.isArray(t))return!1;const r=t.length;if(r!==e.length)return!1;for(let a=0;awindow.ScrollTimeline!==void 0);class tv{constructor(t){this.stop=()=>this.runAll("stop"),this.animations=t.filter(Boolean)}get finished(){return Promise.all(this.animations.map(t=>"finished"in t?t.finished:t))}getAll(t){return this.animations[0][t]}setAll(t,r){for(let a=0;a{if(ev()&&n.attachTimeline)return n.attachTimeline(t);if(typeof r=="function")return r(n)});return()=>{a.forEach((n,s)=>{n&&n(),this.animations[s].stop()})}}get time(){return this.getAll("time")}set time(t){this.setAll("time",t)}get speed(){return this.getAll("speed")}set speed(t){this.setAll("speed",t)}get startTime(){return this.getAll("startTime")}get duration(){let t=0;for(let r=0;rr[t]())}flatten(){this.runAll("flatten")}play(){this.runAll("play")}pause(){this.runAll("pause")}cancel(){this.runAll("cancel")}complete(){this.runAll("complete")}}class rv extends tv{then(t,r){return Promise.all(this.animations).then(t).catch(r)}}function xo(e,t){return e?e[t]||e.default||e:void 0}const Io=2e4;function op(e){let t=0;const r=50;let a=e.next(t);for(;!a.done&&t=Io?1/0:t}function Lo(e){return typeof e=="function"}function up(e,t){e.timeline=t,e.onfinish=null}const Do=e=>Array.isArray(e)&&typeof e[0]=="number",av={linearEasing:void 0};function nv(e,t){const r=io(e);return()=>{var a;return(a=av[t])!==null&&a!==void 0?a:r()}}const Ps=nv(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch(e){return!1}return!0},"linearEasing"),dp=(e,t,r=10)=>{let a="";const n=Math.max(Math.round(t/r),2);for(let s=0;s`cubic-bezier(${e}, ${t}, ${r}, ${a})`,Eo={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:Wa([0,.65,.55,1]),circOut:Wa([.55,0,1,.45]),backIn:Wa([.31,.01,.66,-.59]),backOut:Wa([.33,1.53,.69,.99])};function mp(e,t){if(e)return typeof e=="function"&&Ps()?dp(e,t):Do(e)?Wa(e):Array.isArray(e)?e.map(r=>mp(r,t)||Eo.easeOut):Eo[e]}const tt={x:!1,y:!1};function pp(){return tt.x||tt.y}function sv(e,t,r){var a;if(e instanceof Element)return[e];if(typeof e=="string"){let n=document;const s=(a=void 0)!==null&&a!==void 0?a:n.querySelectorAll(e);return s?Array.from(s):[]}return Array.from(e)}function fp(e,t){const r=sv(e),a=new AbortController,n=k(I({passive:!0},t),{signal:a.signal});return[r,n,()=>a.abort()]}function yp(e){return t=>{t.pointerType==="touch"||pp()||e(t)}}function lv(e,t,r={}){const[a,n,s]=fp(e,r),l=yp(i=>{const{target:o}=i,u=t(i);if(typeof u!="function"||!o)return;const d=yp(c=>{u(c),o.removeEventListener("pointerleave",d)});o.addEventListener("pointerleave",d,n)});return a.forEach(i=>{i.addEventListener("pointerenter",l,n)}),s}const bp=(e,t)=>t?e===t?!0:bp(e,t.parentElement):!1,wo=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,iv=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function ov(e){return iv.has(e.tagName)||e.tabIndex!==-1}const Ha=new WeakSet;function hp(e){return t=>{t.key==="Enter"&&e(t)}}function No(e,t){e.dispatchEvent(new PointerEvent("pointer"+t,{isPrimary:!0,bubbles:!0}))}const uv=(e,t)=>{const r=e.currentTarget;if(!r)return;const a=hp(()=>{if(Ha.has(r))return;No(r,"down");const n=hp(()=>{No(r,"up")}),s=()=>No(r,"cancel");r.addEventListener("keyup",n,t),r.addEventListener("blur",s,t)});r.addEventListener("keydown",a,t),r.addEventListener("blur",()=>r.removeEventListener("keydown",a),t)};function gp(e){return wo(e)&&!pp()}function dv(e,t,r={}){const[a,n,s]=fp(e,r),l=i=>{const o=i.currentTarget;if(!gp(i)||Ha.has(o))return;Ha.add(o);const u=t(i),d=(b,h)=>{window.removeEventListener("pointerup",c),window.removeEventListener("pointercancel",m),!(!gp(b)||!Ha.has(o))&&(Ha.delete(o),typeof u=="function"&&u(b,{success:h}))},c=b=>{d(b,r.useGlobalTarget||bp(o,b.target))},m=b=>{d(b,!1)};window.addEventListener("pointerup",c,n),window.addEventListener("pointercancel",m,n)};return a.forEach(i=>{!ov(i)&&i.getAttribute("tabindex")===null&&(i.tabIndex=0),(r.useGlobalTarget?window:i).addEventListener("pointerdown",l,n),i.addEventListener("focus",u=>uv(u,n),n)}),s}function cv(e){return e==="x"||e==="y"?tt[e]?null:(tt[e]=!0,()=>{tt[e]=!1}):tt.x||tt.y?null:(tt.x=tt.y=!0,()=>{tt.x=tt.y=!1})}const vp=new Set(["width","height","top","left","right","bottom",...Hr]);let Us;function mv(){Us=void 0}const ot={now:()=>(Us===void 0&&ot.set(fe.isProcessing||og.useManualTiming?fe.timestamp:performance.now()),Us),set:e=>{Us=e,queueMicrotask(mv)}};function jo(e,t){e.indexOf(t)===-1&&e.push(t)}function Bo(e,t){const r=e.indexOf(t);r>-1&&e.splice(r,1)}class Po{constructor(){this.subscriptions=[]}add(t){return jo(this.subscriptions,t),()=>Bo(this.subscriptions,t)}notify(t,r,a){const n=this.subscriptions.length;if(n)if(n===1)this.subscriptions[0](t,r,a);else for(let s=0;s!isNaN(parseFloat(e));class fv{constructor(t,r={}){this.version="11.18.2",this.canTrackVelocity=null,this.events={},this.updateAndNotify=(a,n=!0)=>{const s=ot.now();this.updatedAt!==s&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(a),this.current!==this.prev&&this.events.change&&this.events.change.notify(this.current),n&&this.events.renderRequest&&this.events.renderRequest.notify(this.current)},this.hasAnimated=!1,this.setCurrent(t),this.owner=r.owner}setCurrent(t){this.current=t,this.updatedAt=ot.now(),this.canTrackVelocity===null&&t!==void 0&&(this.canTrackVelocity=pv(this.current))}setPrevFrameValue(t=this.current){this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt}onChange(t){return this.on("change",t)}on(t,r){this.events[t]||(this.events[t]=new Po);const a=this.events[t].add(r);return t==="change"?()=>{a(),V.read(()=>{this.events.change.getSize()||this.stop()})}:a}clearListeners(){for(const t in this.events)this.events[t].clear()}attach(t,r){this.passiveEffect=t,this.stopPassiveEffect=r}set(t,r=!0){!r||!this.passiveEffect?this.updateAndNotify(t,r):this.passiveEffect(t,this.updateAndNotify)}setWithVelocity(t,r,a){this.set(r),this.prev=void 0,this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt-a}jump(t,r=!0){this.updateAndNotify(t),this.prev=t,this.prevUpdatedAt=this.prevFrameValue=void 0,r&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const t=ot.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||t-this.updatedAt>Tp)return 0;const r=Math.min(this.updatedAt-this.prevUpdatedAt,Tp);return Ap(parseFloat(this.current)-parseFloat(this.prevFrameValue),r)}start(t){return this.stop(),new Promise(r=>{this.hasAnimated=!0,this.animation=t(r),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function Ka(e,t){return new fv(e,t)}function yv(e,t,r){e.hasValue(t)?e.getValue(t).set(r):e.addValue(t,Ka(r))}function bv(e,t){let l=Bs(e,t)||{},{transitionEnd:a={},transition:n={}}=l,s=We(l,["transitionEnd","transition"]);s=I(I({},s),a);for(const i in s){const o=Eg(s[i]);yv(e,i,o)}}function hv(e){return!!(ve(e)&&e.add)}function Uo(e,t){const r=e.getValue("willChange");if(hv(r))return r.add(t)}function Cp(e){return e.props[_m]}const Sp=(e,t,r)=>(((1-3*r+3*t)*e+(3*r-6*t))*e+3*t)*e,gv=1e-7,vv=12;function Av(e,t,r,a,n){let s,l,i=0;do l=t+(r-t)/2,s=Sp(l,a,n)-e,s>0?r=l:t=l;while(Math.abs(s)>gv&&++iAv(s,0,1,e,r);return s=>s===0||s===1?s:Sp(n(s),t,a)}const xp=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,Ip=e=>t=>1-e(1-t),Lp=Qa(.33,1.53,.69,.99),Oo=Ip(Lp),Dp=xp(Oo),Ep=e=>(e*=2)<1?.5*Oo(e):.5*(2-Math.pow(2,-10*(e-1))),ko=e=>1-Math.sin(Math.acos(e)),wp=Ip(ko),Np=xp(ko),jp=e=>/^0[^.\s]+$/u.test(e);function Tv(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||jp(e):!0}const Ya=e=>Math.round(e*1e5)/1e5,Ro=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function Cv(e){return e==null}const Sv=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,qo=(e,t)=>r=>!!(typeof r=="string"&&Sv.test(r)&&r.startsWith(e)||t&&!Cv(r)&&Object.prototype.hasOwnProperty.call(r,t)),Bp=(e,t,r)=>a=>{if(typeof a!="string")return a;const[n,s,l,i]=a.match(Ro);return{[e]:parseFloat(n),[t]:parseFloat(s),[r]:parseFloat(l),alpha:i!==void 0?parseFloat(i):1}},xv=e=>Tt(0,255,e),Mo=k(I({},Kr),{transform:e=>Math.round(xv(e))}),or={test:qo("rgb","red"),parse:Bp("red","green","blue"),transform:({red:e,green:t,blue:r,alpha:a=1})=>"rgba("+Mo.transform(e)+", "+Mo.transform(t)+", "+Mo.transform(r)+", "+Ya($a.transform(a))+")"};function Iv(e){let t="",r="",a="",n="";return e.length>5?(t=e.substring(1,3),r=e.substring(3,5),a=e.substring(5,7),n=e.substring(7,9)):(t=e.substring(1,2),r=e.substring(2,3),a=e.substring(3,4),n=e.substring(4,5),t+=t,r+=r,a+=a,n+=n),{red:parseInt(t,16),green:parseInt(r,16),blue:parseInt(a,16),alpha:n?parseInt(n,16)/255:1}}const zo={test:qo("#"),parse:Iv,transform:or.transform},Qr={test:qo("hsl","hue"),parse:Bp("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:r,alpha:a=1})=>"hsla("+Math.round(e)+", "+it.transform(Ya(t))+", "+it.transform(Ya(r))+", "+Ya($a.transform(a))+")"},Ae={test:e=>or.test(e)||zo.test(e)||Qr.test(e),parse:e=>or.test(e)?or.parse(e):Qr.test(e)?Qr.parse(e):zo.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?or.transform(e):Qr.transform(e)},Lv=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function Dv(e){var t,r;return isNaN(e)&&typeof e=="string"&&(((t=e.match(Ro))===null||t===void 0?void 0:t.length)||0)+(((r=e.match(Lv))===null||r===void 0?void 0:r.length)||0)>0}const Pp="number",Up="color",Ev="var",wv="var(",Op="${}",Nv=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function Xa(e){const t=e.toString(),r=[],a={color:[],number:[],var:[]},n=[];let s=0;const i=t.replace(Nv,o=>(Ae.test(o)?(a.color.push(s),n.push(Up),r.push(Ae.parse(o))):o.startsWith(wv)?(a.var.push(s),n.push(Ev),r.push(o)):(a.number.push(s),n.push(Pp),r.push(parseFloat(o))),++s,Op)).split(Op);return{values:r,split:i,indexes:a,types:n}}function kp(e){return Xa(e).values}function Rp(e){const{split:t,types:r}=Xa(e),a=t.length;return n=>{let s="";for(let l=0;ltypeof e=="number"?0:e;function Bv(e){const t=kp(e);return Rp(e)(t.map(jv))}const Zt={test:Dv,parse:kp,createTransformer:Rp,getAnimatableNone:Bv},Pv=new Set(["brightness","contrast","saturate","opacity"]);function Uv(e){const[t,r]=e.slice(0,-1).split("(");if(t==="drop-shadow")return e;const[a]=r.match(Ro)||[];if(!a)return e;const n=r.replace(a,"");let s=Pv.has(t)?1:0;return a!==r&&(s*=100),t+"("+s+n+")"}const Ov=/\b([a-z-]*)\(.*?\)/gu,Fo=k(I({},Zt),{getAnimatableNone:e=>{const t=e.match(Ov);return t?t.map(Uv).join(" "):e}}),kv=k(I({},go),{color:Ae,backgroundColor:Ae,outlineColor:Ae,fill:Ae,stroke:Ae,borderColor:Ae,borderTopColor:Ae,borderRightColor:Ae,borderBottomColor:Ae,borderLeftColor:Ae,filter:Fo,WebkitFilter:Fo}),_o=e=>kv[e];function qp(e,t){let r=_o(e);return r!==Fo&&(r=Zt),r.getAnimatableNone?r.getAnimatableNone(t):void 0}const Rv=new Set(["auto","none","0"]);function qv(e,t,r){let a=0,n;for(;ae===Kr||e===N,zp=(e,t)=>parseFloat(e.split(", ")[t]),Fp=(e,t)=>(r,{transform:a})=>{if(a==="none"||!a)return 0;const n=a.match(/^matrix3d\((.+)\)$/u);if(n)return zp(n[1],t);{const s=a.match(/^matrix\((.+)\)$/u);return s?zp(s[1],e):0}},Mv=new Set(["x","y","z"]),zv=Hr.filter(e=>!Mv.has(e));function Fv(e){const t=[];return zv.forEach(r=>{const a=e.getValue(r);a!==void 0&&(t.push([r,a.get()]),a.set(r.startsWith("scale")?1:0))}),t}const Yr={width:({x:e},{paddingLeft:t="0",paddingRight:r="0"})=>e.max-e.min-parseFloat(t)-parseFloat(r),height:({y:e},{paddingTop:t="0",paddingBottom:r="0"})=>e.max-e.min-parseFloat(t)-parseFloat(r),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:Fp(4,13),y:Fp(5,14)};Yr.translateX=Yr.x,Yr.translateY=Yr.y;const ur=new Set;let Vo=!1,Zo=!1;function _p(){if(Zo){const e=Array.from(ur).filter(a=>a.needsMeasurement),t=new Set(e.map(a=>a.element)),r=new Map;t.forEach(a=>{const n=Fv(a);n.length&&(r.set(a,n),a.render())}),e.forEach(a=>a.measureInitialState()),t.forEach(a=>{a.render();const n=r.get(a);n&&n.forEach(([s,l])=>{var i;(i=a.getValue(s))===null||i===void 0||i.set(l)})}),e.forEach(a=>a.measureEndState()),e.forEach(a=>{a.suspendedScrollY!==void 0&&window.scrollTo(0,a.suspendedScrollY)})}Zo=!1,Vo=!1,ur.forEach(e=>e.complete()),ur.clear()}function Vp(){ur.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(Zo=!0)})}function _v(){Vp(),_p()}class $o{constructor(t,r,a,n,s,l=!1){this.isComplete=!1,this.isAsync=!1,this.needsMeasurement=!1,this.isScheduled=!1,this.unresolvedKeyframes=[...t],this.onComplete=r,this.name=a,this.motionValue=n,this.element=s,this.isAsync=l}scheduleResolve(){this.isScheduled=!0,this.isAsync?(ur.add(this),Vo||(Vo=!0,V.read(Vp),V.resolveKeyframes(_p))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:t,name:r,element:a,motionValue:n}=this;for(let s=0;s/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e),Vv=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function Zv(e){const t=Vv.exec(e);if(!t)return[,];const[,r,a,n]=t;return[`--${r!=null?r:a}`,n]}function $p(e,t,r=1){const[a,n]=Zv(e);if(!a)return;const s=window.getComputedStyle(t).getPropertyValue(a);if(s){const l=s.trim();return Zp(l)?parseFloat(l):l}return ho(n)?$p(n,t,r+1):n}const Gp=e=>t=>t.test(e),Wp=[Kr,N,it,Vt,Ug,Pg,{test:e=>e==="auto",parse:e=>e}],Hp=e=>Wp.find(Gp(e));class Kp extends $o{constructor(t,r,a,n,s){super(t,r,a,n,s,!0)}readKeyframes(){const{unresolvedKeyframes:t,element:r,name:a}=this;if(!r||!r.current)return;super.readKeyframes();for(let o=0;o{r.getValue(o).set(u)}),this.resolveNoneKeyframes()}}const Qp=(e,t)=>t==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(Zt.test(e)||e==="0")&&!e.startsWith("url("));function $v(e){const t=e[0];if(e.length===1)return!0;for(let r=0;re!==null;function Os(e,{repeat:t,repeatType:r="loop"},a){const n=e.filter(Wv),s=t&&r!=="loop"&&t%2===1?0:n.length-1;return!s||a===void 0?n[s]:a}const Hv=40;class Yp{constructor(o){var u=o,{autoplay:t=!0,delay:r=0,type:a="keyframes",repeat:n=0,repeatDelay:s=0,repeatType:l="loop"}=u,i=We(u,["autoplay","delay","type","repeat","repeatDelay","repeatType"]);this.isStopped=!1,this.hasAttemptedResolve=!1,this.createdAt=ot.now(),this.options=I({autoplay:t,delay:r,type:a,repeat:n,repeatDelay:s,repeatType:l},i),this.updateFinishedPromise()}calcStartTime(){return this.resolvedAt?this.resolvedAt-this.createdAt>Hv?this.resolvedAt:this.createdAt:this.createdAt}get resolved(){return!this._resolved&&!this.hasAttemptedResolve&&_v(),this._resolved}onKeyframesResolved(t,r){this.resolvedAt=ot.now(),this.hasAttemptedResolve=!0;const{name:a,type:n,velocity:s,delay:l,onComplete:i,onUpdate:o,isGenerator:u}=this.options;if(!u&&!Gv(t,a,n,s))if(l)this.options.duration=0;else{o&&o(Os(t,this.options,r)),i&&i(),this.resolveFinishedPromise();return}const d=this.initPlayback(t,r);d!==!1&&(this._resolved=I({keyframes:t,finalKeyframe:r},d),this.onPostResolved())}onPostResolved(){}then(t,r){return this.currentFinishedPromise.then(t,r)}flatten(){this.options.type="keyframes",this.options.ease="linear"}updateFinishedPromise(){this.currentFinishedPromise=new Promise(t=>{this.resolveFinishedPromise=t})}}const H=(e,t,r)=>e+(t-e)*r;function Go(e,t,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?e+(t-e)*6*r:r<1/2?t:r<2/3?e+(t-e)*(2/3-r)*6:e}function Kv({hue:e,saturation:t,lightness:r,alpha:a}){e/=360,t/=100,r/=100;let n=0,s=0,l=0;if(!t)n=s=l=r;else{const i=r<.5?r*(1+t):r+t-r*t,o=2*r-i;n=Go(o,i,e+1/3),s=Go(o,i,e),l=Go(o,i,e-1/3)}return{red:Math.round(n*255),green:Math.round(s*255),blue:Math.round(l*255),alpha:a}}function ks(e,t){return r=>r>0?t:e}const Wo=(e,t,r)=>{const a=e*e,n=r*(t*t-a)+a;return n<0?0:Math.sqrt(n)},Qv=[zo,or,Qr],Yv=e=>Qv.find(t=>t.test(e));function Xp(e){const t=Yv(e);if(!t)return!1;let r=t.parse(e);return t===Qr&&(r=Kv(r)),r}const Jp=(e,t)=>{const r=Xp(e),a=Xp(t);if(!r||!a)return ks(e,t);const n=I({},r);return s=>(n.red=Wo(r.red,a.red,s),n.green=Wo(r.green,a.green,s),n.blue=Wo(r.blue,a.blue,s),n.alpha=H(r.alpha,a.alpha,s),or.transform(n))},Xv=(e,t)=>r=>t(e(r)),Ja=(...e)=>e.reduce(Xv),Ho=new Set(["none","hidden"]);function Jv(e,t){return Ho.has(e)?r=>r<=0?e:t:r=>r>=1?t:e}function eA(e,t){return r=>H(e,t,r)}function Ko(e){return typeof e=="number"?eA:typeof e=="string"?ho(e)?ks:Ae.test(e)?Jp:aA:Array.isArray(e)?ef:typeof e=="object"?Ae.test(e)?Jp:tA:ks}function ef(e,t){const r=[...e],a=r.length,n=e.map((s,l)=>Ko(s)(s,t[l]));return s=>{for(let l=0;l{for(const s in a)r[s]=a[s](n);return r}}function rA(e,t){var r;const a=[],n={color:0,var:0,number:0};for(let s=0;s{const r=Zt.createTransformer(t),a=Xa(e),n=Xa(t);return a.indexes.var.length===n.indexes.var.length&&a.indexes.color.length===n.indexes.color.length&&a.indexes.number.length>=n.indexes.number.length?Ho.has(e)&&!n.values.length||Ho.has(t)&&!a.values.length?Jv(e,t):Ja(ef(rA(a,n),n.values),r):ks(e,t)};function tf(e,t,r){return typeof e=="number"&&typeof t=="number"&&typeof r=="number"?H(e,t,r):Ko(e)(e,t)}const nA=5;function rf(e,t,r){const a=Math.max(t-nA,0);return Ap(r-e(a),t-a)}const Y={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},af=.001;function sA({duration:e=Y.duration,bounce:t=Y.bounce,velocity:r=Y.velocity,mass:a=Y.mass}){let n,s,l=1-t;l=Tt(Y.minDamping,Y.maxDamping,l),e=Tt(Y.minDuration,Y.maxDuration,At(e)),l<1?(n=u=>{const d=u*l,c=d*e,m=d-r,b=Qo(u,l),h=Math.exp(-c);return af-m/b*h},s=u=>{const c=u*l*e,m=c*r+r,b=Math.pow(l,2)*Math.pow(u,2)*e,h=Math.exp(-c),g=Qo(Math.pow(u,2),l);return(-n(u)+af>0?-1:1)*((m-b)*h)/g}):(n=u=>{const d=Math.exp(-u*e),c=(u-r)*e+1;return-.001+d*c},s=u=>{const d=Math.exp(-u*e),c=(r-u)*(e*e);return d*c});const i=5/e,o=iA(n,s,i);if(e=vt(e),isNaN(o))return{stiffness:Y.stiffness,damping:Y.damping,duration:e};{const u=Math.pow(o,2)*a;return{stiffness:u,damping:l*2*Math.sqrt(a*u),duration:e}}}const lA=12;function iA(e,t,r){let a=r;for(let n=1;ne[r]!==void 0)}function dA(e){let t=I({velocity:Y.velocity,stiffness:Y.stiffness,damping:Y.damping,mass:Y.mass,isResolvedFromDuration:!1},e);if(!nf(e,uA)&&nf(e,oA))if(e.visualDuration){const r=e.visualDuration,a=2*Math.PI/(r*1.2),n=a*a,s=2*Tt(.05,1,1-(e.bounce||0))*Math.sqrt(n);t=k(I({},t),{mass:Y.mass,stiffness:n,damping:s})}else{const r=sA(e);t=k(I(I({},t),r),{mass:Y.mass}),t.isResolvedFromDuration=!0}return t}function sf(e=Y.visualDuration,t=Y.bounce){const r=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:t}:e;let{restSpeed:a,restDelta:n}=r;const s=r.keyframes[0],l=r.keyframes[r.keyframes.length-1],i={done:!1,value:s},{stiffness:o,damping:u,mass:d,duration:c,velocity:m,isResolvedFromDuration:b}=dA(k(I({},r),{velocity:-At(r.velocity||0)})),h=m||0,g=u/(2*Math.sqrt(o*d)),T=l-s,f=At(Math.sqrt(o/d)),p=Math.abs(T)<5;a||(a=p?Y.restSpeed.granular:Y.restSpeed.default),n||(n=p?Y.restDelta.granular:Y.restDelta.default);let y;if(g<1){const A=Qo(f,g);y=x=>{const L=Math.exp(-g*f*x);return l-L*((h+g*f*T)/A*Math.sin(A*x)+T*Math.cos(A*x))}}else if(g===1)y=A=>l-Math.exp(-f*A)*(T+(h+f*T)*A);else{const A=f*Math.sqrt(g*g-1);y=x=>{const L=Math.exp(-g*f*x),S=Math.min(A*x,300);return l-L*((h+g*f*T)*Math.sinh(S)+A*T*Math.cosh(S))/A}}const v={calculatedDuration:b&&c||null,next:A=>{const x=y(A);if(b)i.done=A>=c;else{let L=0;g<1&&(L=A===0?vt(h):rf(y,A,x));const S=Math.abs(L)<=a,O=Math.abs(l-x)<=n;i.done=S&&O}return i.value=i.done?l:x,i},toString:()=>{const A=Math.min(op(v),Io),x=dp(L=>v.next(A*L).value,A,30);return A+"ms "+x}};return v}function lf({keyframes:e,velocity:t=0,power:r=.8,timeConstant:a=325,bounceDamping:n=10,bounceStiffness:s=500,modifyTarget:l,min:i,max:o,restDelta:u=.5,restSpeed:d}){const c=e[0],m={done:!1,value:c},b=S=>i!==void 0&&So,h=S=>i===void 0?o:o===void 0||Math.abs(i-S)-g*Math.exp(-S/a),y=S=>f+p(S),v=S=>{const O=p(S),j=y(S);m.done=Math.abs(O)<=u,m.value=m.done?f:j};let A,x;const L=S=>{b(m.value)&&(A=S,x=sf({keyframes:[m.value,h(m.value)],velocity:rf(y,S,m.value),damping:n,stiffness:s,restDelta:u,restSpeed:d}))};return L(0),{calculatedDuration:null,next:S=>{let O=!1;return!x&&A===void 0&&(O=!0,v(S),L(S)),A!==void 0&&S>=A?x.next(S-A):(!O&&v(S),m)}}}const cA=Qa(.42,0,1,1),mA=Qa(0,0,.58,1),of=Qa(.42,0,.58,1),pA=e=>Array.isArray(e)&&typeof e[0]!="number",fA={linear:ke,easeIn:cA,easeInOut:of,easeOut:mA,circIn:ko,circInOut:Np,circOut:wp,backIn:Oo,backInOut:Dp,backOut:Lp,anticipate:Ep},uf=e=>{if(Do(e)){Om(e.length===4);const[t,r,a,n]=e;return Qa(t,r,a,n)}else if(typeof e=="string")return fA[e];return e};function yA(e,t,r){const a=[],n=r||tf,s=e.length-1;for(let l=0;lt[0];if(s===2&&t[0]===t[1])return()=>t[1];const l=e[0]===e[1];e[0]>e[s-1]&&(e=[...e].reverse(),t=[...t].reverse());const i=yA(t,a,n),o=i.length,u=d=>{if(l&&d1)for(;cu(Tt(e[0],e[s-1],d)):u}function hA(e,t){const r=e[e.length-1];for(let a=1;a<=t;a++){const n=$r(0,t,a);e.push(H(r,1,n))}}function gA(e){const t=[0];return hA(t,e.length-1),t}function vA(e,t){return e.map(r=>r*t)}function AA(e,t){return e.map(()=>t||of).splice(0,e.length-1)}function Rs({duration:e=300,keyframes:t,times:r,ease:a="easeInOut"}){const n=pA(a)?a.map(uf):uf(a),s={done:!1,value:t[0]},l=vA(r&&r.length===t.length?r:gA(t),e),i=bA(l,t,{ease:Array.isArray(n)?n:AA(t,n)});return{calculatedDuration:e,next:o=>(s.value=i(o),s.done=o>=e,s)}}const TA=e=>{const t=({timestamp:r})=>e(r);return{start:()=>V.update(t,!0),stop:()=>_t(t),now:()=>fe.isProcessing?fe.timestamp:ot.now()}},CA={decay:lf,inertia:lf,tween:Rs,keyframes:Rs,spring:sf},SA=e=>e/100;class Yo extends Yp{constructor(t){super(t),this.holdTime=null,this.cancelTime=null,this.currentTime=0,this.playbackSpeed=1,this.pendingPlayState="running",this.startTime=null,this.state="idle",this.stop=()=>{if(this.resolver.cancel(),this.isStopped=!0,this.state==="idle")return;this.teardown();const{onStop:o}=this.options;o&&o()};const{name:r,motionValue:a,element:n,keyframes:s}=this.options,l=(n==null?void 0:n.KeyframeResolver)||$o,i=(o,u)=>this.onKeyframesResolved(o,u);this.resolver=new l(s,i,r,a,n),this.resolver.scheduleResolve()}flatten(){super.flatten(),this._resolved&&Object.assign(this._resolved,this.initPlayback(this._resolved.keyframes))}initPlayback(t){const{type:r="keyframes",repeat:a=0,repeatDelay:n=0,repeatType:s,velocity:l=0}=this.options,i=Lo(r)?r:CA[r]||Rs;let o,u;i!==Rs&&typeof t[0]!="number"&&(o=Ja(SA,tf(t[0],t[1])),t=[0,100]);const d=i(k(I({},this.options),{keyframes:t}));s==="mirror"&&(u=i(k(I({},this.options),{keyframes:[...t].reverse(),velocity:-l}))),d.calculatedDuration===null&&(d.calculatedDuration=op(d));const{calculatedDuration:c}=d,m=c+n,b=m*(a+1)-n;return{generator:d,mirroredGenerator:u,mapPercentToKeyframes:o,calculatedDuration:c,resolvedDuration:m,totalDuration:b}}onPostResolved(){const{autoplay:t=!0}=this.options;this.play(),this.pendingPlayState==="paused"||!t?this.pause():this.state=this.pendingPlayState}tick(t,r=!1){const{resolved:a}=this;if(!a){const{keyframes:S}=this.options;return{done:!0,value:S[S.length-1]}}const{finalKeyframe:n,generator:s,mirroredGenerator:l,mapPercentToKeyframes:i,keyframes:o,calculatedDuration:u,totalDuration:d,resolvedDuration:c}=a;if(this.startTime===null)return s.next(0);const{delay:m,repeat:b,repeatType:h,repeatDelay:g,onUpdate:T}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,t):this.speed<0&&(this.startTime=Math.min(t-d/this.speed,this.startTime)),r?this.currentTime=t:this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=Math.round(t-this.startTime)*this.speed;const f=this.currentTime-m*(this.speed>=0?1:-1),p=this.speed>=0?f<0:f>d;this.currentTime=Math.max(f,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=d);let y=this.currentTime,v=s;if(b){const S=Math.min(this.currentTime,d)/c;let O=Math.floor(S),j=S%1;!j&&S>=1&&(j=1),j===1&&O--,O=Math.min(O,b+1),!!(O%2)&&(h==="reverse"?(j=1-j,g&&(j-=g/c)):h==="mirror"&&(v=l)),y=Tt(0,1,j)*c}const A=p?{done:!1,value:o[0]}:v.next(y);i&&(A.value=i(A.value));let{done:x}=A;!p&&u!==null&&(x=this.speed>=0?this.currentTime>=d:this.currentTime<=0);const L=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&x);return L&&n!==void 0&&(A.value=Os(o,this.options,n)),T&&T(A.value),L&&this.finish(),A}get duration(){const{resolved:t}=this;return t?At(t.calculatedDuration):0}get time(){return At(this.currentTime)}set time(t){t=vt(t),this.currentTime=t,this.holdTime!==null||this.speed===0?this.holdTime=t:this.driver&&(this.startTime=this.driver.now()-t/this.speed)}get speed(){return this.playbackSpeed}set speed(t){const r=this.playbackSpeed!==t;this.playbackSpeed=t,r&&(this.time=At(this.currentTime))}play(){if(this.resolver.isScheduled||this.resolver.resume(),!this._resolved){this.pendingPlayState="running";return}if(this.isStopped)return;const{driver:t=TA,onPlay:r,startTime:a}=this.options;this.driver||(this.driver=t(s=>this.tick(s))),r&&r();const n=this.driver.now();this.holdTime!==null?this.startTime=n-this.holdTime:this.startTime?this.state==="finished"&&(this.startTime=n):this.startTime=a!=null?a:this.calcStartTime(),this.state==="finished"&&this.updateFinishedPromise(),this.cancelTime=this.startTime,this.holdTime=null,this.state="running",this.driver.start()}pause(){var t;if(!this._resolved){this.pendingPlayState="paused";return}this.state="paused",this.holdTime=(t=this.currentTime)!==null&&t!==void 0?t:0}complete(){this.state!=="running"&&this.play(),this.pendingPlayState=this.state="finished",this.holdTime=null}finish(){this.teardown(),this.state="finished";const{onComplete:t}=this.options;t&&t()}cancel(){this.cancelTime!==null&&this.tick(this.cancelTime),this.teardown(),this.updateFinishedPromise()}teardown(){this.state="idle",this.stopDriver(),this.resolveFinishedPromise(),this.updateFinishedPromise(),this.startTime=this.cancelTime=null,this.resolver.cancel()}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(t){return this.startTime=0,this.tick(t,!0)}}const xA=new Set(["opacity","clipPath","filter","transform"]);function IA(e,t,r,{delay:a=0,duration:n=300,repeat:s=0,repeatType:l="loop",ease:i="easeInOut",times:o}={}){const u={[t]:r};o&&(u.offset=o);const d=mp(i,n);return Array.isArray(d)&&(u.easing=d),e.animate(u,{delay:a,duration:n,easing:Array.isArray(d)?"linear":d,fill:"both",iterations:s+1,direction:l==="reverse"?"alternate":"normal"})}const LA=io(()=>Object.hasOwnProperty.call(Element.prototype,"animate")),qs=10,DA=2e4;function EA(e){return Lo(e.type)||e.type==="spring"||!cp(e.ease)}function wA(e,t){const r=new Yo(k(I({},t),{keyframes:e,repeat:0,delay:0,isGenerator:!0}));let a={done:!1,value:e[0]};const n=[];let s=0;for(;!a.done&&sthis.onKeyframesResolved(l,i),r,a,n),this.resolver.scheduleResolve()}initPlayback(t,r){let{duration:a=300,times:n,ease:s,type:l,motionValue:i,name:o,startTime:u}=this.options;if(!i.owner||!i.owner.current)return!1;if(typeof s=="string"&&Ps()&&NA(s)&&(s=df[s]),EA(this.options)){const c=this.options,{onComplete:m,onUpdate:b,motionValue:h,element:g}=c,T=We(c,["onComplete","onUpdate","motionValue","element"]),f=wA(t,T);t=f.keyframes,t.length===1&&(t[1]=t[0]),a=f.duration,n=f.times,s=f.ease,l="keyframes"}const d=IA(i.owner.current,o,t,k(I({},this.options),{duration:a,times:n,ease:s}));return d.startTime=u!=null?u:this.calcStartTime(),this.pendingTimeline?(up(d,this.pendingTimeline),this.pendingTimeline=void 0):d.onfinish=()=>{const{onComplete:m}=this.options;i.set(Os(t,this.options,r)),m&&m(),this.cancel(),this.resolveFinishedPromise()},{animation:d,duration:a,times:n,type:l,ease:s,keyframes:t}}get duration(){const{resolved:t}=this;if(!t)return 0;const{duration:r}=t;return At(r)}get time(){const{resolved:t}=this;if(!t)return 0;const{animation:r}=t;return At(r.currentTime||0)}set time(t){const{resolved:r}=this;if(!r)return;const{animation:a}=r;a.currentTime=vt(t)}get speed(){const{resolved:t}=this;if(!t)return 1;const{animation:r}=t;return r.playbackRate}set speed(t){const{resolved:r}=this;if(!r)return;const{animation:a}=r;a.playbackRate=t}get state(){const{resolved:t}=this;if(!t)return"idle";const{animation:r}=t;return r.playState}get startTime(){const{resolved:t}=this;if(!t)return null;const{animation:r}=t;return r.startTime}attachTimeline(t){if(!this._resolved)this.pendingTimeline=t;else{const{resolved:r}=this;if(!r)return ke;const{animation:a}=r;up(a,t)}return ke}play(){if(this.isStopped)return;const{resolved:t}=this;if(!t)return;const{animation:r}=t;r.playState==="finished"&&this.updateFinishedPromise(),r.play()}pause(){const{resolved:t}=this;if(!t)return;const{animation:r}=t;r.pause()}stop(){if(this.resolver.cancel(),this.isStopped=!0,this.state==="idle")return;this.resolveFinishedPromise(),this.updateFinishedPromise();const{resolved:t}=this;if(!t)return;const{animation:r,keyframes:a,duration:n,type:s,ease:l,times:i}=t;if(r.playState==="idle"||r.playState==="finished")return;if(this.time){const u=this.options,{motionValue:d,onUpdate:c,onComplete:m,element:b}=u,h=We(u,["motionValue","onUpdate","onComplete","element"]),g=new Yo(k(I({},h),{keyframes:a,duration:n,type:s,ease:l,times:i,isGenerator:!0})),T=vt(this.time);d.setWithVelocity(g.sample(T-qs).value,g.sample(T).value,qs)}const{onStop:o}=this.options;o&&o(),this.cancel()}complete(){const{resolved:t}=this;t&&t.animation.finish()}cancel(){const{resolved:t}=this;t&&t.animation.cancel()}static supports(t){const{motionValue:r,name:a,repeatDelay:n,repeatType:s,damping:l,type:i}=t;if(!r||!r.owner||!(r.owner.current instanceof HTMLElement))return!1;const{onUpdate:o,transformTemplate:u}=r.owner.getProps();return LA()&&a&&xA.has(a)&&!o&&!u&&!n&&s!=="mirror"&&l!==0&&i!=="inertia"}}const jA={type:"spring",stiffness:500,damping:25,restSpeed:10},BA=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),PA={type:"keyframes",duration:.8},UA={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},OA=(e,{keyframes:t})=>t.length>2?PA:ir.has(e)?e.startsWith("scale")?BA(t[1]):jA:UA;function kA(c){var m=c,{when:e,delay:t,delayChildren:r,staggerChildren:a,staggerDirection:n,repeat:s,repeatType:l,repeatDelay:i,from:o,elapsed:u}=m,d=We(m,["when","delay","delayChildren","staggerChildren","staggerDirection","repeat","repeatType","repeatDelay","from","elapsed"]);return!!Object.keys(d).length}const Xo=(e,t,r,a={},n,s)=>l=>{const i=xo(a,e)||{},o=i.delay||a.delay||0;let{elapsed:u=0}=a;u=u-vt(o);let d=k(I({keyframes:Array.isArray(r)?r:[null,r],ease:"easeOut",velocity:t.getVelocity()},i),{delay:-u,onUpdate:m=>{t.set(m),i.onUpdate&&i.onUpdate(m)},onComplete:()=>{l(),i.onComplete&&i.onComplete()},name:e,motionValue:t,element:s?void 0:n});kA(i)||(d=I(I({},d),OA(e,d))),d.duration&&(d.duration=vt(d.duration)),d.repeatDelay&&(d.repeatDelay=vt(d.repeatDelay)),d.from!==void 0&&(d.keyframes[0]=d.from);let c=!1;if((d.type===!1||d.duration===0&&!d.repeatDelay)&&(d.duration=0,d.delay===0&&(c=!0)),c&&!s&&t.get()!==void 0){const m=Os(d.keyframes,i);if(m!==void 0)return V.update(()=>{d.onUpdate(m),d.onComplete()}),new rv([])}return!s&&cf.supports(d)?new cf(d):new Yo(d)};function RA({protectedKeys:e,needsAnimating:t},r){const a=e.hasOwnProperty(r)&&t[r]!==!0;return t[r]=!1,a}function mf(e,t,{delay:r=0,transitionOverride:a,type:n}={}){var s;let c=t,{transition:l=e.getDefaultTransition(),transitionEnd:i}=c,o=We(c,["transition","transitionEnd"]);a&&(l=a);const u=[],d=n&&e.animationState&&e.animationState.getState()[n];for(const m in o){const b=e.getValue(m,(s=e.latestValues[m])!==null&&s!==void 0?s:null),h=o[m];if(h===void 0||d&&RA(d,m))continue;const g=I({delay:r},xo(l||{},m));let T=!1;if(window.MotionHandoffAnimation){const p=Cp(e);if(p){const y=window.MotionHandoffAnimation(p,m,V);y!==null&&(g.startTime=y,T=!0)}}Uo(e,m),b.start(Xo(m,b,h,e.shouldReduceMotion&&vp.has(m)?{type:!1}:g,e,T));const f=b.animation;f&&u.push(f)}return i&&Promise.all(u).then(()=>{V.update(()=>{i&&bv(e,i)})}),u}function Jo(e,t,r={}){var a;const n=Bs(e,t,r.type==="exit"?(a=e.presenceContext)===null||a===void 0?void 0:a.custom:void 0);let{transition:s=e.getDefaultTransition()||{}}=n||{};r.transitionOverride&&(s=r.transitionOverride);const l=n?()=>Promise.all(mf(e,n,r)):()=>Promise.resolve(),i=e.variantChildren&&e.variantChildren.size?(u=0)=>{const{delayChildren:d=0,staggerChildren:c,staggerDirection:m}=s;return qA(e,t,d+u,c,m,r)}:()=>Promise.resolve(),{when:o}=s;if(o){const[u,d]=o==="beforeChildren"?[l,i]:[i,l];return u().then(()=>d())}else return Promise.all([l(),i(r.delay)])}function qA(e,t,r=0,a=0,n=1,s){const l=[],i=(e.variantChildren.size-1)*a,o=n===1?(u=0)=>u*a:(u=0)=>i-u*a;return Array.from(e.variantChildren).sort(MA).forEach((u,d)=>{u.notify("AnimationStart",t),l.push(Jo(u,t,k(I({},s),{delay:r+o(d)})).then(()=>u.notify("AnimationComplete",t)))}),Promise.all(l)}function MA(e,t){return e.sortNodePosition(t)}function zA(e,t,r={}){e.notify("AnimationStart",t);let a;if(Array.isArray(t)){const n=t.map(s=>Jo(e,s,r));a=Promise.all(n)}else if(typeof t=="string")a=Jo(e,t,r);else{const n=typeof t=="function"?Bs(e,t,r.custom):t;a=Promise.all(mf(e,n,r))}return a.then(()=>{e.notify("AnimationComplete",t)})}const FA=co.length;function pf(e){if(!e)return;if(!e.isControllingVariants){const r=e.parent?pf(e.parent)||{}:{};return e.props.initial!==void 0&&(r.initial=e.props.initial),r}const t={};for(let r=0;rPromise.all(t.map(({animation:r,options:a})=>zA(e,r,a)))}function $A(e){let t=ZA(e),r=ff(),a=!0;const n=o=>(u,d)=>{var c;const m=Bs(e,d,o==="exit"?(c=e.presenceContext)===null||c===void 0?void 0:c.custom:void 0);if(m){const b=m,{transition:h,transitionEnd:g}=b,T=We(b,["transition","transitionEnd"]);u=I(I(I({},u),T),g)}return u};function s(o){t=o(e)}function l(o){const{props:u}=e,d=pf(e.parent)||{},c=[],m=new Set;let b={},h=1/0;for(let T=0;Th&&v,O=!1;const j=Array.isArray(y)?y:[y];let ue=j.reduce(n(f),{});A===!1&&(ue={});const{prevResolvedValues:Gt={}}=p,pr=I(I({},Gt),ue),un=se=>{S=!0,m.has(se)&&(O=!0,m.delete(se)),p.needsAnimating[se]=!0;const D=e.getValue(se);D&&(D.liveStyle=!1)};for(const se in pr){const D=ue[se],B=Gt[se];if(b.hasOwnProperty(se))continue;let P=!1;bo(D)&&bo(B)?P=!ip(D,B):P=D!==B,P?D!=null?un(se):m.add(se):D!==void 0&&m.has(se)?un(se):p.protectedKeys[se]=!0}p.prevProp=y,p.prevResolvedValues=ue,p.isActive&&(b=I(I({},b),ue)),a&&e.blockInitialAnimation&&(S=!1),S&&(!(x&&L)||O)&&c.push(...j.map(se=>({animation:se,options:{type:f}})))}if(m.size){const T={};m.forEach(f=>{const p=e.getBaseTarget(f),y=e.getValue(f);y&&(y.liveStyle=!0),T[f]=p!=null?p:null}),c.push({animation:T})}let g=!!c.length;return a&&(u.initial===!1||u.initial===u.animate)&&!e.manuallyAnimateOnMount&&(g=!1),a=!1,g?t(c):Promise.resolve()}function i(o,u){var d;if(r[o].isActive===u)return Promise.resolve();(d=e.variantChildren)===null||d===void 0||d.forEach(m=>{var b;return(b=m.animationState)===null||b===void 0?void 0:b.setActive(o,u)}),r[o].isActive=u;const c=l(o);for(const m in r)r[m].protectedKeys={};return c}return{animateChanges:l,setActive:i,setAnimateFunction:s,getState:()=>r,reset:()=>{r=ff(),a=!0}}}function GA(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!ip(t,e):!1}function dr(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function ff(){return{animate:dr(!0),whileInView:dr(),whileHover:dr(),whileTap:dr(),whileDrag:dr(),whileFocus:dr(),exit:dr()}}class $t{constructor(t){this.isMounted=!1,this.node=t}update(){}}class WA extends $t{constructor(t){super(t),t.animationState||(t.animationState=$A(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();Ds(t)&&(this.unmountControls=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:t}=this.node.getProps(),{animate:r}=this.node.prevProps||{};t!==r&&this.updateAnimationControlsSubscription()}unmount(){var t;this.node.animationState.reset(),(t=this.unmountControls)===null||t===void 0||t.call(this)}}let HA=0;class KA extends $t{constructor(){super(...arguments),this.id=HA++}update(){if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:r}=this.node.presenceContext,{isPresent:a}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===a)return;const n=this.node.animationState.setActive("exit",!t);r&&!t&&n.then(()=>r(this.id))}mount(){const{register:t}=this.node.presenceContext||{};t&&(this.unmount=t(this.id))}unmount(){}}const QA={animation:{Feature:WA},exit:{Feature:KA}};function en(e,t,r,a={passive:!0}){return e.addEventListener(t,r,a),()=>e.removeEventListener(t,r)}function tn(e){return{point:{x:e.pageX,y:e.pageY}}}const YA=e=>t=>wo(t)&&e(t,tn(t));function rn(e,t,r,a){return en(e,t,YA(r),a)}const yf=(e,t)=>Math.abs(e-t);function XA(e,t){const r=yf(e.x,t.x),a=yf(e.y,t.y);return Math.sqrt(pu(r,2)+pu(a,2))}class bf{constructor(t,r,{transformPagePoint:a,contextWindow:n,dragSnapToOrigin:s=!1}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const c=tu(this.lastMoveEventInfo,this.history),m=this.startEvent!==null,b=XA(c.offset,{x:0,y:0})>=3;if(!m&&!b)return;const{point:h}=c,{timestamp:g}=fe;this.history.push(k(I({},h),{timestamp:g}));const{onStart:T,onMove:f}=this.handlers;m||(T&&T(this.lastMoveEvent,c),this.startEvent=this.lastMoveEvent),f&&f(this.lastMoveEvent,c)},this.handlePointerMove=(c,m)=>{this.lastMoveEvent=c,this.lastMoveEventInfo=eu(m,this.transformPagePoint),V.update(this.updatePoint,!0)},this.handlePointerUp=(c,m)=>{this.end();const{onEnd:b,onSessionEnd:h,resumeAnimation:g}=this.handlers;if(this.dragSnapToOrigin&&g&&g(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const T=tu(c.type==="pointercancel"?this.lastMoveEventInfo:eu(m,this.transformPagePoint),this.history);this.startEvent&&b&&b(c,T),h&&h(c,T)},!wo(t))return;this.dragSnapToOrigin=s,this.handlers=r,this.transformPagePoint=a,this.contextWindow=n||window;const l=tn(t),i=eu(l,this.transformPagePoint),{point:o}=i,{timestamp:u}=fe;this.history=[k(I({},o),{timestamp:u})];const{onSessionStart:d}=r;d&&d(t,tu(i,this.history)),this.removeListeners=Ja(rn(this.contextWindow,"pointermove",this.handlePointerMove),rn(this.contextWindow,"pointerup",this.handlePointerUp),rn(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),_t(this.updatePoint)}}function eu(e,t){return t?{point:t(e.point)}:e}function hf(e,t){return{x:e.x-t.x,y:e.y-t.y}}function tu({point:e},t){return{point:e,delta:hf(e,gf(t)),offset:hf(e,JA(t)),velocity:eT(t,.1)}}function JA(e){return e[0]}function gf(e){return e[e.length-1]}function eT(e,t){if(e.length<2)return{x:0,y:0};let r=e.length-1,a=null;const n=gf(e);for(;r>=0&&(a=e[r],!(n.timestamp-a.timestamp>vt(t)));)r--;if(!a)return{x:0,y:0};const s=At(n.timestamp-a.timestamp);if(s===0)return{x:0,y:0};const l={x:(n.x-a.x)/s,y:(n.y-a.y)/s};return l.x===1/0&&(l.x=0),l.y===1/0&&(l.y=0),l}const vf=1e-4,tT=1-vf,rT=1+vf,Af=.01,aT=0-Af,nT=0+Af;function Re(e){return e.max-e.min}function sT(e,t,r){return Math.abs(e-t)<=r}function Tf(e,t,r,a=.5){e.origin=a,e.originPoint=H(t.min,t.max,e.origin),e.scale=Re(r)/Re(t),e.translate=H(r.min,r.max,e.origin)-e.originPoint,(e.scale>=tT&&e.scale<=rT||isNaN(e.scale))&&(e.scale=1),(e.translate>=aT&&e.translate<=nT||isNaN(e.translate))&&(e.translate=0)}function an(e,t,r,a){Tf(e.x,t.x,r.x,a?a.originX:void 0),Tf(e.y,t.y,r.y,a?a.originY:void 0)}function Cf(e,t,r){e.min=r.min+t.min,e.max=e.min+Re(t)}function lT(e,t,r){Cf(e.x,t.x,r.x),Cf(e.y,t.y,r.y)}function Sf(e,t,r){e.min=t.min-r.min,e.max=e.min+Re(t)}function nn(e,t,r){Sf(e.x,t.x,r.x),Sf(e.y,t.y,r.y)}function iT(e,{min:t,max:r},a){return t!==void 0&&er&&(e=a?H(r,e,a.max):Math.min(e,r)),e}function xf(e,t,r){return{min:t!==void 0?e.min+t:void 0,max:r!==void 0?e.max+r-(e.max-e.min):void 0}}function oT(e,{top:t,left:r,bottom:a,right:n}){return{x:xf(e.x,r,n),y:xf(e.y,t,a)}}function If(e,t){let r=t.min-e.min,a=t.max-e.max;return t.max-t.mina?r=$r(t.min,t.max-a,e.min):a>n&&(r=$r(e.min,e.max-n,t.min)),Tt(0,1,r)}function cT(e,t){const r={};return t.min!==void 0&&(r.min=t.min-e.min),t.max!==void 0&&(r.max=t.max-e.min),r}const ru=.35;function mT(e=ru){return e===!1?e=0:e===!0&&(e=ru),{x:Lf(e,"left","right"),y:Lf(e,"top","bottom")}}function Lf(e,t,r){return{min:Df(e,t),max:Df(e,r)}}function Df(e,t){return typeof e=="number"?e:e[t]||0}const Ef=()=>({translate:0,scale:1,origin:0,originPoint:0}),Xr=()=>({x:Ef(),y:Ef()}),wf=()=>({min:0,max:0}),J=()=>({x:wf(),y:wf()});function $e(e){return[e("x"),e("y")]}function Nf({top:e,left:t,right:r,bottom:a}){return{x:{min:t,max:r},y:{min:e,max:a}}}function pT({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function fT(e,t){if(!t)return e;const r=t({x:e.left,y:e.top}),a=t({x:e.right,y:e.bottom});return{top:r.y,left:r.x,bottom:a.y,right:a.x}}function au(e){return e===void 0||e===1}function nu({scale:e,scaleX:t,scaleY:r}){return!au(e)||!au(t)||!au(r)}function cr(e){return nu(e)||jf(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function jf(e){return Bf(e.x)||Bf(e.y)}function Bf(e){return e&&e!=="0%"}function Ms(e,t,r){const a=e-r,n=t*a;return r+n}function Pf(e,t,r,a,n){return n!==void 0&&(e=Ms(e,n,a)),Ms(e,r,a)+t}function su(e,t=0,r=1,a,n){e.min=Pf(e.min,t,r,a,n),e.max=Pf(e.max,t,r,a,n)}function Uf(e,{x:t,y:r}){su(e.x,t.translate,t.scale,t.originPoint),su(e.y,r.translate,r.scale,r.originPoint)}const Of=.999999999999,kf=1.0000000000001;function yT(e,t,r,a=!1){const n=r.length;if(!n)return;t.x=t.y=1;let s,l;for(let i=0;iOf&&(t.x=1),t.yOf&&(t.y=1)}function Jr(e,t){e.min=e.min+t,e.max=e.max+t}function Rf(e,t,r,a,n=.5){const s=H(e.min,e.max,n);su(e,t,r,s,a)}function ea(e,t){Rf(e.x,t.x,t.scaleX,t.scale,t.originX),Rf(e.y,t.y,t.scaleY,t.scale,t.originY)}function qf(e,t){return Nf(fT(e.getBoundingClientRect(),t))}function bT(e,t,r){const a=qf(e,r),{scroll:n}=t;return n&&(Jr(a.x,n.offset.x),Jr(a.y,n.offset.y)),a}const Mf=({current:e})=>e?e.ownerDocument.defaultView:null,hT=new WeakMap;class gT{constructor(t){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=J(),this.visualElement=t}start(t,{snapToCursor:r=!1}={}){const{presenceContext:a}=this.visualElement;if(a&&a.isPresent===!1)return;const n=d=>{const{dragSnapToOrigin:c}=this.getProps();c?this.pauseAnimation():this.stopAnimation(),r&&this.snapToCursor(tn(d).point)},s=(d,c)=>{const{drag:m,dragPropagation:b,onDragStart:h}=this.getProps();if(m&&!b&&(this.openDragLock&&this.openDragLock(),this.openDragLock=cv(m),!this.openDragLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),$e(T=>{let f=this.getAxisMotionValue(T).get()||0;if(it.test(f)){const{projection:p}=this.visualElement;if(p&&p.layout){const y=p.layout.layoutBox[T];y&&(f=Re(y)*(parseFloat(f)/100))}}this.originPoint[T]=f}),h&&V.postRender(()=>h(d,c)),Uo(this.visualElement,"transform");const{animationState:g}=this.visualElement;g&&g.setActive("whileDrag",!0)},l=(d,c)=>{const{dragPropagation:m,dragDirectionLock:b,onDirectionLock:h,onDrag:g}=this.getProps();if(!m&&!this.openDragLock)return;const{offset:T}=c;if(b&&this.currentDirection===null){this.currentDirection=vT(T),this.currentDirection!==null&&h&&h(this.currentDirection);return}this.updateAxis("x",c.point,T),this.updateAxis("y",c.point,T),this.visualElement.render(),g&&g(d,c)},i=(d,c)=>this.stop(d,c),o=()=>$e(d=>{var c;return this.getAnimationState(d)==="paused"&&((c=this.getAxisMotionValue(d).animation)===null||c===void 0?void 0:c.play())}),{dragSnapToOrigin:u}=this.getProps();this.panSession=new bf(t,{onSessionStart:n,onStart:s,onMove:l,onSessionEnd:i,resumeAnimation:o},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,contextWindow:Mf(this.visualElement)})}stop(t,r){const a=this.isDragging;if(this.cancel(),!a)return;const{velocity:n}=r;this.startAnimation(n);const{onDragEnd:s}=this.getProps();s&&V.postRender(()=>s(t,r))}cancel(){this.isDragging=!1;const{projection:t,animationState:r}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:a}=this.getProps();!a&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),r&&r.setActive("whileDrag",!1)}updateAxis(t,r,a){const{drag:n}=this.getProps();if(!a||!zs(t,n,this.currentDirection))return;const s=this.getAxisMotionValue(t);let l=this.originPoint[t]+a[t];this.constraints&&this.constraints[t]&&(l=iT(l,this.constraints[t],this.elastic[t])),s.set(l)}resolveConstraints(){var t;const{dragConstraints:r,dragElastic:a}=this.getProps(),n=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(t=this.visualElement.projection)===null||t===void 0?void 0:t.layout,s=this.constraints;r&&Wr(r)?this.constraints||(this.constraints=this.resolveRefConstraints()):r&&n?this.constraints=oT(n.layoutBox,r):this.constraints=!1,this.elastic=mT(a),s!==this.constraints&&n&&this.constraints&&!this.hasMutatedConstraints&&$e(l=>{this.constraints!==!1&&this.getAxisMotionValue(l)&&(this.constraints[l]=cT(n.layoutBox[l],this.constraints[l]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:r}=this.getProps();if(!t||!Wr(t))return!1;const a=t.current,{projection:n}=this.visualElement;if(!n||!n.layout)return!1;const s=bT(a,n.root,this.visualElement.getTransformPagePoint());let l=uT(n.layout.layoutBox,s);if(r){const i=r(pT(l));this.hasMutatedConstraints=!!i,i&&(l=Nf(i))}return l}startAnimation(t){const{drag:r,dragMomentum:a,dragElastic:n,dragTransition:s,dragSnapToOrigin:l,onDragTransitionEnd:i}=this.getProps(),o=this.constraints||{},u=$e(d=>{if(!zs(d,r,this.currentDirection))return;let c=o&&o[d]||{};l&&(c={min:0,max:0});const m=n?200:1e6,b=n?40:1e7,h=I(I({type:"inertia",velocity:a?t[d]:0,bounceStiffness:m,bounceDamping:b,timeConstant:750,restDelta:1,restSpeed:10},s),c);return this.startAxisValueAnimation(d,h)});return Promise.all(u).then(i)}startAxisValueAnimation(t,r){const a=this.getAxisMotionValue(t);return Uo(this.visualElement,t),a.start(Xo(t,a,0,r,this.visualElement,!1))}stopAnimation(){$e(t=>this.getAxisMotionValue(t).stop())}pauseAnimation(){$e(t=>{var r;return(r=this.getAxisMotionValue(t).animation)===null||r===void 0?void 0:r.pause()})}getAnimationState(t){var r;return(r=this.getAxisMotionValue(t).animation)===null||r===void 0?void 0:r.state}getAxisMotionValue(t){const r=`_drag${t.toUpperCase()}`,a=this.visualElement.getProps(),n=a[r];return n||this.visualElement.getValue(t,(a.initial?a.initial[t]:void 0)||0)}snapToCursor(t){$e(r=>{const{drag:a}=this.getProps();if(!zs(r,a,this.currentDirection))return;const{projection:n}=this.visualElement,s=this.getAxisMotionValue(r);if(n&&n.layout){const{min:l,max:i}=n.layout.layoutBox[r];s.set(t[r]-H(l,i,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:r}=this.getProps(),{projection:a}=this.visualElement;if(!Wr(r)||!a||!this.constraints)return;this.stopAnimation();const n={x:0,y:0};$e(l=>{const i=this.getAxisMotionValue(l);if(i&&this.constraints!==!1){const o=i.get();n[l]=dT({min:o,max:o},this.constraints[l])}});const{transformTemplate:s}=this.visualElement.getProps();this.visualElement.current.style.transform=s?s({},""):"none",a.root&&a.root.updateScroll(),a.updateLayout(),this.resolveConstraints(),$e(l=>{if(!zs(l,t,null))return;const i=this.getAxisMotionValue(l),{min:o,max:u}=this.constraints[l];i.set(H(o,u,n[l]))})}addListeners(){if(!this.visualElement.current)return;hT.set(this.visualElement,this);const t=this.visualElement.current,r=rn(t,"pointerdown",o=>{const{drag:u,dragListener:d=!0}=this.getProps();u&&d&&this.start(o)}),a=()=>{const{dragConstraints:o}=this.getProps();Wr(o)&&o.current&&(this.constraints=this.resolveRefConstraints())},{projection:n}=this.visualElement,s=n.addEventListener("measure",a);n&&!n.layout&&(n.root&&n.root.updateScroll(),n.updateLayout()),V.read(a);const l=en(window,"resize",()=>this.scalePositionWithinConstraints()),i=n.addEventListener("didUpdate",({delta:o,hasLayoutChanged:u})=>{this.isDragging&&u&&($e(d=>{const c=this.getAxisMotionValue(d);c&&(this.originPoint[d]+=o[d].translate,c.set(c.get()+o[d].translate))}),this.visualElement.render())});return()=>{l(),r(),s(),i&&i()}}getProps(){const t=this.visualElement.getProps(),{drag:r=!1,dragDirectionLock:a=!1,dragPropagation:n=!1,dragConstraints:s=!1,dragElastic:l=ru,dragMomentum:i=!0}=t;return k(I({},t),{drag:r,dragDirectionLock:a,dragPropagation:n,dragConstraints:s,dragElastic:l,dragMomentum:i})}}function zs(e,t,r){return(t===!0||t===e)&&(r===null||r===e)}function vT(e,t=10){let r=null;return Math.abs(e.y)>t?r="y":Math.abs(e.x)>t&&(r="x"),r}class AT extends $t{constructor(t){super(t),this.removeGroupControls=ke,this.removeListeners=ke,this.controls=new gT(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||ke}unmount(){this.removeGroupControls(),this.removeListeners()}}const zf=e=>(t,r)=>{e&&V.postRender(()=>e(t,r))};class TT extends $t{constructor(){super(...arguments),this.removePointerDownListener=ke}onPointerDown(t){this.session=new bf(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:Mf(this.node)})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:r,onPan:a,onPanEnd:n}=this.node.getProps();return{onSessionStart:zf(t),onStart:zf(r),onMove:a,onEnd:(s,l)=>{delete this.session,n&&V.postRender(()=>n(s,l))}}}mount(){this.removePointerDownListener=rn(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}const Fs={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function Ff(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const sn={correct:(e,t)=>{if(!t.target)return e;if(typeof e=="string")if(N.test(e))e=parseFloat(e);else return e;const r=Ff(e,t.target.x),a=Ff(e,t.target.y);return`${r}% ${a}%`}},CT={correct:(e,{treeScale:t,projectionDelta:r})=>{const a=e,n=Zt.parse(e);if(n.length>5)return a;const s=Zt.createTransformer(e),l=typeof n[0]!="number"?1:0,i=r.x.scale*t.x,o=r.y.scale*t.y;n[0+l]/=i,n[1+l]/=o;const u=H(i,o,.5);return typeof n[2+l]=="number"&&(n[2+l]/=u),typeof n[3+l]=="number"&&(n[3+l]/=u),s(n)}};class ST extends w.Component{componentDidMount(){const{visualElement:t,layoutGroup:r,switchLayoutGroup:a,layoutId:n}=this.props,{projection:s}=t;Zg(xT),s&&(r.group&&r.group.add(s),a&&a.register&&n&&a.register(s),s.root.didUpdate(),s.addEventListener("animationComplete",()=>{this.safeToRemove()}),s.setOptions(k(I({},s.options),{onExitComplete:()=>this.safeToRemove()}))),Fs.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:r,visualElement:a,drag:n,isPresent:s}=this.props,l=a.projection;return l&&(l.isPresent=s,n||t.layoutDependency!==r||r===void 0?l.willUpdate():this.safeToRemove(),t.isPresent!==s&&(s?l.promote():l.relegate()||V.postRender(()=>{const i=l.getStack();(!i||!i.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:t}=this.props.visualElement;t&&(t.root.didUpdate(),po.postRender(()=>{!t.currentAnimation&&t.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:t,layoutGroup:r,switchLayoutGroup:a}=this.props,{projection:n}=t;n&&(n.scheduleCheckAfterUnmount(),r&&r.group&&r.group.remove(n),a&&a.deregister&&a.deregister(n))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function _f(e){const[t,r]=lg(),a=w.useContext(Pm);return R.jsx(ST,k(I({},e),{layoutGroup:a,switchLayoutGroup:w.useContext(Vm),isPresent:t,safeToRemove:r}))}const xT={borderRadius:k(I({},sn),{applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]}),borderTopLeftRadius:sn,borderTopRightRadius:sn,borderBottomLeftRadius:sn,borderBottomRightRadius:sn,boxShadow:CT};function IT(e,t,r){const a=ve(e)?e:Ka(e);return a.start(Xo("",a,t,r)),a.animation}function LT(e){return e instanceof SVGElement&&e.tagName!=="svg"}const DT=(e,t)=>e.depth-t.depth;class ET{constructor(){this.children=[],this.isDirty=!1}add(t){jo(this.children,t),this.isDirty=!0}remove(t){Bo(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(DT),this.isDirty=!1,this.children.forEach(t)}}function wT(e,t){const r=ot.now(),a=({timestamp:n})=>{const s=n-r;s>=t&&(_t(a),e(s-t))};return V.read(a,!0),()=>_t(a)}const Vf=["TopLeft","TopRight","BottomLeft","BottomRight"],NT=Vf.length,Zf=e=>typeof e=="string"?parseFloat(e):e,$f=e=>typeof e=="number"||N.test(e);function jT(e,t,r,a,n,s){n?(e.opacity=H(0,r.opacity!==void 0?r.opacity:1,BT(a)),e.opacityExit=H(t.opacity!==void 0?t.opacity:1,0,PT(a))):s&&(e.opacity=H(t.opacity!==void 0?t.opacity:1,r.opacity!==void 0?r.opacity:1,a));for(let l=0;lat?1:r($r(e,t,a))}function Hf(e,t){e.min=t.min,e.max=t.max}function Ge(e,t){Hf(e.x,t.x),Hf(e.y,t.y)}function Kf(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}function Qf(e,t,r,a,n){return e-=t,e=Ms(e,1/r,a),n!==void 0&&(e=Ms(e,1/n,a)),e}function UT(e,t=0,r=1,a=.5,n,s=e,l=e){if(it.test(t)&&(t=parseFloat(t),t=H(l.min,l.max,t/100)-l.min),typeof t!="number")return;let i=H(s.min,s.max,a);e===s&&(i-=t),e.min=Qf(e.min,t,r,i,n),e.max=Qf(e.max,t,r,i,n)}function Yf(e,t,[r,a,n],s,l){UT(e,t[r],t[a],t[n],t.scale,s,l)}const OT=["x","scaleX","originX"],kT=["y","scaleY","originY"];function Xf(e,t,r,a){Yf(e.x,t,OT,r?r.x:void 0,a?a.x:void 0),Yf(e.y,t,kT,r?r.y:void 0,a?a.y:void 0)}function Jf(e){return e.translate===0&&e.scale===1}function ey(e){return Jf(e.x)&&Jf(e.y)}function ty(e,t){return e.min===t.min&&e.max===t.max}function RT(e,t){return ty(e.x,t.x)&&ty(e.y,t.y)}function ry(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function ay(e,t){return ry(e.x,t.x)&&ry(e.y,t.y)}function ny(e){return Re(e.x)/Re(e.y)}function sy(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}class qT{constructor(){this.members=[]}add(t){jo(this.members,t),t.scheduleRender()}remove(t){if(Bo(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){const r=this.members[this.members.length-1];r&&this.promote(r)}}relegate(t){const r=this.members.findIndex(n=>t===n);if(r===0)return!1;let a;for(let n=r;n>=0;n--){const s=this.members[n];if(s.isPresent!==!1){a=s;break}}return a?(this.promote(a),!0):!1}promote(t,r){const a=this.lead;if(t!==a&&(this.prevLead=a,this.lead=t,t.show(),a)){a.instance&&a.scheduleRender(),t.scheduleRender(),t.resumeFrom=a,r&&(t.resumeFrom.preserveOpacity=!0),a.snapshot&&(t.snapshot=a.snapshot,t.snapshot.latestValues=a.animationValues||a.latestValues),t.root&&t.root.isUpdating&&(t.isLayoutDirty=!0);const{crossfade:n}=t.options;n===!1&&a.hide()}}exitAnimationComplete(){this.members.forEach(t=>{const{options:r,resumingFrom:a}=t;r.onExitComplete&&r.onExitComplete(),a&&a.options.onExitComplete&&a.options.onExitComplete()})}scheduleRender(){this.members.forEach(t=>{t.instance&&t.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function MT(e,t,r){let a="";const n=e.x.translate/t.x,s=e.y.translate/t.y,l=(r==null?void 0:r.z)||0;if((n||s||l)&&(a=`translate3d(${n}px, ${s}px, ${l}px) `),(t.x!==1||t.y!==1)&&(a+=`scale(${1/t.x}, ${1/t.y}) `),r){const{transformPerspective:u,rotate:d,rotateX:c,rotateY:m,skewX:b,skewY:h}=r;u&&(a=`perspective(${u}px) ${a}`),d&&(a+=`rotate(${d}deg) `),c&&(a+=`rotateX(${c}deg) `),m&&(a+=`rotateY(${m}deg) `),b&&(a+=`skewX(${b}deg) `),h&&(a+=`skewY(${h}deg) `)}const i=e.x.scale*t.x,o=e.y.scale*t.y;return(i!==1||o!==1)&&(a+=`scale(${i}, ${o})`),a||"none"}const mr={type:"projectionFrame",totalNodes:0,resolvedTargetDeltas:0,recalculatedProjection:0},ln=typeof window!="undefined"&&window.MotionDebug!==void 0,lu=["","X","Y","Z"],zT={visibility:"hidden"},ly=1e3;let FT=0;function iu(e,t,r,a){const{latestValues:n}=t;n[e]&&(r[e]=n[e],t.setStaticValue(e,0),a&&(a[e]=0))}function iy(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:t}=e.options;if(!t)return;const r=Cp(t);if(window.MotionHasOptimisedAnimation(r,"transform")){const{layout:n,layoutId:s}=e.options;window.MotionCancelOptimisedAnimation(r,"transform",V,!(n||s))}const{parent:a}=e;a&&!a.hasCheckedOptimisedAppear&&iy(a)}function oy({attachResizeListener:e,defaultParent:t,measureScroll:r,checkIsScrollRoot:a,resetTransform:n}){return class{constructor(l={},i=t==null?void 0:t()){this.id=FT++,this.animationId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,ln&&(mr.totalNodes=mr.resolvedTargetDeltas=mr.recalculatedProjection=0),this.nodes.forEach(ZT),this.nodes.forEach(KT),this.nodes.forEach(QT),this.nodes.forEach($T),ln&&window.MotionDebug.record(mr)},this.resolvedRelativeTargetAt=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=l,this.root=i?i.root||i:this,this.path=i?[...i.path,i]:[],this.parent=i,this.depth=i?i.depth+1:0;for(let o=0;othis.root.updateBlockedByResize=!1;e(l,()=>{this.root.updateBlockedByResize=!0,c&&c(),c=wT(m,250),Fs.hasAnimatedSinceResize&&(Fs.hasAnimatedSinceResize=!1,this.nodes.forEach(dy))})}o&&this.root.registerSharedNode(o,this),this.options.animate!==!1&&d&&(o||u)&&this.addEventListener("didUpdate",({delta:c,hasLayoutChanged:m,hasRelativeTargetChanged:b,layout:h})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const g=this.options.transition||d.getDefaultTransition()||tC,{onLayoutAnimationStart:T,onLayoutAnimationComplete:f}=d.getProps(),p=!this.targetLayout||!ay(this.targetLayout,h)||b,y=!m&&b;if(this.options.layoutRoot||this.resumeFrom&&this.resumeFrom.instance||y||m&&(p||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0),this.setAnimationOrigin(c,y);const v=k(I({},xo(g,"layout")),{onPlay:T,onComplete:f});(d.shouldReduceMotion||this.options.layoutRoot)&&(v.delay=0,v.type=!1),this.startAnimation(v)}else m||dy(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=h})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const l=this.getStack();l&&l.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,_t(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(YT),this.animationId++)}getTransformTemplate(){const{visualElement:l}=this.options;return l&&l.getProps().transformTemplate}willUpdate(l=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&iy(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let d=0;d{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure())}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let o=0;o{const A=v/1e3;cy(c.x,l.x,A),cy(c.y,l.y,A),this.setTargetDelta(c),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(nn(m,this.layout.layoutBox,this.relativeParent.layout.layoutBox),JT(this.relativeTarget,this.relativeTargetOrigin,m,A),y&&RT(this.relativeTarget,y)&&(this.isProjectionDirty=!1),y||(y=J()),Ge(y,this.relativeTarget)),g&&(this.animationValues=d,jT(d,u,this.latestValues,A,p,f)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=A},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(l){this.notifyListeners("animationStart"),this.currentAnimation&&this.currentAnimation.stop(),this.resumingFrom&&this.resumingFrom.currentAnimation&&this.resumingFrom.currentAnimation.stop(),this.pendingAnimation&&(_t(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=V.update(()=>{Fs.hasAnimatedSinceResize=!0,this.currentAnimation=IT(0,ly,k(I({},l),{onUpdate:i=>{this.mixTargetDelta(i),l.onUpdate&&l.onUpdate(i)},onComplete:()=>{l.onComplete&&l.onComplete(),this.completeAnimation()}})),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const l=this.getStack();l&&l.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(ly),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const l=this.getLead();let{targetWithTransforms:i,target:o,layout:u,latestValues:d}=l;if(!(!i||!o||!u)){if(this!==l&&this.layout&&u&&by(this.options.animationType,this.layout.layoutBox,u.layoutBox)){o=this.target||J();const c=Re(this.layout.layoutBox.x);o.x.min=l.target.x.min,o.x.max=o.x.min+c;const m=Re(this.layout.layoutBox.y);o.y.min=l.target.y.min,o.y.max=o.y.min+m}Ge(i,o),ea(i,d),an(this.projectionDeltaWithTransform,this.layoutCorrected,i,d)}}registerSharedNode(l,i){this.sharedNodes.has(l)||this.sharedNodes.set(l,new qT),this.sharedNodes.get(l).add(i);const u=i.options.initialPromotionConfig;i.promote({transition:u?u.transition:void 0,preserveFollowOpacity:u&&u.shouldPreserveFollowOpacity?u.shouldPreserveFollowOpacity(i):void 0})}isLead(){const l=this.getStack();return l?l.lead===this:!0}getLead(){var l;const{layoutId:i}=this.options;return i?((l=this.getStack())===null||l===void 0?void 0:l.lead)||this:this}getPrevLead(){var l;const{layoutId:i}=this.options;return i?(l=this.getStack())===null||l===void 0?void 0:l.prevLead:void 0}getStack(){const{layoutId:l}=this.options;if(l)return this.root.sharedNodes.get(l)}promote({needsReset:l,transition:i,preserveFollowOpacity:o}={}){const u=this.getStack();u&&u.promote(this,o),l&&(this.projectionDelta=void 0,this.needsReset=!0),i&&this.setOptions({transition:i})}relegate(){const l=this.getStack();return l?l.relegate(this):!1}resetSkewAndRotation(){const{visualElement:l}=this.options;if(!l)return;let i=!1;const{latestValues:o}=l;if((o.z||o.rotate||o.rotateX||o.rotateY||o.rotateZ||o.skewX||o.skewY)&&(i=!0),!i)return;const u={};o.z&&iu("z",l,u,this.animationValues);for(let d=0;d{var i;return(i=l.currentAnimation)===null||i===void 0?void 0:i.stop()}),this.root.nodes.forEach(uy),this.root.sharedNodes.clear()}}}function _T(e){e.updateLayout()}function VT(e){var t;const r=((t=e.resumeFrom)===null||t===void 0?void 0:t.snapshot)||e.snapshot;if(e.isLead()&&e.layout&&r&&e.hasListeners("didUpdate")){const{layoutBox:a,measuredBox:n}=e.layout,{animationType:s}=e.options,l=r.source!==e.layout.source;s==="size"?$e(c=>{const m=l?r.measuredBox[c]:r.layoutBox[c],b=Re(m);m.min=a[c].min,m.max=m.min+b}):by(s,r.layoutBox,a)&&$e(c=>{const m=l?r.measuredBox[c]:r.layoutBox[c],b=Re(a[c]);m.max=m.min+b,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[c].max=e.relativeTarget[c].min+b)});const i=Xr();an(i,a,r.layoutBox);const o=Xr();l?an(o,e.applyTransform(n,!0),r.measuredBox):an(o,a,r.layoutBox);const u=!ey(i);let d=!1;if(!e.resumeFrom){const c=e.getClosestProjectingParent();if(c&&!c.resumeFrom){const{snapshot:m,layout:b}=c;if(m&&b){const h=J();nn(h,r.layoutBox,m.layoutBox);const g=J();nn(g,a,b.layoutBox),ay(h,g)||(d=!0),c.options.layoutRoot&&(e.relativeTarget=g,e.relativeTargetOrigin=h,e.relativeParent=c)}}}e.notifyListeners("didUpdate",{layout:a,snapshot:r,delta:o,layoutDelta:i,hasLayoutChanged:u,hasRelativeTargetChanged:d})}else if(e.isLead()){const{onExitComplete:a}=e.options;a&&a()}e.options.transition=void 0}function ZT(e){ln&&mr.totalNodes++,e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function $T(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function GT(e){e.clearSnapshot()}function uy(e){e.clearMeasurements()}function WT(e){e.isLayoutDirty=!1}function HT(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function dy(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function KT(e){e.resolveTargetDelta()}function QT(e){e.calcProjection()}function YT(e){e.resetSkewAndRotation()}function XT(e){e.removeLeadSnapshot()}function cy(e,t,r){e.translate=H(t.translate,0,r),e.scale=H(t.scale,1,r),e.origin=t.origin,e.originPoint=t.originPoint}function my(e,t,r,a){e.min=H(t.min,r.min,a),e.max=H(t.max,r.max,a)}function JT(e,t,r,a){my(e.x,t.x,r.x,a),my(e.y,t.y,r.y,a)}function eC(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const tC={duration:.45,ease:[.4,0,.1,1]},py=e=>typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),fy=py("applewebkit/")&&!py("chrome/")?Math.round:ke;function yy(e){e.min=fy(e.min),e.max=fy(e.max)}function rC(e){yy(e.x),yy(e.y)}function by(e,t,r){return e==="position"||e==="preserve-aspect"&&!sT(ny(t),ny(r),.2)}function aC(e){var t;return e!==e.root&&((t=e.scroll)===null||t===void 0?void 0:t.wasRoot)}const nC=oy({attachResizeListener:(e,t)=>en(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),ou={current:void 0},hy=oy({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!ou.current){const e=new nC({});e.mount(window),e.setOptions({layoutScroll:!0}),ou.current=e}return ou.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),sC={pan:{Feature:TT},drag:{Feature:AT,ProjectionNode:hy,MeasureLayout:_f}};function gy(e,t,r){const{props:a}=e;e.animationState&&a.whileHover&&e.animationState.setActive("whileHover",r==="Start");const n="onHover"+r,s=a[n];s&&V.postRender(()=>s(t,tn(t)))}class lC extends $t{mount(){const{current:t}=this.node;t&&(this.unmount=lv(t,r=>(gy(this.node,r,"Start"),a=>gy(this.node,a,"End"))))}unmount(){}}class iC extends $t{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch(r){t=!0}!t||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=Ja(en(this.node.current,"focus",()=>this.onFocus()),en(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function vy(e,t,r){const{props:a}=e;e.animationState&&a.whileTap&&e.animationState.setActive("whileTap",r==="Start");const n="onTap"+(r==="End"?"":r),s=a[n];s&&V.postRender(()=>s(t,tn(t)))}class oC extends $t{mount(){const{current:t}=this.node;t&&(this.unmount=dv(t,r=>(vy(this.node,r,"Start"),(a,{success:n})=>vy(this.node,a,n?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const uu=new WeakMap,du=new WeakMap,uC=e=>{const t=uu.get(e.target);t&&t(e)},dC=e=>{e.forEach(uC)};function cC(r){var a=r,{root:e}=a,t=We(a,["root"]);const n=e||document;du.has(n)||du.set(n,{});const s=du.get(n),l=JSON.stringify(t);return s[l]||(s[l]=new IntersectionObserver(dC,I({root:e},t))),s[l]}function mC(e,t,r){const a=cC(t);return uu.set(e,r),a.observe(e),()=>{uu.delete(e),a.unobserve(e)}}const pC={some:0,all:1};class fC extends $t{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:t={}}=this.node.getProps(),{root:r,margin:a,amount:n="some",once:s}=t,l={root:r?r.current:void 0,rootMargin:a,threshold:typeof n=="number"?n:pC[n]},i=o=>{const{isIntersecting:u}=o;if(this.isInView===u||(this.isInView=u,s&&!u&&this.hasEnteredView))return;u&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",u);const{onViewportEnter:d,onViewportLeave:c}=this.node.getProps(),m=u?d:c;m&&m(o)};return mC(this.node.current,l,i)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver=="undefined")return;const{props:t,prevProps:r}=this.node;["amount","margin","root"].some(yC(t,r))&&this.startObserver()}unmount(){}}function yC({viewport:e={}},{viewport:t={}}={}){return r=>e[r]!==t[r]}const bC={inView:{Feature:fC},tap:{Feature:oC},focus:{Feature:iC},hover:{Feature:lC}},hC={layout:{ProjectionNode:hy,MeasureLayout:_f}},cu={current:null},Ay={current:!1};function gC(){if(Ay.current=!0,!!lo)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>cu.current=e.matches;e.addListener(t),t()}else cu.current=!1}const vC=[...Wp,Ae,Zt],AC=e=>vC.find(Gp(e)),Ty=new WeakMap;function TC(e,t,r){for(const a in t){const n=t[a],s=r[a];if(ve(n))e.addValue(a,n);else if(ve(s))e.addValue(a,Ka(n,{owner:e}));else if(s!==n)if(e.hasValue(a)){const l=e.getValue(a);l.liveStyle===!0?l.jump(n):l.hasAnimated||l.set(n)}else{const l=e.getStaticValue(a);e.addValue(a,Ka(l!==void 0?l:n,{owner:e}))}}for(const a in r)t[a]===void 0&&e.removeValue(a);return t}const Cy=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class CC{scrapeMotionValuesFromProps(t,r,a){return{}}constructor({parent:t,props:r,presenceContext:a,reducedMotionConfig:n,blockInitialAnimation:s,visualState:l},i={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=$o,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const h=ot.now();this.renderScheduledAtthis.bindToMotionValue(a,r)),Ay.current||gC(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:cu.current,this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){Ty.delete(this.current),this.projection&&this.projection.unmount(),_t(this.notifyUpdate),_t(this.render),this.valueSubscriptions.forEach(t=>t()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this);for(const t in this.events)this.events[t].clear();for(const t in this.features){const r=this.features[t];r&&(r.unmount(),r.isMounted=!1)}this.current=null}bindToMotionValue(t,r){this.valueSubscriptions.has(t)&&this.valueSubscriptions.get(t)();const a=ir.has(t),n=r.on("change",i=>{this.latestValues[t]=i,this.props.onUpdate&&V.preRender(this.notifyUpdate),a&&this.projection&&(this.projection.isTransformDirty=!0)}),s=r.on("renderRequest",this.scheduleRender);let l;window.MotionCheckAppearSync&&(l=window.MotionCheckAppearSync(this,t,r)),this.valueSubscriptions.set(t,()=>{n(),s(),l&&l(),r.owner&&r.stop()})}sortNodePosition(t){return!this.current||!this.sortInstanceNodePosition||this.type!==t.type?0:this.sortInstanceNodePosition(this.current,t.current)}updateFeatures(){let t="animation";for(t in Gr){const r=Gr[t];if(!r)continue;const{isEnabled:a,Feature:n}=r;if(!this.features[t]&&n&&a(this.props)&&(this.features[t]=new n(this)),this.features[t]){const s=this.features[t];s.isMounted?s.update():(s.mount(),s.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):J()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,r){this.latestValues[t]=r}update(t,r){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=r;for(let a=0;ar.variantChildren.delete(t)}addValue(t,r){const a=this.values.get(t);r!==a&&(a&&this.removeValue(t),this.bindToMotionValue(t,r),this.values.set(t,r),this.latestValues[t]=r.get())}removeValue(t){this.values.delete(t);const r=this.valueSubscriptions.get(t);r&&(r(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,r){if(this.props.values&&this.props.values[t])return this.props.values[t];let a=this.values.get(t);return a===void 0&&r!==void 0&&(a=Ka(r===null?void 0:r,{owner:this}),this.addValue(t,a)),a}readValue(t,r){var a;let n=this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:(a=this.getBaseTargetFromProps(this.props,t))!==null&&a!==void 0?a:this.readValueFromInstance(this.current,t,this.options);return n!=null&&(typeof n=="string"&&(Zp(n)||jp(n))?n=parseFloat(n):!AC(n)&&Zt.test(r)&&(n=qp(t,r)),this.setBaseTarget(t,ve(n)?n.get():n)),ve(n)?n.get():n}setBaseTarget(t,r){this.baseTarget[t]=r}getBaseTarget(t){var r;const{initial:a}=this.props;let n;if(typeof a=="string"||typeof a=="object"){const l=yo(this.props,a,(r=this.presenceContext)===null||r===void 0?void 0:r.custom);l&&(n=l[t])}if(a&&n!==void 0)return n;const s=this.getBaseTargetFromProps(this.props,t);return s!==void 0&&!ve(s)?s:this.initialValues[t]!==void 0&&n===void 0?void 0:this.baseTarget[t]}on(t,r){return this.events[t]||(this.events[t]=new Po),this.events[t].add(r)}notify(t,...r){this.events[t]&&this.events[t].notify(...r)}}class Sy extends CC{constructor(){super(...arguments),this.KeyframeResolver=Kp}sortInstanceNodePosition(t,r){return t.compareDocumentPosition(r)&2?1:-1}getBaseTargetFromProps(t,r){return t.style?t.style[r]:void 0}removeValueFromRenderState(t,{vars:r,style:a}){delete r[t],delete a[t]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;ve(t)&&(this.childSubscription=t.on("change",r=>{this.current&&(this.current.textContent=`${r}`)}))}}function SC(e){return window.getComputedStyle(e)}class xC extends Sy{constructor(){super(...arguments),this.type="html",this.renderInstance=ep}readValueFromInstance(t,r){if(ir.has(r)){const a=_o(r);return a&&a.default||0}else{const a=SC(t),n=(Hm(r)?a.getPropertyValue(r):a[r])||0;return typeof n=="string"?n.trim():n}}measureInstanceViewportBox(t,{transformPagePoint:r}){return qf(t,r)}build(t,r,a){vo(t,r,a.transformTemplate)}scrapeMotionValuesFromProps(t,r,a){return So(t,r,a)}}class IC extends Sy{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=J}getBaseTargetFromProps(t,r){return t[r]}readValueFromInstance(t,r){if(ir.has(r)){const a=_o(r);return a&&a.default||0}return r=tp.has(r)?r:mo(r),t.getAttribute(r)}scrapeMotionValuesFromProps(t,r,a){return np(t,r,a)}build(t,r,a){Ao(t,r,this.isSVGTag,a.transformTemplate)}renderInstance(t,r,a,n){rp(t,r,a,n)}mount(t){this.isSVGTag=Co(t.tagName),super.mount(t)}}const LC=(e,t)=>fo(e)?new IC(t):new xC(t,{allowProjection:e!==w.Fragment}),DC=Jg(I(I(I(I({},QA),bC),sC),hC),LC),EC=yg(DC),xy={name:"dc-connectors",version:"0.1.4"},wC={hidden:{opacity:0,y:20},visible:{opacity:1,y:0,transition:{duration:.6,ease:[.45,.14,.1,.97]}}},NC=xy.version,jC=xy.name,BC=window.location.hostname==="localhost"?`${window.location.origin}/`:`https://a.sfdcstatic.com/digital/@sfdc-www/open-blade-libs/${jC}/v${NC}`,on=new URLSearchParams(window.location.search).has("retroMode"),PC=({index:e,item:t,isVisible:r,shouldAnimate:a})=>{const n=s=>R.jsxs(EC.div,{className:`card shadow-lg p-4 rounded-lg flex items-center ${on?"bg-black border-2 text-green-400 font-mono border-yellow-400":""}`,initial:"hidden",variants:wC,"data-index":e,animate:a?"visible":"hidden",children:[R.jsx("div",{className:`flex-none py-3 pr-4 ${on?"border-yellow-400":"border-gray-200"} border-r-2`,children:R.jsx("img",{role:"presentation",src:BC+t.iconUrl,alt:t.label,className:"w-10 h-10 align-middle"})}),R.jsxs("div",{className:"pl-4 flex-grow overflow-hidden items-center",children:[R.jsxs("div",{className:"flex-grow",children:[t.releaseLevel==="IN_DEV"&&R.jsx("div",{className:"px-2 py-1 bg-gray-800 rounded-xl border border-gray-800 justify-center items-center inline-flex mb-2",children:R.jsx("div",{className:"text-white text-[10px] font-bold leading-none tracking-tight",children:"Coming Soon"})}),t.releaseLevel==="BETA"&&R.jsx("div",{className:`px-2 py-1 rounded-xl border justify-center items-center inline-flex mb-2 ${on?"bg-fuchsia-500 text-white":"text-fuchsia-700 border-violet-50 bg-violet-50"}`,children:R.jsx("div",{className:"text-[10px] font-bold leading-none tracking-tight",children:"Beta"})})]}),R.jsx("h3",{className:`mb-2 font-bold overflow-hidden truncate ${on?"text-green-400":"text-sfnavy"}`,children:t.label}),R.jsxs("p",{className:`text-xs ${on?"text-green-400":"text-gray-800"}`,children:[s&&(s.length>120?`${s.substring(0,120)}...`:s),t.releaseLevel==="MuleSoft"&&"Ingest data via MuleSoft’s Anypoint Exchange"]})]})]},e);return R.jsxs(R.Fragment,{children:[n(t.ingressDescription),t.egressDescription&&n(t.egressDescription)]})},UC=ag.map(e=>k(I({},e),{name:e.label||"",features:e.label||[],featuresConfig:{IncrementalUpdate:{deleteSupport:"No"}},connectionAttributes:{},extractAttributes:{}})),OC=[...rg.filter(e=>e.releaseLevel!=="IN_DEV"&&e.releaseLevel!=="PILOT"&&e.name!=="OCI"&&e.name!=="TenantBillingUsageConnector"),...UC,ng].sort((e,t)=>e.label.localeCompare(t.label));function kC(){const[e,t]=w.useState(""),[r,a]=w.useState(new Set),[n,s]=w.useState(new Set),[l,i]=w.useState(0),o=b=>{t(b.target.value),a(new Set)},u=OC.filter(b=>e?e==="GA"?b.releaseLevel==="GA"||b.releaseLevel==="MuleSoft":e==="BYOL"&&Array.isArray(b.features)?b.features.includes("BYOL"):b.releaseLevel===e:!0);w.useEffect(()=>{i(u.length)},[u]);const d=w.useRef(new IntersectionObserver(b=>{const h=b.filter(g=>g.isIntersecting);if(h.length){const g=new Set(r),T=new Set(n);h.forEach(f=>{const p=Number(f.target.getAttribute("data-index"));g.add(p),T.add(p)}),a(g),s(T)}},{threshold:.5}));w.useEffect(()=>{const b=d.current;return document.querySelectorAll(".card").forEach(g=>{b.observe(g)}),()=>{b.disconnect()}},[u]);const m=new URLSearchParams(window.location.search).has("retroMode");return R.jsxs(R.Fragment,{children:[m&&R.jsx("style",{children:` .relative.marquee--blade.marquee--center { background: #000; } .marquee--blade .blade__description p, .marquee--blade .container .grid.grid_main .content__wrapper .marquee__blade-heading .headline { color: rgb(74 222 128); font-family: monospace; } a.cta_button[data-variant=primary] { background-color: yellow; color: black; border: 3px solid rgb(74 222 128); outline:none; } `}),R.jsx("div",{className:`${m?"bg-black text-green-400 py-10":""}`,children:R.jsx("div",{className:"container mx-auto lg:mt-0 md:mt-5 pt-0 min-h-screen ",children:R.jsxs("div",{className:"flex flex-col items-center min-h-screen text-gray-900 font-sans",children:[R.jsxs("div",{className:"flex space-x-4 mb-6",children:[R.jsx("label",{htmlFor:"filter",className:`mr-2 font-bold text-[18px]${m?"text-green-400":""}`,children:"Filter:"}),R.jsxs("select",{id:"filter",value:e,onChange:o,className:`border p-1 rounded ${m?"bg-black text-green-400 border-green-400":""}`,children:[R.jsx("option",{value:"",children:"All"}),R.jsx("option",{value:"BETA",children:"Beta"}),R.jsx("option",{value:"GA",children:"General Availability"}),R.jsx("option",{value:"BYOL",children:"Zero Copy"})]})]}),m&&R.jsxs("div",{id:"connectorCounter",className:"mb-4 font-mono text-4xl text-green-600 bg-black p-4 rounded",children:[l," Data Sources"]}),!m&&R.jsxs("div",{id:"connectorCounter",className:" mb-4",children:[l," Data Sources"]}),R.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-3 gap-6 p-4",children:u.map((b,h)=>R.jsx(PC,{index:h,item:b,isVisible:r.has(h)||n.has(h),shouldAnimate:r.has(h),"data-index":h,retroMode:m},h))})]})})})]})}Ys.createRoot(document.getElementById("wps-dc-integrator")).render(R.jsx(Zy.StrictMode,{children:R.jsx(kC,{})}))});