UNPKG

n8n-editor-ui

Version:

Workflow Editor UI for n8n

2 lines 10.6 kB
(function(){try{var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{};e.SENTRY_RELEASE={id:`n8n@2.16.1`}}catch{}})();try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`e8a20a63-d52e-4be4-a528-1cb5b1a16b5a`,e._sentryDebugIdIdentifier=`sentry-dbid-e8a20a63-d52e-4be4-a528-1cb5b1a16b5a`)})()}catch{}import"./chunk-CACdhNlC.js";import{$ as e,A as t,C as n,E as r,Ft as i,N as a,S as o,Sn as s,T as c,Wt as l,X as ee,_ as u,_n as d,j as f,m as p,rt as m,w as h,yt as g}from"./vue.runtime.esm-bundler-C3C09Zii.js";import{at as te}from"./core-Bz5WjPxS.js";import{Qi as _,Xi as v,Zi as y,_t as b,ct as ne,dt as x,ji as S,lt as C,ut as re,vt as ie}from"./src-XqE2yCpG.js";import{t as w}from"./_plugin-vue_export-helper-CIL7EULb.js";import{t as ae}from"./upload-BaNPOmpC.js";import{Pn as oe,fr as se,r as ce}from"./users.store-xP93bV7X.js";import{n as le,t as T}from"./radio-Cvcn3W3r.js";import{Er as ue,Ir as de,Ji as fe,ti as pe}from"./constants-DuQbSl-q.js";import{t as E}from"./dataTable.store-DVN6vAE2.js";import{t as me}from"./Modal-gWM7cVuX.js";var he=[`aria-label`],D=w(a({__name:`AddDataTableModal`,props:{modalName:{}},setup(a){let w=a,D=E(),ge=ce(),O=ne(),k=C(),A=te(),j=oe(),_e=se(),M=i(`select`),N=i(``),P=i(null),F=i(null),I=i(null),L=i(``),R=i([]),z=i(0),B=i(0),V=i(!1),H=i(!0),U=i(!1),W=[{label:`String`,value:`string`},{label:`Number`,value:`number`},{label:`Boolean`,value:`boolean`},{label:`Datetime`,value:`date`}],G=e=>W.some(t=>t.value===e),ve=e=>!e||e.length===0?W:W.filter(t=>e.includes(t.value)),K=e=>{if(fe.includes(e))return A.baseText(`dataTable.import.systemColumnName`,{interpolate:{columnName:e}});if(!pe.safeParse(e).success)return A.baseText(`dataTable.import.invalidColumnName`)},q=o(()=>R.value.filter(e=>e.included)),ye=o(()=>M.value===`import`?q.value.some(e=>e.error!==void 0):!1),be=o(()=>{if(M.value!==`import`)return!1;let e=q.value.map(e=>e.name.toLowerCase());return e.length!==new Set(e).size}),xe=o(()=>M.value===`import`?q.value.length===0:!1),Se=o(()=>M.value===`import`?`Set data table columns`:A.baseText(`dataTable.add.title`)),Ce=o(()=>M.value===`import`?!N.value||!I.value||ye.value||be.value||xe.value:!0);ee(()=>{setTimeout(()=>{P.value?.focus(),P.value?.select()},0)});let J=i(`scratch`),Y=async()=>{if(!(!J.value||!N.value||V.value)){if(J.value===`scratch`)await Q();else if(J.value===`import`){if(!F.value)return;await De()}}},X=()=>{R.value.forEach((e,t)=>{if(!e.included){e.error=void 0;return}let n=K(e.name);R.value.some((n,r)=>r!==t&&n.included&&n.name.toLowerCase()===e.name.toLowerCase())&&!n?e.error=A.baseText(`dataTable.import.duplicateColumnName`):e.error=n})},we=e=>{R.value[e]&&X()},Te=()=>{X()},Z=(e=!1)=>{e&&(N.value=``),F.value=null,I.value=null,L.value=``,R.value=[],z.value=0,B.value=0,J.value=`scratch`,M.value=`select`},Ee=e=>{e.raw&&(F.value=e.raw)},De=async()=>{if(F.value){V.value=!0,M.value=`import`;try{let e=await D.uploadCsvFile(F.value,H.value);I.value=e.id,L.value=e.originalName,z.value=e.rowCount,B.value=e.columnCount,R.value=e.columns.map(e=>{let t=(e.compatibleTypes||[e.type]).filter(G),n=e.name.replace(/\s+/g,`_`);return{name:n,type:G(e.type)?e.type:`string`,compatibleTypes:t,typeOptions:ve(t),error:K(n),included:!0,csvColumnName:e.name}}),N.value||=F.value.name.replace(/\.csv$/i,``)}catch(e){j.showError(e,A.baseText(`dataTable.upload.error`)),Z()}finally{V.value=!1}}},Q=async()=>{V.value=!0;try{let e;if(J.value===`scratch`)e=await D.createDataTable(N.value,O.params.projectId);else if(M.value===`import`&&I.value){let t=R.value.some(e=>!e.included||e.name!==e.csvColumnName.replace(/\s+/g,`_`));e=await D.createDataTable(N.value,O.params.projectId,q.value.map(e=>({name:e.name,type:e.type,...t?{csvColumnName:e.csvColumnName}:{}})),I.value,H.value)}e&&(_e.track(`User created data table`,{data_table_id:e.id,data_table_project_id:e.project?.id,creation_mode:J.value}),Z(!0),ge.closeModal(w.modalName),k.push({name:ue,params:{id:e.id}}))}catch(e){j.showError(e,A.baseText(`dataTable.add.error`))}finally{V.value=!1}},Oe=()=>{M.value=`select`},$=()=>{k.replace({name:de})};return(i,a)=>(e(),h(me,{name:w.modalName,center:!0,width:M.value===`import`?`700px`:`540px`,"min-height":M.value===`import`?`600px`:void 0,"before-close":$},{header:g(()=>[n(`div`,{class:d(i.$style.header)},[n(`h2`,null,s(Se.value),1)],2)]),content:g(()=>[M.value===`select`?(e(),r(`div`,{key:0,class:d(i.$style.selectionContent)},[f(l(re),{label:l(A).baseText(`dataTable.add.input.name.label`),required:!0,"input-name":`dataTableNameSelect`},{default:g(()=>[f(l(S),{ref_key:`inputRef`,ref:P,modelValue:N.value,"onUpdate:modelValue":a[0]||=e=>N.value=e,type:`text`,placeholder:l(A).baseText(`dataTable.add.input.name.placeholder`),"data-test-id":`data-table-name-input-select`,name:`dataTableNameSelect`,onKeydown:p(Y,[`enter`])},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),f(l(le),{modelValue:J.value,"onUpdate:modelValue":a[1]||=e=>J.value=e,class:d(i.$style.radioGroup)},{default:g(()=>[f(l(T),{label:`scratch`,"data-test-id":`create-from-scratch-option`},{default:g(()=>[t(s(l(A).baseText(`dataTable.add.fromScratch`)),1)]),_:1}),f(l(T),{label:`import`,"data-test-id":`import-csv-option`},{default:g(()=>[t(s(l(A).baseText(`dataTable.add.importCsv`)),1)]),_:1})]),_:1},8,[`modelValue`,`class`]),J.value===`import`?(e(),r(`div`,{key:0,class:d(i.$style.uploadSection)},[f(l(ae),{class:d(i.$style.uploadDemo),drag:``,"auto-upload":!1,"show-file-list":!1,accept:`.csv`,"on-change":Ee,onMouseenter:a[2]||=e=>U.value=!0,onMouseleave:a[3]||=e=>U.value=!1},{default:g(()=>[f(l(_),{icon:`file`,size:24,color:U.value?`text-dark`:`text-light`,class:d(i.$style.uploadIcon)},null,8,[`color`,`class`]),F.value?(e(),h(l(v),{key:0,color:U.value?`text-dark`:`text-light`},{default:g(()=>[t(s(F.value?.name),1)]),_:1},8,[`color`])):(e(),h(l(v),{key:1,size:`medium`,color:U.value?`text-dark`:`text-light`},{default:g(()=>[t(s(l(A).baseText(`dataTable.upload.dropOrClick`)),1)]),_:1},8,[`color`]))]),_:1},8,[`class`]),f(l(x),{modelValue:H.value,"onUpdate:modelValue":a[4]||=e=>H.value=e,label:l(A).baseText(`dataTable.upload.hasHeaders`),"data-test-id":`has-headers-checkbox`},null,8,[`modelValue`,`label`])],2)):c(``,!0)],2)):M.value===`import`?(e(),r(`div`,{key:1,class:d(i.$style.content)},[V.value?(e(),r(`div`,{key:0,class:d(i.$style.uploadingMessage)},s(l(A).baseText(`dataTable.upload.uploading`)),3)):I.value?I.value&&R.value.length>0?(e(),r(`div`,{key:2,class:d(i.$style.importContent)},[n(`div`,{class:d(i.$style.successNotice)},s(l(A).baseText(`dataTable.upload.success`,{adjustToNumber:z.value,interpolate:{fileName:L.value,columnCount:B.value,rowCount:z.value}})),3),n(`div`,{class:d(i.$style.columnHeaders)},[n(`div`,{"aria-label":l(A).baseText(`dataTable.import.includeColumn`)},null,8,he),n(`div`,{class:d(i.$style.columnHeaderLabel)},s(l(A).baseText(`dataTable.import.columnName`)),3),n(`div`,{class:d(i.$style.columnHeaderLabel)},s(l(A).baseText(`dataTable.import.columnType`)),3)],2),n(`div`,{class:d(i.$style.columnsContainer)},[(e(!0),r(u,null,m(R.value,(t,a)=>(e(),r(`div`,{key:a,class:d(i.$style.columnItem)},[n(`div`,{class:d(i.$style.columnCheckboxWrapper)},[f(l(x),{modelValue:t.included,"onUpdate:modelValue":[e=>t.included=e,Te],"data-test-id":`column-include-${a}`},null,8,[`modelValue`,`onUpdate:modelValue`,`data-test-id`])],2),n(`div`,{class:d(i.$style.columnInputWrapper)},[f(l(S),{modelValue:t.name,"onUpdate:modelValue":[e=>t.name=e,e=>we(a)],placeholder:l(A).baseText(`dataTable.import.columnNamePlaceholder`),"data-test-id":`column-name-${a}`,disabled:!t.included,class:d({[i.$style.inputError]:t.error})},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`data-test-id`,`disabled`,`class`]),t.error?(e(),r(`div`,{key:0,class:d(i.$style.columnErrorMessage)},s(t.error),3)):c(``,!0)],2),n(`div`,{class:d(i.$style.columnTypeWrapper)},[f(l(b),{modelValue:t.type,"onUpdate:modelValue":e=>t.type=e,disabled:!t.included||t.typeOptions.length===1,class:d({"column-type-excluded":!t.included}),"data-test-id":`column-type-${a}`},{default:g(()=>[(e(!0),r(u,null,m(t.typeOptions,t=>(e(),h(l(ie),{key:t.value,value:t.value,label:t.label},null,8,[`value`,`label`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`disabled`,`class`,`data-test-id`])],2)],2))),128))],2)],2)):c(``,!0):(e(),r(`div`,{key:1,class:d(i.$style.uploadingMessage)},s(l(A).baseText(`dataTable.upload.selectFile`)),3))],2)):c(``,!0)]),footer:g(()=>[n(`div`,{class:d(i.$style.footer)},[M.value===`select`?(e(),h(l(y),{key:0,variant:`subtle`,size:`large`,label:l(A).baseText(`generic.cancel`),"data-test-id":`cancel-select-button`,onClick:$},null,8,[`label`])):c(``,!0),M.value===`select`?(e(),h(l(y),{key:1,loading:V.value,size:`large`,disabled:!N.value||!J.value||J.value===`import`&&!F.value,label:l(A).baseText(`generic.create`),"data-test-id":`proceed-from-select-button`,onClick:Y},null,8,[`loading`,`disabled`,`label`])):c(``,!0),M.value===`import`?(e(),h(l(y),{key:2,variant:`subtle`,size:`large`,label:l(A).baseText(`generic.back`),"data-test-id":`back-button`,onClick:Oe},null,8,[`label`])):c(``,!0),M.value===`import`?(e(),h(l(y),{key:3,loading:V.value,size:`large`,disabled:Ce.value,label:l(A).baseText(`generic.create`),"data-test-id":`confirm-add-data-table-button`,onClick:Q},null,8,[`loading`,`disabled`,`label`])):c(``,!0)],2)]),_:1},8,[`name`,`width`,`min-height`]))}}),[[`__cssModules`,{$style:{header:`_header_yy3nz_125`,content:`_content_yy3nz_129`,selectionContent:`_selectionContent_yy3nz_134`,radioGroup:`_radioGroup_yy3nz_140`,uploadSection:`_uploadSection_yy3nz_172`,uploadingMessage:`_uploadingMessage_yy3nz_178`,importContent:`_importContent_yy3nz_184`,successNotice:`_successNotice_yy3nz_190`,columnHeaders:`_columnHeaders_yy3nz_199`,columnHeaderLabel:`_columnHeaderLabel_yy3nz_207`,columnsContainer:`_columnsContainer_yy3nz_213`,columnItem:`_columnItem_yy3nz_222`,columnCheckboxWrapper:`_columnCheckboxWrapper_yy3nz_229`,columnInputWrapper:`_columnInputWrapper_yy3nz_236`,columnTypeWrapper:`_columnTypeWrapper_yy3nz_242`,inputError:`_inputError_yy3nz_255`,columnErrorMessage:`_columnErrorMessage_yy3nz_262`,footer:`_footer_yy3nz_268`,fileSelectedContainer:`_fileSelectedContainer_yy3nz_275`,uploadDemo:`_uploadDemo_yy3nz_282`,uploadIcon:`_uploadIcon_yy3nz_308`,fileName:`_fileName_yy3nz_312`}}]]);export{D as default}; //# sourceMappingURL=AddDataTableModal-5qYgz9VY.js.map