1import{aW as A,aB as D,c as P,q as v,Y as L,f as O,_ as B,aF as b,o as y,z as I,k as T,az as m,w as g,j,ay as q,bo as z,D as F,ar as H,cS as M}from"./index-DJ4o_Lrk.js";import{useUserStore as G}from"./user-CnqmZBVJ.js";import{g as U}from"./wrappers-DYgUYuA3.js";import{u as Q}from"./validators-CYcEomwi.js";import{n as X,a as K}from"./notify-Bo-IohDv.js";const W=4,Y=128,R=1500,J=A({__name:"CreateForm",props:{entity:{},onlyView:{type:Boolean}},emits:["success","error"],setup(s,{expose:r,emit:i}){r();const e=i,f=D(),_=G(),d=P(),l=v({}),c=v([]),t=v(!1),u=v(!1),E=v(null),N=R,p=L(()=>_.getByKey(d.userInfo.user_id??"")),{maxLengthRule:h,betweenRangeRule:C}=Q(),S={title:C(W,Y),description:h(R)},o=U({data:{},fields:["title","description"],addedFields:["id"],fieldsToTrim:["title","description"],requiredFields:["title","description"],validators:S}),x=L(()=>Object.keys(o.value.fieldErrors||{})?.length>0||Object.keys(o.value.formErrors||{})?.length>0),w=async a=>{try{const n=await O.stargate.post("provider/conversation",{title:a.title,users:[{id:p.value?.id,name:p.value?.name,email:p.value?.email,lang:p.value?.lang}]});n&&(o.value.description&&await O.stargate.post(`provider/conversation/${n.data.id}/message`,{user_name:p?.value?.name,message:o.value.description}),e("success",n.data),o.value.id?u.value=!1:f.push({name:"Conversation"})),c.value.length&&e("error",c.value)}catch(n){c.value.push(n instanceof Error?n.message:String(n))}},V={emit:e,router:f,userStore:_,appStore:d,formErrors:l,errors:c,isLoading:t,isChanged:u,scrollAreaRef:E,maxDescriptionLength:N,user:p,maxLengthRule:h,betweenRangeRule:C,fieldsValidators:S,model:o,isFieldErrors:x,setSaveRequest:w,saveEntity:async()=>{if(t.value)return;if(t.value=!0,l.value={},c.value=[],o.value.validate(),Object.keys(o.value.fieldErrors||{})?.length){const n=E.value;o.value.fieldErrors.name&&n?.setScrollPosition&&n.setScrollPosition("vertical",0,250),t.value=!1;return}const a={...o.value.collectData()};await w(a),t.value=!1},setChangedAndValidate:(a,n)=>{if(u.value=!0,o.value.validators?.[a]){const k=o.value.validators[a](n);typeof k=="string"?o.value.fieldErrors[a]=k:Object.prototype.hasOwnProperty.call(o.value.fieldErrors,a)&&delete o.value.fieldErrors[a]}else Object.prototype.hasOwnProperty.call(o.value.fieldErrors,a)&&delete o.value.fieldErrors[a]}};return Object.defineProperty(V,"__isScriptSetup",{enumerable:!1,value:!0}),V}}),Z={style:{"max-height":"400px","overflow-y":"visible",height:"auto","overflow-x":"hidden"}};function $(s,r,i,e,f,_){const d=b("t-info-hint-btn"),l=b("t-input"),c=b("t-ok-btn");return y(),I("div",null,[T("div",Z,[m(l,{modelValue:e.model.title,"onUpdate:modelValue":[r[0]||(r[0]=t=>e.model.title=t),r[1]||(r[1]=t=>e.setChangedAndValidate("title",t))],label:s.$t("conversation.title"),error:!!e.formErrors.name||!!e.model.fieldErrors?.name,"error-message":e.formErrors.name||e.model.fieldErrors?.name,class:"col-12",disable:i.onlyView},{after:g(()=>[m(d,{hint:s.$t("conversation.titleHint")},null,8,["hint"])]),_:1},8,["modelValue","label","error","error-message","disable"]),m(l,{modelValue:e.model.description,"onUpdate:modelValue":[r[2]||(r[2]=t=>e.model.description=t),r[3]||(r[3]=t=>e.setChangedAndValidate("description",t))],label:s.$t("common.description"),error:!!e.formErrors.description||!!e.model.fieldErrors?.description,"error-message":e.formErrors.description||e.model.fieldErrors?.description,class:"col-12",autogrow:"",disable:i.onlyView,maxlength:e.maxDescriptionLength},{after:g(()=>[m(d,{hint:s.$t("conversation.descriptionHint")},null,8,["hint"])]),_:1},8,["modelValue","label","error","error-message","disable","maxlength"])]),i.onlyView?F("",!0):(y(),j(z,{key:0,class:"row full-width tariff-plan-form__footer q-py-md justify-end",style:{position:"relative"}},{default:g(()=>[m(q,{side:""},{default:g(()=>[m(c,{class:"q-ml-md",loading:e.isLoading,disable:!e.isChanged||e.isLoading||e.isFieldErrors,onClick:e.saveEntity},null,8,["loading","disable"])]),_:1})]),_:1}))])}const ee=B(J,[["render",$],["__file","CreateForm.vue"]]),oe=A({__name:"CreateConversation",setup(s,{expose:r}){r();const{t:i}=H(),e=M(),f=v({}),_=u=>{e.setActiveConversationId(u.id),e.setConversationDrawerOpen(!0),X(i("conversation.successCreated"))},d=()=>{K(i("conversation.errorCreated"))},l=v(0),t={t:i,conversationStore:e,conversation:f,onSuccess:_,onError:d,breadCrumbsHeight:l,onResizeBreadCrumbs:u=>{l.value=u.height},FormEnt:ee};return Object.defineProperty(t,"__isScriptSetup",{enumerable:!1,value:!0}),t}}),te={class:"row q-gutter-y-md"};function re(s,r,i,e,f,_){const d=b("t-breadcrumbs"),l=b("t-card");return y(),I("div",te,[m(d,{items:[{label:s.$t("conversation._name"),to:{name:"Conversation"}},{label:s.$t("common.create")}],onResize:e.onResizeBreadCrumbs},null,8,["items"]),m(l,{class:"col-12",title:s.$t("conversation.createConversation"),icon:null,padding:""},{default:g(()=>[T("div",null,[e.conversation?(y(),j(e.FormEnt,{key:0,entity:e.conversation,onSuccess:e.onSuccess,onError:e.onError},null,8,["entity"])):F("",!0)])]),_:1},8,["title"])])}const me=B(oe,[["render",re],["__file","CreateConversation.vue"]]);export{me as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.