"use strict";exports.id=4417,exports.ids=[4417],exports.modules={64417:(e,t,a)=>{a.d(t,{A:()=>u});var l=a(8732),s=a(82015),n=a.n(s),i=a(65388),r=a(84896),d=a(27825),o=a.n(d);function u({targetField:e,fieldIndex:t,tableFields:s,setTableFields:d,refreshFieldsListRef:u,setActiveEdit:c,database:m,currentTable:x,user:p}){let h=e?.dataType?e.dataType.replace(/\d|\(|\)/g,""):null,f=e?.dataType?e.dataType.replace(/[^\d]/g,""):"200",g=a(43431),v=n().useRef(o().cloneDeep(e)),N=n().useRef(),[j,y]=n().useState(e),[T,b]=n().useState(e?.fieldName),[w,_]=n().useState(h),[V,I]=n().useState(f),[F,C]=n().useState("Varchar is simply letters and numbers within the range 0 - 255"),[S,A]=n().useState(e?.richText&&!e?.encrypted?"Yes":"No"),k=!!w?.match(/uuid/i);return(0,l.jsx)("div",{className:"w-full -mt-3 bg-white dark:bg-slate-800 flex-wrap",ref:N,children:(0,l.jsxs)("form",{className:"flex flex-col xl:flex-row items-start gap-4 w-full justify-between border border-solid p-4 border-slate-200 dark:border-slate-600 rounded rounded-t-none focus:shadow-lg shadow-slate-700 dark:shadow-black relative flex-wrap",onSubmit:e=>{e.preventDefault(),d(e=>(e[t]=j,e)),u.current(e=>e+1);let a=e.target;a.closest(".table-field-wrapper")?.querySelector(".edit-table-field-section")?.classList.toggle("hidden")},children:[(0,l.jsxs)("div",{className:"gap-4 flex-wrap w-full md:w-auto flex-col xl:flex-row items-stretch",children:[(0,l.jsxs)("div",{className:"flex flex-col items-start gap-0.5",children:[(0,l.jsx)("label",{htmlFor:"new_field_name",children:"Field Name"}),(0,l.jsx)("input",{type:"text",name:"new_field_name",id:"new_field_name",placeholder:"Eg. post_title",onInput:async e=>{let t=e.target;t.value=t.value.toLowerCase().replace(/ /g,"_"),y(e=>(e.fieldName=t.value,e.updatedField=!0,e.originName||(e.originName=T),e))},required:!0,defaultValue:T})]}),(0,l.jsxs)("div",{className:"flex flex-col items-start gap-4 xl:gap-0.5",children:[(0,l.jsxs)("div",{className:"flex-wrap xl:flex-nowrap w-full md:w-auto",children:[(0,l.jsx)("label",{htmlFor:"new_field_data_type",children:"Data Type"}),(0,l.jsxs)("div",{className:"dropdown-wrapper reversed text-sm items-start",children:[(0,l.jsx)("span",{className:"px-2 bg-slate-200 dark:bg-slate-700 rounded-full hover:bg-slate-100 dark:hover:bg-slate-600 hidden xl:flex",children:"Info"}),(0,l.jsx)("div",{className:"dropdown mt-0 xl:-mt-2",children:(0,l.jsx)("span",{children:F})})]})]}),(0,l.jsxs)("div",{className:"w-auto",children:[(0,l.jsx)("select",{name:"new_field_data_type",id:"new_field_data_type",className:"w-full xl-w-auto",onChange:t=>{let a=t.target;_(a.value),a.childNodes.forEach(e=>{e.value===a.value&&e.dataset.desc&&C(e.dataset.desc),e.value===a.value&&e.dataset.literal?(j.defaultValueLiteral=e.dataset.literal,j.nullValue=!1):delete j.defaultValueLiteral}),e.dataType=a.value+(a.value.match(/VARCHAR/)?`(${V||200})`:"")},defaultValue:w||void 0,children:g.map((e,t)=>e.name.match(/VARCHAR/)?(0,l.jsx)("option",{value:e.name,"data-desc":e.description,children:e.title+"("+(V||200)+")"},t+1):(0,l.jsx)("option",{value:e.name,"data-desc":e.description,"data-literal":e.valueLiteral||void 0,children:e.title},t+1))}),w?.match(/VARCHAR/)&&(0,l.jsx)("input",{type:"number",defaultValue:V||200,className:"px-2",style:{maxWidth:"60px"},max:255,min:5,onChange:t=>{I(t.target.value),e.dataType=w+`(${t.target.value})`}})]})]}),w?.match(/text/i)&&(0,l.jsx)(n().Fragment,{children:(0,l.jsx)(r.A,{targetField:e})}),!e.dataType?.match(/text/i)&&!k&&(0,l.jsxs)("div",{className:"flex flex-col items-start gap-0.5",style:{minWidth:"70px"},children:[(0,l.jsx)("label",{htmlFor:"new_field_required",children:"Required?"}),(0,l.jsxs)("select",{name:"new_field_required",id:"new_field_required",className:"px-2",defaultValue:e?.notNullValue?"Yes":"No",onChange:t=>{console.log(e),"Yes"===t.target.value?e.notNullValue=!0:(e.notNullValue=!1,delete e.notNullValue)},children:[(0,l.jsx)("option",{value:"No",children:"No"}),(0,l.jsx)("option",{value:"Yes",children:"Yes"})]})]}),!k&&(0,l.jsxs)("div",{className:"flex flex-col items-start gap-0.5",children:[(0,l.jsx)("label",{htmlFor:"new_field_default_value",children:j?.dataType?.match(/text$/i)?"Can't Set Default for text values":"Default Value (optional)"}),(0,l.jsx)("input",{type:"text",name:"new_field_default_value",id:"new_field_default_value",className:j?.dataType?.match(/text$/i)?"pointer-events-none opacity-50":"",placeholder:"Default Value",defaultValue:j?.defaultValue?j.defaultValue:j?.nullValue?"NULL":"",onInput:e=>{let t=e.target;j.dataType?.match(/text$/i)||y(e=>(t.value.match(/./)?delete e.notNullValue:(delete e.defaultValue,delete e.nullValue),t.value.match(/^null$/i)?(delete e.defaultValue,e.nullValue=!0):t.value.match(/./)&&(delete e.nullValue,e.defaultValue=t.value),e))}})]}),!k&&(0,l.jsx)(i.A,{database:m,setFieldData:y,setTableFields:d,tableFields:s,targetField:e,user:p,currentTable:x,fieldIndex:t})]}),(0,l.jsxs)("div",{className:"secondary mt-auto flex-wrap w-full xl:w-auto",children:[(0,l.jsx)("button",{type:"submit",className:"secondary mt-auto py-3 w-full md:w-auto grow",children:"Save Updates"}),(0,l.jsx)("div",{className:"button outlined gray mt-auto py-2.5 w-full md:w-auto justify-center grow",onClick:a=>{v.current&&(e=o().cloneDeep(v.current)),d(e=>{let a=o().cloneDeep(e);return t&&v.current&&(a[t]=o().cloneDeep(v.current)),a}),c&&c(!1)},children:"Cancel"})]})]})})}},65388:(e,t,a)=>{a.d(t,{A:()=>g});var l=a(8732),s=a(82015),n=a.n(s),i=a(13737),r=a(58150);function d({targetField:e}){if(!e?.richText)return null;let[t,a]=n().useState(e.cssFiles||[]),s=n().useRef(null);return(0,l.jsxs)("div",{className:"flex flex-col items-start gap-2 w-full my-4",style:{minWidth:"70px"},children:[(0,l.jsx)("span",{className:"label text-xs text-slate-500",children:"Add CSS"}),t.map((e,t)=>(0,l.jsxs)("div",{className:"relative border border-solid border-slate-300 text-xs px-2 py-1 rounded-full",children:[(0,l.jsx)("span",{children:e}),(0,l.jsx)(r.A,{size:20,onClick:()=>{a(t=>t.filter(t=>t!==e))},className:"cursor-pointer hover:opacity-60 "})]},t+1)),(0,l.jsxs)("div",{className:"row w-full",children:[(0,l.jsx)(i.A,{name:"css-file",placeholder:"CSS file URL",elementRef:s}),(0,l.jsx)("button",{className:"secondary outlined",onClick:()=>{let e=s.current?.value;e?.match(/./)&&a(t=>[...new Set([...t,e])])},children:"Add"})]}),(0,l.jsx)("span",{className:"text-sm text-slate-600",children:"Add CSS files to your Rich Text field"})]})}function o({targetField:e,setFieldData:t}){return(0,l.jsxs)("div",{className:"flex flex-col items-start gap-0.5 w-full",style:{minWidth:"70px"},children:[(0,l.jsx)("label",{htmlFor:"encryption_field",children:"Encrypt?"}),(0,l.jsxs)("select",{name:"encryption_field",id:"encryption_field",className:"px-2",defaultValue:e?.encrypted?"Yes":"No",onChange:e=>{t&&t(t=>(e.target.value.match(/yes/i)?t.encrypted=!0:(t.encrypted=!1,delete t.encrypted),t))},children:[(0,l.jsx)("option",{value:"No",children:"No"}),(0,l.jsx)("option",{value:"Yes",children:"Yes"})]})]})}var u=a(12097);function c({targetField:e,setFieldData:t}){return null}function m({targetField:e}){return(0,l.jsxs)("div",{className:"flex flex-col items-start gap-2 w-full",style:{minWidth:"70px"},children:[(0,l.jsx)("label",{htmlFor:"encryption_field",children:"Pattern"}),(0,l.jsx)("span",{className:"text-sm text-slate-500",children:'This describes a pattern that must be matched for this field to be valid. If you add a pattern and make a db entry that doesn\'t match, the entry will be "NULL" or an empty string or the default value.'}),(0,l.jsx)("input",{type:"text",placeholder:"Regex Pattern. Eg: '\\\\.[a-z]+'",onInput:t=>{let a=t.target;a?.value?.length>0?e.pattern=a.value:delete e.pattern},defaultValue:e?.pattern}),(0,l.jsx)("input",{type:"text",placeholder:"Regex Pattern Flags. Eg: igm",onInput:t=>{let a=t.target;a?.value?.length>0?e.patternFlags=a.value:delete e.patternFlags},defaultValue:e?.patternFlags})]})}var x=a(27825),p=a.n(x),h=a(2817);function f({targetField:e,setFieldData:t}){return(0,l.jsxs)("div",{className:"flex flex-col items-start gap-0.5 w-full",style:{minWidth:"70px"},children:[(0,l.jsx)("label",{htmlFor:"unique_field",children:"Unique Field?"}),(0,l.jsxs)("select",{name:"unique_field",id:"unique_field",className:"px-2",defaultValue:e?.unique?"Yes":"No",onChange:e=>{t&&t(t=>(e.target.value.match(/yes/i)?t.unique=!0:(t.unique=!1,delete t.unique),t))},children:[(0,l.jsx)("option",{value:"No",children:"No"}),(0,l.jsx)("option",{value:"Yes",children:"Yes"})]})]})}function g({targetField:e,currentTable:t,database:a,tableFields:s,setTableFields:i,setFieldData:r,user:x,fieldIndex:g}){let[v,N]=n().useState(!1),j=n().useRef(p().cloneDeep(e));return(0,l.jsxs)(n().Fragment,{children:[(0,l.jsx)("span",{className:"button outlined gray mt-5 w-full xl:w-auto",onClick:()=>{N(!0)},children:"More"}),(0,l.jsx)(h.A,{open:v,onClose:()=>{j.current&&(e=p().cloneDeep(j.current)),N(!1)},maxWidth:"600px",children:(0,l.jsxs)("div",{className:"m-auto flex flex-col max-w-xl w-full max-h-[90vh] overflow-y-auto",children:[(0,l.jsx)("div",{className:"w-full justify-between",children:(0,l.jsx)("span",{className:"text-xl",children:"More Options"})}),(0,l.jsx)(d,{targetField:e}),(0,l.jsx)(f,{targetField:e,setFieldData:r}),(0,l.jsx)(o,{targetField:e,setFieldData:r}),t&&(0,l.jsx)(u.A,{targetField:e,setFieldData:r,database:a,tableFields:s,setTableFields:i,currentTable:t,user:x}),(0,l.jsx)(c,{targetField:e,setFieldData:r}),(0,l.jsx)(m,{targetField:e}),(0,l.jsx)("button",{className:"w-full outlined more-padding",onClick:()=>{N(!1)},children:"Done"})]})})]})}},12097:(e,t,a)=>{a.d(t,{A:()=>d});var l=a(8732),s=a(82015),n=a.n(s),i=a(63715),r=a(32415);function d({targetField:e,setFieldData:t,tableFields:a,setTableFields:s,database:d,currentTable:o,user:u,setActiveEdit:c,activeClonedTable:m}){let[x,p]=n().useState(!!e?.foreignKey),[h,f]=n().useState(null),[g,v]=n().useState(null),[N,j]=n().useState(null),[y,T]=n().useState(null),[b,w]=n().useState(!1);return(0,l.jsxs)("div",{className:"flex flex-col items-start gap-2 w-full mt-2 relative",style:{minWidth:"70px"},children:[b&&(0,l.jsx)(r.A,{}),(0,l.jsxs)("label",{htmlFor:"foreign_key_field",className:"flex flex-wrap items-center gap-2 mt-2",children:[(0,l.jsx)("span",{children:"Foreign Key?"}),(0,l.jsxs)("div",{className:"dropdown-wrapper reversed text-sm items-start",children:[(0,l.jsx)("span",{className:"px-2 bg-slate-200 rounded-full hover:bg-slate-100 hidden xl:flex text-slate-600",children:"Info"}),(0,l.jsx)("div",{className:"dropdown mt-0 xl:-mt-2",children:(0,l.jsx)("span",{children:"Foriegn key links the current table to another table"})})]})]}),(0,l.jsxs)("select",{name:"foreign_key_field",id:"foreign_key_field",className:"px-2",defaultValue:e?.foreignKey?"Yes":"No",onChange:e=>{e.target.value.match(/yes/i)?(p(!0),t&&t(e=>(e.foreignKey={foreignKeyName:void 0,destinationTableName:void 0,destinationTableColumnName:void 0,cascadeDelete:!0},e))):(p(!1),t&&t(e=>(delete e.foreignKey,e)))},children:[(0,l.jsx)("option",{value:"No",children:"No"}),(0,l.jsx)("option",{value:"Yes",children:"Yes"})]}),x&&h&&(0,l.jsx)(n().Fragment,{children:(0,l.jsxs)("select",{name:"foreign_key_destination_table_name",id:"foreign_key_destination_table_name",className:"px-2",defaultValue:e?.foreignKey?.destinationTableName?e.foreignKey.destinationTableName:void 0,onChange:e=>{let a=e.target;if(e.target.value?.match(/--/)){t?t(e=>{let t=e.foreignKey;return t&&(t.destinationTableName=void 0),e}):a.dataset.destinationTableName=void 0;return}let l=h.filter(t=>t.tableName===e.target.value)[0];v(l),l?.fields&&j(l.fields),t?t(t=>{let a=t.foreignKey;return a&&(a.destinationTableName=e.target.value),t}):e.target.dataset.destinationTableName=e.target.value},children:[(0,l.jsx)("option",{value:"--",children:"--Select Table--"}),h.map((e,t)=>(0,l.jsx)("option",{value:e.tableName,children:e.tableFullName},t+1))]})}),g&&N&&(0,l.jsxs)(n().Fragment,{children:[(0,l.jsxs)("select",{name:"foreign_key_destination_table_column_name",id:"foreign_key_destination_table_column_name",className:"px-2",defaultValue:e?.foreignKey?.destinationTableColumnName?e.foreignKey.destinationTableColumnName:void 0,onChange:e=>{try{let a=N.filter(t=>t.fieldName===e.target.value)[0];if(T(a),e.target.value?.match(/--/)){t&&t(e=>{let t=e.foreignKey;return t&&(t.destinationTableColumnName=void 0),e});return}let l=`dsql_${d.user_id}_${d.db_slug}_${Date.now()}`;t?t(e=>{e.dataType=a.dataType;let t=e.foreignKey;return t&&(t.destinationTableColumnName=a.fieldName,t.destinationTableColumnType=a.dataType,t.foreignKeyName=l),e}):(e.target.dataset.dataType=a.dataType,e.target.dataset.destinationTableColumnName=a.fieldName,e.target.dataset.foreignKeyName=l)}catch(e){(0,i.A)("/api/admin/clientError",{method:"post",body:{component:"ForeignKey/lines-232-264",message:e.message,user:u}})}},children:[(0,l.jsx)("option",{value:"--",children:"--Select Column--"}),N.map((e,t)=>(0,l.jsx)("option",{value:e.fieldName,children:e.fieldName},t+1))]}),m&&y&&(0,l.jsx)("button",{className:"secondary w-full",onClick:e=>{w(!0),(0,i.A)("/api/updateClonedTableForeignKeys",{method:"post",body:{tableData:o,database:d.db_full_name,dbSlug:d.db_slug,delegated:!!window.location?.search?.match(/delegated=true/i)}},!0).then(e=>{e.success?window.alert("Foreign Key Added Successfully!"):window.alert("Update Failed, Please Try again."),setTimeout(()=>{c&&c(!1)},1e3)})},children:"Add Foreign Key"})]}),m&&(0,l.jsx)("button",{className:"light-gray w-full",onClick:t=>{delete e.foreignKey,c&&c(!1)},children:"Cancel"})]})}},84896:(e,t,a)=>{a.d(t,{A:()=>s});var l=a(8732);function s({targetField:e}){return(0,l.jsxs)("div",{className:"flex flex-col items-start gap-0.5",style:{minWidth:"70px"},children:[(0,l.jsx)("label",{htmlFor:"rich_text_option",children:"Text Type"}),(0,l.jsxs)("select",{name:"rich_text_option",id:"rich_text_option",className:"px-2",onChange:t=>{switch(delete e.json,delete e.richText,delete e.yaml,delete e.html,delete e.javascript,delete e.shell,t.target.value){case"plain":break;case"rte":e.richText=!0;break;case"json":e.json=!0;break;case"yaml":e.yaml=!0;break;case"html":e.html=!0;break;case"css":e.css=!0;break;case"javascript":e.javascript=!0;break;case"shell":e.shell=!0}},defaultValue:e.richText?"rte":e.json?"json":e.yaml?"yaml":e.html?"html":e.javascript?"javascript":e.shell?"shell":e.css?"css":"plain",children:[(0,l.jsx)("option",{value:"plain",children:"Plain Text"}),(0,l.jsx)("option",{value:"rte",children:"Rich Text"}),(0,l.jsx)("option",{value:"json",children:"JSON"}),(0,l.jsx)("option",{value:"yaml",children:"YAML"}),(0,l.jsx)("option",{value:"html",children:"HTML"}),(0,l.jsx)("option",{value:"css",children:"CSS"}),(0,l.jsx)("option",{value:"javascript",children:"Javascript"}),(0,l.jsx)("option",{value:"shell",children:"Shell"})]})]})}a(82015)},2817:(e,t,a)=>{a.d(t,{A:()=>s});var l=a(8732);function s({children:e,open:t,setOpen:a,onClose:s,maxWidth:n}){return(0,l.jsx)(l.Fragment,{})}a(82015),a(1976),a(58150)},43431:e=>{e.exports=JSON.parse('[{"title":"VARCHAR","name":"VARCHAR","value":"0-255","argument":true,"description":"Varchar is simply letters and numbers within the range 0 - 255","maxValue":255},{"title":"TINYINT","name":"TINYINT","value":"0-100","description":"TINYINT means Integers: 0 to 100","maxValue":127},{"title":"SMALLINT","name":"SMALLINT","value":"0-255","description":"SMALLINT means Integers: 0 to 240933","maxValue":32767},{"title":"MEDIUMINT","name":"MEDIUMINT","value":"0-255","description":"MEDIUMINT means Integers: 0 to 1245568545560","maxValue":8388607},{"title":"INT","name":"INT","value":"0-255","description":"INT means Integers: 0 to 12560","maxValue":2147483647},{"title":"BIGINT","name":"BIGINT","value":"0-255","description":"BIGINT means Integers: 0 to 1245569056767568545560","maxValue":2e+63},{"title":"TINYTEXT","name":"TINYTEXT","value":"0-255","description":"Text with 255 max characters","maxValue":127},{"title":"TEXT","name":"TEXT","value":"0-100","description":"MEDIUMTEXT is just text with max length 16,777,215","maxValue":127},{"title":"MEDIUMTEXT","name":"MEDIUMTEXT","value":"0-255","description":"MEDIUMTEXT is just text with max length 16,777,215","maxValue":127},{"title":"LONGTEXT","name":"LONGTEXT","value":"0-255","description":"LONGTEXT is just text with max length 4,294,967,295","maxValue":127},{"title":"UUID","name":"UUID","valueLiteral":"UUID()","description":"A Unique ID"}]')}};