@budibase/server 2.9.39-alpha.3 → 2.9.39-alpha.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1638,7 +1638,7 @@ svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
1638
1638
  }`;function css(){var n1=DEFAULT_CSS_PREFIX,e1=DEFAULT_REPLACEMENT_CLASS,t1=config.cssPrefix,r1=config.replacementClass,o1=baseStyles;if(t1!==n1||r1!==e1){var i1=new RegExp("\\.".concat(n1,"\\-"),"g"),a1=new RegExp("\\--".concat(n1,"\\-"),"g"),s1=new RegExp("\\.".concat(e1),"g");o1=o1.replace(i1,".".concat(t1,"-")).replace(a1,"--".concat(t1,"-")).replace(s1,".".concat(r1))}return o1}var _cssInserted=!1;function ensureCss(){config.autoAddCss&&!_cssInserted&&(insertCss(css()),_cssInserted=!0)}var InjectCSS={mixout:function n1(){return{dom:{css,insertCss:ensureCss}}},hooks:function n1(){return{beforeDOMElementCreation:function(){ensureCss()},beforeI2svg:function(){ensureCss()}}}},w=WINDOW||{};w[NAMESPACE_IDENTIFIER]||(w[NAMESPACE_IDENTIFIER]={});w[NAMESPACE_IDENTIFIER].styles||(w[NAMESPACE_IDENTIFIER].styles={});w[NAMESPACE_IDENTIFIER].hooks||(w[NAMESPACE_IDENTIFIER].hooks={});w[NAMESPACE_IDENTIFIER].shims||(w[NAMESPACE_IDENTIFIER].shims=[]);var namespace=w[NAMESPACE_IDENTIFIER],functions=[],listener=function n1(){DOCUMENT.removeEventListener("DOMContentLoaded",n1),loaded=1,functions.map(function(e1){return e1()})},loaded=!1;IS_DOM&&(loaded=(DOCUMENT.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(DOCUMENT.readyState),loaded||DOCUMENT.addEventListener("DOMContentLoaded",listener));function domready(n1){!IS_DOM||(loaded?setTimeout(n1,0):functions.push(n1))}function toHtml(n1){var e1=n1.tag,t1=n1.attributes,r1=t1===void 0?{}:t1,o1=n1.children,i1=o1===void 0?[]:o1;return typeof n1=="string"?htmlEscape(n1):"<".concat(e1," ").concat(joinAttributes(r1),">").concat(i1.map(toHtml).join(""),"</").concat(e1,">")}function iconFromMapping(n1,e1,t1){if(n1&&n1[e1]&&n1[e1][t1])return{prefix:e1,iconName:t1,icon:n1[e1][t1]}}var bindInternal4=function n1(e1,t1){return function(r1,o1,i1,a1){return e1.call(t1,r1,o1,i1,a1)}},reduce=function n1(e1,t1,r1,o1){var i1=Object.keys(e1),a1=i1.length,s1=o1!==void 0?bindInternal4(t1,o1):t1,l1,c1,u1;for(r1===void 0?(l1=1,u1=e1[i1[0]]):(l1=0,u1=r1);l1<a1;l1++)c1=i1[l1],u1=s1(u1,e1[c1],c1,e1);return u1};function ucs2decode(n1){for(var e1=[],t1=0,r1=n1.length;t1<r1;){var o1=n1.charCodeAt(t1++);if(o1>=55296&&o1<=56319&&t1<r1){var i1=n1.charCodeAt(t1++);(i1&64512)==56320?e1.push(((o1&1023)<<10)+(i1&1023)+65536):(e1.push(o1),t1--)}else e1.push(o1)}return e1}function toHex(n1){var e1=ucs2decode(n1);return e1.length===1?e1[0].toString(16):null}function codePointAt(n1,e1){var t1=n1.length,r1=n1.charCodeAt(e1),o1;return r1>=55296&&r1<=56319&&t1>e1+1&&(o1=n1.charCodeAt(e1+1),o1>=56320&&o1<=57343)?(r1-55296)*1024+o1-56320+65536:r1}function normalizeIcons(n1){return Object.keys(n1).reduce(function(e1,t1){var r1=n1[t1],o1=!!r1.icon;return o1?e1[r1.iconName]=r1.icon:e1[t1]=r1,e1},{})}function defineIcons(n1,e1){var t1=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r1=t1.skipHooks,o1=r1===void 0?!1:r1,i1=normalizeIcons(e1);typeof namespace.hooks.addPack=="function"&&!o1?namespace.hooks.addPack(n1,normalizeIcons(e1)):namespace.styles[n1]=_objectSpread2(_objectSpread2({},namespace.styles[n1]||{}),i1),n1==="fas"&&defineIcons("fa",e1)}var _LONG_STYLE,_PREFIXES,_PREFIXES_FOR_FAMILY,styles=namespace.styles,shims=namespace.shims,LONG_STYLE=(_LONG_STYLE={},_defineProperty(_LONG_STYLE,FAMILY_CLASSIC,Object.values(PREFIX_TO_LONG_STYLE[FAMILY_CLASSIC])),_defineProperty(_LONG_STYLE,FAMILY_SHARP,Object.values(PREFIX_TO_LONG_STYLE[FAMILY_SHARP])),_LONG_STYLE),_defaultUsablePrefix=null,_byUnicode={},_byLigature={},_byOldName={},_byOldUnicode={},_byAlias={},PREFIXES=(_PREFIXES={},_defineProperty(_PREFIXES,FAMILY_CLASSIC,Object.keys(PREFIX_TO_STYLE[FAMILY_CLASSIC])),_defineProperty(_PREFIXES,FAMILY_SHARP,Object.keys(PREFIX_TO_STYLE[FAMILY_SHARP])),_PREFIXES);function isReserved(n1){return~RESERVED_CLASSES.indexOf(n1)}function getIconName(n1,e1){var t1=e1.split("-"),r1=t1[0],o1=t1.slice(1).join("-");return r1===n1&&o1!==""&&!isReserved(o1)?o1:null}var build=function n1(){var e1=function(i1){return reduce(styles,function(a1,s1,l1){return a1[l1]=reduce(s1,i1,{}),a1},{})};_byUnicode=e1(function(o1,i1,a1){if(i1[3]&&(o1[i1[3]]=a1),i1[2]){var s1=i1[2].filter(function(l1){return typeof l1=="number"});s1.forEach(function(l1){o1[l1.toString(16)]=a1})}return o1}),_byLigature=e1(function(o1,i1,a1){if(o1[a1]=a1,i1[2]){var s1=i1[2].filter(function(l1){return typeof l1=="string"});s1.forEach(function(l1){o1[l1]=a1})}return o1}),_byAlias=e1(function(o1,i1,a1){var s1=i1[2];return o1[a1]=a1,s1.forEach(function(l1){o1[l1]=a1}),o1});var t1="far"in styles||config.autoFetchSvg,r1=reduce(shims,function(o1,i1){var a1=i1[0],s1=i1[1],l1=i1[2];return s1==="far"&&!t1&&(s1="fas"),typeof a1=="string"&&(o1.names[a1]={prefix:s1,iconName:l1}),typeof a1=="number"&&(o1.unicodes[a1.toString(16)]={prefix:s1,iconName:l1}),o1},{names:{},unicodes:{}});_byOldName=r1.names,_byOldUnicode=r1.unicodes,_defaultUsablePrefix=getCanonicalPrefix(config.styleDefault,{family:config.familyDefault})};onChange$1(function(n1){_defaultUsablePrefix=getCanonicalPrefix(n1.styleDefault,{family:config.familyDefault})});build();function byUnicode(n1,e1){return(_byUnicode[n1]||{})[e1]}function byLigature(n1,e1){return(_byLigature[n1]||{})[e1]}function byAlias(n1,e1){return(_byAlias[n1]||{})[e1]}function byOldName(n1){return _byOldName[n1]||{prefix:null,iconName:null}}function byOldUnicode(n1){var e1=_byOldUnicode[n1],t1=byUnicode("fas",n1);return e1||(t1?{prefix:"fas",iconName:t1}:null)||{prefix:null,iconName:null}}function getDefaultUsablePrefix(){return _defaultUsablePrefix}var emptyCanonicalIcon=function n1(){return{prefix:null,iconName:null,rest:[]}};function getCanonicalPrefix(n1){var e1=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t1=e1.family,r1=t1===void 0?FAMILY_CLASSIC:t1,o1=PREFIX_TO_STYLE[r1][n1],i1=STYLE_TO_PREFIX[r1][n1]||STYLE_TO_PREFIX[r1][o1],a1=n1 in namespace.styles?n1:null;return i1||a1||null}var PREFIXES_FOR_FAMILY=(_PREFIXES_FOR_FAMILY={},_defineProperty(_PREFIXES_FOR_FAMILY,FAMILY_CLASSIC,Object.keys(PREFIX_TO_LONG_STYLE[FAMILY_CLASSIC])),_defineProperty(_PREFIXES_FOR_FAMILY,FAMILY_SHARP,Object.keys(PREFIX_TO_LONG_STYLE[FAMILY_SHARP])),_PREFIXES_FOR_FAMILY);function getCanonicalIcon(n1){var e1,t1=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r1=t1.skipLookups,o1=r1===void 0?!1:r1,i1=(e1={},_defineProperty(e1,FAMILY_CLASSIC,"".concat(config.cssPrefix,"-").concat(FAMILY_CLASSIC)),_defineProperty(e1,FAMILY_SHARP,"".concat(config.cssPrefix,"-").concat(FAMILY_SHARP)),e1),a1=null,s1=FAMILY_CLASSIC;(n1.includes(i1[FAMILY_CLASSIC])||n1.some(function(c1){return PREFIXES_FOR_FAMILY[FAMILY_CLASSIC].includes(c1)}))&&(s1=FAMILY_CLASSIC),(n1.includes(i1[FAMILY_SHARP])||n1.some(function(c1){return PREFIXES_FOR_FAMILY[FAMILY_SHARP].includes(c1)}))&&(s1=FAMILY_SHARP);var l1=n1.reduce(function(c1,u1){var f1=getIconName(config.cssPrefix,u1);if(styles[u1]?(u1=LONG_STYLE[s1].includes(u1)?LONG_STYLE_TO_PREFIX[s1][u1]:u1,a1=u1,c1.prefix=u1):PREFIXES[s1].indexOf(u1)>-1?(a1=u1,c1.prefix=getCanonicalPrefix(u1,{family:s1})):f1?c1.iconName=f1:u1!==config.replacementClass&&u1!==i1[FAMILY_CLASSIC]&&u1!==i1[FAMILY_SHARP]&&c1.rest.push(u1),!o1&&c1.prefix&&c1.iconName){var p1=a1==="fa"?byOldName(c1.iconName):{},d1=byAlias(c1.prefix,c1.iconName);p1.prefix&&(a1=null),c1.iconName=p1.iconName||d1||c1.iconName,c1.prefix=p1.prefix||c1.prefix,c1.prefix==="far"&&!styles.far&&styles.fas&&!config.autoFetchSvg&&(c1.prefix="fas")}return c1},emptyCanonicalIcon());return(n1.includes("fa-brands")||n1.includes("fab"))&&(l1.prefix="fab"),(n1.includes("fa-duotone")||n1.includes("fad"))&&(l1.prefix="fad"),!l1.prefix&&s1===FAMILY_SHARP&&(styles.fass||config.autoFetchSvg)&&(l1.prefix="fass",l1.iconName=byAlias(l1.prefix,l1.iconName)||l1.iconName),(l1.prefix==="fa"||a1==="fa")&&(l1.prefix=getDefaultUsablePrefix()||"fas"),l1}var Library=function(){function n1(){_classCallCheck(this,n1),this.definitions={}}return _createClass(n1,[{key:"add",value:function(){for(var t1=this,r1=arguments.length,o1=new Array(r1),i1=0;i1<r1;i1++)o1[i1]=arguments[i1];var a1=o1.reduce(this._pullDefinitions,{});Object.keys(a1).forEach(function(s1){t1.definitions[s1]=_objectSpread2(_objectSpread2({},t1.definitions[s1]||{}),a1[s1]),defineIcons(s1,a1[s1]);var l1=PREFIX_TO_LONG_STYLE[FAMILY_CLASSIC][s1];l1&&defineIcons(l1,a1[s1]),build()})}},{key:"reset",value:function(){this.definitions={}}},{key:"_pullDefinitions",value:function(t1,r1){var o1=r1.prefix&&r1.iconName&&r1.icon?{0:r1}:r1;return Object.keys(o1).map(function(i1){var a1=o1[i1],s1=a1.prefix,l1=a1.iconName,c1=a1.icon,u1=c1[2];t1[s1]||(t1[s1]={}),u1.length>0&&u1.forEach(function(f1){typeof f1=="string"&&(t1[s1][f1]=c1)}),t1[s1][l1]=c1}),t1}}]),n1}(),_plugins=[],_hooks={},providers={},defaultProviderKeys=Object.keys(providers);function registerPlugins(n1,e1){var t1=e1.mixoutsTo;return _plugins=n1,_hooks={},Object.keys(providers).forEach(function(r1){defaultProviderKeys.indexOf(r1)===-1&&delete providers[r1]}),_plugins.forEach(function(r1){var o1=r1.mixout?r1.mixout():{};if(Object.keys(o1).forEach(function(a1){typeof o1[a1]=="function"&&(t1[a1]=o1[a1]),_typeof(o1[a1])==="object"&&Object.keys(o1[a1]).forEach(function(s1){t1[a1]||(t1[a1]={}),t1[a1][s1]=o1[a1][s1]})}),r1.hooks){var i1=r1.hooks();Object.keys(i1).forEach(function(a1){_hooks[a1]||(_hooks[a1]=[]),_hooks[a1].push(i1[a1])})}r1.provides&&r1.provides(providers)}),t1}function chainHooks(n1,e1){for(var t1=arguments.length,r1=new Array(t1>2?t1-2:0),o1=2;o1<t1;o1++)r1[o1-2]=arguments[o1];var i1=_hooks[n1]||[];return i1.forEach(function(a1){e1=a1.apply(null,[e1].concat(r1))}),e1}function callHooks(n1){for(var e1=arguments.length,t1=new Array(e1>1?e1-1:0),r1=1;r1<e1;r1++)t1[r1-1]=arguments[r1];var o1=_hooks[n1]||[];o1.forEach(function(i1){i1.apply(null,t1)})}function callProvided(){var n1=arguments[0],e1=Array.prototype.slice.call(arguments,1);return providers[n1]?providers[n1].apply(null,e1):void 0}function findIconDefinition(n1){n1.prefix==="fa"&&(n1.prefix="fas");var e1=n1.iconName,t1=n1.prefix||getDefaultUsablePrefix();if(!!e1)return e1=byAlias(t1,e1)||e1,iconFromMapping(library.definitions,t1,e1)||iconFromMapping(namespace.styles,t1,e1)}var library=new Library,noAuto=function n1(){config.autoReplaceSvg=!1,config.observeMutations=!1,callHooks("noAuto")},dom={i2svg:function n1(){var e1=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return IS_DOM?(callHooks("beforeI2svg",e1),callProvided("pseudoElements2svg",e1),callProvided("i2svg",e1)):Promise.reject("Operation requires a DOM of some kind.")},watch:function n1(){var e1=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t1=e1.autoReplaceSvgRoot;config.autoReplaceSvg===!1&&(config.autoReplaceSvg=!0),config.observeMutations=!0,domready(function(){autoReplace({autoReplaceSvgRoot:t1}),callHooks("watch",e1)})}},parse$2={icon:function n1(e1){if(e1===null)return null;if(_typeof(e1)==="object"&&e1.prefix&&e1.iconName)return{prefix:e1.prefix,iconName:byAlias(e1.prefix,e1.iconName)||e1.iconName};if(Array.isArray(e1)&&e1.length===2){var t1=e1[1].indexOf("fa-")===0?e1[1].slice(3):e1[1],r1=getCanonicalPrefix(e1[0]);return{prefix:r1,iconName:byAlias(r1,t1)||t1}}if(typeof e1=="string"&&(e1.indexOf("".concat(config.cssPrefix,"-"))>-1||e1.match(ICON_SELECTION_SYNTAX_PATTERN))){var o1=getCanonicalIcon(e1.split(" "),{skipLookups:!0});return{prefix:o1.prefix||getDefaultUsablePrefix(),iconName:byAlias(o1.prefix,o1.iconName)||o1.iconName}}if(typeof e1=="string"){var i1=getDefaultUsablePrefix();return{prefix:i1,iconName:byAlias(i1,e1)||e1}}}},api={noAuto,config,dom,parse:parse$2,library,findIconDefinition,toHtml},autoReplace=function n1(){var e1=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t1=e1.autoReplaceSvgRoot,r1=t1===void 0?DOCUMENT:t1;(Object.keys(namespace.styles).length>0||config.autoFetchSvg)&&IS_DOM&&config.autoReplaceSvg&&api.dom.i2svg({node:r1})};function domVariants(n1,e1){return Object.defineProperty(n1,"abstract",{get:e1}),Object.defineProperty(n1,"html",{get:function(){return n1.abstract.map(function(r1){return toHtml(r1)})}}),Object.defineProperty(n1,"node",{get:function(){if(!!IS_DOM){var r1=DOCUMENT.createElement("div");return r1.innerHTML=n1.html,r1.children}}}),n1}function asIcon(n1){var e1=n1.children,t1=n1.main,r1=n1.mask,o1=n1.attributes,i1=n1.styles,a1=n1.transform;if(transformIsMeaningful(a1)&&t1.found&&!r1.found){var s1=t1.width,l1=t1.height,c1={x:s1/l1/2,y:.5};o1.style=joinStyles(_objectSpread2(_objectSpread2({},i1),{},{"transform-origin":"".concat(c1.x+a1.x/16,"em ").concat(c1.y+a1.y/16,"em")}))}return[{tag:"svg",attributes:o1,children:e1}]}function asSymbol(n1){var e1=n1.prefix,t1=n1.iconName,r1=n1.children,o1=n1.attributes,i1=n1.symbol,a1=i1===!0?"".concat(e1,"-").concat(config.cssPrefix,"-").concat(t1):i1;return[{tag:"svg",attributes:{style:"display: none;"},children:[{tag:"symbol",attributes:_objectSpread2(_objectSpread2({},o1),{},{id:a1}),children:r1}]}]}function makeInlineSvgAbstract(n1){var e1=n1.icons,t1=e1.main,r1=e1.mask,o1=n1.prefix,i1=n1.iconName,a1=n1.transform,s1=n1.symbol,l1=n1.title,c1=n1.maskId,u1=n1.titleId,f1=n1.extra,p1=n1.watchable,d1=p1===void 0?!1:p1,m1=r1.found?r1:t1,_1=m1.width,h1=m1.height,b1=o1==="fak",$1=[config.replacementClass,i1?"".concat(config.cssPrefix,"-").concat(i1):""].filter(function(z1){return f1.classes.indexOf(z1)===-1}).filter(function(z1){return z1!==""||!!z1}).concat(f1.classes).join(" "),y1={children:[],attributes:_objectSpread2(_objectSpread2({},f1.attributes),{},{"data-prefix":o1,"data-icon":i1,class:$1,role:f1.attributes.role||"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(_1," ").concat(h1)})},k1=b1&&!~f1.classes.indexOf("fa-fw")?{width:"".concat(_1/h1*16*.0625,"em")}:{};d1&&(y1.attributes[DATA_FA_I2SVG]=""),l1&&(y1.children.push({tag:"title",attributes:{id:y1.attributes["aria-labelledby"]||"title-".concat(u1||nextUniqueId())},children:[l1]}),delete y1.attributes.title);var S1=_objectSpread2(_objectSpread2({},y1),{},{prefix:o1,iconName:i1,main:t1,mask:r1,maskId:c1,transform:a1,symbol:s1,styles:_objectSpread2(_objectSpread2({},k1),f1.styles)}),O1=r1.found&&t1.found?callProvided("generateAbstractMask",S1)||{children:[],attributes:{}}:callProvided("generateAbstractIcon",S1)||{children:[],attributes:{}},C1=O1.children,M1=O1.attributes;return S1.children=C1,S1.attributes=M1,s1?asSymbol(S1):asIcon(S1)}function makeLayersTextAbstract(n1){var e1=n1.content,t1=n1.width,r1=n1.height,o1=n1.transform,i1=n1.title,a1=n1.extra,s1=n1.watchable,l1=s1===void 0?!1:s1,c1=_objectSpread2(_objectSpread2(_objectSpread2({},a1.attributes),i1?{title:i1}:{}),{},{class:a1.classes.join(" ")});l1&&(c1[DATA_FA_I2SVG]="");var u1=_objectSpread2({},a1.styles);transformIsMeaningful(o1)&&(u1.transform=transformForCss({transform:o1,startCentered:!0,width:t1,height:r1}),u1["-webkit-transform"]=u1.transform);var f1=joinStyles(u1);f1.length>0&&(c1.style=f1);var p1=[];return p1.push({tag:"span",attributes:c1,children:[e1]}),i1&&p1.push({tag:"span",attributes:{class:"sr-only"},children:[i1]}),p1}function makeLayersCounterAbstract(n1){var e1=n1.content,t1=n1.title,r1=n1.extra,o1=_objectSpread2(_objectSpread2(_objectSpread2({},r1.attributes),t1?{title:t1}:{}),{},{class:r1.classes.join(" ")}),i1=joinStyles(r1.styles);i1.length>0&&(o1.style=i1);var a1=[];return a1.push({tag:"span",attributes:o1,children:[e1]}),t1&&a1.push({tag:"span",attributes:{class:"sr-only"},children:[t1]}),a1}var styles$1=namespace.styles;function asFoundIcon(n1){var e1=n1[0],t1=n1[1],r1=n1.slice(4),o1=_slicedToArray(r1,1),i1=o1[0],a1=null;return Array.isArray(i1)?a1={tag:"g",attributes:{class:"".concat(config.cssPrefix,"-").concat(DUOTONE_CLASSES.GROUP)},children:[{tag:"path",attributes:{class:"".concat(config.cssPrefix,"-").concat(DUOTONE_CLASSES.SECONDARY),fill:"currentColor",d:i1[0]}},{tag:"path",attributes:{class:"".concat(config.cssPrefix,"-").concat(DUOTONE_CLASSES.PRIMARY),fill:"currentColor",d:i1[1]}}]}:a1={tag:"path",attributes:{fill:"currentColor",d:i1}},{found:!0,width:e1,height:t1,icon:a1}}var missingIconResolutionMixin={found:!1,width:512,height:512};function maybeNotifyMissing(n1,e1){!PRODUCTION&&!config.showMissingIcons&&n1&&console.error('Icon with name "'.concat(n1,'" and prefix "').concat(e1,'" is missing.'))}function findIcon(n1,e1){var t1=e1;return e1==="fa"&&config.styleDefault!==null&&(e1=getDefaultUsablePrefix()),new Promise(function(r1,o1){if(callProvided("missingIconAbstract"),t1==="fa"){var i1=byOldName(n1)||{};n1=i1.iconName||n1,e1=i1.prefix||e1}if(n1&&e1&&styles$1[e1]&&styles$1[e1][n1]){var a1=styles$1[e1][n1];return r1(asFoundIcon(a1))}maybeNotifyMissing(n1,e1),r1(_objectSpread2(_objectSpread2({},missingIconResolutionMixin),{},{icon:config.showMissingIcons&&n1?callProvided("missingIconAbstract")||{}:{}}))})}var noop$1=function n1(){},p=config.measurePerformance&&PERFORMANCE&&PERFORMANCE.mark&&PERFORMANCE.measure?PERFORMANCE:{mark:noop$1,measure:noop$1},preamble='FA "6.3.0"',begin=function n1(e1){return p.mark("".concat(preamble," ").concat(e1," begins")),function(){return end(e1)}},end=function n1(e1){p.mark("".concat(preamble," ").concat(e1," ends")),p.measure("".concat(preamble," ").concat(e1),"".concat(preamble," ").concat(e1," begins"),"".concat(preamble," ").concat(e1," ends"))},perf={begin,end},noop$2=function n1(){};function isWatched(n1){var e1=n1.getAttribute?n1.getAttribute(DATA_FA_I2SVG):null;return typeof e1=="string"}function hasPrefixAndIcon(n1){var e1=n1.getAttribute?n1.getAttribute(DATA_PREFIX):null,t1=n1.getAttribute?n1.getAttribute(DATA_ICON):null;return e1&&t1}function hasBeenReplaced(n1){return n1&&n1.classList&&n1.classList.contains&&n1.classList.contains(config.replacementClass)}function getMutator(){if(config.autoReplaceSvg===!0)return mutators.replace;var n1=mutators[config.autoReplaceSvg];return n1||mutators.replace}function createElementNS(n1){return DOCUMENT.createElementNS("http://www.w3.org/2000/svg",n1)}function createElement(n1){return DOCUMENT.createElement(n1)}function convertSVG(n1){var e1=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t1=e1.ceFn,r1=t1===void 0?n1.tag==="svg"?createElementNS:createElement:t1;if(typeof n1=="string")return DOCUMENT.createTextNode(n1);var o1=r1(n1.tag);Object.keys(n1.attributes||[]).forEach(function(a1){o1.setAttribute(a1,n1.attributes[a1])});var i1=n1.children||[];return i1.forEach(function(a1){o1.appendChild(convertSVG(a1,{ceFn:r1}))}),o1}function nodeAsComment(n1){var e1=" ".concat(n1.outerHTML," ");return e1="".concat(e1,"Font Awesome fontawesome.com "),e1}var mutators={replace:function n1(e1){var t1=e1[0];if(t1.parentNode)if(e1[1].forEach(function(o1){t1.parentNode.insertBefore(convertSVG(o1),t1)}),t1.getAttribute(DATA_FA_I2SVG)===null&&config.keepOriginalSource){var r1=DOCUMENT.createComment(nodeAsComment(t1));t1.parentNode.replaceChild(r1,t1)}else t1.remove()},nest:function n1(e1){var t1=e1[0],r1=e1[1];if(~classArray(t1).indexOf(config.replacementClass))return mutators.replace(e1);var o1=new RegExp("".concat(config.cssPrefix,"-.*"));if(delete r1[0].attributes.id,r1[0].attributes.class){var i1=r1[0].attributes.class.split(" ").reduce(function(s1,l1){return l1===config.replacementClass||l1.match(o1)?s1.toSvg.push(l1):s1.toNode.push(l1),s1},{toNode:[],toSvg:[]});r1[0].attributes.class=i1.toSvg.join(" "),i1.toNode.length===0?t1.removeAttribute("class"):t1.setAttribute("class",i1.toNode.join(" "))}var a1=r1.map(function(s1){return toHtml(s1)}).join(`
1639
1639
  `);t1.setAttribute(DATA_FA_I2SVG,""),t1.innerHTML=a1}};function performOperationSync(n1){n1()}function perform(n1,e1){var t1=typeof e1=="function"?e1:noop$2;if(n1.length===0)t1();else{var r1=performOperationSync;config.mutateApproach===MUTATION_APPROACH_ASYNC&&(r1=WINDOW.requestAnimationFrame||performOperationSync),r1(function(){var o1=getMutator(),i1=perf.begin("mutate");n1.map(o1),i1(),t1()})}}var disabled=!1;function disableObservation(){disabled=!0}function enableObservation(){disabled=!1}var mo=null;function observe(n1){if(!!MUTATION_OBSERVER&&!!config.observeMutations){var e1=n1.treeCallback,t1=e1===void 0?noop$2:e1,r1=n1.nodeCallback,o1=r1===void 0?noop$2:r1,i1=n1.pseudoElementsCallback,a1=i1===void 0?noop$2:i1,s1=n1.observeMutationsRoot,l1=s1===void 0?DOCUMENT:s1;mo=new MUTATION_OBSERVER(function(c1){if(!disabled){var u1=getDefaultUsablePrefix();toArray(c1).forEach(function(f1){if(f1.type==="childList"&&f1.addedNodes.length>0&&!isWatched(f1.addedNodes[0])&&(config.searchPseudoElements&&a1(f1.target),t1(f1.target)),f1.type==="attributes"&&f1.target.parentNode&&config.searchPseudoElements&&a1(f1.target.parentNode),f1.type==="attributes"&&isWatched(f1.target)&&~ATTRIBUTES_WATCHED_FOR_MUTATION.indexOf(f1.attributeName))if(f1.attributeName==="class"&&hasPrefixAndIcon(f1.target)){var p1=getCanonicalIcon(classArray(f1.target)),d1=p1.prefix,m1=p1.iconName;f1.target.setAttribute(DATA_PREFIX,d1||u1),m1&&f1.target.setAttribute(DATA_ICON,m1)}else hasBeenReplaced(f1.target)&&o1(f1.target)})}}),IS_DOM&&mo.observe(l1,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}}function disconnect(){!mo||mo.disconnect()}function styleParser(n1){var e1=n1.getAttribute("style"),t1=[];return e1&&(t1=e1.split(";").reduce(function(r1,o1){var i1=o1.split(":"),a1=i1[0],s1=i1.slice(1);return a1&&s1.length>0&&(r1[a1]=s1.join(":").trim()),r1},{})),t1}function classParser(n1){var e1=n1.getAttribute("data-prefix"),t1=n1.getAttribute("data-icon"),r1=n1.innerText!==void 0?n1.innerText.trim():"",o1=getCanonicalIcon(classArray(n1));return o1.prefix||(o1.prefix=getDefaultUsablePrefix()),e1&&t1&&(o1.prefix=e1,o1.iconName=t1),o1.iconName&&o1.prefix||(o1.prefix&&r1.length>0&&(o1.iconName=byLigature(o1.prefix,n1.innerText)||byUnicode(o1.prefix,toHex(n1.innerText))),!o1.iconName&&config.autoFetchSvg&&n1.firstChild&&n1.firstChild.nodeType===Node.TEXT_NODE&&(o1.iconName=n1.firstChild.data)),o1}function attributesParser(n1){var e1=toArray(n1.attributes).reduce(function(o1,i1){return o1.name!=="class"&&o1.name!=="style"&&(o1[i1.name]=i1.value),o1},{}),t1=n1.getAttribute("title"),r1=n1.getAttribute("data-fa-title-id");return config.autoA11y&&(t1?e1["aria-labelledby"]="".concat(config.replacementClass,"-title-").concat(r1||nextUniqueId()):(e1["aria-hidden"]="true",e1.focusable="false")),e1}function blankMeta(){return{iconName:null,title:null,titleId:null,prefix:null,transform:meaninglessTransform,symbol:!1,mask:{iconName:null,prefix:null,rest:[]},maskId:null,extra:{classes:[],styles:{},attributes:{}}}}function parseMeta(n1){var e1=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{styleParser:!0},t1=classParser(n1),r1=t1.iconName,o1=t1.prefix,i1=t1.rest,a1=attributesParser(n1),s1=chainHooks("parseNodeAttributes",{},n1),l1=e1.styleParser?styleParser(n1):[];return _objectSpread2({iconName:r1,title:n1.getAttribute("title"),titleId:n1.getAttribute("data-fa-title-id"),prefix:o1,transform:meaninglessTransform,mask:{iconName:null,prefix:null,rest:[]},maskId:null,symbol:!1,extra:{classes:i1,styles:l1,attributes:a1}},s1)}var styles$2=namespace.styles;function generateMutation(n1){var e1=config.autoReplaceSvg==="nest"?parseMeta(n1,{styleParser:!1}):parseMeta(n1);return~e1.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)?callProvided("generateLayersText",n1,e1):callProvided("generateSvgReplacementMutation",n1,e1)}var knownPrefixes=new Set;FAMILIES.map(function(n1){knownPrefixes.add("fa-".concat(n1))});Object.keys(PREFIX_TO_STYLE[FAMILY_CLASSIC]).map(knownPrefixes.add.bind(knownPrefixes));Object.keys(PREFIX_TO_STYLE[FAMILY_SHARP]).map(knownPrefixes.add.bind(knownPrefixes));knownPrefixes=_toConsumableArray(knownPrefixes);function onTree(n1){var e1=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;if(!IS_DOM)return Promise.resolve();var t1=DOCUMENT.documentElement.classList,r1=function(f1){return t1.add("".concat(HTML_CLASS_I2SVG_BASE_CLASS,"-").concat(f1))},o1=function(f1){return t1.remove("".concat(HTML_CLASS_I2SVG_BASE_CLASS,"-").concat(f1))},i1=config.autoFetchSvg?knownPrefixes:FAMILIES.map(function(u1){return"fa-".concat(u1)}).concat(Object.keys(styles$2));i1.includes("fa")||i1.push("fa");var a1=[".".concat(LAYERS_TEXT_CLASSNAME,":not([").concat(DATA_FA_I2SVG,"])")].concat(i1.map(function(u1){return".".concat(u1,":not([").concat(DATA_FA_I2SVG,"])")})).join(", ");if(a1.length===0)return Promise.resolve();var s1=[];try{s1=toArray(n1.querySelectorAll(a1))}catch{}if(s1.length>0)r1("pending"),o1("complete");else return Promise.resolve();var l1=perf.begin("onTree"),c1=s1.reduce(function(u1,f1){try{var p1=generateMutation(f1);p1&&u1.push(p1)}catch(d1){PRODUCTION||d1.name==="MissingIcon"&&console.error(d1)}return u1},[]);return new Promise(function(u1,f1){Promise.all(c1).then(function(p1){perform(p1,function(){r1("active"),r1("complete"),o1("pending"),typeof e1=="function"&&e1(),l1(),u1()})}).catch(function(p1){l1(),f1(p1)})})}function onNode(n1){var e1=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;generateMutation(n1).then(function(t1){t1&&perform([t1],e1)})}function resolveIcons(n1){return function(e1){var t1=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r1=(e1||{}).icon?e1:findIconDefinition(e1||{}),o1=t1.mask;return o1&&(o1=(o1||{}).icon?o1:findIconDefinition(o1||{})),n1(r1,_objectSpread2(_objectSpread2({},t1),{},{mask:o1}))}}var render=function n1(e1){var t1=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r1=t1.transform,o1=r1===void 0?meaninglessTransform:r1,i1=t1.symbol,a1=i1===void 0?!1:i1,s1=t1.mask,l1=s1===void 0?null:s1,c1=t1.maskId,u1=c1===void 0?null:c1,f1=t1.title,p1=f1===void 0?null:f1,d1=t1.titleId,m1=d1===void 0?null:d1,_1=t1.classes,h1=_1===void 0?[]:_1,b1=t1.attributes,$1=b1===void 0?{}:b1,y1=t1.styles,k1=y1===void 0?{}:y1;if(!!e1){var S1=e1.prefix,O1=e1.iconName,C1=e1.icon;return domVariants(_objectSpread2({type:"icon"},e1),function(){return callHooks("beforeDOMElementCreation",{iconDefinition:e1,params:t1}),config.autoA11y&&(p1?$1["aria-labelledby"]="".concat(config.replacementClass,"-title-").concat(m1||nextUniqueId()):($1["aria-hidden"]="true",$1.focusable="false")),makeInlineSvgAbstract({icons:{main:asFoundIcon(C1),mask:l1?asFoundIcon(l1.icon):{found:!1,width:null,height:null,icon:{}}},prefix:S1,iconName:O1,transform:_objectSpread2(_objectSpread2({},meaninglessTransform),o1),symbol:a1,title:p1,maskId:u1,titleId:m1,extra:{attributes:$1,styles:k1,classes:h1}})})}},ReplaceElements={mixout:function n1(){return{icon:resolveIcons(render)}},hooks:function n1(){return{mutationObserverCallbacks:function(t1){return t1.treeCallback=onTree,t1.nodeCallback=onNode,t1}}},provides:function n1(e1){e1.i2svg=function(t1){var r1=t1.node,o1=r1===void 0?DOCUMENT:r1,i1=t1.callback,a1=i1===void 0?function(){}:i1;return onTree(o1,a1)},e1.generateSvgReplacementMutation=function(t1,r1){var o1=r1.iconName,i1=r1.title,a1=r1.titleId,s1=r1.prefix,l1=r1.transform,c1=r1.symbol,u1=r1.mask,f1=r1.maskId,p1=r1.extra;return new Promise(function(d1,m1){Promise.all([findIcon(o1,s1),u1.iconName?findIcon(u1.iconName,u1.prefix):Promise.resolve({found:!1,width:512,height:512,icon:{}})]).then(function(_1){var h1=_slicedToArray(_1,2),b1=h1[0],$1=h1[1];d1([t1,makeInlineSvgAbstract({icons:{main:b1,mask:$1},prefix:s1,iconName:o1,transform:l1,symbol:c1,maskId:f1,title:i1,titleId:a1,extra:p1,watchable:!0})])}).catch(m1)})},e1.generateAbstractIcon=function(t1){var r1=t1.children,o1=t1.attributes,i1=t1.main,a1=t1.transform,s1=t1.styles,l1=joinStyles(s1);l1.length>0&&(o1.style=l1);var c1;return transformIsMeaningful(a1)&&(c1=callProvided("generateAbstractTransformGrouping",{main:i1,transform:a1,containerWidth:i1.width,iconWidth:i1.width})),r1.push(c1||i1.icon),{children:r1,attributes:o1}}}},Layers={mixout:function n1(){return{layer:function(t1){var r1=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o1=r1.classes,i1=o1===void 0?[]:o1;return domVariants({type:"layer"},function(){callHooks("beforeDOMElementCreation",{assembler:t1,params:r1});var a1=[];return t1(function(s1){Array.isArray(s1)?s1.map(function(l1){a1=a1.concat(l1.abstract)}):a1=a1.concat(s1.abstract)}),[{tag:"span",attributes:{class:["".concat(config.cssPrefix,"-layers")].concat(_toConsumableArray(i1)).join(" ")},children:a1}]})}}}},LayersCounter={mixout:function n1(){return{counter:function(t1){var r1=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o1=r1.title,i1=o1===void 0?null:o1,a1=r1.classes,s1=a1===void 0?[]:a1,l1=r1.attributes,c1=l1===void 0?{}:l1,u1=r1.styles,f1=u1===void 0?{}:u1;return domVariants({type:"counter",content:t1},function(){return callHooks("beforeDOMElementCreation",{content:t1,params:r1}),makeLayersCounterAbstract({content:t1.toString(),title:i1,extra:{attributes:c1,styles:f1,classes:["".concat(config.cssPrefix,"-layers-counter")].concat(_toConsumableArray(s1))}})})}}}},LayersText={mixout:function n1(){return{text:function(t1){var r1=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o1=r1.transform,i1=o1===void 0?meaninglessTransform:o1,a1=r1.title,s1=a1===void 0?null:a1,l1=r1.classes,c1=l1===void 0?[]:l1,u1=r1.attributes,f1=u1===void 0?{}:u1,p1=r1.styles,d1=p1===void 0?{}:p1;return domVariants({type:"text",content:t1},function(){return callHooks("beforeDOMElementCreation",{content:t1,params:r1}),makeLayersTextAbstract({content:t1,transform:_objectSpread2(_objectSpread2({},meaninglessTransform),i1),title:s1,extra:{attributes:f1,styles:d1,classes:["".concat(config.cssPrefix,"-layers-text")].concat(_toConsumableArray(c1))}})})}}},provides:function n1(e1){e1.generateLayersText=function(t1,r1){var o1=r1.title,i1=r1.transform,a1=r1.extra,s1=null,l1=null;if(IS_IE){var c1=parseInt(getComputedStyle(t1).fontSize,10),u1=t1.getBoundingClientRect();s1=u1.width/c1,l1=u1.height/c1}return config.autoA11y&&!o1&&(a1.attributes["aria-hidden"]="true"),Promise.resolve([t1,makeLayersTextAbstract({content:t1.innerHTML,width:s1,height:l1,transform:i1,title:o1,extra:a1,watchable:!0})])}}},CLEAN_CONTENT_PATTERN=new RegExp('"',"ug"),SECONDARY_UNICODE_RANGE=[1105920,1112319];function hexValueFromContent(n1){var e1=n1.replace(CLEAN_CONTENT_PATTERN,""),t1=codePointAt(e1,0),r1=t1>=SECONDARY_UNICODE_RANGE[0]&&t1<=SECONDARY_UNICODE_RANGE[1],o1=e1.length===2?e1[0]===e1[1]:!1;return{value:toHex(o1?e1[0]:e1),isSecondary:r1||o1}}function replaceForPosition(n1,e1){var t1="".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(e1.replace(":","-"));return new Promise(function(r1,o1){if(n1.getAttribute(t1)!==null)return r1();var i1=toArray(n1.children),a1=i1.filter(function(C1){return C1.getAttribute(DATA_FA_PSEUDO_ELEMENT)===e1})[0],s1=WINDOW.getComputedStyle(n1,e1),l1=s1.getPropertyValue("font-family").match(FONT_FAMILY_PATTERN),c1=s1.getPropertyValue("font-weight"),u1=s1.getPropertyValue("content");if(a1&&!l1)return n1.removeChild(a1),r1();if(l1&&u1!=="none"&&u1!==""){var f1=s1.getPropertyValue("content"),p1=~["Sharp"].indexOf(l1[2])?FAMILY_SHARP:FAMILY_CLASSIC,d1=~["Solid","Regular","Light","Thin","Duotone","Brands","Kit"].indexOf(l1[2])?STYLE_TO_PREFIX[p1][l1[2].toLowerCase()]:FONT_WEIGHT_TO_PREFIX[p1][c1],m1=hexValueFromContent(f1),_1=m1.value,h1=m1.isSecondary,b1=l1[0].startsWith("FontAwesome"),$1=byUnicode(d1,_1),y1=$1;if(b1){var k1=byOldUnicode(_1);k1.iconName&&k1.prefix&&($1=k1.iconName,d1=k1.prefix)}if($1&&!h1&&(!a1||a1.getAttribute(DATA_PREFIX)!==d1||a1.getAttribute(DATA_ICON)!==y1)){n1.setAttribute(t1,y1),a1&&n1.removeChild(a1);var S1=blankMeta(),O1=S1.extra;O1.attributes[DATA_FA_PSEUDO_ELEMENT]=e1,findIcon($1,d1).then(function(C1){var M1=makeInlineSvgAbstract(_objectSpread2(_objectSpread2({},S1),{},{icons:{main:C1,mask:emptyCanonicalIcon()},prefix:d1,iconName:y1,extra:O1,watchable:!0})),z1=DOCUMENT.createElement("svg");e1==="::before"?n1.insertBefore(z1,n1.firstChild):n1.appendChild(z1),z1.outerHTML=M1.map(function(L1){return toHtml(L1)}).join(`
1640
1640
  `),n1.removeAttribute(t1),r1()}).catch(o1)}else r1()}else r1()})}function replace$1(n1){return Promise.all([replaceForPosition(n1,"::before"),replaceForPosition(n1,"::after")])}function processable(n1){return n1.parentNode!==document.head&&!~TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS.indexOf(n1.tagName.toUpperCase())&&!n1.getAttribute(DATA_FA_PSEUDO_ELEMENT)&&(!n1.parentNode||n1.parentNode.tagName!=="svg")}function searchPseudoElements(n1){if(!!IS_DOM)return new Promise(function(e1,t1){var r1=toArray(n1.querySelectorAll("*")).filter(processable).map(replace$1),o1=perf.begin("searchPseudoElements");disableObservation(),Promise.all(r1).then(function(){o1(),enableObservation(),e1()}).catch(function(){o1(),enableObservation(),t1()})})}var PseudoElements={hooks:function n1(){return{mutationObserverCallbacks:function(t1){return t1.pseudoElementsCallback=searchPseudoElements,t1}}},provides:function n1(e1){e1.pseudoElements2svg=function(t1){var r1=t1.node,o1=r1===void 0?DOCUMENT:r1;config.searchPseudoElements&&searchPseudoElements(o1)}}},_unwatched=!1,MutationObserver$1={mixout:function n1(){return{dom:{unwatch:function(){disableObservation(),_unwatched=!0}}}},hooks:function n1(){return{bootstrap:function(){observe(chainHooks("mutationObserverCallbacks",{}))},noAuto:function(){disconnect()},watch:function(t1){var r1=t1.observeMutationsRoot;_unwatched?enableObservation():observe(chainHooks("mutationObserverCallbacks",{observeMutationsRoot:r1}))}}}},parseTransformString=function n1(e1){var t1={size:16,x:0,y:0,flipX:!1,flipY:!1,rotate:0};return e1.toLowerCase().split(" ").reduce(function(r1,o1){var i1=o1.toLowerCase().split("-"),a1=i1[0],s1=i1.slice(1).join("-");if(a1&&s1==="h")return r1.flipX=!0,r1;if(a1&&s1==="v")return r1.flipY=!0,r1;if(s1=parseFloat(s1),isNaN(s1))return r1;switch(a1){case"grow":r1.size=r1.size+s1;break;case"shrink":r1.size=r1.size-s1;break;case"left":r1.x=r1.x-s1;break;case"right":r1.x=r1.x+s1;break;case"up":r1.y=r1.y-s1;break;case"down":r1.y=r1.y+s1;break;case"rotate":r1.rotate=r1.rotate+s1;break}return r1},t1)},PowerTransforms={mixout:function n1(){return{parse:{transform:function(t1){return parseTransformString(t1)}}}},hooks:function n1(){return{parseNodeAttributes:function(t1,r1){var o1=r1.getAttribute("data-fa-transform");return o1&&(t1.transform=parseTransformString(o1)),t1}}},provides:function n1(e1){e1.generateAbstractTransformGrouping=function(t1){var r1=t1.main,o1=t1.transform,i1=t1.containerWidth,a1=t1.iconWidth,s1={transform:"translate(".concat(i1/2," 256)")},l1="translate(".concat(o1.x*32,", ").concat(o1.y*32,") "),c1="scale(".concat(o1.size/16*(o1.flipX?-1:1),", ").concat(o1.size/16*(o1.flipY?-1:1),") "),u1="rotate(".concat(o1.rotate," 0 0)"),f1={transform:"".concat(l1," ").concat(c1," ").concat(u1)},p1={transform:"translate(".concat(a1/2*-1," -256)")},d1={outer:s1,inner:f1,path:p1};return{tag:"g",attributes:_objectSpread2({},d1.outer),children:[{tag:"g",attributes:_objectSpread2({},d1.inner),children:[{tag:r1.icon.tag,children:r1.icon.children,attributes:_objectSpread2(_objectSpread2({},r1.icon.attributes),d1.path)}]}]}}}},ALL_SPACE={x:0,y:0,width:"100%",height:"100%"};function fillBlack(n1){var e1=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return n1.attributes&&(n1.attributes.fill||e1)&&(n1.attributes.fill="black"),n1}function deGroup(n1){return n1.tag==="g"?n1.children:[n1]}var Masks={hooks:function n1(){return{parseNodeAttributes:function(t1,r1){var o1=r1.getAttribute("data-fa-mask"),i1=o1?getCanonicalIcon(o1.split(" ").map(function(a1){return a1.trim()})):emptyCanonicalIcon();return i1.prefix||(i1.prefix=getDefaultUsablePrefix()),t1.mask=i1,t1.maskId=r1.getAttribute("data-fa-mask-id"),t1}}},provides:function n1(e1){e1.generateAbstractMask=function(t1){var r1=t1.children,o1=t1.attributes,i1=t1.main,a1=t1.mask,s1=t1.maskId,l1=t1.transform,c1=i1.width,u1=i1.icon,f1=a1.width,p1=a1.icon,d1=transformForSvg({transform:l1,containerWidth:f1,iconWidth:c1}),m1={tag:"rect",attributes:_objectSpread2(_objectSpread2({},ALL_SPACE),{},{fill:"white"})},_1=u1.children?{children:u1.children.map(fillBlack)}:{},h1={tag:"g",attributes:_objectSpread2({},d1.inner),children:[fillBlack(_objectSpread2({tag:u1.tag,attributes:_objectSpread2(_objectSpread2({},u1.attributes),d1.path)},_1))]},b1={tag:"g",attributes:_objectSpread2({},d1.outer),children:[h1]},$1="mask-".concat(s1||nextUniqueId()),y1="clip-".concat(s1||nextUniqueId()),k1={tag:"mask",attributes:_objectSpread2(_objectSpread2({},ALL_SPACE),{},{id:$1,maskUnits:"userSpaceOnUse",maskContentUnits:"userSpaceOnUse"}),children:[m1,b1]},S1={tag:"defs",children:[{tag:"clipPath",attributes:{id:y1},children:deGroup(p1)},k1]};return r1.push(S1,{tag:"rect",attributes:_objectSpread2({fill:"currentColor","clip-path":"url(#".concat(y1,")"),mask:"url(#".concat($1,")")},ALL_SPACE)}),{children:r1,attributes:o1}}}},MissingIconIndicator={provides:function n1(e1){var t1=!1;WINDOW.matchMedia&&(t1=WINDOW.matchMedia("(prefers-reduced-motion: reduce)").matches),e1.missingIconAbstract=function(){var r1=[],o1={fill:"currentColor"},i1={attributeType:"XML",repeatCount:"indefinite",dur:"2s"};r1.push({tag:"path",attributes:_objectSpread2(_objectSpread2({},o1),{},{d:"M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"})});var a1=_objectSpread2(_objectSpread2({},i1),{},{attributeName:"opacity"}),s1={tag:"circle",attributes:_objectSpread2(_objectSpread2({},o1),{},{cx:"256",cy:"364",r:"28"}),children:[]};return t1||s1.children.push({tag:"animate",attributes:_objectSpread2(_objectSpread2({},i1),{},{attributeName:"r",values:"28;14;28;28;14;28;"})},{tag:"animate",attributes:_objectSpread2(_objectSpread2({},a1),{},{values:"1;0;1;1;0;1;"})}),r1.push(s1),r1.push({tag:"path",attributes:_objectSpread2(_objectSpread2({},o1),{},{opacity:"1",d:"M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"}),children:t1?[]:[{tag:"animate",attributes:_objectSpread2(_objectSpread2({},a1),{},{values:"1;0;0;0;0;1;"})}]}),t1||r1.push({tag:"path",attributes:_objectSpread2(_objectSpread2({},o1),{},{opacity:"0",d:"M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"}),children:[{tag:"animate",attributes:_objectSpread2(_objectSpread2({},a1),{},{values:"0;0;1;1;0;0;"})}]}),{tag:"g",attributes:{class:"missing"},children:r1}}}},SvgSymbols={hooks:function n1(){return{parseNodeAttributes:function(t1,r1){var o1=r1.getAttribute("data-fa-symbol"),i1=o1===null?!1:o1===""?!0:o1;return t1.symbol=i1,t1}}}},plugins=[InjectCSS,ReplaceElements,Layers,LayersCounter,LayersText,PseudoElements,MutationObserver$1,PowerTransforms,Masks,MissingIconIndicator,SvgSymbols];registerPlugins(plugins,{mixoutsTo:api});api.noAuto;api.config;var library$1=api.library,dom$1=api.dom;api.parse;api.findIconDefinition;api.toHtml;api.icon;api.layer;api.text;api.counter;const FontAwesomeIcon_svelte_svelte_type_style_lang="";function create_fragment$6t(n1){let e1,t1;return{c(){e1=element("span"),t1=element("i"),attr(t1,"class",n1[0]),attr(e1,"class","svelte-ro5exh")},m(r1,o1){insert$1(r1,e1,o1),append$1(e1,t1)},p(r1,[o1]){o1&1&&attr(t1,"class",r1[0])},i:noop$5,o:noop$5,d(r1){r1&&detach(e1)}}}library$1.add(faXmark,faBook,faPlay,faLock,faGithub,faDiscord,faEnvelope,faFileArrowUp,faChevronLeft,faCircleInfo,faBold,faItalic,faHeading,faQuoteLeft,faListUl,faListOl,faLink,faImage,faEye,faColumns,faArrowsAlt,faQuestionCircle,faCircleCheck,faGear);dom$1.watch();function instance$6C(n1,e1,t1){let{name:r1}=e1;return n1.$$set=o1=>{"name"in o1&&t1(0,r1=o1.name)},[r1]}class FontAwesomeIcon extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6C,create_fragment$6t,safe_not_equal,{name:0})}}const EditDatasourceConfigButton_svelte_svelte_type_style_lang="";function create_if_block$31(n1){let e1,t1,r1,o1,i1;return t1=new FontAwesomeIcon({props:{name:"fa-solid fa-circle-check"}}),o1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_1$3g]},$$scope:{ctx:n1}}}),{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment),attr(e1,"class","connected svelte-15ulhop")},m(a1,s1){insert$1(a1,e1,s1),mount_component(t1,e1,null),append$1(e1,r1),mount_component(o1,e1,null),i1=!0},i(a1){i1||(transition_in(t1.$$.fragment,a1),transition_in(o1.$$.fragment,a1),i1=!0)},o(a1){transition_out(t1.$$.fragment,a1),transition_out(o1.$$.fragment,a1),i1=!1},d(a1){a1&&detach(e1),destroy_component(t1),destroy_component(o1)}}}function create_default_slot_1$3g(n1){let e1;return{c(){e1=text("Connected")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot$4p(n1){let e1=n1[1](n1[0])+"",t1;return{c(){t1=text(e1)},m(r1,o1){insert$1(r1,t1,o1)},p(r1,o1){o1&1&&e1!==(e1=r1[1](r1[0])+"")&&set_data(t1,e1)},d(r1){r1&&detach(t1)}}}function create_fragment$6s(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1=n1[0].source!==IntegrationTypes.REST&&create_if_block$31(n1);return i1=new Body({props:{$$slots:{default:[create_default_slot$4p]},$$scope:{ctx:n1}}}),l1=new FontAwesomeIcon({props:{name:"fa-solid fa-gear"}}),{c(){e1=element("div"),t1=element("div"),p1&&p1.c(),r1=space$1(),o1=element("div"),create_component(i1.$$.fragment),a1=space$1(),s1=element("div"),create_component(l1.$$.fragment),attr(o1,"class","truncate svelte-15ulhop"),attr(t1,"class","left svelte-15ulhop"),attr(s1,"class","right svelte-15ulhop"),attr(e1,"class","button svelte-15ulhop")},m(d1,m1){insert$1(d1,e1,m1),append$1(e1,t1),p1&&p1.m(t1,null),append$1(t1,r1),append$1(t1,o1),mount_component(i1,o1,null),append$1(e1,a1),append$1(e1,s1),mount_component(l1,s1,null),c1=!0,u1||(f1=listen(e1,"click",n1[2]),u1=!0)},p(d1,[m1]){d1[0].source!==IntegrationTypes.REST?p1?m1&1&&transition_in(p1,1):(p1=create_if_block$31(d1),p1.c(),transition_in(p1,1),p1.m(t1,r1)):p1&&(group_outros(),transition_out(p1,1,1,()=>{p1=null}),check_outros());const _1={};m1&9&&(_1.$$scope={dirty:m1,ctx:d1}),i1.$set(_1)},i(d1){c1||(transition_in(p1),transition_in(i1.$$.fragment,d1),transition_in(l1.$$.fragment,d1),c1=!0)},o(d1){transition_out(p1),transition_out(i1.$$.fragment,d1),transition_out(l1.$$.fragment,d1),c1=!1},d(d1){d1&&detach(e1),p1&&p1.d(),destroy_component(i1),destroy_component(l1),u1=!1,f1()}}}function instance$6B(n1,e1,t1){let{datasource:r1}=e1;const o1=a1=>{if(a1.source===IntegrationTypes.REST)return a1.name;if(a1.source===IntegrationTypes.POSTGRES||a1.source===IntegrationTypes.MYSQL||a1.source===IntegrationTypes.ORACLE||a1.source===IntegrationTypes.REDIS)return`${a1.config.host}:${a1.config.port}`;if(a1.source===IntegrationTypes.SQL_SERVER)return`${a1.config.server}:${a1.config.port}`;if(a1.source===IntegrationTypes.SNOWFLAKE)return`${a1.config.warehouse}:${a1.config.database}:${a1.config.schema}`;if(a1.source===IntegrationTypes.ARANGODB)return`${a1.config.url}:${a1.config.databaseName}`;if(a1.source===IntegrationTypes.COUCHDB)return a1.config.database;if(a1.source===IntegrationTypes.DYNAMODB||a1.source===IntegrationTypes.S3)return`${a1.config.endpoint}:${a1.config.region}`;if(a1.source===IntegrationTypes.ELASTICSEARCH)return a1.config.url;if(a1.source===IntegrationTypes.FIRESTORE)return a1.config.projectId;if(a1.source===IntegrationTypes.MONGODB)return a1.config.db;if(a1.source===IntegrationTypes.AIRTABLE)return a1.config.base;if(a1.source===IntegrationTypes.GOOGLE_SHEETS)return a1.config.spreadsheetId};function i1(a1){bubble.call(this,n1,a1)}return n1.$$set=a1=>{"datasource"in a1&&t1(0,r1=a1.datasource)},[r1,o1,i1]}class EditDatasourceConfigButton extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6B,create_fragment$6s,safe_not_equal,{datasource:0})}}function create_default_slot$4o(n1){let e1,t1;return e1=new ConfigEditor({props:{integration:n1[2],config:n1[0].config,showNameField:!0,nameFieldValue:n1[0].name,onSubmit:n1[3]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.integration=r1[2]),o1&1&&(i1.config=r1[0].config),o1&1&&(i1.nameFieldValue=r1[0].name),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$6r(n1){let e1,t1,r1,o1;e1=new EditDatasourceConfigButton({props:{datasource:n1[0]}}),e1.$on("click",function(){is_function(n1[1].show)&&n1[1].show.apply(this,arguments)});let i1={$$slots:{default:[create_default_slot$4o]},$$scope:{ctx:n1}};return r1=new Modal({props:i1}),n1[5](r1),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),insert$1(a1,t1,s1),mount_component(r1,a1,s1),o1=!0},p(a1,[s1]){n1=a1;const l1={};s1&1&&(l1.datasource=n1[0]),e1.$set(l1);const c1={};s1&69&&(c1.$$scope={dirty:s1,ctx:n1}),r1.$set(c1)},i(a1){o1||(transition_in(e1.$$.fragment,a1),transition_in(r1.$$.fragment,a1),o1=!0)},o(a1){transition_out(e1.$$.fragment,a1),transition_out(r1.$$.fragment,a1),o1=!1},d(a1){destroy_component(e1,a1),a1&&detach(t1),n1[5](null),destroy_component(r1,a1)}}}function instance$6A(n1,e1,t1){let r1,o1;component_subscribe(n1,integrations,c1=>t1(4,o1=c1));let{datasource:i1}=e1,a1;async function s1({config:c1,name:u1}){var f1;try{await datasources.update({integration:r1,datasource:{...i1,config:c1,name:u1}}),notifications.success(`Datasource ${i1.name} updated successfully`)}catch(p1){return notifications.error((f1=p1==null?void 0:p1.message)!=null?f1:"Error saving datasource"),keepOpen}}function l1(c1){binding_callbacks[c1?"unshift":"push"](()=>{a1=c1,t1(1,a1)})}return n1.$$set=c1=>{"datasource"in c1&&t1(0,i1=c1.datasource)},n1.$$.update=()=>{n1.$$.dirty&17&&t1(2,r1=integrationForDatasource(o1,i1))},[i1,a1,r1,s1,o1,l1]}class EditDatasourceConfig extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6A,create_fragment$6r,safe_not_equal,{datasource:0})}}function create_fragment$6q(n1){let e1=(Array.isArray(n1[0])?n1[0].join(", "):n1[0])+"",t1;return{c(){t1=text(e1)},m(r1,o1){insert$1(r1,t1,o1)},p(r1,[o1]){o1&1&&e1!==(e1=(Array.isArray(r1[0])?r1[0].join(", "):r1[0])+"")&&set_data(t1,e1)},i:noop$5,o:noop$5,d(r1){r1&&detach(t1)}}}function instance$6z(n1,e1,t1){let{value:r1}=e1;return n1.$$set=o1=>{"value"in o1&&t1(0,r1=o1.value)},[r1]}class ArrayRenderer extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6z,create_fragment$6q,safe_not_equal,{value:0})}}function create_default_slot_1$3f(n1){let e1;return{c(){e1=text("Provide a name for your new table; you can add columns once it is created.")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot$4n(n1){let e1,t1,r1,o1,i1,a1;e1=new Body({props:{$$slots:{default:[create_default_slot_1$3f]},$$scope:{ctx:n1}}});function s1(u1){n1[6](u1)}function l1(u1){n1[7](u1)}let c1={label:"Table Name"};return n1[1]!==void 0&&(c1.error=n1[1]),n1[0]!==void 0&&(c1.value=n1[0]),r1=new Input$5({props:c1}),binding_callbacks.push(()=>bind$3(r1,"error",s1)),binding_callbacks.push(()=>bind$3(r1,"value",l1)),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(u1,f1){mount_component(e1,u1,f1),insert$1(u1,t1,f1),mount_component(r1,u1,f1),a1=!0},p(u1,f1){const p1={};f1&512&&(p1.$$scope={dirty:f1,ctx:u1}),e1.$set(p1);const d1={};!o1&&f1&2&&(o1=!0,d1.error=u1[1],add_flush_callback(()=>o1=!1)),!i1&&f1&1&&(i1=!0,d1.value=u1[0],add_flush_callback(()=>i1=!1)),r1.$set(d1)},i(u1){a1||(transition_in(e1.$$.fragment,u1),transition_in(r1.$$.fragment,u1),a1=!0)},o(u1){transition_out(e1.$$.fragment,u1),transition_out(r1.$$.fragment,u1),a1=!1},d(u1){destroy_component(e1,u1),u1&&detach(t1),destroy_component(r1,u1)}}}function create_fragment$6p(n1){let e1,t1;return e1=new ModalContent({props:{title:"Create new table",confirmText:"Create",onConfirm:n1[3],disabled:!n1[2],$$slots:{default:[create_default_slot$4n]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&4&&(i1.disabled=!r1[2]),o1&515&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function buildDefaultTable(n1,e1){return{name:n1,type:"external",primary:["id"],sourceId:e1,schema:{id:{autocolumn:!0,type:"number"}}}}function instance$6y(n1,e1,t1){let r1,o1,i1;component_subscribe(n1,goto,p1=>t1(8,i1=p1));let{datasource:a1}=e1,s1="",l1=!1;async function c1(){try{t1(5,l1=!0);const p1=await tables.save(buildDefaultTable(s1,a1._id));await datasources.fetch(),i1(`../../table/${p1._id}`)}catch(p1){notifications.error(`Error saving table - ${(p1==null?void 0:p1.message)||"unknown error"}`)}}function u1(p1){o1=p1,t1(1,o1),t1(5,l1),t1(0,s1),t1(4,a1)}function f1(p1){s1=p1,t1(0,s1)}return n1.$$set=p1=>{"datasource"in p1&&t1(4,a1=p1.datasource)},n1.$$.update=()=>{var p1,d1;n1.$$.dirty&17&&t1(2,r1=s1&&s1.length>0&&!((p1=a1==null?void 0:a1.entities)!=null&&p1[s1])),n1.$$.dirty&49&&t1(1,o1=!l1&&s1&&((d1=a1==null?void 0:a1.entities)==null?void 0:d1[s1])?"Table name already in use.":null)},[s1,o1,r1,c1,a1,l1,u1,f1]}class CreateExternalTableModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6y,create_fragment$6p,safe_not_equal,{datasource:4})}}const Circle_svelte_svelte_type_style_lang="";function create_fragment$6o(n1){let e1;return{c(){e1=element("div"),attr(e1,"class","circle svelte-14upwad"),set_style(e1,"--size",n1[3]+n1[1]),set_style(e1,"--color",n1[0]),set_style(e1,"--duration",n1[2])},m(t1,r1){insert$1(t1,e1,r1)},p(t1,[r1]){r1&10&&set_style(e1,"--size",t1[3]+t1[1]),r1&1&&set_style(e1,"--color",t1[0]),r1&4&&set_style(e1,"--duration",t1[2])},i:noop$5,o:noop$5,d(t1){t1&&detach(e1)}}}function instance$6x(n1,e1,t1){let{color:r1="#FF3E00"}=e1,{unit:o1="px"}=e1,{duration:i1="0.75s"}=e1,{size:a1="60"}=e1;return n1.$$set=s1=>{"color"in s1&&t1(0,r1=s1.color),"unit"in s1&&t1(1,o1=s1.unit),"duration"in s1&&t1(2,i1=s1.duration),"size"in s1&&t1(3,a1=s1.size)},[r1,o1,i1,a1]}class Circle extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6x,create_fragment$6o,safe_not_equal,{color:0,unit:1,duration:2,size:3})}}const Circle2_svelte_svelte_type_style_lang="",Circle3_svelte_svelte_type_style_lang="",DoubleBounce_svelte_svelte_type_style_lang="",GoogleSpin_svelte_svelte_type_style_lang="",ScaleOut_svelte_svelte_type_style_lang="",SpinLine_svelte_svelte_type_style_lang="",Stretch_svelte_svelte_type_style_lang="",BarLoader_svelte_svelte_type_style_lang="",Jumper_svelte_svelte_type_style_lang="",RingLoader_svelte_svelte_type_style_lang="",SyncLoader_svelte_svelte_type_style_lang="",Rainbow_svelte_svelte_type_style_lang="",Wave_svelte_svelte_type_style_lang="",Firework_svelte_svelte_type_style_lang="",Pulse_svelte_svelte_type_style_lang="",Jellyfish_svelte_svelte_type_style_lang="",Chasing_svelte_svelte_type_style_lang="",Shadow_svelte_svelte_type_style_lang="",Square_svelte_svelte_type_style_lang="",Moon_svelte_svelte_type_style_lang="",Plane_svelte_svelte_type_style_lang="",Diamonds_svelte_svelte_type_style_lang="",Clock_svelte_svelte_type_style_lang="",Spinner_svelte_svelte_type_style_lang="";function create_fragment$6n(n1){let e1,t1,r1;return t1=new Circle({props:{size:n1[0],color:"var(--ink)",unit:"px"}}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"class","spinner-container svelte-1wtx5yq")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p(o1,[i1]){const a1={};i1&1&&(a1.size=o1[0]),t1.$set(a1)},i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function instance$6w(n1,e1,t1){let{size:r1="60"}=e1;return n1.$$set=o1=>{"size"in o1&&t1(0,r1=o1.size)},[r1]}class Spinner extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6w,create_fragment$6n,safe_not_equal,{size:0})}}const createTableSelectionStore=(n1,e1)=>{const t1=writable([]),r1=writable([]),o1=writable(null),i1=writable(!0);datasources.getTableNames(e1).then(c1=>{t1.set(c1),r1.set(c1.filter(u1=>{var f1;return(f1=e1.entities)==null?void 0:f1[u1]})),i1.set(!1)});const a1=c1=>{r1.set(c1)},s1=async c1=>{o1.set(null);try{await datasources.updateSchema(e1,get_store_value(r1)),await tables.fetch(),notifications.success("Tables fetched successfully."),await c1()}catch(u1){return u1 instanceof ImportTableError?o1.set(u1):notifications.error("Error fetching tables."),keepOpen}};return{subscribe:derived([t1,r1,o1,i1],([c1,u1,f1,p1])=>({tableNames:c1,selectedTableNames:u1,error:f1,loading:p1,hasSelected:u1.length>0})).subscribe,setSelectedTableNames:a1,importSelectedTables:s1}},index_svelte_svelte_type_style_lang$q="";function create_else_block$17(n1){let e1,t1;return e1=new Layout$m({props:{noPadding:!0,no:!0,$$slots:{default:[create_default_slot_1$3e]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&8270&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block$30(n1){let e1,t1,r1;return t1=new Spinner({props:{size:"20"}}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"class","loading svelte-kte2m3")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p:noop$5,i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_default_slot_2$2q(n1){let e1;return{c(){e1=text(n1[3])},m(t1,r1){insert$1(t1,e1,r1)},p(t1,r1){r1&8&&set_data(e1,t1[3])},d(t1){t1&&detach(e1)}}}function create_if_block_1$1G(n1){let e1,t1;return e1=new InlineAlert({props:{type:"error",header:n1[1].error.title,message:n1[1].error.description}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&2&&(i1.header=r1[1].error.title),o1&2&&(i1.message=r1[1].error.description),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_1$3e(n1){let e1,t1,r1,o1,i1,a1;e1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_2$2q]},$$scope:{ctx:n1}}}),r1=new FancyCheckboxGroup({props:{options:n1[1].tableNames,selected:n1[1].selectedTableNames,selectAllText:n1[2]}}),r1.$on("change",n1[11]);let s1=n1[1].error&&create_if_block_1$1G(n1);return{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment),o1=space$1(),s1&&s1.c(),i1=empty$1()},m(l1,c1){mount_component(e1,l1,c1),insert$1(l1,t1,c1),mount_component(r1,l1,c1),insert$1(l1,o1,c1),s1&&s1.m(l1,c1),insert$1(l1,i1,c1),a1=!0},p(l1,c1){const u1={};c1&8200&&(u1.$$scope={dirty:c1,ctx:l1}),e1.$set(u1);const f1={};c1&2&&(f1.options=l1[1].tableNames),c1&2&&(f1.selected=l1[1].selectedTableNames),c1&4&&(f1.selectAllText=l1[2]),r1.$set(f1),l1[1].error?s1?(s1.p(l1,c1),c1&2&&transition_in(s1,1)):(s1=create_if_block_1$1G(l1),s1.c(),transition_in(s1,1),s1.m(i1.parentNode,i1)):s1&&(group_outros(),transition_out(s1,1,1,()=>{s1=null}),check_outros())},i(l1){a1||(transition_in(e1.$$.fragment,l1),transition_in(r1.$$.fragment,l1),transition_in(s1),a1=!0)},o(l1){transition_out(e1.$$.fragment,l1),transition_out(r1.$$.fragment,l1),transition_out(s1),a1=!1},d(l1){destroy_component(e1,l1),l1&&detach(t1),destroy_component(r1,l1),l1&&detach(o1),s1&&s1.d(l1),l1&&detach(i1)}}}function create_default_slot$4m(n1){let e1,t1,r1,o1;const i1=[create_if_block$30,create_else_block$17],a1=[];function s1(l1,c1){return l1[1].loading?0:1}return e1=s1(n1),t1=a1[e1]=i1[e1](n1),{c(){t1.c(),r1=empty$1()},m(l1,c1){a1[e1].m(l1,c1),insert$1(l1,r1,c1),o1=!0},p(l1,c1){let u1=e1;e1=s1(l1),e1===u1?a1[e1].p(l1,c1):(group_outros(),transition_out(a1[u1],1,1,()=>{a1[u1]=null}),check_outros(),t1=a1[e1],t1?t1.p(l1,c1):(t1=a1[e1]=i1[e1](l1),t1.c()),transition_in(t1,1),t1.m(r1.parentNode,r1))},i(l1){o1||(transition_in(t1),o1=!0)},o(l1){transition_out(t1),o1=!1},d(l1){a1[e1].d(l1),l1&&detach(r1)}}}function create_fragment$6m(n1){let e1,t1;return e1=new ModalContent({props:{title:n1[5],cancelText:"Skip",size:"L",confirmText:n1[4],onConfirm:n1[12],disabled:n1[1].loading,$$slots:{default:[create_default_slot$4m]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&32&&(i1.title=r1[5]),o1&16&&(i1.confirmText=r1[4]),o1&65&&(i1.onConfirm=r1[12]),o1&2&&(i1.disabled=r1[1].loading),o1&8270&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$6v(n1,e1,t1){let r1,o1,i1,a1,s1,l1,c1,u1,f1=noop$5,p1=()=>(f1(),f1=subscribe(r1,$1=>t1(1,u1=$1)),r1);n1.$$.on_destroy.push(()=>f1());let{integration:d1}=e1,{datasource:m1}=e1,{onComplete:_1=()=>{}}=e1;const h1=$1=>r1.setSelectedTableNames($1.detail),b1=()=>r1.importSelectedTables(_1);return n1.$$set=$1=>{"integration"in $1&&t1(7,d1=$1.integration),"datasource"in $1&&t1(8,m1=$1.datasource),"onComplete"in $1&&t1(0,_1=$1.onComplete)},n1.$$.update=()=>{n1.$$.dirty&384&&p1(t1(6,r1=createTableSelectionStore(d1,m1))),n1.$$.dirty&128&&t1(9,o1=d1.name===IntegrationTypes.GOOGLE_SHEETS),n1.$$.dirty&512&&t1(10,i1=o1?"sheets":"tables"),n1.$$.dirty&1024&&t1(5,a1=`Choose your ${i1}`),n1.$$.dirty&1026&&t1(4,s1=u1.loading||u1.hasSelected?`Fetch ${i1}`:"Continue without fetching"),n1.$$.dirty&512&&t1(3,l1=o1?"Select which spreadsheets you want to connect.":"Choose what tables you want to sync with Budibase"),n1.$$.dirty&512&&t1(2,c1=o1?"Select all sheets":"Select all")},[_1,u1,c1,l1,s1,a1,r1,d1,m1,o1,i1,h1,b1]}class TableImportSelection extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6v,create_fragment$6m,safe_not_equal,{integration:7,datasource:8,onComplete:0})}}const Controls_svelte_svelte_type_style_lang="";function create_default_slot_3$1P(n1){let e1,t1;return e1=new CreateExternalTableModal({props:{datasource:n1[0]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasource=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_2$2p(n1){let e1,t1;return e1=new TableImportSelection({props:{datasource:n1[0],integration:n1[3],onComplete:tables.fetch}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasource=r1[0]),o1&8&&(i1.integration=r1[3]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_1$3d(n1){let e1;return{c(){e1=text("Create new table")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot$4l(n1){let e1;return{c(){e1=text("Fetch tables")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_fragment$6l(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1={$$slots:{default:[create_default_slot_3$1P]},$$scope:{ctx:n1}};e1=new Modal({props:u1}),n1[5](e1);let f1={$$slots:{default:[create_default_slot_2$2p]},$$scope:{ctx:n1}};return r1=new Modal({props:f1}),n1[6](r1),a1=new Button({props:{cta:!0,$$slots:{default:[create_default_slot_1$3d]},$$scope:{ctx:n1}}}),a1.$on("click",function(){is_function(n1[1].show)&&n1[1].show.apply(this,arguments)}),l1=new Button({props:{secondary:!0,$$slots:{default:[create_default_slot$4l]},$$scope:{ctx:n1}}}),l1.$on("click",function(){is_function(n1[2].show)&&n1[2].show.apply(this,arguments)}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment),o1=space$1(),i1=element("div"),create_component(a1.$$.fragment),s1=space$1(),create_component(l1.$$.fragment),attr(i1,"class","buttons svelte-edxu3m")},m(p1,d1){mount_component(e1,p1,d1),insert$1(p1,t1,d1),mount_component(r1,p1,d1),insert$1(p1,o1,d1),insert$1(p1,i1,d1),mount_component(a1,i1,null),append$1(i1,s1),mount_component(l1,i1,null),c1=!0},p(p1,[d1]){n1=p1;const m1={};d1&129&&(m1.$$scope={dirty:d1,ctx:n1}),e1.$set(m1);const _1={};d1&137&&(_1.$$scope={dirty:d1,ctx:n1}),r1.$set(_1);const h1={};d1&128&&(h1.$$scope={dirty:d1,ctx:n1}),a1.$set(h1);const b1={};d1&128&&(b1.$$scope={dirty:d1,ctx:n1}),l1.$set(b1)},i(p1){c1||(transition_in(e1.$$.fragment,p1),transition_in(r1.$$.fragment,p1),transition_in(a1.$$.fragment,p1),transition_in(l1.$$.fragment,p1),c1=!0)},o(p1){transition_out(e1.$$.fragment,p1),transition_out(r1.$$.fragment,p1),transition_out(a1.$$.fragment,p1),transition_out(l1.$$.fragment,p1),c1=!1},d(p1){n1[5](null),destroy_component(e1,p1),p1&&detach(t1),n1[6](null),destroy_component(r1,p1),p1&&detach(o1),p1&&detach(i1),destroy_component(a1),destroy_component(l1)}}}function instance$6u(n1,e1,t1){let r1,o1;component_subscribe(n1,integrations,u1=>t1(4,o1=u1));let{datasource:i1}=e1,a1,s1;function l1(u1){binding_callbacks[u1?"unshift":"push"](()=>{a1=u1,t1(1,a1)})}function c1(u1){binding_callbacks[u1?"unshift":"push"](()=>{s1=u1,t1(2,s1)})}return n1.$$set=u1=>{"datasource"in u1&&t1(0,i1=u1.datasource)},n1.$$.update=()=>{n1.$$.dirty&17&&t1(3,r1=integrationForDatasource(o1,i1))},[i1,a1,s1,r1,o1,l1,c1]}class Controls extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6u,create_fragment$6l,safe_not_equal,{datasource:0})}}const Panel_svelte_svelte_type_style_lang$1="",get_tooltip_slot_changes=n1=>({}),get_tooltip_slot_context=n1=>({}),get_controls_slot_changes=n1=>({}),get_controls_slot_context=n1=>({});function create_fragment$6k(n1){let e1,t1,r1,o1,i1,a1,s1,l1;const c1=n1[1].controls,u1=create_slot(c1,n1,n1[0],get_controls_slot_context),f1=n1[1].tooltip,p1=create_slot(f1,n1,n1[0],get_tooltip_slot_context),d1=n1[1].default,m1=create_slot(d1,n1,n1[0],null);return{c(){e1=element("section"),t1=element("div"),r1=element("div"),u1&&u1.c(),o1=space$1(),i1=element("div"),p1&&p1.c(),a1=space$1(),s1=element("div"),m1&&m1.c(),attr(r1,"class","controls"),attr(i1,"class","tooltip svelte-dztq1y"),attr(t1,"class","header svelte-dztq1y")},m(_1,h1){insert$1(_1,e1,h1),append$1(e1,t1),append$1(t1,r1),u1&&u1.m(r1,null),append$1(t1,o1),append$1(t1,i1),p1&&p1.m(i1,null),append$1(e1,a1),append$1(e1,s1),m1&&m1.m(s1,null),l1=!0},p(_1,[h1]){u1&&u1.p&&(!l1||h1&1)&&update_slot_base(u1,c1,_1,_1[0],l1?get_slot_changes(c1,_1[0],h1,get_controls_slot_changes):get_all_dirty_from_scope(_1[0]),get_controls_slot_context),p1&&p1.p&&(!l1||h1&1)&&update_slot_base(p1,f1,_1,_1[0],l1?get_slot_changes(f1,_1[0],h1,get_tooltip_slot_changes):get_all_dirty_from_scope(_1[0]),get_tooltip_slot_context),m1&&m1.p&&(!l1||h1&1)&&update_slot_base(m1,d1,_1,_1[0],l1?get_slot_changes(d1,_1[0],h1,null):get_all_dirty_from_scope(_1[0]),null)},i(_1){l1||(transition_in(u1,_1),transition_in(p1,_1),transition_in(m1,_1),l1=!0)},o(_1){transition_out(u1,_1),transition_out(p1,_1),transition_out(m1,_1),l1=!1},d(_1){_1&&detach(e1),u1&&u1.d(_1),p1&&p1.d(_1),m1&&m1.d(_1)}}}function instance$6t(n1,e1,t1){let{$$slots:r1={},$$scope:o1}=e1;return n1.$$set=i1=>{"$$scope"in i1&&t1(0,o1=i1.$$scope)},[o1,r1]}class Panel$1 extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6t,create_fragment$6k,safe_not_equal,{})}}function create_default_slot$4k(n1){let e1;return{c(){e1=text(n1[0])},m(t1,r1){insert$1(t1,e1,r1)},p(t1,r1){r1&1&&set_data(e1,t1[0])},d(t1){t1&&detach(e1)}}}function create_fragment$6j(n1){let e1,t1;return e1=new ActionButton({props:{quiet:!0,icon:"Help",$$slots:{default:[create_default_slot$4k]},$$scope:{ctx:n1}}}),e1.$on("click",n1[2]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&9&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$6s(n1,e1,t1){let{title:r1=""}=e1,{href:o1=null}=e1;const i1=()=>window.open(o1,"_blank");return n1.$$set=a1=>{"title"in a1&&t1(0,r1=a1.title),"href"in a1&&t1(1,o1=a1.href)},[r1,o1,i1]}class Tooltip extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6s,create_fragment$6j,safe_not_equal,{title:0,href:1})}}function create_default_slot$4j(n1){var r1;let e1,t1;return e1=new Table$2({props:{schema:n1[2],data:Object.values(((r1=n1[0])==null?void 0:r1.entities)||{}),allowEditColumns:!1,allowEditRows:!1,allowSelectRows:!1,customRenderers:[{column:"primary",component:ArrayRenderer}]}}),e1.$on("click",n1[3]),{c(){create_component(e1.$$.fragment)},m(o1,i1){mount_component(e1,o1,i1),t1=!0},p(o1,i1){var s1;const a1={};i1&1&&(a1.data=Object.values(((s1=o1[0])==null?void 0:s1.entities)||{})),e1.$set(a1)},i(o1){t1||(transition_in(e1.$$.fragment,o1),t1=!0)},o(o1){transition_out(e1.$$.fragment,o1),t1=!1},d(o1){destroy_component(e1,o1)}}}function create_controls_slot$7(n1){let e1,t1;return e1=new Controls({props:{slot:"controls",datasource:n1[0]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasource=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_tooltip_slot$5(n1){let e1,t1;return e1=new Tooltip({props:{slot:"tooltip",title:"Using data in your app",href:"https://docs.budibase.com/docs/data"}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$6i(n1){let e1,t1;return e1=new Panel$1({props:{$$slots:{tooltip:[create_tooltip_slot$5],controls:[create_controls_slot$7],default:[create_default_slot$4j]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&19&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$6r(n1,e1,t1){let r1;component_subscribe(n1,goto,s1=>t1(1,r1=s1));let{datasource:o1}=e1,i1={name:{},primary:{displayName:"Primary Key"}};const a1=({detail:s1})=>r1(`../../table/${s1._id}`);return n1.$$set=s1=>{"datasource"in s1&&t1(0,o1=s1.datasource)},[o1,r1,i1,a1]}class Tables extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6r,create_fragment$6i,safe_not_equal,{datasource:0})}}const typeMismatch="Column type of the foreign key must match the primary key",columnBeingUsed="Column name cannot be an existing column",mustBeDifferentTables="From/to/through tables must be different",primaryKeyNotSet="Please pick the primary key",throughNotNullable="Ensure non-key columns are nullable or auto-generated",noRelationshipType="Please specify a relationship type",tableNotSet="Please specify a table",foreignKeyNotSet="Please pick a foreign key",relationshipAlreadyExists="A relationship between these tables already exists";function isColumnNameBeingUsed(n1,e1,t1){return!n1||!e1||e1===t1?!1:Object.keys(n1.schema).map(o1=>o1.toLowerCase()).indexOf(e1.toLowerCase())!==-1}function typeMismatchCheck(n1,e1,t1,r1){var a1,s1;let o1,i1;return t1&&r1&&(o1=(a1=n1==null?void 0:n1.schema[t1])==null?void 0:a1.type,i1=(s1=e1==null?void 0:e1.schema[r1])==null?void 0:s1.type),o1&&i1&&o1!==i1?typeMismatch:null}class RelationshipErrorChecker{constructor(e1,t1){this.invalidThroughTable=e1,this.relationshipExists=t1}setType(e1){this.type=e1}isMany(){return this.type===RelationshipType.MANY_TO_MANY}relationshipTypeSet(e1){return e1?null:noRelationshipType}tableSet(e1){return e1?null:tableNotSet}throughTableSet(e1){return this.isMany()&&!e1?tableNotSet:null}manyForeignKeySet(e1){return this.isMany()&&!e1?foreignKeyNotSet:null}foreignKeySet(e1){return!this.isMany()&&!e1?foreignKeyNotSet:null}primaryKeySet(e1){return!this.isMany()&&!e1?primaryKeyNotSet:null}throughIsNullable(){return this.invalidThroughTable()?throughNotNullable:null}doesRelationshipExists(){return this.isMany()&&this.relationshipExists()?relationshipAlreadyExists:null}differentTables(e1,t1,r1){return e1&&(e1===t1||r1&&e1===r1)?mustBeDifferentTables:null}columnBeingUsed(e1,t1,r1){return isColumnNameBeingUsed(e1,t1,r1)?columnBeingUsed:null}typeMismatch(e1,t1,r1,o1){return this.isMany()?null:typeMismatchCheck(e1,t1,r1,o1)}manyTypeMismatch(e1,t1,r1,o1){return this.isMany()?typeMismatchCheck(e1,t1,r1,o1):null}}const CreateEditRelationship_svelte_svelte_type_style_lang="";function create_default_slot_4$1m(n1){let e1;return{c(){e1=text("Tables")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_if_block_5$l(n1){let e1,t1,r1,o1;function i1(l1){n1[32](l1)}function a1(l1){n1[33](l1)}let s1={label:"Select from table",options:n1[4]};return n1[9]!==void 0&&(s1.value=n1[9]),n1[2].fromTable!==void 0&&(s1.error=n1[2].fromTable),e1=new Select_1$1({props:s1}),binding_callbacks.push(()=>bind$3(e1,"value",i1)),binding_callbacks.push(()=>bind$3(e1,"error",a1)),e1.$on("change",n1[34]),{c(){create_component(e1.$$.fragment)},m(l1,c1){mount_component(e1,l1,c1),o1=!0},p(l1,c1){const u1={};c1[0]&16&&(u1.options=l1[4]),!t1&&c1[0]&512&&(t1=!0,u1.value=l1[9],add_flush_callback(()=>t1=!1)),!r1&&c1[0]&4&&(r1=!0,u1.error=l1[2].fromTable,add_flush_callback(()=>r1=!1)),e1.$set(u1)},i(l1){o1||(transition_in(e1.$$.fragment,l1),o1=!0)},o(l1){transition_out(e1.$$.fragment,l1),o1=!1},d(l1){destroy_component(e1,l1)}}}function create_if_block_4$u(n1){let e1,t1,r1,o1;function i1(l1){n1[35](l1)}function a1(l1){n1[36](l1)}let s1={label:`Primary Key (${n1[20](n1[9]).name})`,options:Object.keys(n1[20](n1[9]).schema)};return n1[5]!==void 0&&(s1.value=n1[5]),n1[2].fromPrimary!==void 0&&(s1.error=n1[2].fromPrimary),e1=new Select_1$1({props:s1}),binding_callbacks.push(()=>bind$3(e1,"value",i1)),binding_callbacks.push(()=>bind$3(e1,"error",a1)),e1.$on("change",n1[23]),{c(){create_component(e1.$$.fragment)},m(l1,c1){mount_component(e1,l1,c1),o1=!0},p(l1,c1){const u1={};c1[0]&512&&(u1.label=`Primary Key (${l1[20](l1[9]).name})`),c1[0]&512&&(u1.options=Object.keys(l1[20](l1[9]).schema)),!t1&&c1[0]&32&&(t1=!0,u1.value=l1[5],add_flush_callback(()=>t1=!1)),!r1&&c1[0]&4&&(r1=!0,u1.error=l1[2].fromPrimary,add_flush_callback(()=>r1=!1)),e1.$set(u1)},i(l1){o1||(transition_in(e1.$$.fragment,l1),o1=!0)},o(l1){transition_out(e1.$$.fragment,l1),o1=!1},d(l1){destroy_component(e1,l1)}}}function create_if_block_3$G(n1){var l1,c1;let e1,t1,r1,o1;function i1(u1){n1[47](u1)}function a1(u1){n1[48](u1)}let s1={label:`Foreign Key (${(l1=n1[20](n1[10]))==null?void 0:l1.name})`,options:Object.keys((c1=n1[20](n1[10]))==null?void 0:c1.schema)};return n1[6]!==void 0&&(s1.value=n1[6]),n1[2].fromForeign!==void 0&&(s1.error=n1[2].fromForeign),e1=new Select_1$1({props:s1}),binding_callbacks.push(()=>bind$3(e1,"value",i1)),binding_callbacks.push(()=>bind$3(e1,"error",a1)),e1.$on("change",n1[23]),{c(){create_component(e1.$$.fragment)},m(u1,f1){mount_component(e1,u1,f1),o1=!0},p(u1,f1){var d1,m1;const p1={};f1[0]&1024&&(p1.label=`Foreign Key (${(d1=u1[20](u1[10]))==null?void 0:d1.name})`),f1[0]&1024&&(p1.options=Object.keys((m1=u1[20](u1[10]))==null?void 0:m1.schema)),!t1&&f1[0]&64&&(t1=!0,p1.value=u1[6],add_flush_callback(()=>t1=!1)),!r1&&f1[0]&4&&(r1=!0,p1.error=u1[2].fromForeign,add_flush_callback(()=>r1=!1)),e1.$set(p1)},i(u1){o1||(transition_in(e1.$$.fragment,u1),o1=!0)},o(u1){transition_out(e1.$$.fragment,u1),o1=!1},d(u1){destroy_component(e1,u1)}}}function create_if_block_1$1F(n1){let e1,t1,r1,o1,i1,a1;function s1(f1){n1[40](f1)}function l1(f1){n1[41](f1)}let c1={label:"Through",options:n1[4]};n1[11]!==void 0&&(c1.value=n1[11]),n1[2].throughTable!==void 0&&(c1.error=n1[2].throughTable),e1=new Select_1$1({props:c1}),binding_callbacks.push(()=>bind$3(e1,"value",s1)),binding_callbacks.push(()=>bind$3(e1,"error",l1)),e1.$on("change",n1[42]);let u1=n1[9]&&n1[10]&&n1[11]&&create_if_block_2$11(n1);return{c(){create_component(e1.$$.fragment),o1=space$1(),u1&&u1.c(),i1=empty$1()},m(f1,p1){mount_component(e1,f1,p1),insert$1(f1,o1,p1),u1&&u1.m(f1,p1),insert$1(f1,i1,p1),a1=!0},p(f1,p1){const d1={};p1[0]&16&&(d1.options=f1[4]),!t1&&p1[0]&2048&&(t1=!0,d1.value=f1[11],add_flush_callback(()=>t1=!1)),!r1&&p1[0]&4&&(r1=!0,d1.error=f1[2].throughTable,add_flush_callback(()=>r1=!1)),e1.$set(d1),f1[9]&&f1[10]&&f1[11]?u1?(u1.p(f1,p1),p1[0]&3584&&transition_in(u1,1)):(u1=create_if_block_2$11(f1),u1.c(),transition_in(u1,1),u1.m(i1.parentNode,i1)):u1&&(group_outros(),transition_out(u1,1,1,()=>{u1=null}),check_outros())},i(f1){a1||(transition_in(e1.$$.fragment,f1),transition_in(u1),a1=!0)},o(f1){transition_out(e1.$$.fragment,f1),transition_out(u1),a1=!1},d(f1){destroy_component(e1,f1),f1&&detach(o1),u1&&u1.d(f1),f1&&detach(i1)}}}function create_if_block_2$11(n1){var _1,h1,b1,$1;let e1,t1,r1,o1,i1,a1,s1,l1;function c1(y1){n1[43](y1)}function u1(y1){n1[44](y1)}let f1={label:`Foreign Key (${(_1=n1[20](n1[9]))==null?void 0:_1.name})`,options:Object.keys((h1=n1[20](n1[11]))==null?void 0:h1.schema)};n1[12]!==void 0&&(f1.value=n1[12]),n1[2].throughToKey!==void 0&&(f1.error=n1[2].throughToKey),e1=new Select_1$1({props:f1}),binding_callbacks.push(()=>bind$3(e1,"value",c1)),binding_callbacks.push(()=>bind$3(e1,"error",u1)),e1.$on("change",n1[23]);function p1(y1){n1[45](y1)}function d1(y1){n1[46](y1)}let m1={label:`Foreign Key (${(b1=n1[20](n1[10]))==null?void 0:b1.name})`,options:Object.keys(($1=n1[20](n1[11]))==null?void 0:$1.schema)};return n1[13]!==void 0&&(m1.value=n1[13]),n1[2].throughFromKey!==void 0&&(m1.error=n1[2].throughFromKey),i1=new Select_1$1({props:m1}),binding_callbacks.push(()=>bind$3(i1,"value",p1)),binding_callbacks.push(()=>bind$3(i1,"error",d1)),i1.$on("change",n1[23]),{c(){create_component(e1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment)},m(y1,k1){mount_component(e1,y1,k1),insert$1(y1,o1,k1),mount_component(i1,y1,k1),l1=!0},p(y1,k1){var C1,M1,z1,L1;const S1={};k1[0]&512&&(S1.label=`Foreign Key (${(C1=y1[20](y1[9]))==null?void 0:C1.name})`),k1[0]&2048&&(S1.options=Object.keys((M1=y1[20](y1[11]))==null?void 0:M1.schema)),!t1&&k1[0]&4096&&(t1=!0,S1.value=y1[12],add_flush_callback(()=>t1=!1)),!r1&&k1[0]&4&&(r1=!0,S1.error=y1[2].throughToKey,add_flush_callback(()=>r1=!1)),e1.$set(S1);const O1={};k1[0]&1024&&(O1.label=`Foreign Key (${(z1=y1[20](y1[10]))==null?void 0:z1.name})`),k1[0]&2048&&(O1.options=Object.keys((L1=y1[20](y1[11]))==null?void 0:L1.schema)),!a1&&k1[0]&8192&&(a1=!0,O1.value=y1[13],add_flush_callback(()=>a1=!1)),!s1&&k1[0]&4&&(s1=!0,O1.error=y1[2].throughFromKey,add_flush_callback(()=>s1=!1)),i1.$set(O1)},i(y1){l1||(transition_in(e1.$$.fragment,y1),transition_in(i1.$$.fragment,y1),l1=!0)},o(y1){transition_out(e1.$$.fragment,y1),transition_out(i1.$$.fragment,y1),l1=!1},d(y1){destroy_component(e1,y1),y1&&detach(o1),destroy_component(i1,y1)}}}function create_default_slot_3$1O(n1){let e1;return{c(){e1=text("Column names")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_2$2o(n1){let e1;return{c(){e1=text(`Budibase manages SQL relationships as a new column in the table, please
1641
- provide a name for these columns.`)},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$3c(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1,_1,h1,b1,$1,y1,k1,S1,O1,C1,M1,z1,L1,R1,H1,q1;function B1(u0){n1[29](u0)}function I1(u0){n1[30](u0)}let F1={label:"Relationship type",options:n1[18]};n1[3]!==void 0&&(F1.value=n1[3]),n1[2].relationshipType!==void 0&&(F1.error=n1[2].relationshipType),e1=new Select_1$1({props:F1}),binding_callbacks.push(()=>bind$3(e1,"value",B1)),binding_callbacks.push(()=>bind$3(e1,"error",I1)),e1.$on("change",n1[31]),a1=new Detail({props:{$$slots:{default:[create_default_slot_4$1m]},$$scope:{ctx:n1}}});let j1=!n1[1]&&create_if_block_5$l(n1),G1=n1[15]&&n1[9]&&create_if_block_4$u(n1);function Y1(u0){n1[37](u0)}function X1(u0){n1[38](u0)}let e0={label:"Select to table",options:n1[4]};n1[10]!==void 0&&(e0.value=n1[10]),n1[2].toTable!==void 0&&(e0.error=n1[2].toTable),u1=new Select_1$1({props:e0}),binding_callbacks.push(()=>bind$3(u1,"value",Y1)),binding_callbacks.push(()=>bind$3(u1,"error",X1)),u1.$on("change",n1[39]);const K1=[create_if_block_1$1F,create_if_block_3$G],Q1=[];function r0(u0,P0){return u0[14]?0:u0[15]&&u0[10]?1:-1}~(m1=r0(n1))&&(_1=Q1[m1]=K1[m1](n1)),$1=new Detail({props:{$$slots:{default:[create_default_slot_3$1O]},$$scope:{ctx:n1}}}),k1=new Body({props:{$$slots:{default:[create_default_slot_2$2o]},$$scope:{ctx:n1}}});function p0(u0){n1[49](u0)}function h0(u0){n1[50](u0)}let a0={label:"From table column"};n1[7]!==void 0&&(a0.value=n1[7]),n1[2].fromColumn!==void 0&&(a0.error=n1[2].fromColumn),O1=new Input$5({props:a0}),binding_callbacks.push(()=>bind$3(O1,"value",p0)),binding_callbacks.push(()=>bind$3(O1,"error",h0)),O1.$on("change",n1[23]);function t0(u0){n1[51](u0)}function y0(u0){n1[52](u0)}let I0={label:"To table column"};return n1[8]!==void 0&&(I0.value=n1[8]),n1[2].toColumn!==void 0&&(I0.error=n1[2].toColumn),L1=new Input$5({props:I0}),binding_callbacks.push(()=>bind$3(L1,"value",t0)),binding_callbacks.push(()=>bind$3(L1,"error",y0)),L1.$on("change",n1[23]),{c(){create_component(e1.$$.fragment),o1=space$1(),i1=element("div"),create_component(a1.$$.fragment),s1=space$1(),j1&&j1.c(),l1=space$1(),G1&&G1.c(),c1=space$1(),create_component(u1.$$.fragment),d1=space$1(),_1&&_1.c(),h1=space$1(),b1=element("div"),create_component($1.$$.fragment),y1=space$1(),create_component(k1.$$.fragment),S1=space$1(),create_component(O1.$$.fragment),z1=space$1(),create_component(L1.$$.fragment),attr(i1,"class","headings svelte-1imaf58"),attr(b1,"class","headings svelte-1imaf58")},m(u0,P0){mount_component(e1,u0,P0),insert$1(u0,o1,P0),insert$1(u0,i1,P0),mount_component(a1,i1,null),insert$1(u0,s1,P0),j1&&j1.m(u0,P0),insert$1(u0,l1,P0),G1&&G1.m(u0,P0),insert$1(u0,c1,P0),mount_component(u1,u0,P0),insert$1(u0,d1,P0),~m1&&Q1[m1].m(u0,P0),insert$1(u0,h1,P0),insert$1(u0,b1,P0),mount_component($1,b1,null),insert$1(u0,y1,P0),mount_component(k1,u0,P0),insert$1(u0,S1,P0),mount_component(O1,u0,P0),insert$1(u0,z1,P0),mount_component(L1,u0,P0),q1=!0},p(u0,P0){const L0={};!t1&&P0[0]&8&&(t1=!0,L0.value=u0[3],add_flush_callback(()=>t1=!1)),!r1&&P0[0]&4&&(r1=!0,L0.error=u0[2].relationshipType,add_flush_callback(()=>r1=!1)),e1.$set(L0);const x0={};P0[2]&4&&(x0.$$scope={dirty:P0,ctx:u0}),a1.$set(x0),u0[1]?j1&&(group_outros(),transition_out(j1,1,1,()=>{j1=null}),check_outros()):j1?(j1.p(u0,P0),P0[0]&2&&transition_in(j1,1)):(j1=create_if_block_5$l(u0),j1.c(),transition_in(j1,1),j1.m(l1.parentNode,l1)),u0[15]&&u0[9]?G1?(G1.p(u0,P0),P0[0]&33280&&transition_in(G1,1)):(G1=create_if_block_4$u(u0),G1.c(),transition_in(G1,1),G1.m(c1.parentNode,c1)):G1&&(group_outros(),transition_out(G1,1,1,()=>{G1=null}),check_outros());const V0={};P0[0]&16&&(V0.options=u0[4]),!f1&&P0[0]&1024&&(f1=!0,V0.value=u0[10],add_flush_callback(()=>f1=!1)),!p1&&P0[0]&4&&(p1=!0,V0.error=u0[2].toTable,add_flush_callback(()=>p1=!1)),u1.$set(V0);let c2=m1;m1=r0(u0),m1===c2?~m1&&Q1[m1].p(u0,P0):(_1&&(group_outros(),transition_out(Q1[c2],1,1,()=>{Q1[c2]=null}),check_outros()),~m1?(_1=Q1[m1],_1?_1.p(u0,P0):(_1=Q1[m1]=K1[m1](u0),_1.c()),transition_in(_1,1),_1.m(h1.parentNode,h1)):_1=null);const W0={};P0[2]&4&&(W0.$$scope={dirty:P0,ctx:u0}),$1.$set(W0);const Q0={};P0[2]&4&&(Q0.$$scope={dirty:P0,ctx:u0}),k1.$set(Q0);const d0={};!C1&&P0[0]&128&&(C1=!0,d0.value=u0[7],add_flush_callback(()=>C1=!1)),!M1&&P0[0]&4&&(M1=!0,d0.error=u0[2].fromColumn,add_flush_callback(()=>M1=!1)),O1.$set(d0);const O2={};!R1&&P0[0]&256&&(R1=!0,O2.value=u0[8],add_flush_callback(()=>R1=!1)),!H1&&P0[0]&4&&(H1=!0,O2.error=u0[2].toColumn,add_flush_callback(()=>H1=!1)),L1.$set(O2)},i(u0){q1||(transition_in(e1.$$.fragment,u0),transition_in(a1.$$.fragment,u0),transition_in(j1),transition_in(G1),transition_in(u1.$$.fragment,u0),transition_in(_1),transition_in($1.$$.fragment,u0),transition_in(k1.$$.fragment,u0),transition_in(O1.$$.fragment,u0),transition_in(L1.$$.fragment,u0),q1=!0)},o(u0){transition_out(e1.$$.fragment,u0),transition_out(a1.$$.fragment,u0),transition_out(j1),transition_out(G1),transition_out(u1.$$.fragment,u0),transition_out(_1),transition_out($1.$$.fragment,u0),transition_out(k1.$$.fragment,u0),transition_out(O1.$$.fragment,u0),transition_out(L1.$$.fragment,u0),q1=!1},d(u0){destroy_component(e1,u0),u0&&detach(o1),u0&&detach(i1),destroy_component(a1),u0&&detach(s1),j1&&j1.d(u0),u0&&detach(l1),G1&&G1.d(u0),u0&&detach(c1),destroy_component(u1,u0),u0&&detach(d1),~m1&&Q1[m1].d(u0),u0&&detach(h1),u0&&detach(b1),destroy_component($1),u0&&detach(y1),destroy_component(k1,u0),u0&&detach(S1),destroy_component(O1,u0),u0&&detach(z1),destroy_component(L1,u0)}}}function create_if_block$2$(n1){let e1,t1;return e1=new Button({props:{warning:!0,text:!0,$$slots:{default:[create_default_slot$4i]},$$scope:{ctx:n1}}}),e1.$on("click",n1[22]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1[2]&4&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$4i(n1){let e1;return{c(){e1=text("Delete")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_footer_slot$6(n1){let e1,t1,r1=n1[19]!=null&&create_if_block$2$(n1);return{c(){e1=element("div"),r1&&r1.c(),attr(e1,"slot","footer")},m(o1,i1){insert$1(o1,e1,i1),r1&&r1.m(e1,null),t1=!0},p(o1,i1){o1[19]!=null&&r1.p(o1,i1)},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){o1&&detach(e1),r1&&r1.d()}}}function create_fragment$6h(n1){let e1,t1;return e1=new ModalContent({props:{title:"Define Relationship",confirmText:"Save",onConfirm:n1[21],disabled:!n1[17],$$slots:{footer:[create_footer_slot$6],default:[create_default_slot_1$3c]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1[0]&131072&&(i1.disabled=!r1[17]),o1[0]&131071|o1[2]&4&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function getErrorCount(n1){return Object.entries(n1).filter(e1=>!!e1[1]).length}function instance$6q(n1,e1,t1){let r1,{save:o1}=e1,{datasource:i1}=e1,{plusTables:a1=[]}=e1,{fromRelationship:s1={}}=e1,{toRelationship:l1={}}=e1,{selectedFromTable:c1}=e1,{close:u1}=e1;const f1=[{label:"One to Many",value:RelationshipType.MANY_TO_ONE},{label:"Many to Many",value:RelationshipType.MANY_TO_MANY}];let p1=l1.name,d1=s1.name,m1=a1.find(X0=>X0._id===(l1==null?void 0:l1.tableId)),_1=a1.find(X0=>X0._id===(s1==null?void 0:s1.tableId)),h1,b1=new RelationshipErrorChecker(j1,G1),$1={},y1,k1,S1,O1,C1,M1,z1,L1,R1,H1,q1,B1,I1=!1;function F1(X0){return a1.find(d2=>d2._id===X0)}function j1(){var M2;if(!z1||!L1||!R1)return!1;const X0=a1.find(R2=>R2._id===z1),d2=Object.values(X0.schema).filter(R2=>R2.name!==R1&&R2.name!==L1);for(let R2 of d2)if(((M2=R2.constraints)==null?void 0:M2.presence)&&!R2.autocolumn)return!0;return!1}function G1(){if(m1&&_1&&m1===F1(C1)&&_1===F1(M1))return!1;let X0=Object.values(i1.entities[F1(C1).name].schema).filter(R2=>R2.through),d2=Object.values(i1.entities[F1(M1).name].schema).filter(R2=>R2.through);const M2=(R2,G0)=>R2===C1&&G0===M1||R2===M1&&G0===C1;return!!X0.find(R2=>d2.find(G0=>R2.through===G0.through&&M2(R2.tableId,G0.tableId)))}function Y1(){const X0=F1(C1)&&F1(M1)&&S1&&O1;return B1===RelationshipType.MANY_TO_ONE?X0&&y1&&k1:X0&&F1(z1)&&R1&&L1}function X1(){if(!Y1()&&!I1)return;t1(16,I1=!0),b1.setType(B1);const X0=F1(C1),d2=F1(M1),M2=F1(z1);return t1(2,$1={relationshipType:b1.relationshipTypeSet(B1),fromTable:b1.tableSet(X0)||b1.doesRelationshipExists()||b1.differentTables(C1,M1,z1),toTable:b1.tableSet(d2)||b1.doesRelationshipExists()||b1.differentTables(M1,C1,z1),throughTable:b1.throughTableSet(M2)||b1.throughIsNullable()||b1.differentTables(z1,C1,M1),throughFromKey:b1.manyForeignKeySet(R1)||b1.manyTypeMismatch(X0,M2,X0.primary[0],L1),throughToKey:b1.manyForeignKeySet(L1)||b1.manyTypeMismatch(d2,M2,d2.primary[0],R1),fromForeign:b1.foreignKeySet(k1)||b1.typeMismatch(X0,d2,y1,k1),fromPrimary:b1.primaryKeySet(y1),fromColumn:b1.columnBeingUsed(d2,S1,p1),toColumn:b1.columnBeingUsed(X0,O1,d1)}),getErrorCount($1)===0}function e0(X0){if(X0===RelationshipType.MANY_TO_ONE)return RelationshipType.ONE_TO_MANY;if(X0===RelationshipType.ONE_TO_MANY)return RelationshipType.MANY_TO_ONE;if(X0===RelationshipType.MANY_TO_MANY)return RelationshipType.MANY_TO_MANY}function K1(){const X0=uuid();let d2={...s1,tableId:M1,name:O1,relationshipType:B1,fieldName:k1,through:z1,throughFrom:R1,throughTo:L1,type:"link",main:!0,_id:X0},M2=t1(26,l1={...l1,tableId:C1,name:S1,relationshipType:e0(B1),through:z1,type:"link",_id:X0});const R2=d2.relationshipType===RelationshipType.MANY_TO_MANY;R2||(delete d2.through,delete M2.through),R2?(d2={...d2,through:F1(z1)._id,fieldName:F1(M1).primary[0]},M2={...M2,through:F1(z1)._id,fieldName:F1(C1).primary[0],throughFrom:d2.throughTo,throughTo:d2.throughFrom}):(d2={...d2,foreignKey:y1},M2={...M2,relationshipType:RelationshipType.ONE_TO_MANY,foreignKey:d2.fieldName,fieldName:y1}),t1(25,s1=d2),t1(26,l1=M2)}function Q1(){m1&&p1&&delete i1.entities[m1.name].schema[d1],_1&&d1&&delete i1.entities[_1.name].schema[p1]}async function r0(){if(!X1())return keepOpen;K1(),Q1(),t1(24,i1.entities[F1(C1).name].schema[s1.name]=s1,i1),t1(24,i1.entities[F1(M1).name].schema[l1.name]=l1,i1),await o1()}async function p0(){Q1(),await o1(),await tables.fetch(),u1()}function h0(X0){typeof X0=="function"&&X0(),X1()}onMount(()=>{s1&&(t1(5,y1=s1.foreignKey),t1(10,M1=s1.tableId),t1(11,z1=s1.through),t1(13,R1=s1.throughFrom),t1(12,L1=s1.throughTo),t1(8,O1=s1.name)),l1&&(t1(6,k1=l1.foreignKey),t1(9,C1=l1.tableId),t1(7,S1=l1.name)),t1(3,B1=s1.relationshipType||RelationshipType.MANY_TO_ONE),c1&&(t1(9,C1=c1._id),t1(7,S1=c1.name),t1(5,y1=(c1==null?void 0:c1.primary[0])||null))});function a0(X0){B1=X0,t1(3,B1)}function t0(X0){n1.$$.not_equal($1.relationshipType,X0)&&($1.relationshipType=X0,t1(2,$1))}const y0=()=>h0(()=>{t1(16,I1=!1)});function I0(X0){C1=X0,t1(9,C1)}function u0(X0){n1.$$.not_equal($1.fromTable,X0)&&($1.fromTable=X0,t1(2,$1))}const P0=X0=>h0(()=>{var M2;const d2=a1.find(R2=>R2._id===X0.detail);t1(7,S1=(d2==null?void 0:d2.name)||""),t1(5,y1=(M2=d2==null?void 0:d2.primary)==null?void 0:M2[0])});function L0(X0){y1=X0,t1(5,y1)}function x0(X0){n1.$$.not_equal($1.fromPrimary,X0)&&($1.fromPrimary=X0,t1(2,$1))}function V0(X0){M1=X0,t1(10,M1)}function c2(X0){n1.$$.not_equal($1.toTable,X0)&&($1.toTable=X0,t1(2,$1))}const W0=X0=>h0(()=>{const d2=a1.find(M2=>M2._id===X0.detail);t1(8,O1=d2.name||""),t1(6,k1=null)});function Q0(X0){z1=X0,t1(11,z1)}function d0(X0){n1.$$.not_equal($1.throughTable,X0)&&($1.throughTable=X0,t1(2,$1))}const O2=()=>h0(()=>{t1(12,L1=null),t1(13,R1=null)});function H0(X0){L1=X0,t1(12,L1)}function w0(X0){n1.$$.not_equal($1.throughToKey,X0)&&($1.throughToKey=X0,t1(2,$1))}function E0(X0){R1=X0,t1(13,R1)}function l0(X0){n1.$$.not_equal($1.throughFromKey,X0)&&($1.throughFromKey=X0,t1(2,$1))}function S0(X0){k1=X0,t1(6,k1)}function m0(X0){n1.$$.not_equal($1.fromForeign,X0)&&($1.fromForeign=X0,t1(2,$1))}function O0(X0){S1=X0,t1(7,S1)}function D0(X0){n1.$$.not_equal($1.fromColumn,X0)&&($1.fromColumn=X0,t1(2,$1))}function m2(X0){O1=X0,t1(8,O1)}function f2(X0){n1.$$.not_equal($1.toColumn,X0)&&($1.toColumn=X0,t1(2,$1))}return n1.$$set=X0=>{"save"in X0&&t1(27,o1=X0.save),"datasource"in X0&&t1(24,i1=X0.datasource),"plusTables"in X0&&t1(0,a1=X0.plusTables),"fromRelationship"in X0&&t1(25,s1=X0.fromRelationship),"toRelationship"in X0&&t1(26,l1=X0.toRelationship),"selectedFromTable"in X0&&t1(1,c1=X0.selectedFromTable),"close"in X0&&t1(28,u1=X0.close)},n1.$$.update=()=>{n1.$$.dirty[0]&1&&t1(4,h1=a1.map(X0=>({label:X0.name,value:X0._id}))),n1.$$.dirty[0]&4&&t1(17,r1=getErrorCount($1)===0&&Y1()),n1.$$.dirty[0]&8&&t1(14,H1=B1===RelationshipType.MANY_TO_MANY),n1.$$.dirty[0]&8&&t1(15,q1=B1===RelationshipType.MANY_TO_ONE)},[a1,c1,$1,B1,h1,y1,k1,S1,O1,C1,M1,z1,L1,R1,H1,q1,I1,r1,f1,p1,F1,r0,p0,h0,i1,s1,l1,o1,u1,a0,t0,y0,I0,u0,P0,L0,x0,V0,c2,W0,Q0,d0,O2,H0,w0,E0,l0,S0,m0,O0,D0,m2,f2]}class CreateEditRelationship extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6q,create_fragment$6h,safe_not_equal,{save:27,datasource:24,plusTables:0,fromRelationship:25,toRelationship:26,selectedFromTable:1,close:28},null,[-1,-1,-1])}}function create_default_slot$4h(n1){let e1,t1;return e1=new CreateEditRelationship({props:{save:n1[6],close:n1[2].hide,selectedFromTable:n1[5],datasource:n1[0],plusTables:n1[1],fromRelationship:n1[3],toRelationship:n1[4]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.close=r1[2].hide),o1&32&&(i1.selectedFromTable=r1[5]),o1&1&&(i1.datasource=r1[0]),o1&2&&(i1.plusTables=r1[1]),o1&8&&(i1.fromRelationship=r1[3]),o1&16&&(i1.toRelationship=r1[4]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$6g(n1){let e1,t1,r1={$$slots:{default:[create_default_slot$4h]},$$scope:{ctx:n1}};return e1=new Modal({props:r1}),n1[12](e1),{c(){create_component(e1.$$.fragment)},m(o1,i1){mount_component(e1,o1,i1),t1=!0},p(o1,[i1]){const a1={};i1&8255&&(a1.$$scope={dirty:i1,ctx:o1}),e1.$set(a1)},i(o1){t1||(transition_in(e1.$$.fragment,o1),t1=!0)},o(o1){transition_out(e1.$$.fragment,o1),t1=!1},d(o1){n1[12](null),destroy_component(e1,o1)}}}function instance$6p(n1,e1,t1){let{datasource:r1}=e1,{tables:o1}=e1,{beforeSave:i1=async()=>{}}=e1,{afterSave:a1=async()=>{}}=e1,{onError:s1=async()=>{}}=e1,l1,c1={},u1={},f1=null;function p1({fromRelationship:h1={},toRelationship:b1={},fromTable:$1=null}){t1(3,c1=h1),t1(4,u1=b1),t1(5,f1=$1),l1.show()}function d1(){l1.hide()}async function m1(h1){try{await i1({action:h1,datasource:r1});const b1=integrationForDatasource(get_store_value(integrations),r1);await datasources.update({datasource:r1,integration:b1}),await a1({datasource:r1,action:h1})}catch(b1){await s1({err:b1,datasource:r1,action:h1})}}function _1(h1){binding_callbacks[h1?"unshift":"push"](()=>{l1=h1,t1(2,l1)})}return n1.$$set=h1=>{"datasource"in h1&&t1(0,r1=h1.datasource),"tables"in h1&&t1(1,o1=h1.tables),"beforeSave"in h1&&t1(7,i1=h1.beforeSave),"afterSave"in h1&&t1(8,a1=h1.afterSave),"onError"in h1&&t1(9,s1=h1.onError)},[r1,o1,l1,c1,u1,f1,m1,i1,a1,s1,p1,d1,_1]}class CreateEditRelationshipModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6p,create_fragment$6g,safe_not_equal,{datasource:0,tables:1,beforeSave:7,afterSave:8,onError:9,show:10,hide:11})}get show(){return this.$$.ctx[10]}get hide(){return this.$$.ctx[11]}}function create_default_slot_1$3b(n1){let e1,t1;return e1=new Table$2({props:{schema:{tables:{},columns:{}},data:n1[3],allowEditColumns:!1,allowEditRows:!1,allowSelectRows:!1}}),e1.$on("click",n1[4]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&8&&(i1.data=r1[3]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$4g(n1){let e1;return{c(){e1=text("Define relationships")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_controls_slot$6(n1){let e1,t1;return e1=new Button({props:{slot:"controls",cta:!0,$$slots:{default:[create_default_slot$4g]},$$scope:{ctx:n1}}}),e1.$on("click",function(){is_function(n1[2].show)&&n1[2].show.apply(this,arguments)}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){n1=r1;const i1={};o1&2048&&(i1.$$scope={dirty:o1,ctx:n1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_tooltip_slot$4(n1){let e1,t1;return e1=new Tooltip({props:{slot:"tooltip",title:"Relationships",href:"https://docs.budibase.com/docs/relationships"}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$6f(n1){let e1,t1,r1,o1,i1={datasource:n1[0],beforeSave:n1[5],afterSave:n1[6],onError:n1[7],tables:n1[1]};return e1=new CreateEditRelationshipModal({props:i1}),n1[8](e1),r1=new Panel$1({props:{$$slots:{tooltip:[create_tooltip_slot$4],controls:[create_controls_slot$6],default:[create_default_slot_1$3b]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),insert$1(a1,t1,s1),mount_component(r1,a1,s1),o1=!0},p(a1,[s1]){const l1={};s1&1&&(l1.datasource=a1[0]),s1&2&&(l1.tables=a1[1]),e1.$set(l1);const c1={};s1&2060&&(c1.$$scope={dirty:s1,ctx:a1}),r1.$set(c1)},i(a1){o1||(transition_in(e1.$$.fragment,a1),transition_in(r1.$$.fragment,a1),o1=!0)},o(a1){transition_out(e1.$$.fragment,a1),transition_out(r1.$$.fragment,a1),o1=!1},d(a1){n1[8](null),destroy_component(e1,a1),a1&&detach(t1),destroy_component(r1,a1)}}}function instance$6o(n1,e1,t1){let r1,o1,i1;component_subscribe(n1,integrations,m1=>t1(9,i1=m1));let{datasource:a1}=e1,s1;function l1(m1){const _1={};return m1.forEach(({name:h1,schema:b1})=>{Object.values(b1).forEach($1=>{var y1,k1;$1.type==="link"&&((k1=_1[y1=$1._id])!=null||(_1[y1]={}),_1[$1._id].through=_1[$1._id].through||$1.through,_1[$1._id][$1.main?"from":"to"]={...$1,tableName:h1})})}),Object.values(_1).map(({from:h1,to:b1,through:$1})=>({tables:`${h1.tableName} ${$1?"\u2194":"\u2192"} ${b1.tableName}`,columns:`${h1.name} to ${b1.name}`,from:h1,to:b1}))}const c1=({detail:m1})=>{s1.show({fromRelationship:m1.from,toRelationship:m1.to})},u1=async({datasource:m1})=>{if(!i1[m1.source].features[DatasourceFeature.CONNECTION_CHECKING])return;const{connected:h1}=await API.validateDatasource(m1);if(!h1)throw"Invalid connection"},f1=async({action:m1})=>{await tables.fetch(),await datasources.fetch(),notifications.success(`Relationship ${m1} successfully`)},p1=async({action:m1,err:_1})=>{let h1="creating";m1==="updated"?h1="updating":m1==="deleted"&&(h1="deleting"),notifications.error(`Error ${h1} datasource: ${_1}`)};function d1(m1){binding_callbacks[m1?"unshift":"push"](()=>{s1=m1,t1(2,s1)})}return n1.$$set=m1=>{"datasource"in m1&&t1(0,a1=m1.datasource)},n1.$$.update=()=>{n1.$$.dirty&1&&t1(1,r1=Object.values(a1.entities)),n1.$$.dirty&2&&t1(3,o1=l1(r1))},[a1,r1,s1,o1,c1,u1,f1,p1,d1]}class Relationships extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6o,create_fragment$6f,safe_not_equal,{datasource:0})}}function create_fragment$6e(n1){let e1=capitalise(n1[0])+"",t1;return{c(){t1=text(e1)},m(r1,o1){insert$1(r1,t1,o1)},p(r1,[o1]){o1&1&&e1!==(e1=capitalise(r1[0])+"")&&set_data(t1,e1)},i:noop$5,o:noop$5,d(r1){r1&&detach(t1)}}}function instance$6n(n1,e1,t1){let{value:r1}=e1;return n1.$$set=o1=>{"value"in o1&&t1(0,r1=o1.value)},[r1]}class CapitaliseRenderer extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6n,create_fragment$6e,safe_not_equal,{value:0})}}function create_default_slot_6$S(n1){let e1;return{c(){e1=text("Import")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_5$12(n1){let e1;return{c(){e1=text("Import your rest collection using one of the options below")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_4$1l(n1){let e1,t1;return e1=new Dropzone({props:{gallery:!1,value:n1[2].file?[n1[2].file]:[],fileTags:["OpenAPI 3.0","OpenAPI 2.0","Swagger 2.0","cURL","YAML","JSON"],maximum:1}}),e1.$on("change",n1[8]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.value=r1[2].file?[r1[2].file]:[]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_3$1N(n1){let e1,t1,r1;function o1(a1){n1[9](a1)}let i1={label:"Paste raw text",placeholder:'e.g. curl --location --request GET "https://example.com"'};return n1[2].raw!==void 0&&(i1.value=n1[2].raw),e1=new TextArea_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),e1.$on("change",n1[10]),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};!t1&&s1&4&&(t1=!0,l1.value=a1[2].raw,add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_default_slot_2$2n(n1){let e1,t1,r1,o1;return e1=new Tab({props:{title:"File",$$slots:{default:[create_default_slot_4$1l]},$$scope:{ctx:n1}}}),r1=new Tab({props:{title:"Raw Text",$$slots:{default:[create_default_slot_3$1N]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&16390&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&16390&&(l1.$$scope={dirty:a1,ctx:i1}),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_default_slot_1$3a(n1){let e1,t1,r1,o1,i1,a1;return e1=new Heading({props:{size:"S",$$slots:{default:[create_default_slot_6$S]},$$scope:{ctx:n1}}}),r1=new Body({props:{size:"XS",$$slots:{default:[create_default_slot_5$12]},$$scope:{ctx:n1}}}),i1=new Tabs({props:{selected:"File",$$slots:{default:[create_default_slot_2$2n]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment)},m(s1,l1){mount_component(e1,s1,l1),insert$1(s1,t1,l1),mount_component(r1,s1,l1),insert$1(s1,o1,l1),mount_component(i1,s1,l1),a1=!0},p(s1,l1){const c1={};l1&16384&&(c1.$$scope={dirty:l1,ctx:s1}),e1.$set(c1);const u1={};l1&16384&&(u1.$$scope={dirty:l1,ctx:s1}),r1.$set(u1);const f1={};l1&16390&&(f1.$$scope={dirty:l1,ctx:s1}),i1.$set(f1)},i(s1){a1||(transition_in(e1.$$.fragment,s1),transition_in(r1.$$.fragment,s1),transition_in(i1.$$.fragment,s1),a1=!0)},o(s1){transition_out(e1.$$.fragment,s1),transition_out(r1.$$.fragment,s1),transition_out(i1.$$.fragment,s1),a1=!1},d(s1){destroy_component(e1,s1),s1&&detach(t1),destroy_component(r1,s1),s1&&detach(o1),destroy_component(i1,s1)}}}function create_default_slot$4f(n1){let e1,t1;return e1=new Layout$m({props:{noPadding:!0,$$slots:{default:[create_default_slot_1$3a]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&16390&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$6d(n1){let e1,t1;return e1=new ModalContent({props:{onConfirm:n1[11],onCancel:n1[0],confirmText:"Import",cancelText:"Back",size:"L",$$slots:{default:[create_default_slot$4f]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&1&&(i1.onCancel=r1[0]),o1&16390&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$6m(n1,e1,t1){let r1,o1;component_subscribe(n1,goto,b1=>t1(12,r1=b1));let{navigateDatasource:i1=!1}=e1,{datasourceId:a1}=e1,{createDatasource:s1=!1}=e1,{onCancel:l1}=e1;const c1=writable({url:"",raw:"",file:void 0});component_subscribe(n1,c1,b1=>t1(2,o1=b1));let u1="url";const f1=async()=>{let b1;return u1==="file"?b1=await o1.file.text():u1==="url"?b1=await(await fetch(o1.url)).text():u1==="raw"&&(b1=o1.raw),b1};async function p1(){try{const b1=await f1();if(!a1&&!s1)throw new Error("No datasource id");const $1={data:b1,datasourceId:a1},y1=await queries.import($1);a1||t1(5,a1=y1.datasourceId),await datasources.fetch(),await queries.fetch(),i1&&r1(`./datasource/${a1}`),notifications.success("Imported successfully")}catch{return notifications.error("Error importing queries"),keepOpen}}const d1=b1=>{var $1;set_store_value(c1,o1.file=($1=b1.detail)==null?void 0:$1[0],o1),t1(1,u1="file")};function m1(b1){n1.$$.not_equal(o1.raw,b1)&&(o1.raw=b1,c1.set(o1))}const _1=()=>t1(1,u1="raw"),h1=()=>p1();return n1.$$set=b1=>{"navigateDatasource"in b1&&t1(6,i1=b1.navigateDatasource),"datasourceId"in b1&&t1(5,a1=b1.datasourceId),"createDatasource"in b1&&t1(7,s1=b1.createDatasource),"onCancel"in b1&&t1(0,l1=b1.onCancel)},[l1,u1,o1,c1,p1,a1,i1,s1,d1,m1,_1,h1]}class RestImportQueriesModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6m,create_fragment$6d,safe_not_equal,{navigateDatasource:6,datasourceId:5,createDatasource:7,onCancel:0})}}const RestImportButton_svelte_svelte_type_style_lang="";function create_default_slot_1$39(n1){let e1,t1;return e1=new RestImportQueriesModal({props:{createDatasource:!1,datasourceId:n1[0]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasourceId=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$4e(n1){let e1;return{c(){e1=text("Import")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_fragment$6c(n1){let e1,t1,r1,o1,i1,a1={$$slots:{default:[create_default_slot_1$39]},$$scope:{ctx:n1}};return e1=new Modal({props:a1}),n1[2](e1),o1=new Button({props:{secondary:!0,$$slots:{default:[create_default_slot$4e]},$$scope:{ctx:n1}}}),o1.$on("click",n1[3]),{c(){create_component(e1.$$.fragment),t1=space$1(),r1=element("div"),create_component(o1.$$.fragment),attr(r1,"class","button svelte-5uya3m")},m(s1,l1){mount_component(e1,s1,l1),insert$1(s1,t1,l1),insert$1(s1,r1,l1),mount_component(o1,r1,null),i1=!0},p(s1,[l1]){const c1={};l1&17&&(c1.$$scope={dirty:l1,ctx:s1}),e1.$set(c1);const u1={};l1&16&&(u1.$$scope={dirty:l1,ctx:s1}),o1.$set(u1)},i(s1){i1||(transition_in(e1.$$.fragment,s1),transition_in(o1.$$.fragment,s1),i1=!0)},o(s1){transition_out(e1.$$.fragment,s1),transition_out(o1.$$.fragment,s1),i1=!1},d(s1){n1[2](null),destroy_component(e1,s1),s1&&detach(t1),s1&&detach(r1),destroy_component(o1)}}}function instance$6l(n1,e1,t1){let{datasourceId:r1}=e1,o1;function i1(s1){binding_callbacks[s1?"unshift":"push"](()=>{o1=s1,t1(1,o1)})}const a1=()=>o1.show();return n1.$$set=s1=>{"datasourceId"in s1&&t1(0,r1=s1.datasourceId)},[r1,o1,i1,a1]}class RestImportButton extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6l,create_fragment$6c,safe_not_equal,{datasourceId:0})}}function create_default_slot_1$38(n1){let e1,t1;return e1=new Table$2({props:{schema:{name:{},queryVerb:{displayName:"Method"}},data:n1[1],allowEditColumns:!1,allowEditRows:!1,allowSelectRows:!1,customRenderers:[{column:"queryVerb",component:CapitaliseRenderer}]}}),e1.$on("click",n1[5]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&2&&(i1.data=r1[1]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$4d(n1){let e1;return{c(){e1=text("Create new query")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_if_block$2_(n1){let e1,t1;return e1=new RestImportButton({props:{datasourceId:n1[0]._id}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasourceId=r1[0]._id),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_controls_slot$5(n1){let e1,t1,r1,o1;t1=new Button({props:{cta:!0,$$slots:{default:[create_default_slot$4d]},$$scope:{ctx:n1}}}),t1.$on("click",n1[4]);let i1=n1[0].source==="REST"&&create_if_block$2_(n1);return{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),i1&&i1.c(),attr(e1,"slot","controls")},m(a1,s1){insert$1(a1,e1,s1),mount_component(t1,e1,null),append$1(e1,r1),i1&&i1.m(e1,null),o1=!0},p(a1,s1){const l1={};s1&64&&(l1.$$scope={dirty:s1,ctx:a1}),t1.$set(l1),a1[0].source==="REST"?i1?(i1.p(a1,s1),s1&1&&transition_in(i1,1)):(i1=create_if_block$2_(a1),i1.c(),transition_in(i1,1),i1.m(e1,null)):i1&&(group_outros(),transition_out(i1,1,1,()=>{i1=null}),check_outros())},i(a1){o1||(transition_in(t1.$$.fragment,a1),transition_in(i1),o1=!0)},o(a1){transition_out(t1.$$.fragment,a1),transition_out(i1),o1=!1},d(a1){a1&&detach(e1),destroy_component(t1),i1&&i1.d()}}}function create_tooltip_slot$3(n1){let e1,t1;return e1=new Tooltip({props:{slot:"tooltip",title:"Custom queries",href:"https://docs.budibase.com/docs/data-sources#custom-queries "}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$6b(n1){let e1,t1;return e1=new Panel$1({props:{$$slots:{tooltip:[create_tooltip_slot$3],controls:[create_controls_slot$5],default:[create_default_slot_1$38]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&71&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$6k(n1,e1,t1){let r1,o1,i1;component_subscribe(n1,queries,c1=>t1(3,o1=c1)),component_subscribe(n1,goto,c1=>t1(2,i1=c1));let{datasource:a1}=e1;const s1=()=>i1(`../../query/new/${a1._id}`),l1=({detail:c1})=>i1(`../../query/${c1._id}`);return n1.$$set=c1=>{"datasource"in c1&&t1(0,a1=c1.datasource)},n1.$$.update=()=>{n1.$$.dirty&9&&t1(1,r1=o1.list.filter(c1=>c1.datasourceId===a1._id))},[a1,r1,i1,o1,s1,l1]}class Queries extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6k,create_fragment$6b,safe_not_equal,{datasource:0})}}function create_default_slot$4c(n1){let e1;return{c(){e1=text("Save")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_fragment$6a(n1){let e1,t1;return e1=new Button({props:{disabled:!n1[0],cta:!0,$$slots:{default:[create_default_slot$4c]},$$scope:{ctx:n1}}}),e1.$on("click",n1[1]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&1&&(i1.disabled=!r1[0]),o1&16&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$6j(n1,e1,t1){let r1,{datasource:o1}=e1,{updatedDatasource:i1}=e1;const a1=async()=>{try{const s1=integrationForDatasource(get_store_value(integrations),i1);await datasources.update({datasource:i1,integration:s1}),notifications.success(`Datasource ${i1.name} updated successfully`)}catch(s1){notifications.error(`Error saving datasource: ${s1.message}`)}};return n1.$$set=s1=>{"datasource"in s1&&t1(2,o1=s1.datasource),"updatedDatasource"in s1&&t1(3,i1=s1.updatedDatasource)},n1.$$.update=()=>{n1.$$.dirty&12&&t1(0,r1=!lodash$2.exports.isEqual(o1,i1))},[r1,a1,o1,i1]}class SaveDatasourceButton extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6j,create_fragment$6a,safe_not_equal,{datasource:2,updatedDatasource:3})}}function create_default_slot_1$37(n1){let e1;return{c(){e1=text("Add header")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot$4b(n1){let e1,t1,r1,o1,i1,a1={object:n1[3],noAddButton:!0,bindings:n1[4]};return e1=new KeyValueBuilder({props:a1}),n1[6](e1),e1.$on("change",n1[7]),o1=new ActionButton({props:{icon:"Add",$$slots:{default:[create_default_slot_1$37]},$$scope:{ctx:n1}}}),o1.$on("click",n1[8]),{c(){create_component(e1.$$.fragment),t1=space$1(),r1=element("div"),create_component(o1.$$.fragment)},m(s1,l1){mount_component(e1,s1,l1),insert$1(s1,t1,l1),insert$1(s1,r1,l1),mount_component(o1,r1,null),i1=!0},p(s1,l1){const c1={};l1&8&&(c1.object=s1[3]),e1.$set(c1);const u1={};l1&512&&(u1.$$scope={dirty:l1,ctx:s1}),o1.$set(u1)},i(s1){i1||(transition_in(e1.$$.fragment,s1),transition_in(o1.$$.fragment,s1),i1=!0)},o(s1){transition_out(e1.$$.fragment,s1),transition_out(o1.$$.fragment,s1),i1=!1},d(s1){n1[6](null),destroy_component(e1,s1),s1&&detach(t1),s1&&detach(r1),destroy_component(o1)}}}function create_controls_slot$4(n1){let e1,t1;return e1=new SaveDatasourceButton({props:{slot:"controls",datasource:n1[0],updatedDatasource:n1[1]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasource=r1[0]),o1&2&&(i1.updatedDatasource=r1[1]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_tooltip_slot$2(n1){let e1,t1;return e1=new Tooltip({props:{slot:"tooltip",title:"REST Headers",href:"https://docs.budibase.com/docs/rest-queries#headers"}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$69(n1){let e1,t1;return e1=new Panel$1({props:{$$slots:{tooltip:[create_tooltip_slot$2],controls:[create_controls_slot$4],default:[create_default_slot$4b]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&527&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$6i(n1,e1,t1){let r1,o1,{datasource:i1}=e1,a1=getRestBindings(),s1;const l1=p1=>{const d1=fp.cloneDeep(p1).reduce((m1,_1)=>(m1[_1.name]=readableToRuntimeBinding(a1,_1.value),m1),{});t1(1,r1.config.defaultHeaders=d1,r1)};function c1(p1){binding_callbacks[p1?"unshift":"push"](()=>{s1=p1,t1(2,s1)})}const u1=p1=>l1(p1.detail),f1=()=>s1.addEntry();return n1.$$set=p1=>{"datasource"in p1&&t1(0,i1=p1.datasource)},n1.$$.update=()=>{var p1;n1.$$.dirty&1&&t1(1,r1=fp.cloneDeep(i1)),n1.$$.dirty&2&&t1(3,o1=runtimeToReadableMap(a1,(p1=r1==null?void 0:r1.config)==null?void 0:p1.defaultHeaders))},[i1,r1,s1,o1,a1,l1,c1,u1,f1]}class Headers$1 extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6i,create_fragment$69,safe_not_equal,{datasource:0})}}const AUTH_TYPES={BASIC:"basic",BEARER:"bearer"},AUTH_TYPE_LABELS=[{label:"Basic Auth",value:AUTH_TYPES.BASIC},{label:"Bearer Token",value:AUTH_TYPES.BEARER}];function create_fragment$68(n1){let e1=n1[1](n1[0])+"",t1;return{c(){t1=text(e1)},m(r1,o1){insert$1(r1,t1,o1)},p(r1,[o1]){o1&1&&e1!==(e1=r1[1](r1[0])+"")&&set_data(t1,e1)},i:noop$5,o:noop$5,d(r1){r1&&detach(t1)}}}function instance$6h(n1,e1,t1){let{value:r1}=e1;const o1=i1=>AUTH_TYPE_LABELS.filter(a1=>a1.value===i1).map(a1=>a1.label);return n1.$$set=i1=>{"value"in i1&&t1(0,r1=i1.value)},[r1,o1]}class AuthTypeRenderer extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6h,create_fragment$68,safe_not_equal,{value:0})}}const BindableCombobox_svelte_svelte_type_style_lang="";function create_fragment$67(n1){let e1,t1,r1;return t1=new Combobox_1({props:{label:n1[1],disabled:n1[2],readonly:n1[5],value:n1[5]?"(JavaScript function)":n1[6],placeholder:n1[0],options:n1[4],error:n1[3]}}),t1.$on("type",n1[13]),t1.$on("pick",n1[14]),t1.$on("blur",n1[15]),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"class","control svelte-dbu7op"),toggle_class(e1,"disabled",n1[2])},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p(o1,[i1]){const a1={};i1&2&&(a1.label=o1[1]),i1&4&&(a1.disabled=o1[2]),i1&32&&(a1.readonly=o1[5]),i1&96&&(a1.value=o1[5]?"(JavaScript function)":o1[6]),i1&1&&(a1.placeholder=o1[0]),i1&16&&(a1.options=o1[4]),i1&8&&(a1.error=o1[3]),t1.$set(a1),(!r1||i1&4)&&toggle_class(e1,"disabled",o1[2])},i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function instance$6g(n1,e1,t1){let r1,o1,i1,{value:a1=""}=e1,{bindings:s1=[]}=e1,{placeholder:l1}=e1,{label:c1}=e1,{disabled:u1=!1}=e1,{options:f1}=e1,{appendBindingsAsOptions:p1=!0}=e1,{error:d1}=e1;const m1=createEventDispatcher(),_1=(k1,S1)=>{S1&&!(f1!=null&&f1.includes(k1))&&(k1=`{{ ${k1} }}`),m1("change",readableToRuntimeBinding(s1,k1))},h1=(k1,S1,O1)=>O1?[].concat(k1||[]).concat((S1==null?void 0:S1.map(C1=>C1.readableBinding))||[]):k1,b1=k1=>_1(k1.detail,!1),$1=k1=>_1(k1.detail,!0),y1=()=>m1("blur");return n1.$$set=k1=>{"value"in k1&&t1(9,a1=k1.value),"bindings"in k1&&t1(10,s1=k1.bindings),"placeholder"in k1&&t1(0,l1=k1.placeholder),"label"in k1&&t1(1,c1=k1.label),"disabled"in k1&&t1(2,u1=k1.disabled),"options"in k1&&t1(11,f1=k1.options),"appendBindingsAsOptions"in k1&&t1(12,p1=k1.appendBindingsAsOptions),"error"in k1&&t1(3,d1=k1.error)},n1.$$.update=()=>{n1.$$.dirty&1536&&t1(6,r1=runtimeToReadableBinding(s1,a1)),n1.$$.dirty&512&&t1(5,o1=Wh(a1)),n1.$$.dirty&7168&&t1(4,i1=h1(f1,s1,p1))},[l1,c1,u1,d1,i1,o1,r1,m1,_1,a1,s1,f1,p1,b1,$1,y1]}class BindableCombobox extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6g,create_fragment$67,safe_not_equal,{value:9,bindings:10,placeholder:0,label:1,disabled:2,options:11,appendBindingsAsOptions:12,error:3})}}function create_default_slot_3$1M(n1){let e1;return{c(){e1=text(`The authorization header will be automatically generated when you send the
1641
+ provide a name for these columns.`)},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$3c(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1,p1,d1,m1,_1,h1,b1,$1,y1,k1,S1,O1,C1,M1,z1,L1,R1,H1,q1;function B1(u0){n1[29](u0)}function I1(u0){n1[30](u0)}let F1={label:"Relationship type",options:n1[18]};n1[3]!==void 0&&(F1.value=n1[3]),n1[2].relationshipType!==void 0&&(F1.error=n1[2].relationshipType),e1=new Select_1$1({props:F1}),binding_callbacks.push(()=>bind$3(e1,"value",B1)),binding_callbacks.push(()=>bind$3(e1,"error",I1)),e1.$on("change",n1[31]),a1=new Detail({props:{$$slots:{default:[create_default_slot_4$1m]},$$scope:{ctx:n1}}});let j1=!n1[1]&&create_if_block_5$l(n1),G1=n1[15]&&n1[9]&&create_if_block_4$u(n1);function Y1(u0){n1[37](u0)}function X1(u0){n1[38](u0)}let e0={label:"Select to table",options:n1[4]};n1[10]!==void 0&&(e0.value=n1[10]),n1[2].toTable!==void 0&&(e0.error=n1[2].toTable),u1=new Select_1$1({props:e0}),binding_callbacks.push(()=>bind$3(u1,"value",Y1)),binding_callbacks.push(()=>bind$3(u1,"error",X1)),u1.$on("change",n1[39]);const K1=[create_if_block_1$1F,create_if_block_3$G],Q1=[];function r0(u0,P0){return u0[14]?0:u0[15]&&u0[10]?1:-1}~(m1=r0(n1))&&(_1=Q1[m1]=K1[m1](n1)),$1=new Detail({props:{$$slots:{default:[create_default_slot_3$1O]},$$scope:{ctx:n1}}}),k1=new Body({props:{$$slots:{default:[create_default_slot_2$2o]},$$scope:{ctx:n1}}});function p0(u0){n1[49](u0)}function h0(u0){n1[50](u0)}let a0={label:"From table column"};n1[7]!==void 0&&(a0.value=n1[7]),n1[2].fromColumn!==void 0&&(a0.error=n1[2].fromColumn),O1=new Input$5({props:a0}),binding_callbacks.push(()=>bind$3(O1,"value",p0)),binding_callbacks.push(()=>bind$3(O1,"error",h0)),O1.$on("change",n1[23]);function t0(u0){n1[51](u0)}function y0(u0){n1[52](u0)}let I0={label:"To table column"};return n1[8]!==void 0&&(I0.value=n1[8]),n1[2].toColumn!==void 0&&(I0.error=n1[2].toColumn),L1=new Input$5({props:I0}),binding_callbacks.push(()=>bind$3(L1,"value",t0)),binding_callbacks.push(()=>bind$3(L1,"error",y0)),L1.$on("change",n1[23]),{c(){create_component(e1.$$.fragment),o1=space$1(),i1=element("div"),create_component(a1.$$.fragment),s1=space$1(),j1&&j1.c(),l1=space$1(),G1&&G1.c(),c1=space$1(),create_component(u1.$$.fragment),d1=space$1(),_1&&_1.c(),h1=space$1(),b1=element("div"),create_component($1.$$.fragment),y1=space$1(),create_component(k1.$$.fragment),S1=space$1(),create_component(O1.$$.fragment),z1=space$1(),create_component(L1.$$.fragment),attr(i1,"class","headings svelte-1imaf58"),attr(b1,"class","headings svelte-1imaf58")},m(u0,P0){mount_component(e1,u0,P0),insert$1(u0,o1,P0),insert$1(u0,i1,P0),mount_component(a1,i1,null),insert$1(u0,s1,P0),j1&&j1.m(u0,P0),insert$1(u0,l1,P0),G1&&G1.m(u0,P0),insert$1(u0,c1,P0),mount_component(u1,u0,P0),insert$1(u0,d1,P0),~m1&&Q1[m1].m(u0,P0),insert$1(u0,h1,P0),insert$1(u0,b1,P0),mount_component($1,b1,null),insert$1(u0,y1,P0),mount_component(k1,u0,P0),insert$1(u0,S1,P0),mount_component(O1,u0,P0),insert$1(u0,z1,P0),mount_component(L1,u0,P0),q1=!0},p(u0,P0){const L0={};!t1&&P0[0]&8&&(t1=!0,L0.value=u0[3],add_flush_callback(()=>t1=!1)),!r1&&P0[0]&4&&(r1=!0,L0.error=u0[2].relationshipType,add_flush_callback(()=>r1=!1)),e1.$set(L0);const x0={};P0[2]&4&&(x0.$$scope={dirty:P0,ctx:u0}),a1.$set(x0),u0[1]?j1&&(group_outros(),transition_out(j1,1,1,()=>{j1=null}),check_outros()):j1?(j1.p(u0,P0),P0[0]&2&&transition_in(j1,1)):(j1=create_if_block_5$l(u0),j1.c(),transition_in(j1,1),j1.m(l1.parentNode,l1)),u0[15]&&u0[9]?G1?(G1.p(u0,P0),P0[0]&33280&&transition_in(G1,1)):(G1=create_if_block_4$u(u0),G1.c(),transition_in(G1,1),G1.m(c1.parentNode,c1)):G1&&(group_outros(),transition_out(G1,1,1,()=>{G1=null}),check_outros());const V0={};P0[0]&16&&(V0.options=u0[4]),!f1&&P0[0]&1024&&(f1=!0,V0.value=u0[10],add_flush_callback(()=>f1=!1)),!p1&&P0[0]&4&&(p1=!0,V0.error=u0[2].toTable,add_flush_callback(()=>p1=!1)),u1.$set(V0);let c2=m1;m1=r0(u0),m1===c2?~m1&&Q1[m1].p(u0,P0):(_1&&(group_outros(),transition_out(Q1[c2],1,1,()=>{Q1[c2]=null}),check_outros()),~m1?(_1=Q1[m1],_1?_1.p(u0,P0):(_1=Q1[m1]=K1[m1](u0),_1.c()),transition_in(_1,1),_1.m(h1.parentNode,h1)):_1=null);const W0={};P0[2]&4&&(W0.$$scope={dirty:P0,ctx:u0}),$1.$set(W0);const Q0={};P0[2]&4&&(Q0.$$scope={dirty:P0,ctx:u0}),k1.$set(Q0);const d0={};!C1&&P0[0]&128&&(C1=!0,d0.value=u0[7],add_flush_callback(()=>C1=!1)),!M1&&P0[0]&4&&(M1=!0,d0.error=u0[2].fromColumn,add_flush_callback(()=>M1=!1)),O1.$set(d0);const O2={};!R1&&P0[0]&256&&(R1=!0,O2.value=u0[8],add_flush_callback(()=>R1=!1)),!H1&&P0[0]&4&&(H1=!0,O2.error=u0[2].toColumn,add_flush_callback(()=>H1=!1)),L1.$set(O2)},i(u0){q1||(transition_in(e1.$$.fragment,u0),transition_in(a1.$$.fragment,u0),transition_in(j1),transition_in(G1),transition_in(u1.$$.fragment,u0),transition_in(_1),transition_in($1.$$.fragment,u0),transition_in(k1.$$.fragment,u0),transition_in(O1.$$.fragment,u0),transition_in(L1.$$.fragment,u0),q1=!0)},o(u0){transition_out(e1.$$.fragment,u0),transition_out(a1.$$.fragment,u0),transition_out(j1),transition_out(G1),transition_out(u1.$$.fragment,u0),transition_out(_1),transition_out($1.$$.fragment,u0),transition_out(k1.$$.fragment,u0),transition_out(O1.$$.fragment,u0),transition_out(L1.$$.fragment,u0),q1=!1},d(u0){destroy_component(e1,u0),u0&&detach(o1),u0&&detach(i1),destroy_component(a1),u0&&detach(s1),j1&&j1.d(u0),u0&&detach(l1),G1&&G1.d(u0),u0&&detach(c1),destroy_component(u1,u0),u0&&detach(d1),~m1&&Q1[m1].d(u0),u0&&detach(h1),u0&&detach(b1),destroy_component($1),u0&&detach(y1),destroy_component(k1,u0),u0&&detach(S1),destroy_component(O1,u0),u0&&detach(z1),destroy_component(L1,u0)}}}function create_if_block$2$(n1){let e1,t1;return e1=new Button({props:{warning:!0,text:!0,$$slots:{default:[create_default_slot$4i]},$$scope:{ctx:n1}}}),e1.$on("click",n1[22]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1[2]&4&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$4i(n1){let e1;return{c(){e1=text("Delete")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_footer_slot$6(n1){let e1,t1,r1=n1[19]!=null&&create_if_block$2$(n1);return{c(){e1=element("div"),r1&&r1.c(),attr(e1,"slot","footer")},m(o1,i1){insert$1(o1,e1,i1),r1&&r1.m(e1,null),t1=!0},p(o1,i1){o1[19]!=null&&r1.p(o1,i1)},i(o1){t1||(transition_in(r1),t1=!0)},o(o1){transition_out(r1),t1=!1},d(o1){o1&&detach(e1),r1&&r1.d()}}}function create_fragment$6h(n1){let e1,t1;return e1=new ModalContent({props:{title:"Define Relationship",confirmText:"Save",onConfirm:n1[21],disabled:!n1[17],$$slots:{footer:[create_footer_slot$6],default:[create_default_slot_1$3c]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1[0]&131072&&(i1.disabled=!r1[17]),o1[0]&131071|o1[2]&4&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function getErrorCount(n1){return Object.entries(n1).filter(e1=>!!e1[1]).length}function instance$6q(n1,e1,t1){let r1,{save:o1}=e1,{datasource:i1}=e1,{plusTables:a1=[]}=e1,{fromRelationship:s1={}}=e1,{toRelationship:l1={}}=e1,{selectedFromTable:c1}=e1,{close:u1}=e1;const f1=[{label:"One to Many",value:RelationshipType.MANY_TO_ONE},{label:"Many to Many",value:RelationshipType.MANY_TO_MANY}];let p1=l1.name,d1=s1.name,m1=a1.find(X0=>X0._id===(l1==null?void 0:l1.tableId)),_1=a1.find(X0=>X0._id===(s1==null?void 0:s1.tableId)),h1,b1=new RelationshipErrorChecker(j1,G1),$1={},y1,k1,S1,O1,C1,M1,z1,L1,R1,H1,q1,B1,I1=!1;function F1(X0){return a1.find(d2=>d2._id===X0)}function j1(){var M2;if(!z1||!L1||!R1)return!1;const X0=a1.find(R2=>R2._id===z1),d2=Object.values(X0.schema).filter(R2=>R2.name!==R1&&R2.name!==L1);for(let R2 of d2)if(((M2=R2.constraints)==null?void 0:M2.presence)&&!R2.autocolumn)return!0;return!1}function G1(){if(m1&&_1&&m1===F1(C1)&&_1===F1(M1))return!1;let X0=Object.values(i1.entities[F1(C1).name].schema).filter(R2=>R2.through),d2=Object.values(i1.entities[F1(M1).name].schema).filter(R2=>R2.through);const M2=(R2,G0)=>R2===C1&&G0===M1||R2===M1&&G0===C1;return!!X0.find(R2=>d2.find(G0=>R2.through===G0.through&&M2(R2.tableId,G0.tableId)))}function Y1(){const X0=F1(C1)&&F1(M1)&&S1&&O1;return B1===RelationshipType.MANY_TO_ONE?X0&&y1&&k1:X0&&F1(z1)&&R1&&L1}function X1(){if(!Y1()&&!I1)return;t1(16,I1=!0),b1.setType(B1);const X0=F1(C1),d2=F1(M1),M2=F1(z1);return t1(2,$1={relationshipType:b1.relationshipTypeSet(B1),fromTable:b1.tableSet(X0)||b1.doesRelationshipExists()||b1.differentTables(C1,M1,z1),toTable:b1.tableSet(d2)||b1.doesRelationshipExists()||b1.differentTables(M1,C1,z1),throughTable:b1.throughTableSet(M2)||b1.throughIsNullable()||b1.differentTables(z1,C1,M1),throughFromKey:b1.manyForeignKeySet(R1)||b1.manyTypeMismatch(X0,M2,X0.primary[0],L1),throughToKey:b1.manyForeignKeySet(L1)||b1.manyTypeMismatch(d2,M2,d2.primary[0],R1),fromForeign:b1.foreignKeySet(k1)||b1.typeMismatch(X0,d2,y1,k1),fromPrimary:b1.primaryKeySet(y1),fromColumn:b1.columnBeingUsed(d2,S1,p1),toColumn:b1.columnBeingUsed(X0,O1,d1)}),getErrorCount($1)===0}function e0(X0){if(X0===RelationshipType.MANY_TO_ONE)return RelationshipType.ONE_TO_MANY;if(X0===RelationshipType.ONE_TO_MANY)return RelationshipType.MANY_TO_ONE;if(X0===RelationshipType.MANY_TO_MANY)return RelationshipType.MANY_TO_MANY}function K1(){const X0=uuid();let d2={...s1,tableId:M1,name:O1,relationshipType:B1,fieldName:k1,through:z1,throughFrom:R1,throughTo:L1,type:"link",main:!0,_id:X0},M2=t1(26,l1={...l1,tableId:C1,name:S1,relationshipType:e0(B1),through:z1,type:"link",_id:X0});const R2=d2.relationshipType===RelationshipType.MANY_TO_MANY;R2||(delete d2.through,delete M2.through),R2?(d2={...d2,through:F1(z1)._id,fieldName:F1(M1).primary[0]},M2={...M2,through:F1(z1)._id,fieldName:F1(C1).primary[0],throughFrom:d2.throughTo,throughTo:d2.throughFrom}):(d2={...d2,foreignKey:y1},M2={...M2,relationshipType:RelationshipType.ONE_TO_MANY,foreignKey:d2.fieldName,fieldName:y1}),t1(25,s1=d2),t1(26,l1=M2)}function Q1(){m1&&p1&&delete i1.entities[m1.name].schema[d1],_1&&d1&&delete i1.entities[_1.name].schema[p1]}async function r0(){if(!X1())return keepOpen;K1(),Q1(),t1(24,i1.entities[F1(C1).name].schema[s1.name]=s1,i1),t1(24,i1.entities[F1(M1).name].schema[l1.name]=l1,i1),await o1({action:"saved"})}async function p0(){Q1(),await o1({action:"deleted"}),await tables.fetch(),u1()}function h0(X0){typeof X0=="function"&&X0(),X1()}onMount(()=>{s1&&(t1(5,y1=s1.foreignKey),t1(10,M1=s1.tableId),t1(11,z1=s1.through),t1(13,R1=s1.throughFrom),t1(12,L1=s1.throughTo),t1(8,O1=s1.name)),l1&&(t1(6,k1=l1.foreignKey),t1(9,C1=l1.tableId),t1(7,S1=l1.name)),t1(3,B1=s1.relationshipType||RelationshipType.MANY_TO_ONE),c1&&(t1(9,C1=c1._id),t1(7,S1=c1.name),t1(5,y1=(c1==null?void 0:c1.primary[0])||null))});function a0(X0){B1=X0,t1(3,B1)}function t0(X0){n1.$$.not_equal($1.relationshipType,X0)&&($1.relationshipType=X0,t1(2,$1))}const y0=()=>h0(()=>{t1(16,I1=!1)});function I0(X0){C1=X0,t1(9,C1)}function u0(X0){n1.$$.not_equal($1.fromTable,X0)&&($1.fromTable=X0,t1(2,$1))}const P0=X0=>h0(()=>{var M2;const d2=a1.find(R2=>R2._id===X0.detail);t1(7,S1=(d2==null?void 0:d2.name)||""),t1(5,y1=(M2=d2==null?void 0:d2.primary)==null?void 0:M2[0])});function L0(X0){y1=X0,t1(5,y1)}function x0(X0){n1.$$.not_equal($1.fromPrimary,X0)&&($1.fromPrimary=X0,t1(2,$1))}function V0(X0){M1=X0,t1(10,M1)}function c2(X0){n1.$$.not_equal($1.toTable,X0)&&($1.toTable=X0,t1(2,$1))}const W0=X0=>h0(()=>{const d2=a1.find(M2=>M2._id===X0.detail);t1(8,O1=d2.name||""),t1(6,k1=null)});function Q0(X0){z1=X0,t1(11,z1)}function d0(X0){n1.$$.not_equal($1.throughTable,X0)&&($1.throughTable=X0,t1(2,$1))}const O2=()=>h0(()=>{t1(12,L1=null),t1(13,R1=null)});function H0(X0){L1=X0,t1(12,L1)}function w0(X0){n1.$$.not_equal($1.throughToKey,X0)&&($1.throughToKey=X0,t1(2,$1))}function E0(X0){R1=X0,t1(13,R1)}function l0(X0){n1.$$.not_equal($1.throughFromKey,X0)&&($1.throughFromKey=X0,t1(2,$1))}function S0(X0){k1=X0,t1(6,k1)}function m0(X0){n1.$$.not_equal($1.fromForeign,X0)&&($1.fromForeign=X0,t1(2,$1))}function O0(X0){S1=X0,t1(7,S1)}function D0(X0){n1.$$.not_equal($1.fromColumn,X0)&&($1.fromColumn=X0,t1(2,$1))}function m2(X0){O1=X0,t1(8,O1)}function f2(X0){n1.$$.not_equal($1.toColumn,X0)&&($1.toColumn=X0,t1(2,$1))}return n1.$$set=X0=>{"save"in X0&&t1(27,o1=X0.save),"datasource"in X0&&t1(24,i1=X0.datasource),"plusTables"in X0&&t1(0,a1=X0.plusTables),"fromRelationship"in X0&&t1(25,s1=X0.fromRelationship),"toRelationship"in X0&&t1(26,l1=X0.toRelationship),"selectedFromTable"in X0&&t1(1,c1=X0.selectedFromTable),"close"in X0&&t1(28,u1=X0.close)},n1.$$.update=()=>{n1.$$.dirty[0]&1&&t1(4,h1=a1.map(X0=>({label:X0.name,value:X0._id}))),n1.$$.dirty[0]&4&&t1(17,r1=getErrorCount($1)===0&&Y1()),n1.$$.dirty[0]&8&&t1(14,H1=B1===RelationshipType.MANY_TO_MANY),n1.$$.dirty[0]&8&&t1(15,q1=B1===RelationshipType.MANY_TO_ONE)},[a1,c1,$1,B1,h1,y1,k1,S1,O1,C1,M1,z1,L1,R1,H1,q1,I1,r1,f1,p1,F1,r0,p0,h0,i1,s1,l1,o1,u1,a0,t0,y0,I0,u0,P0,L0,x0,V0,c2,W0,Q0,d0,O2,H0,w0,E0,l0,S0,m0,O0,D0,m2,f2]}class CreateEditRelationship extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6q,create_fragment$6h,safe_not_equal,{save:27,datasource:24,plusTables:0,fromRelationship:25,toRelationship:26,selectedFromTable:1,close:28},null,[-1,-1,-1])}}function create_default_slot$4h(n1){let e1,t1;return e1=new CreateEditRelationship({props:{save:n1[6],close:n1[2].hide,selectedFromTable:n1[5],datasource:n1[0],plusTables:n1[1],fromRelationship:n1[3],toRelationship:n1[4]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.close=r1[2].hide),o1&32&&(i1.selectedFromTable=r1[5]),o1&1&&(i1.datasource=r1[0]),o1&2&&(i1.plusTables=r1[1]),o1&8&&(i1.fromRelationship=r1[3]),o1&16&&(i1.toRelationship=r1[4]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$6g(n1){let e1,t1,r1={$$slots:{default:[create_default_slot$4h]},$$scope:{ctx:n1}};return e1=new Modal({props:r1}),n1[12](e1),{c(){create_component(e1.$$.fragment)},m(o1,i1){mount_component(e1,o1,i1),t1=!0},p(o1,[i1]){const a1={};i1&8255&&(a1.$$scope={dirty:i1,ctx:o1}),e1.$set(a1)},i(o1){t1||(transition_in(e1.$$.fragment,o1),t1=!0)},o(o1){transition_out(e1.$$.fragment,o1),t1=!1},d(o1){n1[12](null),destroy_component(e1,o1)}}}function instance$6p(n1,e1,t1){let{datasource:r1}=e1,{tables:o1}=e1,{beforeSave:i1=async()=>{}}=e1,{afterSave:a1=async()=>{}}=e1,{onError:s1=async()=>{}}=e1,l1,c1={},u1={},f1=null;function p1({fromRelationship:h1={},toRelationship:b1={},fromTable:$1=null}){t1(3,c1=h1),t1(4,u1=b1),t1(5,f1=$1),l1.show()}function d1(){l1.hide()}async function m1({action:h1}){try{await i1({action:h1,datasource:r1});const b1=integrationForDatasource(get_store_value(integrations),r1);await datasources.update({datasource:r1,integration:b1}),await a1({datasource:r1,action:h1})}catch(b1){await s1({err:b1,datasource:r1,action:h1})}}function _1(h1){binding_callbacks[h1?"unshift":"push"](()=>{l1=h1,t1(2,l1)})}return n1.$$set=h1=>{"datasource"in h1&&t1(0,r1=h1.datasource),"tables"in h1&&t1(1,o1=h1.tables),"beforeSave"in h1&&t1(7,i1=h1.beforeSave),"afterSave"in h1&&t1(8,a1=h1.afterSave),"onError"in h1&&t1(9,s1=h1.onError)},[r1,o1,l1,c1,u1,f1,m1,i1,a1,s1,p1,d1,_1]}class CreateEditRelationshipModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6p,create_fragment$6g,safe_not_equal,{datasource:0,tables:1,beforeSave:7,afterSave:8,onError:9,show:10,hide:11})}get show(){return this.$$.ctx[10]}get hide(){return this.$$.ctx[11]}}function create_default_slot_1$3b(n1){let e1,t1;return e1=new Table$2({props:{schema:{tables:{},columns:{}},data:n1[3],allowEditColumns:!1,allowEditRows:!1,allowSelectRows:!1}}),e1.$on("click",n1[4]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&8&&(i1.data=r1[3]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$4g(n1){let e1;return{c(){e1=text("Define relationships")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_controls_slot$6(n1){let e1,t1;return e1=new Button({props:{slot:"controls",cta:!0,$$slots:{default:[create_default_slot$4g]},$$scope:{ctx:n1}}}),e1.$on("click",function(){is_function(n1[2].show)&&n1[2].show.apply(this,arguments)}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){n1=r1;const i1={};o1&2048&&(i1.$$scope={dirty:o1,ctx:n1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_tooltip_slot$4(n1){let e1,t1;return e1=new Tooltip({props:{slot:"tooltip",title:"Relationships",href:"https://docs.budibase.com/docs/relationships"}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$6f(n1){let e1,t1,r1,o1,i1={datasource:n1[0],beforeSave:n1[5],afterSave:n1[6],onError:n1[7],tables:n1[1]};return e1=new CreateEditRelationshipModal({props:i1}),n1[8](e1),r1=new Panel$1({props:{$$slots:{tooltip:[create_tooltip_slot$4],controls:[create_controls_slot$6],default:[create_default_slot_1$3b]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),insert$1(a1,t1,s1),mount_component(r1,a1,s1),o1=!0},p(a1,[s1]){const l1={};s1&1&&(l1.datasource=a1[0]),s1&2&&(l1.tables=a1[1]),e1.$set(l1);const c1={};s1&2060&&(c1.$$scope={dirty:s1,ctx:a1}),r1.$set(c1)},i(a1){o1||(transition_in(e1.$$.fragment,a1),transition_in(r1.$$.fragment,a1),o1=!0)},o(a1){transition_out(e1.$$.fragment,a1),transition_out(r1.$$.fragment,a1),o1=!1},d(a1){n1[8](null),destroy_component(e1,a1),a1&&detach(t1),destroy_component(r1,a1)}}}function instance$6o(n1,e1,t1){let r1,o1,i1;component_subscribe(n1,integrations,m1=>t1(9,i1=m1));let{datasource:a1}=e1,s1;function l1(m1){const _1={};return m1.forEach(({name:h1,schema:b1})=>{Object.values(b1).forEach($1=>{var y1,k1;$1.type==="link"&&((k1=_1[y1=$1._id])!=null||(_1[y1]={}),_1[$1._id].through=_1[$1._id].through||$1.through,_1[$1._id][$1.main?"from":"to"]={...$1,tableName:h1})})}),Object.values(_1).map(({from:h1,to:b1,through:$1})=>({tables:`${h1.tableName} ${$1?"\u2194":"\u2192"} ${b1.tableName}`,columns:`${h1.name} to ${b1.name}`,from:h1,to:b1}))}const c1=({detail:m1})=>{s1.show({fromRelationship:m1.from,toRelationship:m1.to})},u1=async({datasource:m1})=>{if(!i1[m1.source].features[DatasourceFeature.CONNECTION_CHECKING])return;const{connected:h1}=await API.validateDatasource(m1);if(!h1)throw"Invalid connection"},f1=async({action:m1})=>{await tables.fetch(),await datasources.fetch(),notifications.success(`Relationship ${m1} successfully`)},p1=async({action:m1,err:_1})=>{let h1="creating";m1==="updated"?h1="updating":m1==="deleted"&&(h1="deleting"),notifications.error(`Error ${h1} datasource: ${_1}`)};function d1(m1){binding_callbacks[m1?"unshift":"push"](()=>{s1=m1,t1(2,s1)})}return n1.$$set=m1=>{"datasource"in m1&&t1(0,a1=m1.datasource)},n1.$$.update=()=>{n1.$$.dirty&1&&t1(1,r1=Object.values(a1.entities)),n1.$$.dirty&2&&t1(3,o1=l1(r1))},[a1,r1,s1,o1,c1,u1,f1,p1,d1]}class Relationships extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6o,create_fragment$6f,safe_not_equal,{datasource:0})}}function create_fragment$6e(n1){let e1=capitalise(n1[0])+"",t1;return{c(){t1=text(e1)},m(r1,o1){insert$1(r1,t1,o1)},p(r1,[o1]){o1&1&&e1!==(e1=capitalise(r1[0])+"")&&set_data(t1,e1)},i:noop$5,o:noop$5,d(r1){r1&&detach(t1)}}}function instance$6n(n1,e1,t1){let{value:r1}=e1;return n1.$$set=o1=>{"value"in o1&&t1(0,r1=o1.value)},[r1]}class CapitaliseRenderer extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6n,create_fragment$6e,safe_not_equal,{value:0})}}function create_default_slot_6$S(n1){let e1;return{c(){e1=text("Import")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_5$12(n1){let e1;return{c(){e1=text("Import your rest collection using one of the options below")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_4$1l(n1){let e1,t1;return e1=new Dropzone({props:{gallery:!1,value:n1[2].file?[n1[2].file]:[],fileTags:["OpenAPI 3.0","OpenAPI 2.0","Swagger 2.0","cURL","YAML","JSON"],maximum:1}}),e1.$on("change",n1[8]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&4&&(i1.value=r1[2].file?[r1[2].file]:[]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_3$1N(n1){let e1,t1,r1;function o1(a1){n1[9](a1)}let i1={label:"Paste raw text",placeholder:'e.g. curl --location --request GET "https://example.com"'};return n1[2].raw!==void 0&&(i1.value=n1[2].raw),e1=new TextArea_1({props:i1}),binding_callbacks.push(()=>bind$3(e1,"value",o1)),e1.$on("change",n1[10]),{c(){create_component(e1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),r1=!0},p(a1,s1){const l1={};!t1&&s1&4&&(t1=!0,l1.value=a1[2].raw,add_flush_callback(()=>t1=!1)),e1.$set(l1)},i(a1){r1||(transition_in(e1.$$.fragment,a1),r1=!0)},o(a1){transition_out(e1.$$.fragment,a1),r1=!1},d(a1){destroy_component(e1,a1)}}}function create_default_slot_2$2n(n1){let e1,t1,r1,o1;return e1=new Tab({props:{title:"File",$$slots:{default:[create_default_slot_4$1l]},$$scope:{ctx:n1}}}),r1=new Tab({props:{title:"Raw Text",$$slots:{default:[create_default_slot_3$1N]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&16390&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&16390&&(l1.$$scope={dirty:a1,ctx:i1}),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_default_slot_1$3a(n1){let e1,t1,r1,o1,i1,a1;return e1=new Heading({props:{size:"S",$$slots:{default:[create_default_slot_6$S]},$$scope:{ctx:n1}}}),r1=new Body({props:{size:"XS",$$slots:{default:[create_default_slot_5$12]},$$scope:{ctx:n1}}}),i1=new Tabs({props:{selected:"File",$$slots:{default:[create_default_slot_2$2n]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment),o1=space$1(),create_component(i1.$$.fragment)},m(s1,l1){mount_component(e1,s1,l1),insert$1(s1,t1,l1),mount_component(r1,s1,l1),insert$1(s1,o1,l1),mount_component(i1,s1,l1),a1=!0},p(s1,l1){const c1={};l1&16384&&(c1.$$scope={dirty:l1,ctx:s1}),e1.$set(c1);const u1={};l1&16384&&(u1.$$scope={dirty:l1,ctx:s1}),r1.$set(u1);const f1={};l1&16390&&(f1.$$scope={dirty:l1,ctx:s1}),i1.$set(f1)},i(s1){a1||(transition_in(e1.$$.fragment,s1),transition_in(r1.$$.fragment,s1),transition_in(i1.$$.fragment,s1),a1=!0)},o(s1){transition_out(e1.$$.fragment,s1),transition_out(r1.$$.fragment,s1),transition_out(i1.$$.fragment,s1),a1=!1},d(s1){destroy_component(e1,s1),s1&&detach(t1),destroy_component(r1,s1),s1&&detach(o1),destroy_component(i1,s1)}}}function create_default_slot$4f(n1){let e1,t1;return e1=new Layout$m({props:{noPadding:!0,$$slots:{default:[create_default_slot_1$3a]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&16390&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$6d(n1){let e1,t1;return e1=new ModalContent({props:{onConfirm:n1[11],onCancel:n1[0],confirmText:"Import",cancelText:"Back",size:"L",$$slots:{default:[create_default_slot$4f]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&1&&(i1.onCancel=r1[0]),o1&16390&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$6m(n1,e1,t1){let r1,o1;component_subscribe(n1,goto,b1=>t1(12,r1=b1));let{navigateDatasource:i1=!1}=e1,{datasourceId:a1}=e1,{createDatasource:s1=!1}=e1,{onCancel:l1}=e1;const c1=writable({url:"",raw:"",file:void 0});component_subscribe(n1,c1,b1=>t1(2,o1=b1));let u1="url";const f1=async()=>{let b1;return u1==="file"?b1=await o1.file.text():u1==="url"?b1=await(await fetch(o1.url)).text():u1==="raw"&&(b1=o1.raw),b1};async function p1(){try{const b1=await f1();if(!a1&&!s1)throw new Error("No datasource id");const $1={data:b1,datasourceId:a1},y1=await queries.import($1);a1||t1(5,a1=y1.datasourceId),await datasources.fetch(),await queries.fetch(),i1&&r1(`./datasource/${a1}`),notifications.success("Imported successfully")}catch{return notifications.error("Error importing queries"),keepOpen}}const d1=b1=>{var $1;set_store_value(c1,o1.file=($1=b1.detail)==null?void 0:$1[0],o1),t1(1,u1="file")};function m1(b1){n1.$$.not_equal(o1.raw,b1)&&(o1.raw=b1,c1.set(o1))}const _1=()=>t1(1,u1="raw"),h1=()=>p1();return n1.$$set=b1=>{"navigateDatasource"in b1&&t1(6,i1=b1.navigateDatasource),"datasourceId"in b1&&t1(5,a1=b1.datasourceId),"createDatasource"in b1&&t1(7,s1=b1.createDatasource),"onCancel"in b1&&t1(0,l1=b1.onCancel)},[l1,u1,o1,c1,p1,a1,i1,s1,d1,m1,_1,h1]}class RestImportQueriesModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6m,create_fragment$6d,safe_not_equal,{navigateDatasource:6,datasourceId:5,createDatasource:7,onCancel:0})}}const RestImportButton_svelte_svelte_type_style_lang="";function create_default_slot_1$39(n1){let e1,t1;return e1=new RestImportQueriesModal({props:{createDatasource:!1,datasourceId:n1[0]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasourceId=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$4e(n1){let e1;return{c(){e1=text("Import")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_fragment$6c(n1){let e1,t1,r1,o1,i1,a1={$$slots:{default:[create_default_slot_1$39]},$$scope:{ctx:n1}};return e1=new Modal({props:a1}),n1[2](e1),o1=new Button({props:{secondary:!0,$$slots:{default:[create_default_slot$4e]},$$scope:{ctx:n1}}}),o1.$on("click",n1[3]),{c(){create_component(e1.$$.fragment),t1=space$1(),r1=element("div"),create_component(o1.$$.fragment),attr(r1,"class","button svelte-5uya3m")},m(s1,l1){mount_component(e1,s1,l1),insert$1(s1,t1,l1),insert$1(s1,r1,l1),mount_component(o1,r1,null),i1=!0},p(s1,[l1]){const c1={};l1&17&&(c1.$$scope={dirty:l1,ctx:s1}),e1.$set(c1);const u1={};l1&16&&(u1.$$scope={dirty:l1,ctx:s1}),o1.$set(u1)},i(s1){i1||(transition_in(e1.$$.fragment,s1),transition_in(o1.$$.fragment,s1),i1=!0)},o(s1){transition_out(e1.$$.fragment,s1),transition_out(o1.$$.fragment,s1),i1=!1},d(s1){n1[2](null),destroy_component(e1,s1),s1&&detach(t1),s1&&detach(r1),destroy_component(o1)}}}function instance$6l(n1,e1,t1){let{datasourceId:r1}=e1,o1;function i1(s1){binding_callbacks[s1?"unshift":"push"](()=>{o1=s1,t1(1,o1)})}const a1=()=>o1.show();return n1.$$set=s1=>{"datasourceId"in s1&&t1(0,r1=s1.datasourceId)},[r1,o1,i1,a1]}class RestImportButton extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6l,create_fragment$6c,safe_not_equal,{datasourceId:0})}}function create_default_slot_1$38(n1){let e1,t1;return e1=new Table$2({props:{schema:{name:{},queryVerb:{displayName:"Method"}},data:n1[1],allowEditColumns:!1,allowEditRows:!1,allowSelectRows:!1,customRenderers:[{column:"queryVerb",component:CapitaliseRenderer}]}}),e1.$on("click",n1[5]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&2&&(i1.data=r1[1]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$4d(n1){let e1;return{c(){e1=text("Create new query")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_if_block$2_(n1){let e1,t1;return e1=new RestImportButton({props:{datasourceId:n1[0]._id}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasourceId=r1[0]._id),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_controls_slot$5(n1){let e1,t1,r1,o1;t1=new Button({props:{cta:!0,$$slots:{default:[create_default_slot$4d]},$$scope:{ctx:n1}}}),t1.$on("click",n1[4]);let i1=n1[0].source==="REST"&&create_if_block$2_(n1);return{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),i1&&i1.c(),attr(e1,"slot","controls")},m(a1,s1){insert$1(a1,e1,s1),mount_component(t1,e1,null),append$1(e1,r1),i1&&i1.m(e1,null),o1=!0},p(a1,s1){const l1={};s1&64&&(l1.$$scope={dirty:s1,ctx:a1}),t1.$set(l1),a1[0].source==="REST"?i1?(i1.p(a1,s1),s1&1&&transition_in(i1,1)):(i1=create_if_block$2_(a1),i1.c(),transition_in(i1,1),i1.m(e1,null)):i1&&(group_outros(),transition_out(i1,1,1,()=>{i1=null}),check_outros())},i(a1){o1||(transition_in(t1.$$.fragment,a1),transition_in(i1),o1=!0)},o(a1){transition_out(t1.$$.fragment,a1),transition_out(i1),o1=!1},d(a1){a1&&detach(e1),destroy_component(t1),i1&&i1.d()}}}function create_tooltip_slot$3(n1){let e1,t1;return e1=new Tooltip({props:{slot:"tooltip",title:"Custom queries",href:"https://docs.budibase.com/docs/data-sources#custom-queries "}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$6b(n1){let e1,t1;return e1=new Panel$1({props:{$$slots:{tooltip:[create_tooltip_slot$3],controls:[create_controls_slot$5],default:[create_default_slot_1$38]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&71&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$6k(n1,e1,t1){let r1,o1,i1;component_subscribe(n1,queries,c1=>t1(3,o1=c1)),component_subscribe(n1,goto,c1=>t1(2,i1=c1));let{datasource:a1}=e1;const s1=()=>i1(`../../query/new/${a1._id}`),l1=({detail:c1})=>i1(`../../query/${c1._id}`);return n1.$$set=c1=>{"datasource"in c1&&t1(0,a1=c1.datasource)},n1.$$.update=()=>{n1.$$.dirty&9&&t1(1,r1=o1.list.filter(c1=>c1.datasourceId===a1._id))},[a1,r1,i1,o1,s1,l1]}class Queries extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6k,create_fragment$6b,safe_not_equal,{datasource:0})}}function create_default_slot$4c(n1){let e1;return{c(){e1=text("Save")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_fragment$6a(n1){let e1,t1;return e1=new Button({props:{disabled:!n1[0],cta:!0,$$slots:{default:[create_default_slot$4c]},$$scope:{ctx:n1}}}),e1.$on("click",n1[1]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&1&&(i1.disabled=!r1[0]),o1&16&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$6j(n1,e1,t1){let r1,{datasource:o1}=e1,{updatedDatasource:i1}=e1;const a1=async()=>{try{const s1=integrationForDatasource(get_store_value(integrations),i1);await datasources.update({datasource:i1,integration:s1}),notifications.success(`Datasource ${i1.name} updated successfully`)}catch(s1){notifications.error(`Error saving datasource: ${s1.message}`)}};return n1.$$set=s1=>{"datasource"in s1&&t1(2,o1=s1.datasource),"updatedDatasource"in s1&&t1(3,i1=s1.updatedDatasource)},n1.$$.update=()=>{n1.$$.dirty&12&&t1(0,r1=!lodash$2.exports.isEqual(o1,i1))},[r1,a1,o1,i1]}class SaveDatasourceButton extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6j,create_fragment$6a,safe_not_equal,{datasource:2,updatedDatasource:3})}}function create_default_slot_1$37(n1){let e1;return{c(){e1=text("Add header")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot$4b(n1){let e1,t1,r1,o1,i1,a1={object:n1[3],noAddButton:!0,bindings:n1[4]};return e1=new KeyValueBuilder({props:a1}),n1[6](e1),e1.$on("change",n1[7]),o1=new ActionButton({props:{icon:"Add",$$slots:{default:[create_default_slot_1$37]},$$scope:{ctx:n1}}}),o1.$on("click",n1[8]),{c(){create_component(e1.$$.fragment),t1=space$1(),r1=element("div"),create_component(o1.$$.fragment)},m(s1,l1){mount_component(e1,s1,l1),insert$1(s1,t1,l1),insert$1(s1,r1,l1),mount_component(o1,r1,null),i1=!0},p(s1,l1){const c1={};l1&8&&(c1.object=s1[3]),e1.$set(c1);const u1={};l1&512&&(u1.$$scope={dirty:l1,ctx:s1}),o1.$set(u1)},i(s1){i1||(transition_in(e1.$$.fragment,s1),transition_in(o1.$$.fragment,s1),i1=!0)},o(s1){transition_out(e1.$$.fragment,s1),transition_out(o1.$$.fragment,s1),i1=!1},d(s1){n1[6](null),destroy_component(e1,s1),s1&&detach(t1),s1&&detach(r1),destroy_component(o1)}}}function create_controls_slot$4(n1){let e1,t1;return e1=new SaveDatasourceButton({props:{slot:"controls",datasource:n1[0],updatedDatasource:n1[1]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasource=r1[0]),o1&2&&(i1.updatedDatasource=r1[1]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_tooltip_slot$2(n1){let e1,t1;return e1=new Tooltip({props:{slot:"tooltip",title:"REST Headers",href:"https://docs.budibase.com/docs/rest-queries#headers"}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$69(n1){let e1,t1;return e1=new Panel$1({props:{$$slots:{tooltip:[create_tooltip_slot$2],controls:[create_controls_slot$4],default:[create_default_slot$4b]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&527&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$6i(n1,e1,t1){let r1,o1,{datasource:i1}=e1,a1=getRestBindings(),s1;const l1=p1=>{const d1=fp.cloneDeep(p1).reduce((m1,_1)=>(m1[_1.name]=readableToRuntimeBinding(a1,_1.value),m1),{});t1(1,r1.config.defaultHeaders=d1,r1)};function c1(p1){binding_callbacks[p1?"unshift":"push"](()=>{s1=p1,t1(2,s1)})}const u1=p1=>l1(p1.detail),f1=()=>s1.addEntry();return n1.$$set=p1=>{"datasource"in p1&&t1(0,i1=p1.datasource)},n1.$$.update=()=>{var p1;n1.$$.dirty&1&&t1(1,r1=fp.cloneDeep(i1)),n1.$$.dirty&2&&t1(3,o1=runtimeToReadableMap(a1,(p1=r1==null?void 0:r1.config)==null?void 0:p1.defaultHeaders))},[i1,r1,s1,o1,a1,l1,c1,u1,f1]}class Headers$1 extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6i,create_fragment$69,safe_not_equal,{datasource:0})}}const AUTH_TYPES={BASIC:"basic",BEARER:"bearer"},AUTH_TYPE_LABELS=[{label:"Basic Auth",value:AUTH_TYPES.BASIC},{label:"Bearer Token",value:AUTH_TYPES.BEARER}];function create_fragment$68(n1){let e1=n1[1](n1[0])+"",t1;return{c(){t1=text(e1)},m(r1,o1){insert$1(r1,t1,o1)},p(r1,[o1]){o1&1&&e1!==(e1=r1[1](r1[0])+"")&&set_data(t1,e1)},i:noop$5,o:noop$5,d(r1){r1&&detach(t1)}}}function instance$6h(n1,e1,t1){let{value:r1}=e1;const o1=i1=>AUTH_TYPE_LABELS.filter(a1=>a1.value===i1).map(a1=>a1.label);return n1.$$set=i1=>{"value"in i1&&t1(0,r1=i1.value)},[r1,o1]}class AuthTypeRenderer extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6h,create_fragment$68,safe_not_equal,{value:0})}}const BindableCombobox_svelte_svelte_type_style_lang="";function create_fragment$67(n1){let e1,t1,r1;return t1=new Combobox_1({props:{label:n1[1],disabled:n1[2],readonly:n1[5],value:n1[5]?"(JavaScript function)":n1[6],placeholder:n1[0],options:n1[4],error:n1[3]}}),t1.$on("type",n1[13]),t1.$on("pick",n1[14]),t1.$on("blur",n1[15]),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"class","control svelte-dbu7op"),toggle_class(e1,"disabled",n1[2])},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p(o1,[i1]){const a1={};i1&2&&(a1.label=o1[1]),i1&4&&(a1.disabled=o1[2]),i1&32&&(a1.readonly=o1[5]),i1&96&&(a1.value=o1[5]?"(JavaScript function)":o1[6]),i1&1&&(a1.placeholder=o1[0]),i1&16&&(a1.options=o1[4]),i1&8&&(a1.error=o1[3]),t1.$set(a1),(!r1||i1&4)&&toggle_class(e1,"disabled",o1[2])},i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function instance$6g(n1,e1,t1){let r1,o1,i1,{value:a1=""}=e1,{bindings:s1=[]}=e1,{placeholder:l1}=e1,{label:c1}=e1,{disabled:u1=!1}=e1,{options:f1}=e1,{appendBindingsAsOptions:p1=!0}=e1,{error:d1}=e1;const m1=createEventDispatcher(),_1=(k1,S1)=>{S1&&!(f1!=null&&f1.includes(k1))&&(k1=`{{ ${k1} }}`),m1("change",readableToRuntimeBinding(s1,k1))},h1=(k1,S1,O1)=>O1?[].concat(k1||[]).concat((S1==null?void 0:S1.map(C1=>C1.readableBinding))||[]):k1,b1=k1=>_1(k1.detail,!1),$1=k1=>_1(k1.detail,!0),y1=()=>m1("blur");return n1.$$set=k1=>{"value"in k1&&t1(9,a1=k1.value),"bindings"in k1&&t1(10,s1=k1.bindings),"placeholder"in k1&&t1(0,l1=k1.placeholder),"label"in k1&&t1(1,c1=k1.label),"disabled"in k1&&t1(2,u1=k1.disabled),"options"in k1&&t1(11,f1=k1.options),"appendBindingsAsOptions"in k1&&t1(12,p1=k1.appendBindingsAsOptions),"error"in k1&&t1(3,d1=k1.error)},n1.$$.update=()=>{n1.$$.dirty&1536&&t1(6,r1=runtimeToReadableBinding(s1,a1)),n1.$$.dirty&512&&t1(5,o1=Wh(a1)),n1.$$.dirty&7168&&t1(4,i1=h1(f1,s1,p1))},[l1,c1,u1,d1,i1,o1,r1,m1,_1,a1,s1,f1,p1,b1,$1,y1]}class BindableCombobox extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6g,create_fragment$67,safe_not_equal,{value:9,bindings:10,placeholder:0,label:1,disabled:2,options:11,appendBindingsAsOptions:12,error:3})}}function create_default_slot_3$1M(n1){let e1;return{c(){e1=text(`The authorization header will be automatically generated when you send the
1642
1642
  request.`)},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_if_block_1$1E(n1){let e1,t1,r1,o1,i1,a1;function s1(f1){n1[22](f1)}let l1={label:"Username",error:n1[4].basic.username?n1[3].basic.username:null,showModal:n1[21],variables:n1[9].variables,environmentVariablesEnabled:n1[8].environmentVariablesEnabled,handleUpgradePanel:n1[13]};n1[2].basic.username!==void 0&&(l1.value=n1[2].basic.username),e1=new EnvDropdown_1({props:l1}),binding_callbacks.push(()=>bind$3(e1,"value",s1)),e1.$on("change",n1[11]),e1.$on("blur",n1[23]);function c1(f1){n1[25](f1)}let u1={label:"Password",type:"password",error:n1[4].basic.password?n1[3].basic.password:null,showModal:n1[24],variables:n1[9].variables,environmentVariablesEnabled:n1[8].environmentVariablesEnabled,handleUpgradePanel:n1[13]};return n1[2].basic.password!==void 0&&(u1.value=n1[2].basic.password),o1=new EnvDropdown_1({props:u1}),binding_callbacks.push(()=>bind$3(o1,"value",c1)),o1.$on("change",n1[11]),o1.$on("blur",n1[26]),{c(){create_component(e1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment)},m(f1,p1){mount_component(e1,f1,p1),insert$1(f1,r1,p1),mount_component(o1,f1,p1),a1=!0},p(f1,p1){const d1={};p1[0]&24&&(d1.error=f1[4].basic.username?f1[3].basic.username:null),p1[0]&512&&(d1.variables=f1[9].variables),p1[0]&256&&(d1.environmentVariablesEnabled=f1[8].environmentVariablesEnabled),!t1&&p1[0]&4&&(t1=!0,d1.value=f1[2].basic.username,add_flush_callback(()=>t1=!1)),e1.$set(d1);const m1={};p1[0]&24&&(m1.error=f1[4].basic.password?f1[3].basic.password:null),p1[0]&512&&(m1.variables=f1[9].variables),p1[0]&256&&(m1.environmentVariablesEnabled=f1[8].environmentVariablesEnabled),!i1&&p1[0]&4&&(i1=!0,m1.value=f1[2].basic.password,add_flush_callback(()=>i1=!1)),o1.$set(m1)},i(f1){a1||(transition_in(e1.$$.fragment,f1),transition_in(o1.$$.fragment,f1),a1=!0)},o(f1){transition_out(e1.$$.fragment,f1),transition_out(o1.$$.fragment,f1),a1=!1},d(f1){destroy_component(e1,f1),f1&&detach(r1),destroy_component(o1,f1)}}}function create_if_block$2Z(n1){let e1,t1;return e1=new BindableCombobox({props:{label:"Token",value:n1[2].bearer.token,bindings:[...getAuthBindings(),...n1[8].environmentVariablesEnabled?getEnvironmentBindings():[]],allowJS:!1,placeholder:"Token",appendBindingsAsOptions:!0,drawerEnabled:!1,error:n1[4].bearer.token?n1[3].bearer.token:null}}),e1.$on("change",n1[27]),e1.$on("blur",n1[28]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1[0]&4&&(i1.value=r1[2].bearer.token),o1[0]&256&&(i1.bindings=[...getAuthBindings(),...r1[8].environmentVariablesEnabled?getEnvironmentBindings():[]]),o1[0]&24&&(i1.error=r1[4].bearer.token?r1[3].bearer.token:null),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_2$2m(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1;e1=new Body({props:{size:"S",$$slots:{default:[create_default_slot_3$1M]},$$scope:{ctx:n1}}});function p1($1){n1[17]($1)}let d1={label:"Name",error:n1[4].name?n1[3].name:null};n1[2].name!==void 0&&(d1.value=n1[2].name),r1=new Input$5({props:d1}),binding_callbacks.push(()=>bind$3(r1,"value",p1)),r1.$on("change",n1[11]),r1.$on("blur",n1[18]);function m1($1){n1[19]($1)}let _1={label:"Type",options:AUTH_TYPE_LABELS,error:n1[4].type?n1[3].type:null};n1[2].type!==void 0&&(_1.value=n1[2].type),a1=new Select_1$1({props:_1}),binding_callbacks.push(()=>bind$3(a1,"value",m1)),a1.$on("change",n1[11]),a1.$on("blur",n1[20]);let h1=n1[2].type===AUTH_TYPES.BASIC&&create_if_block_1$1E(n1),b1=n1[2].type===AUTH_TYPES.BEARER&&create_if_block$2Z(n1);return{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment),i1=space$1(),create_component(a1.$$.fragment),l1=space$1(),h1&&h1.c(),c1=space$1(),b1&&b1.c(),u1=empty$1()},m($1,y1){mount_component(e1,$1,y1),insert$1($1,t1,y1),mount_component(r1,$1,y1),insert$1($1,i1,y1),mount_component(a1,$1,y1),insert$1($1,l1,y1),h1&&h1.m($1,y1),insert$1($1,c1,y1),b1&&b1.m($1,y1),insert$1($1,u1,y1),f1=!0},p($1,y1){const k1={};y1[1]&32&&(k1.$$scope={dirty:y1,ctx:$1}),e1.$set(k1);const S1={};y1[0]&24&&(S1.error=$1[4].name?$1[3].name:null),!o1&&y1[0]&4&&(o1=!0,S1.value=$1[2].name,add_flush_callback(()=>o1=!1)),r1.$set(S1);const O1={};y1[0]&24&&(O1.error=$1[4].type?$1[3].type:null),!s1&&y1[0]&4&&(s1=!0,O1.value=$1[2].type,add_flush_callback(()=>s1=!1)),a1.$set(O1),$1[2].type===AUTH_TYPES.BASIC?h1?(h1.p($1,y1),y1[0]&4&&transition_in(h1,1)):(h1=create_if_block_1$1E($1),h1.c(),transition_in(h1,1),h1.m(c1.parentNode,c1)):h1&&(group_outros(),transition_out(h1,1,1,()=>{h1=null}),check_outros()),$1[2].type===AUTH_TYPES.BEARER?b1?(b1.p($1,y1),y1[0]&4&&transition_in(b1,1)):(b1=create_if_block$2Z($1),b1.c(),transition_in(b1,1),b1.m(u1.parentNode,u1)):b1&&(group_outros(),transition_out(b1,1,1,()=>{b1=null}),check_outros())},i($1){f1||(transition_in(e1.$$.fragment,$1),transition_in(r1.$$.fragment,$1),transition_in(a1.$$.fragment,$1),transition_in(h1),transition_in(b1),f1=!0)},o($1){transition_out(e1.$$.fragment,$1),transition_out(r1.$$.fragment,$1),transition_out(a1.$$.fragment,$1),transition_out(h1),transition_out(b1),f1=!1},d($1){destroy_component(e1,$1),$1&&detach(t1),destroy_component(r1,$1),$1&&detach(i1),destroy_component(a1,$1),$1&&detach(l1),h1&&h1.d($1),$1&&detach(c1),b1&&b1.d($1),$1&&detach(u1)}}}function create_default_slot_1$36(n1){let e1,t1;return e1=new Layout$m({props:{gap:"S",$$slots:{default:[create_default_slot_2$2m]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1[0]&796|o1[1]&32&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$4a(n1){let e1,t1;return e1=new CreateEditVariableModal({props:{save:n1[10]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$66(n1){let e1,t1,r1,o1;e1=new ModalContent({props:{title:n1[0]?"Update Authentication":"Add Authentication",onConfirm:n1[12],confirmText:n1[0]?"Update":"Add",disabled:n1[5]||!n1[6],cancelText:"Cancel",size:"M",showSecondaryButton:!!n1[0],secondaryButtonText:"Remove",secondaryAction:n1[1],secondaryButtonWarning:!0,$$slots:{default:[create_default_slot_1$36]},$$scope:{ctx:n1}}});let i1={$$slots:{default:[create_default_slot$4a]},$$scope:{ctx:n1}};return r1=new Modal({props:i1}),n1[29](r1),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),insert$1(a1,t1,s1),mount_component(r1,a1,s1),o1=!0},p(a1,s1){const l1={};s1[0]&1&&(l1.title=a1[0]?"Update Authentication":"Add Authentication"),s1[0]&1&&(l1.confirmText=a1[0]?"Update":"Add"),s1[0]&96&&(l1.disabled=a1[5]||!a1[6]),s1[0]&1&&(l1.showSecondaryButton=!!a1[0]),s1[0]&2&&(l1.secondaryAction=a1[1]),s1[0]&796|s1[1]&32&&(l1.$$scope={dirty:s1,ctx:a1}),e1.$set(l1);const c1={};s1[1]&32&&(c1.$$scope={dirty:s1,ctx:a1}),r1.$set(c1)},i(a1){o1||(transition_in(e1.$$.fragment,a1),transition_in(r1.$$.fragment,a1),o1=!0)},o(a1){transition_out(e1.$$.fragment,a1),transition_out(r1.$$.fragment,a1),o1=!1},d(a1){destroy_component(e1,a1),a1&&detach(t1),n1[29](null),destroy_component(r1,a1)}}}function instance$6f(n1,e1,t1){let r1,o1,i1;component_subscribe(n1,licensing,Q1=>t1(8,r1=Q1)),component_subscribe(n1,auth,Q1=>t1(31,o1=Q1)),component_subscribe(n1,environment,Q1=>t1(9,i1=Q1));let{configs:a1}=e1,{currentConfig:s1}=e1,{onConfirm:l1}=e1,{onRemove:c1}=e1,u1={basic:{},bearer:{}},f1={basic:{},bearer:{}},p1={basic:{},bearer:{}},d1=!1,m1=!1,_1,h1;onMount(async()=>{try{await environment.loadVariables(),o1.user&&await licensing.init()}catch(Q1){console.error(Q1)}s1&&b1()});const b1=()=>{t1(2,u1.name=s1.name,u1),t1(2,u1.type=s1.type,u1),s1.type===AUTH_TYPES.BASIC?t1(2,u1.basic={...s1.config},u1):s1.type===AUTH_TYPES.BEARER&&t1(2,u1.bearer={...s1.config},u1)},$1=()=>{const Q1={name:u1.name,type:u1.type};return s1&&(Q1._id=s1._id),u1.type===AUTH_TYPES.BASIC?Q1.config={...u1.basic}:u1.type===AUTH_TYPES.BEARER&&(Q1.config={...u1.bearer}),Q1},y1=()=>{s1?t1(6,m1=JSON.stringify(s1)!==JSON.stringify($1())):t1(6,m1=!0)},k1=()=>{t1(5,d1=!1);const Q1=()=>(u1.name?t1(3,f1.name=a1.find(t0=>t0.name===u1.name&&t0.name!==(s1==null?void 0:s1.name))!==void 0?"Name must be unique":null,f1):t1(3,f1.name="Name is required",f1),!!f1.name),r0=()=>(t1(3,f1.type=u1.type?null:"Type is required",f1),!!f1.type),p0=()=>(t1(3,f1.basic.username=u1.basic.username?null:"Username is required",f1),t1(3,f1.basic.password=u1.basic.password?null:"Password is required",f1),!!(f1.basic.username||f1.basic.password||a0)),h0=()=>(t1(3,f1.bearer.token=u1.bearer.token?null:"Token is required",f1),!!(f1.bearer.token||a0)),a0=Q1()||r0();u1.type===AUTH_TYPES.BASIC?t1(5,d1=p0()||a0):u1.type===AUTH_TYPES.BEARER?t1(5,d1=h0()||a0):t1(5,d1=!!a0)},S1=async Q1=>{try{await environment.createVariable(Q1),t1(2,u1.basic[h1]=`{{ env.${Q1.name} }}`,u1),_1.hide()}catch(r0){notifications.error(`Failed to create variable: ${r0.message}`)}},O1=()=>{k1(),y1()},C1=()=>{l1($1())};async function M1(){await environment.upgradePanelOpened(),r1.goToUpgradePage()}function z1(Q1){h1=Q1,_1.show()}function L1(Q1){n1.$$.not_equal(u1.name,Q1)&&(u1.name=Q1,t1(2,u1))}const R1=()=>t1(4,p1.name=!0,p1);function H1(Q1){n1.$$.not_equal(u1.type,Q1)&&(u1.type=Q1,t1(2,u1))}const q1=()=>t1(4,p1.type=!0,p1),B1=()=>z1("configKey");function I1(Q1){n1.$$.not_equal(u1.basic.username,Q1)&&(u1.basic.username=Q1,t1(2,u1))}const F1=()=>t1(4,p1.basic.username=!0,p1),j1=()=>z1("configKey");function G1(Q1){n1.$$.not_equal(u1.basic.password,Q1)&&(u1.basic.password=Q1,t1(2,u1))}const Y1=()=>t1(4,p1.basic.password=!0,p1),X1=Q1=>{t1(2,u1.bearer.token=Q1.detail,u1),O1()},e0=()=>{t1(4,p1.bearer.token=!0,p1),O1()};function K1(Q1){binding_callbacks[Q1?"unshift":"push"](()=>{_1=Q1,t1(7,_1)})}return n1.$$set=Q1=>{"configs"in Q1&&t1(15,a1=Q1.configs),"currentConfig"in Q1&&t1(0,s1=Q1.currentConfig),"onConfirm"in Q1&&t1(16,l1=Q1.onConfirm),"onRemove"in Q1&&t1(1,c1=Q1.onRemove)},[s1,c1,u1,f1,p1,d1,m1,_1,r1,i1,S1,O1,C1,M1,z1,a1,l1,L1,R1,H1,q1,B1,I1,F1,j1,G1,Y1,X1,e0,K1]}class RestAuthenticationModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6f,create_fragment$66,safe_not_equal,{configs:15,currentConfig:0,onConfirm:16,onRemove:1},null,[-1,-1])}}function create_default_slot_2$2l(n1){let e1,t1;return e1=new RestAuthenticationModal({props:{configs:n1[0],currentConfig:n1[1],onConfirm:n1[5],onRemove:n1[6]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.configs=r1[0]),o1&2&&(i1.currentConfig=r1[1]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block$2Y(n1){let e1,t1;return e1=new Table$2({props:{schema:n1[3],data:n1[0],allowEditColumns:!1,allowEditRows:!1,allowSelectRows:!1,customRenderers:[{column:"type",component:AuthTypeRenderer}]}}),e1.$on("click",n1[8]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.data=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_1$35(n1){let e1;return{c(){e1=text("Add authentication")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot$49(n1){let e1,t1,r1,o1,i1=n1[0]&&n1[0].length>0&&create_if_block$2Y(n1);return r1=new ActionButton({props:{icon:"Add",$$slots:{default:[create_default_slot_1$35]},$$scope:{ctx:n1}}}),r1.$on("click",n1[9]),{c(){i1&&i1.c(),e1=space$1(),t1=element("div"),create_component(r1.$$.fragment)},m(a1,s1){i1&&i1.m(a1,s1),insert$1(a1,e1,s1),insert$1(a1,t1,s1),mount_component(r1,t1,null),o1=!0},p(a1,s1){a1[0]&&a1[0].length>0?i1?(i1.p(a1,s1),s1&1&&transition_in(i1,1)):(i1=create_if_block$2Y(a1),i1.c(),transition_in(i1,1),i1.m(e1.parentNode,e1)):i1&&(group_outros(),transition_out(i1,1,1,()=>{i1=null}),check_outros());const l1={};s1&2048&&(l1.$$scope={dirty:s1,ctx:a1}),r1.$set(l1)},i(a1){o1||(transition_in(i1),transition_in(r1.$$.fragment,a1),o1=!0)},o(a1){transition_out(i1),transition_out(r1.$$.fragment,a1),o1=!1},d(a1){i1&&i1.d(a1),a1&&detach(e1),a1&&detach(t1),destroy_component(r1)}}}function create_fragment$65(n1){let e1,t1,r1,o1,i1={$$slots:{default:[create_default_slot_2$2l]},$$scope:{ctx:n1}};return e1=new Modal({props:i1}),n1[7](e1),r1=new Layout$m({props:{gap:"S",noPadding:!0,$$slots:{default:[create_default_slot$49]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(a1,s1){mount_component(e1,a1,s1),insert$1(a1,t1,s1),mount_component(r1,a1,s1),o1=!0},p(a1,[s1]){const l1={};s1&2051&&(l1.$$scope={dirty:s1,ctx:a1}),e1.$set(l1);const c1={};s1&2049&&(c1.$$scope={dirty:s1,ctx:a1}),r1.$set(c1)},i(a1){o1||(transition_in(e1.$$.fragment,a1),transition_in(r1.$$.fragment,a1),o1=!0)},o(a1){transition_out(e1.$$.fragment,a1),transition_out(r1.$$.fragment,a1),o1=!1},d(a1){n1[7](null),destroy_component(e1,a1),a1&&detach(t1),destroy_component(r1,a1)}}}function instance$6e(n1,e1,t1){let{authConfigs:r1=[]}=e1;const o1=createEventDispatcher();let i1=null,a1;const s1={name:"",type:""},l1=m1=>{t1(1,i1=m1),a1.show()},c1=m1=>{let _1;i1?_1=r1.map(h1=>h1._id===i1._id?m1:h1):(m1._id=uuid(),_1=[...r1,m1]),o1("change",_1)},u1=()=>{const m1=r1.filter(_1=>_1._id!==i1._id);o1("change",m1)};function f1(m1){binding_callbacks[m1?"unshift":"push"](()=>{a1=m1,t1(2,a1)})}const p1=({detail:m1})=>l1(m1),d1=()=>l1();return n1.$$set=m1=>{"authConfigs"in m1&&t1(0,r1=m1.authConfigs)},[r1,i1,a1,s1,l1,c1,u1,f1,p1,d1]}class RestAuthenticationBuilder extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6e,create_fragment$65,safe_not_equal,{authConfigs:0})}}function create_default_slot$48(n1){let e1,t1;return e1=new RestAuthenticationBuilder({props:{authConfigs:n1[1].config.authConfigs}}),e1.$on("change",n1[3]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&2&&(i1.authConfigs=r1[1].config.authConfigs),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_controls_slot$3(n1){let e1,t1;return e1=new SaveDatasourceButton({props:{slot:"controls",datasource:n1[0],updatedDatasource:n1[1]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasource=r1[0]),o1&2&&(i1.updatedDatasource=r1[1]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_tooltip_slot$1(n1){let e1,t1;return e1=new Tooltip({props:{slot:"tooltip",title:"REST Authentication",href:"https://docs.budibase.com/docs/rest-authentication"}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$64(n1){let e1,t1;return e1=new Panel$1({props:{$$slots:{tooltip:[create_tooltip_slot$1],controls:[create_controls_slot$3],default:[create_default_slot$48]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&19&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$6d(n1,e1,t1){let r1,{datasource:o1}=e1;const i1=s1=>{t1(1,r1.config.authConfigs=s1,r1)},a1=({detail:s1})=>i1(s1);return n1.$$set=s1=>{"datasource"in s1&&t1(0,o1=s1.datasource)},n1.$$.update=()=>{n1.$$.dirty&1&&t1(1,r1=fp.cloneDeep(o1))},[o1,r1,i1,a1]}class Authentication extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6d,create_fragment$64,safe_not_equal,{datasource:0})}}function create_else_block$16(n1){let e1,t1;return e1=new Body({props:{size:"S",$$slots:{default:[create_default_slot$47]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&256&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block$2X(n1){let e1,t1;return e1=new Table$2({props:{schema:n1[1],data:n1[0],allowEditColumns:!1,allowEditRows:!1,allowSelectRows:!1,customRenderers:[{column:"name",component:BoldRenderer},{column:"value",component:CodeRenderer}]}}),e1.$on("click",n1[5]),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.data=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot$47(n1){let e1;return{c(){e1=element("i"),e1.textContent="No dynamic variables specified."},m(t1,r1){insert$1(t1,e1,r1)},p:noop$5,d(t1){t1&&detach(e1)}}}function create_fragment$63(n1){let e1,t1,r1,o1;const i1=[create_if_block$2X,create_else_block$16],a1=[];function s1(l1,c1){return l1[0]&&l1[0].length>0?0:1}return e1=s1(n1),t1=a1[e1]=i1[e1](n1),{c(){t1.c(),r1=empty$1()},m(l1,c1){a1[e1].m(l1,c1),insert$1(l1,r1,c1),o1=!0},p(l1,[c1]){let u1=e1;e1=s1(l1),e1===u1?a1[e1].p(l1,c1):(group_outros(),transition_out(a1[u1],1,1,()=>{a1[u1]=null}),check_outros(),t1=a1[e1],t1?t1.p(l1,c1):(t1=a1[e1]=i1[e1](l1),t1.c()),transition_in(t1,1),t1.m(r1.parentNode,r1))},i(l1){o1||(transition_in(t1),o1=!0)},o(l1){transition_out(t1),o1=!1},d(l1){a1[e1].d(l1),l1&&detach(r1)}}}function instance$6c(n1,e1,t1){let r1,o1;component_subscribe(n1,goto,f1=>t1(6,r1=f1)),component_subscribe(n1,queries,f1=>t1(4,o1=f1));let{datasource:i1}=e1,a1=[];const s1={name:"",query:"",value:""},l1=f1=>{const p1=f1.queryId;queries.select({_id:p1}),r1(`../../query/${p1}`)};function c1(f1,p1){var d1;t1(0,a1=[]),(d1=f1.config.dynamicVariables)==null||d1.forEach(m1=>{const _1=p1.find(h1=>h1._id===m1.queryId);_1&&a1.push({...m1,query:_1.name})})}const u1=({detail:f1})=>l1(f1);return n1.$$set=f1=>{"datasource"in f1&&t1(3,i1=f1.datasource)},n1.$$.update=()=>{n1.$$.dirty&24&&c1(i1,o1.list)},[a1,s1,l1,i1,o1,u1]}class ViewDynamicVariables extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6c,create_fragment$63,safe_not_equal,{datasource:3})}}function create_default_slot_5$11(n1){let e1;return{c(){e1=text("Static")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_4$1k(n1){let e1,t1,r1,o1;return e1=new Heading({props:{size:"S",$$slots:{default:[create_default_slot_5$11]},$$scope:{ctx:n1}}}),r1=new KeyValueBuilder({props:{name:"Variable",keyPlaceholder:"Name",headings:!0,object:n1[1].config.staticVariables,bindings:n1[3].environmentVariablesEnabled?getEnvironmentBindings():[]}}),r1.$on("change",n1[6]),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&128&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&2&&(l1.object=i1[1].config.staticVariables),a1&8&&(l1.bindings=i1[3].environmentVariablesEnabled?getEnvironmentBindings():[]),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_default_slot_3$1L(n1){let e1;return{c(){e1=text("Dynamic")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_2$2k(n1){let e1,t1,r1,o1;return e1=new Heading({props:{size:"S",$$slots:{default:[create_default_slot_3$1L]},$$scope:{ctx:n1}}}),r1=new ViewDynamicVariables({props:{queries:n1[2],datasource:n1[0]}}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&128&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&4&&(l1.queries=i1[2]),a1&1&&(l1.datasource=i1[0]),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_default_slot_1$34(n1){let e1,t1,r1,o1;return e1=new Layout$m({props:{noPadding:!0,gap:"XS",$$slots:{default:[create_default_slot_4$1k]},$$scope:{ctx:n1}}}),r1=new Layout$m({props:{noPadding:!0,gap:"XS",$$slots:{default:[create_default_slot_2$2k]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment)},m(i1,a1){mount_component(e1,i1,a1),insert$1(i1,t1,a1),mount_component(r1,i1,a1),o1=!0},p(i1,a1){const s1={};a1&138&&(s1.$$scope={dirty:a1,ctx:i1}),e1.$set(s1);const l1={};a1&133&&(l1.$$scope={dirty:a1,ctx:i1}),r1.$set(l1)},i(i1){o1||(transition_in(e1.$$.fragment,i1),transition_in(r1.$$.fragment,i1),o1=!0)},o(i1){transition_out(e1.$$.fragment,i1),transition_out(r1.$$.fragment,i1),o1=!1},d(i1){destroy_component(e1,i1),i1&&detach(t1),destroy_component(r1,i1)}}}function create_default_slot$46(n1){let e1,t1;return e1=new Layout$m({props:{$$slots:{default:[create_default_slot_1$34]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&143&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_controls_slot$2(n1){let e1,t1;return e1=new SaveDatasourceButton({props:{slot:"controls",datasource:n1[0],updatedDatasource:n1[1]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasource=r1[0]),o1&2&&(i1.updatedDatasource=r1[1]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_tooltip_slot(n1){let e1,t1;return e1=new Tooltip({props:{slot:"tooltip",title:"REST variables",href:"https://docs.budibase.com/docs/rest-variables"}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p:noop$5,i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$62(n1){let e1,t1;return e1=new Panel$1({props:{$$slots:{tooltip:[create_tooltip_slot],controls:[create_controls_slot$2],default:[create_default_slot$46]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&143&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$6b(n1,e1,t1){let r1,o1,i1,a1;component_subscribe(n1,queries,u1=>t1(5,i1=u1)),component_subscribe(n1,licensing,u1=>t1(3,a1=u1));let{datasource:s1}=e1;const l1=u1=>{const f1={};u1.forEach(({name:p1,value:d1})=>{f1[p1]=d1}),t1(1,r1.config.staticVariables=f1,r1)},c1=({detail:u1})=>l1(u1);return n1.$$set=u1=>{"datasource"in u1&&t1(0,s1=u1.datasource)},n1.$$.update=()=>{n1.$$.dirty&1&&t1(1,r1=fp.cloneDeep(s1)),n1.$$.dirty&33&&t1(2,o1=i1.list.filter(u1=>u1.datasourceId===(s1==null?void 0:s1._id)))},[s1,r1,o1,a1,l1,i1,c1]}class Variables extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6b,create_fragment$62,safe_not_equal,{datasource:0})}}const PromptQueryModal_svelte_svelte_type_style_lang="";function create_default_slot_4$1j(n1){let e1;return{c(){e1=text("Your database is connected and ready to use.")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_3$1K(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1;return{c(){e1=text("Create a query using "),t1=element("span"),t1.textContent="Create",r1=text(", "),o1=element("span"),o1.textContent="Read",i1=text(`,
1643
1643
  `),a1=element("span"),a1.textContent="Update",s1=text(`
1644
1644
  and `),l1=element("span"),l1.textContent="Delete",c1=text(" functions.")},m(u1,f1){insert$1(u1,e1,f1),insert$1(u1,t1,f1),insert$1(u1,r1,f1),insert$1(u1,o1,f1),insert$1(u1,i1,f1),insert$1(u1,a1,f1),insert$1(u1,s1,f1),insert$1(u1,l1,f1),insert$1(u1,c1,f1)},p:noop$5,d(u1){u1&&detach(e1),u1&&detach(t1),u1&&detach(r1),u1&&detach(o1),u1&&detach(i1),u1&&detach(a1),u1&&detach(s1),u1&&detach(l1),u1&&detach(c1)}}}function create_default_slot_2$2j(n1){let e1,t1,r1,o1,i1;return t1=new Body({props:{$$slots:{default:[create_default_slot_4$1j]},$$scope:{ctx:n1}}}),o1=new Body({props:{$$slots:{default:[create_default_slot_3$1K]},$$scope:{ctx:n1}}}),{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment),attr(e1,"class","body svelte-1eg486c")},m(a1,s1){insert$1(a1,e1,s1),mount_component(t1,e1,null),append$1(e1,r1),mount_component(o1,e1,null),i1=!0},p(a1,s1){const l1={};s1&256&&(l1.$$scope={dirty:s1,ctx:a1}),t1.$set(l1);const c1={};s1&256&&(c1.$$scope={dirty:s1,ctx:a1}),o1.$set(c1)},i(a1){i1||(transition_in(t1.$$.fragment,a1),transition_in(o1.$$.fragment,a1),i1=!0)},o(a1){transition_out(t1.$$.fragment,a1),transition_out(o1.$$.fragment,a1),i1=!1},d(a1){a1&&detach(e1),destroy_component(t1),destroy_component(o1)}}}function create_default_slot_1$33(n1){let e1;return{c(){e1=text("You're ready to query your data!")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_header_slot$1(n1){let e1,t1,r1,o1,i1;return t1=new FontAwesomeIcon({props:{name:"fa-solid fa-circle-check"}}),o1=new Heading({props:{size:"M",$$slots:{default:[create_default_slot_1$33]},$$scope:{ctx:n1}}}),{c(){e1=element("div"),create_component(t1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment),attr(e1,"slot","header"),attr(e1,"class","header svelte-1eg486c")},m(a1,s1){insert$1(a1,e1,s1),mount_component(t1,e1,null),append$1(e1,r1),mount_component(o1,e1,null),i1=!0},p(a1,s1){const l1={};s1&256&&(l1.$$scope={dirty:s1,ctx:a1}),o1.$set(l1)},i(a1){i1||(transition_in(t1.$$.fragment,a1),transition_in(o1.$$.fragment,a1),i1=!0)},o(a1){transition_out(t1.$$.fragment,a1),transition_out(o1.$$.fragment,a1),i1=!1},d(a1){a1&&detach(e1),destroy_component(t1),destroy_component(o1)}}}function create_default_slot$45(n1){let e1,t1;return e1=new ModalContent({props:{size:"L",cancelText:"Cancel",confirmText:"Create new query",onConfirm:n1[5],showCloseIcon:!1,$$slots:{header:[create_header_slot$1],default:[create_default_slot_2$2j]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&6&&(i1.onConfirm=r1[5]),o1&256&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_fragment$61(n1){let e1,t1,r1={$$slots:{default:[create_default_slot$45]},$$scope:{ctx:n1}};return e1=new Modal({props:r1}),n1[6](e1),{c(){create_component(e1.$$.fragment)},m(o1,i1){mount_component(e1,o1,i1),t1=!0},p(o1,[i1]){const a1={};i1&262&&(a1.$$scope={dirty:i1,ctx:o1}),e1.$set(a1)},i(o1){t1||(transition_in(e1.$$.fragment,o1),t1=!0)},o(o1){transition_out(e1.$$.fragment,o1),t1=!1},d(o1){n1[6](null),destroy_component(e1,o1)}}}function instance$6a(n1,e1,t1){let r1,o1,i1,a1;component_subscribe(n1,goto,f1=>t1(3,i1=f1)),component_subscribe(n1,params,f1=>t1(4,a1=f1));const s1=(f1,p1)=>{p1["?promptQuery"]&&(f1==null?void 0:f1.show)&&(f1.show(),history.replaceState({},null,window.location.pathname))};let l1;const c1=()=>o1(`../../query/new/${r1.datasourceId}`);function u1(f1){binding_callbacks[f1?"unshift":"push"](()=>{l1=f1,t1(0,l1)})}return n1.$$.update=()=>{n1.$$.dirty&16&&t1(1,r1=a1),n1.$$.dirty&8&&t1(2,o1=i1),n1.$$.dirty&3&&s1(l1,r1)},[l1,r1,o1,i1,a1,c1,u1]}class PromptQueryModal extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$6a,create_fragment$61,safe_not_equal,{})}}const Settings_svelte_svelte_type_style_lang="";function create_default_slot_4$1i(n1){let e1;return{c(){e1=text("Troubleshooting")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_3$1J(n1){let e1;return{c(){e1=text("Download your schema to share with the Budibase team")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_2$2i(n1){let e1;return{c(){e1=text("Download")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$32(n1){let e1,t1,r1,o1,i1,a1,s1;return e1=new Body({props:{size:"L",weight:"700",$$slots:{default:[create_default_slot_4$1i]},$$scope:{ctx:n1}}}),r1=new Body({props:{$$slots:{default:[create_default_slot_3$1J]},$$scope:{ctx:n1}}}),a1=new Button({props:{cta:!0,$$slots:{default:[create_default_slot_2$2i]},$$scope:{ctx:n1}}}),a1.$on("click",n1[0]),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment),o1=space$1(),i1=element("div"),create_component(a1.$$.fragment),attr(i1,"class","download-button svelte-rkyu2p")},m(l1,c1){mount_component(e1,l1,c1),insert$1(l1,t1,c1),mount_component(r1,l1,c1),insert$1(l1,o1,c1),insert$1(l1,i1,c1),mount_component(a1,i1,null),s1=!0},p(l1,c1){const u1={};c1&4&&(u1.$$scope={dirty:c1,ctx:l1}),e1.$set(u1);const f1={};c1&4&&(f1.$$scope={dirty:c1,ctx:l1}),r1.$set(f1);const p1={};c1&4&&(p1.$$scope={dirty:c1,ctx:l1}),a1.$set(p1)},i(l1){s1||(transition_in(e1.$$.fragment,l1),transition_in(r1.$$.fragment,l1),transition_in(a1.$$.fragment,l1),s1=!0)},o(l1){transition_out(e1.$$.fragment,l1),transition_out(r1.$$.fragment,l1),transition_out(a1.$$.fragment,l1),s1=!1},d(l1){destroy_component(e1,l1),l1&&detach(t1),destroy_component(r1,l1),l1&&detach(o1),l1&&detach(i1),destroy_component(a1)}}}function create_default_slot$44(n1){let e1,t1,r1;return t1=new Layout$m({props:{gap:"S",noPadding:!0,$$slots:{default:[create_default_slot_1$32]},$$scope:{ctx:n1}}}),{c(){e1=element("div"),create_component(t1.$$.fragment),attr(e1,"class","main svelte-rkyu2p")},m(o1,i1){insert$1(o1,e1,i1),mount_component(t1,e1,null),r1=!0},p(o1,i1){const a1={};i1&4&&(a1.$$scope={dirty:i1,ctx:o1}),t1.$set(a1)},i(o1){r1||(transition_in(t1.$$.fragment,o1),r1=!0)},o(o1){transition_out(t1.$$.fragment,o1),r1=!1},d(o1){o1&&detach(e1),destroy_component(t1)}}}function create_fragment$60(n1){let e1,t1;return e1=new Panel$1({props:{$$slots:{default:[create_default_slot$44]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,[o1]){const i1={};o1&4&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function instance$69(n1,e1,t1){let{datasource:r1}=e1;async function o1(){r1!=null&&r1._id||notifications.error("Datasource invalid");const i1=await API.fetchExternalSchema(r1._id);downloadText(`${r1.name}-dump.sql`,i1.schema)}return n1.$$set=i1=>{"datasource"in i1&&t1(1,r1=i1.datasource)},[o1,r1]}class Settings$2 extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$69,create_fragment$60,safe_not_equal,{datasource:1})}}const index_svelte_svelte_type_style_lang$p="";function get_each_context$1c(n1,e1,t1){const r1=n1.slice();return r1[7]=e1[t1],r1}function create_default_slot_5$10(n1){var r1;let e1=((r1=n1[1].selected)==null?void 0:r1.name)+"",t1;return{c(){t1=text(e1)},m(o1,i1){insert$1(o1,t1,i1)},p(o1,i1){var a1;i1&2&&e1!==(e1=((a1=o1[1].selected)==null?void 0:a1.name)+"")&&set_data(t1,e1)},d(o1){o1&&detach(t1)}}}function create_default_slot_4$1h(n1){let e1,t1,r1,o1,i1;var a1=ICONS[n1[0].source];function s1(l1){return{props:{height:"26",width:"26"}}}return a1&&(t1=construct_svelte_component(a1,s1())),o1=new Heading({props:{size:"M",$$slots:{default:[create_default_slot_5$10]},$$scope:{ctx:n1}}}),{c(){e1=element("header"),t1&&create_component(t1.$$.fragment),r1=space$1(),create_component(o1.$$.fragment),attr(e1,"class","svelte-vv94hc")},m(l1,c1){insert$1(l1,e1,c1),t1&&mount_component(t1,e1,null),append$1(e1,r1),mount_component(o1,e1,null),i1=!0},p(l1,c1){if(a1!==(a1=ICONS[l1[0].source])){if(t1){group_outros();const f1=t1;transition_out(f1.$$.fragment,1,0,()=>{destroy_component(f1,1)}),check_outros()}a1?(t1=construct_svelte_component(a1,s1()),create_component(t1.$$.fragment),transition_in(t1.$$.fragment,1),mount_component(t1,e1,r1)):t1=null}const u1={};c1&1026&&(u1.$$scope={dirty:c1,ctx:l1}),o1.$set(u1)},i(l1){i1||(t1&&transition_in(t1.$$.fragment,l1),transition_in(o1.$$.fragment,l1),i1=!0)},o(l1){t1&&transition_out(t1.$$.fragment,l1),transition_out(o1.$$.fragment,l1),i1=!1},d(l1){l1&&detach(e1),t1&&destroy_component(t1),destroy_component(o1)}}}function create_each_block$1c(n1){let e1,t1;function r1(){return n1[4](n1[7])}return e1=new Tab({props:{title:n1[7]}}),e1.$on("click",r1),{c(){create_component(e1.$$.fragment)},m(o1,i1){mount_component(e1,o1,i1),t1=!0},p(o1,i1){n1=o1;const a1={};i1&8&&(a1.title=n1[7]),e1.$set(a1)},i(o1){t1||(transition_in(e1.$$.fragment,o1),t1=!0)},o(o1){transition_out(e1.$$.fragment,o1),t1=!1},d(o1){destroy_component(e1,o1)}}}function create_default_slot_3$1I(n1){let e1,t1,r1=n1[3],o1=[];for(let a1=0;a1<r1.length;a1+=1)o1[a1]=create_each_block$1c(get_each_context$1c(n1,r1,a1));const i1=a1=>transition_out(o1[a1],1,1,()=>{o1[a1]=null});return{c(){for(let a1=0;a1<o1.length;a1+=1)o1[a1].c();e1=empty$1()},m(a1,s1){for(let l1=0;l1<o1.length;l1+=1)o1[l1].m(a1,s1);insert$1(a1,e1,s1),t1=!0},p(a1,s1){if(s1&12){r1=a1[3];let l1;for(l1=0;l1<r1.length;l1+=1){const c1=get_each_context$1c(a1,r1,l1);o1[l1]?(o1[l1].p(c1,s1),transition_in(o1[l1],1)):(o1[l1]=create_each_block$1c(c1),o1[l1].c(),transition_in(o1[l1],1),o1[l1].m(e1.parentNode,e1))}for(group_outros(),l1=r1.length;l1<o1.length;l1+=1)i1(l1);check_outros()}},i(a1){if(!t1){for(let s1=0;s1<r1.length;s1+=1)transition_in(o1[s1]);t1=!0}},o(a1){o1=o1.filter(Boolean);for(let s1=0;s1<o1.length;s1+=1)transition_out(o1[s1]);t1=!1},d(a1){destroy_each(o1,a1),a1&&detach(e1)}}}function create_else_block$15(n1){let e1,t1;return e1=new Body({props:{$$slots:{default:[create_default_slot_2$2h]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1024&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block_7$d(n1){let e1,t1;return e1=new Settings$2({props:{datasource:n1[0]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasource=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block_6$e(n1){let e1,t1;return e1=new Variables({props:{datasource:n1[0]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasource=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block_5$k(n1){let e1,t1;return e1=new Authentication({props:{datasource:n1[0]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasource=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block_4$t(n1){let e1,t1;return e1=new Headers$1({props:{datasource:n1[0]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasource=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block_3$F(n1){let e1,t1;return e1=new Queries({props:{datasource:n1[0]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasource=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block_2$10(n1){let e1,t1;return e1=new Relationships({props:{datasource:n1[0]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasource=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block_1$1D(n1){let e1,t1;return e1=new Tables({props:{datasource:n1[0]}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1&&(i1.datasource=r1[0]),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_if_block$2W(n1){let e1,t1;return e1=new Body({props:{$$slots:{default:[create_default_slot_1$31]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment)},m(r1,o1){mount_component(e1,r1,o1),t1=!0},p(r1,o1){const i1={};o1&1024&&(i1.$$scope={dirty:o1,ctx:r1}),e1.$set(i1)},i(r1){t1||(transition_in(e1.$$.fragment,r1),t1=!0)},o(r1){transition_out(e1.$$.fragment,r1),t1=!1},d(r1){destroy_component(e1,r1)}}}function create_default_slot_2$2h(n1){let e1;return{c(){e1=text("Something went wrong")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot_1$31(n1){let e1;return{c(){e1=text("loading...")},m(t1,r1){insert$1(t1,e1,r1)},d(t1){t1&&detach(e1)}}}function create_default_slot$43(n1){let e1,t1,r1,o1,i1,a1,s1,l1,c1,u1,f1;e1=new Layout$m({props:{gap:"XS",noPadding:!0,$$slots:{default:[create_default_slot_4$1h]},$$scope:{ctx:n1}}}),r1=new EditDatasourceConfig({props:{datasource:n1[0]}}),a1=new Tabs({props:{size:"L",noPadding:!0,noHorizPadding:!0,selected:n1[2],$$slots:{default:[create_default_slot_3$1I]},$$scope:{ctx:n1}}});const p1=[create_if_block$2W,create_if_block_1$1D,create_if_block_2$10,create_if_block_3$F,create_if_block_4$t,create_if_block_5$k,create_if_block_6$e,create_if_block_7$d,create_else_block$15],d1=[];function m1(_1,h1){return _1[2]===null?0:_1[2]==="Tables"?1:_1[2]==="Relationships"?2:_1[2]==="Queries"?3:_1[2]==="Headers"?4:_1[2]==="Authentication"?5:_1[2]==="Variables"?6:_1[2]==="Settings"?7:8}return l1=m1(n1),c1=d1[l1]=p1[l1](n1),{c(){create_component(e1.$$.fragment),t1=space$1(),create_component(r1.$$.fragment),o1=space$1(),i1=element("div"),create_component(a1.$$.fragment),s1=space$1(),c1.c(),u1=empty$1(),attr(i1,"class","tabs svelte-vv94hc")},m(_1,h1){mount_component(e1,_1,h1),insert$1(_1,t1,h1),mount_component(r1,_1,h1),insert$1(_1,o1,h1),insert$1(_1,i1,h1),mount_component(a1,i1,null),insert$1(_1,s1,h1),d1[l1].m(_1,h1),insert$1(_1,u1,h1),f1=!0},p(_1,h1){const b1={};h1&1027&&(b1.$$scope={dirty:h1,ctx:_1}),e1.$set(b1);const $1={};h1&1&&($1.datasource=_1[0]),r1.$set($1);const y1={};h1&4&&(y1.selected=_1[2]),h1&1036&&(y1.$$scope={dirty:h1,ctx:_1}),a1.$set(y1);let k1=l1;l1=m1(_1),l1===k1?d1[l1].p(_1,h1):(group_outros(),transition_out(d1[k1],1,1,()=>{d1[k1]=null}),check_outros(),c1=d1[l1],c1?c1.p(_1,h1):(c1=d1[l1]=p1[l1](_1),c1.c()),transition_in(c1,1),c1.m(u1.parentNode,u1))},i(_1){f1||(transition_in(e1.$$.fragment,_1),transition_in(r1.$$.fragment,_1),transition_in(a1.$$.fragment,_1),transition_in(c1),f1=!0)},o(_1){transition_out(e1.$$.fragment,_1),transition_out(r1.$$.fragment,_1),transition_out(a1.$$.fragment,_1),transition_out(c1),f1=!1},d(_1){destroy_component(e1,_1),_1&&detach(t1),destroy_component(r1,_1),_1&&detach(o1),_1&&detach(i1),destroy_component(a1),_1&&detach(s1),d1[l1].d(_1),_1&&detach(u1)}}}function create_fragment$5$(n1){let e1,t1,r1,o1,i1;return e1=new PromptQueryModal({}),o1=new Layout$m({props:{noPadding:!0,$$slots:{default:[create_default_slot$43]},$$scope:{ctx:n1}}}),{c(){create_component(e1.$$.fragment),t1=space$1(),r1=element("section"),create_component(o1.$$.fragment),attr(r1,"class","svelte-vv94hc")},m(a1,s1){mount_component(e1,a1,s1),insert$1(a1,t1,s1),insert$1(a1,r1,s1),mount_component(o1,r1,null),i1=!0},p(a1,[s1]){const l1={};s1&1039&&(l1.$$scope={dirty:s1,ctx:a1}),o1.$set(l1)},i(a1){i1||(transition_in(e1.$$.fragment,a1),transition_in(o1.$$.fragment,a1),i1=!0)},o(a1){transition_out(e1.$$.fragment,a1),transition_out(o1.$$.fragment,a1),i1=!1},d(a1){destroy_component(e1,a1),a1&&detach(t1),a1&&detach(r1),destroy_component(o1)}}}function instance$68(n1,e1,t1){let r1,o1,i1;component_subscribe(n1,integrations,u1=>t1(5,o1=u1)),component_subscribe(n1,datasources,u1=>t1(1,i1=u1));let a1=null,s1=[];const l1=u1=>{u1.plus?(t1(3,s1=o1[u1.source].relationships===!1?["Tables","Queries"]:["Tables","Relationships","Queries"]),t1(2,a1=s1.includes(a1)?a1:"Tables")):u1.source==="REST"?(t1(3,s1=["Queries","Headers","Authentication","Variables"]),t1(2,a1=s1.includes(a1)?a1:"Queries")):(t1(3,s1=["Queries"]),t1(2,a1="Queries")),isSQL(u1)&&s1.push("Settings")},c1=u1=>t1(2,a1=u1);return n1.$$.update=()=>{n1.$$.dirty&2&&t1(0,r1=i1.selected||{}),n1.$$.dirty&1&&l1(r1)},[r1,i1,a1,s1,c1]}class U5BdatasourceIdu5D$1 extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$68,create_fragment$5$,safe_not_equal,{})}}const syncURLToState=n1=>{var L1,R1,H1,q1;const{urlParam:e1,stateKey:t1,validate:r1,update:o1,baseUrl:i1="..",fallbackUrl:a1,store:s1,routify:l1,beforeNavigate:c1,decode:u1}=n1||{};if(!e1||!t1||!i1||!e1||!(s1!=null&&s1.subscribe)||!l1||!((L1=l1.params)!=null&&L1.subscribe)||!((R1=l1.goto)!=null&&R1.subscribe)||!((H1=l1.redirect)!=null&&H1.subscribe)||!((q1=l1.page)!=null&&q1.subscribe)){console.warn("syncURLToState invoked with missing parameters");return}const f1=B1=>{if(!u1)return B1;let I1={};return Object.keys(B1||{}).forEach(F1=>{I1[F1]=u1(B1[F1])}),I1};let p1=f1(get_store_value(l1.params)),d1=get_store_value(l1.goto),m1=get_store_value(l1.redirect),_1=get_store_value(l1.page),h1=null;const b1=(B1,I1)=>{if(B1!=null&&B1.endsWith("/index")&&(B1=B1.replace("/index","")),c1){const F1=c1(B1,I1);F1!=null&&F1.url&&(B1=F1.url),F1!=null&&F1.params&&(I1=F1.params)}d1(B1,I1)},$1=B1=>{m1(B1)},y1=B1=>{var Y1;const I1=JSON.stringify(B1),F1=I1!==h1;h1=I1;const j1=B1==null?void 0:B1[e1],G1=(Y1=get_store_value(s1))==null?void 0:Y1[t1];if(!(!F1||!j1)){if(r1&&a1&&!r1(j1)){$1(a1);return}j1!==G1&&(o1?o1(j1):s1.update(X1=>({...X1,[t1]:j1})))}},k1=B1=>{const I1=p1==null?void 0:p1[e1],F1=B1==null?void 0:B1[t1];if(r1&&a1&&!r1(F1)){$1(a1);return}if(F1!==I1&&!get_store_value(isChangingPage)){const j1={...p1,[e1]:F1};b1(_1.path,j1)}};y1(p1);const S1=l1.params.subscribe(B1=>{B1=f1(B1),p1=B1,y1(B1)}),O1=l1.goto.subscribe(B1=>{d1=B1}),C1=l1.redirect.subscribe(B1=>{m1=B1}),M1=l1.page.subscribe(B1=>{_1=B1}),z1=s1.subscribe(k1);return()=>{S1(),O1(),C1(),M1(),z1()}};function create_key_block$d(n1){let e1;const t1=n1[4].default,r1=create_slot(t1,n1,n1[3],null);return{c(){r1&&r1.c()},m(o1,i1){r1&&r1.m(o1,i1),e1=!0},p(o1,i1){r1&&r1.p&&(!e1||i1&8)&&update_slot_base(r1,t1,o1,o1[3],e1?get_slot_changes(t1,o1[3],i1,null):get_all_dirty_from_scope(o1[3]),null)},i(o1){e1||(transition_in(r1,o1),e1=!0)},o(o1){transition_out(r1,o1),e1=!1},d(o1){r1&&r1.d(o1)}}}function create_fragment$5_(n1){let e1=n1[0].datasourceId,t1,r1,o1=create_key_block$d(n1);return{c(){o1.c(),t1=empty$1()},m(i1,a1){o1.m(i1,a1),insert$1(i1,t1,a1),r1=!0},p(i1,[a1]){a1&1&&safe_not_equal(e1,e1=i1[0].datasourceId)?(group_outros(),transition_out(o1,1,1,noop$5),check_outros(),o1=create_key_block$d(i1),o1.c(),transition_in(o1,1),o1.m(t1.parentNode,t1)):o1.p(i1,a1)},i(i1){r1||(transition_in(o1),r1=!0)},o(i1){transition_out(o1),r1=!1},d(i1){i1&&detach(t1),o1.d(i1)}}}function instance$67(n1,e1,t1){let r1,o1,i1;component_subscribe(n1,datasources,c1=>t1(2,o1=c1)),component_subscribe(n1,params,c1=>t1(0,i1=c1));let{$$slots:a1={},$$scope:s1}=e1;const l1=syncURLToState({urlParam:"datasourceId",stateKey:"selectedDatasourceId",validate:c1=>{var u1;return(u1=o1.list)==null?void 0:u1.some(f1=>f1._id===c1)},update:datasources.select,fallbackUrl:"../",store:datasources,routify:routify$1});return onDestroy(l1),n1.$$set=c1=>{"$$scope"in c1&&t1(3,s1=c1.$$scope)},n1.$$.update=()=>{n1.$$.dirty&4&&t1(1,r1=o1.selectedDatasourceId),n1.$$.dirty&2&&store.actions.websocket.selectResource(r1)},[i1,r1,o1,s1,a1]}class Layout$k extends SvelteComponent{constructor(e1){super(),init$2(this,e1,instance$67,create_fragment$5_,safe_not_equal,{})}}const BYTES_IN_MB$2=1e6,FILE_SIZE_LIMIT=BYTES_IN_MB$2*5,getDefaultSchema=n1=>{const e1={};return n1.forEach(t1=>{Object.keys(t1).forEach(r1=>{e1[r1]={name:r1,type:"string",constraints:FIELDS.STRING.constraints}})}),e1},parseFile=n1=>new Promise((e1,t1)=>{const r1=Array.from(n1.target.files)[0];if(r1.size>=FILE_SIZE_LIMIT){t1("file too large");return}let o1=new FileReader;const i1=(a1,s1=null)=>{e1({rows:a1,schema:s1!=null?s1:getDefaultSchema(a1),fileName:r1.name,fileType:r1.type})};o1.addEventListener("load",function(a1){var l1;const s1=a1.target.result;if((l1=r1.type)!=null&&l1.includes("json")){const c1=JSON.parse(s1);Array.isArray(c1)?i1(c1):typeof c1=="object"?i1(c1.rows,c1.schema):t1("invalid json format")}else API.csvToJson(s1).then(c1=>{i1(c1)}).catch(()=>{t1("cannot parse csv")})}),o1.readAsText(r1)}),TableDataImport_svelte_svelte_type_style_lang="";function get_each_context$1b(n1,e1,t1){const r1=n1.slice();return r1[24]=e1[t1][0],r1[25]=e1[t1][1],r1[26]=e1,r1[27]=t1,r1}function create_else_block_1$i(n1){let e1;return{c(){e1=text("Upload")},m(t1,r1){insert$1(t1,e1,r1)},p:noop$5,d(t1){t1&&detach(e1)}}}function create_if_block_4$s(n1){let e1;return{c(){e1=text(n1[6])},m(t1,r1){insert$1(t1,e1,r1)},p(t1,r1){r1&64&&set_data(e1,t1[6])},d(t1){t1&&detach(e1)}}}function create_if_block_3$E(n1){let e1,t1;return{c(){e1=text("Error: "),t1=text(n1[5])},m(r1,o1){insert$1(r1,e1,o1),insert$1(r1,t1,o1)},p(r1,o1){o1&32&&set_data(t1,r1[5])},d(r1){r1&&detach(e1),r1&&detach(t1)}}}function create_if_block$2V(n1){let e1,t1,r1,o1,i1,a1,s1=Object.entries(n1[1]),l1=[];for(let p1=0;p1<s1.length;p1+=1)l1[p1]=create_each_block$1b(get_each_context$1b(n1,s1,p1));const c1=p1=>transition_out(l1[p1],1,1,()=>{l1[p1]=null});function u1(p1){n1[21](p1)}let f1={label:"Display Column",options:n1[9],sort:!0};return n1[2]!==void 0&&(f1.value=n1[2]),o1=new Select_1$1({props:f1}),binding_callbacks.push(()=>bind$3(o1,"value",u1)),{c(){e1=element("div");for(let p1=0;p1<l1.length;p1+=1)l1[p1].c();t1=space$1(),r1=element("div"),create_component(o1.$$.fragment),attr(e1,"class","schema-fields svelte-1bovuxg"),attr(r1,"class","display-column svelte-1bovuxg")},m(p1,d1){insert$1(p1,e1,d1);for(let m1=0;m1<l1.length;m1+=1)l1[m1].m(e1,null);insert$1(p1,t1,d1),insert$1(p1,r1,d1),mount_component(o1,r1,null),a1=!0},p(p1,d1){if(d1&13586){s1=Object.entries(p1[1]);let _1;for(_1=0;_1<s1.length;_1+=1){const h1=get_each_context$1b(p1,s1,_1);l1[_1]?(l1[_1].p(h1,d1),transition_in(l1[_1],1)):(l1[_1]=create_each_block$1b(h1),l1[_1].c(),transition_in(l1[_1],1),l1[_1].m(e1,null))}for(group_outros(),_1=s1.length;_1<l1.length;_1+=1)c1(_1);check_outros()}const m1={};d1&512&&(m1.options=p1[9]),!i1&&d1&4&&(i1=!0,m1.value=p1[2],add_flush_callback(()=>i1=!1)),o1.$set(m1)},i(p1){if(!a1){for(let d1=0;d1<s1.length;d1+=1)transition_in(l1[d1]);transition_in(o1.$$.fragment,p1),a1=!0}},o(p1){l1=l1.filter(Boolean);for(let d1=0;d1<l1.length;d1+=1)transition_out(l1[d1]);transition_out(o1.$$.fragment,p1),a1=!1},d(p1){p1&&detach(e1),destroy_each(l1,p1),p1&&detach(t1),p1&&detach(r1),destroy_component(o1)}}}function create_else_block$14(n1){let e1,t1,r1,o1=n1[8][n1[25].name]&&create_if_block_2$$(n1);return{c(){e1=text(`Failure
@@ -9,7 +9,7 @@
9
9
  <link href="/builder/fonts/source-sans-pro/600.css" rel="stylesheet" />
10
10
  <link href="/builder/fonts/source-sans-pro/700.css" rel="stylesheet" />
11
11
  <link href="/builder/fonts/remixicon.css" rel="stylesheet" />
12
- <script type="module" crossorigin src="/builder/assets/index.f272700e.js"></script>
12
+ <script type="module" crossorigin src="/builder/assets/index.08abe026.js"></script>
13
13
  <link rel="stylesheet" href="/builder/assets/index.58460b01.css">
14
14
  </head>
15
15
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@budibase/server",
3
3
  "email": "hi@budibase.com",
4
- "version": "2.9.39-alpha.3",
4
+ "version": "2.9.39-alpha.5",
5
5
  "description": "Budibase Web Server",
6
6
  "main": "src/index.ts",
7
7
  "repository": {
@@ -46,12 +46,12 @@
46
46
  "license": "GPL-3.0",
47
47
  "dependencies": {
48
48
  "@apidevtools/swagger-parser": "10.0.3",
49
- "@budibase/backend-core": "2.9.39-alpha.3",
50
- "@budibase/client": "2.9.39-alpha.3",
51
- "@budibase/pro": "2.9.39-alpha.3",
52
- "@budibase/shared-core": "2.9.39-alpha.3",
53
- "@budibase/string-templates": "2.9.39-alpha.3",
54
- "@budibase/types": "2.9.39-alpha.3",
49
+ "@budibase/backend-core": "2.9.39-alpha.5",
50
+ "@budibase/client": "2.9.39-alpha.5",
51
+ "@budibase/pro": "2.9.39-alpha.5",
52
+ "@budibase/shared-core": "2.9.39-alpha.5",
53
+ "@budibase/string-templates": "2.9.39-alpha.5",
54
+ "@budibase/types": "2.9.39-alpha.5",
55
55
  "@bull-board/api": "3.7.0",
56
56
  "@bull-board/koa": "3.9.4",
57
57
  "@elastic/elasticsearch": "7.10.0",
@@ -195,5 +195,5 @@
195
195
  }
196
196
  }
197
197
  },
198
- "gitHead": "063da63288a4b47ec069be80132a0baf13b7d09d"
198
+ "gitHead": "e9a8412a4539e0142654624e372bc2d9d14c8876"
199
199
  }
@@ -10,7 +10,6 @@ mocks.licenses.useUnlimited()
10
10
  import { init as dbInit } from "../../db"
11
11
  dbInit()
12
12
  import env from "../../environment"
13
- import { env as coreEnv } from "@budibase/backend-core"
14
13
  import {
15
14
  basicTable,
16
15
  basicRow,
@@ -33,6 +32,7 @@ import {
33
32
  encryption,
34
33
  auth,
35
34
  roles,
35
+ env as coreEnv,
36
36
  } from "@budibase/backend-core"
37
37
  import * as controllers from "./controllers"
38
38
  import { cleanup } from "../../utilities/fileSystem"
@@ -51,7 +51,6 @@ import {
51
51
  UserRoles,
52
52
  Automation,
53
53
  } from "@budibase/types"
54
- import { BUILTIN_ROLE_IDS } from "@budibase/backend-core/src/security/roles"
55
54
 
56
55
  import API from "./api"
57
56
 
@@ -317,7 +316,7 @@ class TestConfiguration {
317
316
  }
318
317
  }
319
318
 
320
- async createGroup(roleId: string = BUILTIN_ROLE_IDS.BASIC) {
319
+ async createGroup(roleId: string = roles.BUILTIN_ROLE_IDS.BASIC) {
321
320
  return context.doInTenant(this.tenantId!, async () => {
322
321
  const baseGroup = structures.userGroups.userGroup()
323
322
  baseGroup.roles = {