Current section
Files
Jump to
Current section
Files
lib/assets/apply_cell/main.js
var C=Object.create;var f=Object.defineProperty;var N=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var T=Object.getPrototypeOf,j=Object.prototype.hasOwnProperty;var w=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var P=(e,r,t,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of S(r))!j.call(e,n)&&n!==t&&f(e,n,{get:()=>r[n],enumerable:!(s=N(r,n))||s.enumerable});return e};var b=(e,r,t)=>(t=e!=null?C(T(e)):{},P(r||!e||!e.__esModule?f(t,"default",{value:e,enumerable:!0}):t,e));var m=w((J,l)=>{(function(){"use strict";var e={}.hasOwnProperty,r="[native code]";function t(){for(var s=[],n=0;n<arguments.length;n++){var o=arguments[n];if(o){var a=typeof o;if(a==="string"||a==="number")s.push(o);else if(Array.isArray(o)){if(o.length){var i=t.apply(null,o);i&&s.push(i)}}else if(a==="object"){if(o.toString!==Object.prototype.toString&&!o.toString.toString().includes("[native code]")){s.push(o.toString());continue}for(var c in o)e.call(o,c)&&o[c]&&s.push(c)}}}return s.join(" ")}typeof l<"u"&&l.exports?(t.default=t,l.exports=t):typeof define=="function"&&typeof define.amd=="object"&&define.amd?define("classnames",[],function(){return t}):window.classNames=t})()});var z=({message:e})=>React.createElement(React.Fragment,null,React.createElement("div",{className:"flex rounded-md border border-dashed border-red-700 bg-red-100 p-2"},React.createElement("svg",{className:"h-6 w-6 flex-none text-red-700",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true"},React.createElement("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z"})),React.createElement("div",{className:"font-inter px-2 text-sm font-medium text-red-700"},e))),v=z;var g=async e=>{await e.importJS("https://cdnjs.cloudflare.com/ajax/libs/react/18.2.0/umd/react.production.min.js"),await e.importJS("https://cdnjs.cloudflare.com/ajax/libs/react-dom/18.2.0/umd/react-dom.production.min.js")};var R=(e,r)=>{let[t,s]=React.useState(r),n=o=>a=>{s(i=>({...i,[o]:a})),console.log("Pushing ${attrName} to server",a),e.pushEvent(`update_${o}`,a)};return React.useEffect(()=>{e.handleEvent("update",o=>{console.log("Attribute update from server",o),s(a=>({...Object.assign(a,o)}))})},[]),[t,n]},h=R;var k=()=>React.createElement("div",{className:"mb-5 rounded-md bg-gray-100 p-4 font-inter text-sm font-medium text-gray-500"},React.createElement("p",null,"To make requests to the Kubernetes cluster, you need at least one connection to a cluster."),React.createElement("p",{className:"pt-1"},"To create a cluster connection, you can add the"," ",React.createElement("span",{className:"text-gray-600"},"Cluster Connection")," smart cell.")),x=k;var p=b(m()),K=({name:e,label:r,defaultValue:t,testId:s,onChange:n,orientation:o="vert"})=>React.createElement("div",{className:(0,p.default)({"flex flex-row items-baseline":o=="horiz"})},React.createElement("label",{htmlFor:e,className:(0,p.default)({block:o=="vert","pr-1 uppercase":o=="horiz"},"mb-1 text-sm font-medium")},r),React.createElement("input",{type:"text","data-testid":s??e,value:t,name:e,onChange:a=>n(a.target.value),className:(0,p.default)({"block w-full":o=="vert"},"rounded-lg border border-gray-300 bg-gray-50 p-1.5 text-sm focus:border-blue-500 focus:ring-blue-500")})),y=K;var d=b(m()),E=({name:e,label:r,options:t,selectedOption:s,onChange:n,className:o="",orientation:a="vert"})=>React.createElement("div",{className:(0,d.default)({"flex flex-row items-baseline":a=="horiz"},o)},React.createElement("label",{htmlFor:e,className:(0,d.default)({block:a=="vert","pr-1 uppercase":a=="horiz"},"mb-1 text-sm font-medium")},r),React.createElement("select",{id:e,value:s||void 0,onChange:i=>n(i.target.value),className:(0,d.default)({"block w-full":a=="vert"}," bg-caret-down appearance-none rounded-lg border border-gray-300 bg-gray-50 bg-[length:10px] bg-[center_right_10px] bg-no-repeat p-2 pr-5 text-sm focus:border-blue-500 focus:ring-blue-500")},t.map(i=>React.createElement("option",{key:i.value,value:i.value},i.label)))),u=E;var O=({initialAttrs:e,ctx:r})=>{let[t,s]=h(r,e);return React.createElement(React.Fragment,null,!t.connection&&React.createElement(x,null),React.createElement("div",{className:"rounded-md border-t border-solid border-gray-300 font-inter font-medium text-gray-600"},React.createElement("div",{className:"border-b-solid flex gap-x-5 gap-y-3 border-b border-b-gray-300 bg-blue-100 p-3"},React.createElement(u,{name:"connection",label:"Connection",options:t.connections.map(n=>({label:n.variable,value:n.variable})),selectedOption:t.connection?.variable?.toString(),onChange:s("connection"),orientation:"horiz"}),React.createElement(u,{name:"method",label:"Method",options:t.methods.map(n=>({label:n.toUpperCase(),value:n})),selectedOption:t.method,onChange:s("method"),orientation:"horiz"}),React.createElement(y,{label:"Assign To",name:"assign_to",defaultValue:t.result_variable,onChange:s("result_variable"),orientation:"horiz"}))))},A=O;var X=async(e,r)=>{await g(e),e.root.innerHTML="loading...",e.importCSS("main.css"),e.importCSS("https://fonts.googleapis.com/css2?family=Inter:wght@400;500&display=swap");let t=ReactDOM.createRoot(e.root);if(r.error)return t.render(React.createElement(v,{message:r.error}));t.render(React.createElement(A,{initialAttrs:r,ctx:e}))};export{X as init};
/*! Bundled license information:
classnames/index.js:
(*!
Copyright (c) 2018 Jed Watson.
Licensed under the MIT License (MIT), see
http://jedwatson.github.io/classnames
*)
*/