PageSourceSearch

https://app.invoicing.plus/build/assets/NotesSetting-f5e56539.js

js invoicing.plus collected 2026-09-24 20:05:06 UTC 12,684 bytes, 1 lines download raw bytes

1import{u as P}from"./vue-i18n-2b0851fa.js";import{a as j,r as L,j as ie,d as ue,u as de,N as J,b as U}from"./main-0b49f352.js";import{u as Q}from"./dialog-ff0a0145.js";import{u as R}from"./notification-bf8208d4.js";import{u as W}from"./vue-router-2645b885.js";import{u as Z}from"./vue.runtime.esm-bundler-0695577c.js";import{v as q,E as ee,h as T,w as K,x as me,r as m,o as C,i as $,e as o,d as E,f as w,t as B,u as e,a,p as ce,j as te,D as ae,g as G,c as pe,F as fe}from"./runtime-core.esm-bundler-933f4ca9.js";import{w as ge}from"./runtime-dom.esm-bundler-c8a4e9fd.js";import{c as x,r as F,m as ye,f as Ne}from"./index.esm-fdb3bbc0.js";import{u as ve}from"./index.esm-e8e553d0.js";import{u as _e}from"./payment-54c223ae.js";import{u as he}from"./lodash-5eb42d42.js";/* empty css                                                  */import"./axios-67252f11.js";import"./moment-e9e012b5.js";import"./utilities-cc7bdc62.js";import"./XCircleIcon-086051d1.js";import"./preload-helper-6f27e6cf.js";import"./customer-router-33df74f8.js";import"./_plugin-vue_export-helper-c27b6911.js";import"./menu-2d018230.js";import"./index-4b843de9.js";import"./BaseDropdownItem-b9c43399.js";import"./MainLogo-17320595.js";import"./payment-5da119a7.js";const be={class:"flex justify-between w-full"},Be=["onSubmit"],Ce={class:"px-8 py-8 sm:p-6"},we={class:"z-0 flex justify-end px-4 py-4 border-t border-solid border-gray-light"},Se={__name:"NoteModal",setup(z){const l=j(),D=R(),t=L(),v=ie(),p=_e(),S=ue();de(),he();const f=W(),{t:y}=P();let _=q(!1),g=q(null),h=q([]);const i=ee([{type:"Invoice",name:"Facture"},{type:"Estimate",name:"Devis"},{type:"Order",name:"Commande"},{type:"DeliveryNote",name:"Bon de livraison"},{type:"PurchaseOrder",name:"Commande fournisseur"}]);let c=q(["customer","customerCustom"]);const N=T(()=>l.active&&l.componentName==="NoteModal"),I=T(()=>({currentNote:{name:{required:x.withMessage(y("validation.required"),F),minLength:x.withMessage(y("validation.name_min_length",{count:2}),ye(2))},notes:{required:x.withMessage(y("validation.required"),F)},type:{required:x.withMessage(y("validation.required"),F)},order:{required:x.withMessage(y("validation.required"),F),minValue:x.withMessage(y("validation.min_value",{count:0}),Ne(0))}}})),r=ve(I,T(()=>t));K(()=>t.currentNote.type,s=>{b()}),K(()=>t.currentNote.image,s=>{M()}),me(()=>{f.name==="estimates.create"?t.currentNote.type="Estimate":(f.name,t.currentNote.type="Invoice")});function b(){c.value=["customer","customerCustom"],t.currentNote.type=="Invoice"&&c.value.push("invoice","invoiceCustom"),t.currentNote.type=="Estimate"&&c.value.push("estimate","estimateCustom"),t.currentNote.type=="Payment"&&c.value.push("payment","paymentCustom")}function M(){t.currentNote.image&&h.value.push({image:t.currentNote.image})}async function d(){if(r.value.currentNote.$touch(),r.value.currentNote.$invalid)return!0;if(_.value=!0,t.isEdit){let s={id:t.currentNote.id,...t.currentNote};await t.updateNote(s).then(n=>{if(_.value=!1,n.data){if(g.value){let V=new FormData;g.value=="to_delete"?V.append("image",null):V.append("image",g.value),t.uploadImage(V,t.currentNote.id)}D.showNotification({type:"success",message:y("settings.customization.notes.note_updated")}),l.refreshData&&l.refreshData(),k()}}).catch(n=>{_.value=!1})}else await t.addNote(t.currentNote).then(s=>{if(_.value=!1,s.data){if(g.value){let n=new FormData;g.value=="to_delete"?n.append("image",null):n.append("image",g.value),t.uploadImage(n,s.data.data.id)}D.showNotification({type:"success",message:y("settings.customization.notes.note_added")}),(f.name==="invoices.create"&&s.data.data.type==="Invoice"||f.name==="invoices.edit"&&s.data.data.type==="Invoice")&&v.selectNote(s.data.data),(f.name==="estimates.create"&&s.data.data.type==="Estimate"||f.name==="estimates.edit"&&s.data.data.type==="Estimate")&&S.selectNote(s.data.data),(f.name==="payments.create"&&s.data.data.type==="Payment"||f.name==="payments.edit"&&s.data.data.type==="Payment")&&p.selectNote(s.data.data)}l.refreshData&&l.refreshData(),k()}).catch(s=>{_.value=!1})}function Y(s,n){g.value=n}function oe(){g.value="to_delete"}function k(){l.closeModal(),setTimeout(()=>
1{g.value=null,h.value=[],t.resetCurrentNote(),r.value.$reset()},300)}return(s,n)=>{const V=m("BaseIcon"),O=m("BaseInputGroup"),ne=m("BaseMultiselect"),A=m("BaseInputGrid"),se=m("BaseCustomInput"),H=m("BaseSwitch"),re=m("BaseFileUploader"),X=m("BaseButton"),le=m("BaseModal");return C(),$(le,{show:e(N),onClose:k,onOpen:b},{header:o(()=>[E("div",be,[w(B(e(l).title)+" ",1),a(V,{name:"XCircleIcon",class:"h-6 w-6 text-gray-500 cursor-pointer",onClick:k})])]),default:o(()=>[E("form",{action:"",onSubmit:ge(d,["prevent"])},[E("div",Ce,[a(A,null,{default:o(()=>[a(O,{label:s.$t("settings.customization.notes.name"),variant:"vertical",error:e(r).currentNote.name.$error&&e(r).currentNote.name.$errors[0].$message,required:""},{default:o(()=>[a(J,{modelValue:e(t).currentNote.name,"onUpdate:modelValue":n[0]||(n[0]=u=>e(t).currentNote.name=u),invalid:e(r).currentNote.name.$error,type:"text",onInput:n[1]||(n[1]=u=>e(r).currentNote.name.$touch())},null,8,["modelValue","invalid"])]),_:1},8,["label","error"]),a(O,{label:s.$t("settings.customization.notes.type"),error:e(r).currentNote.type.$error&&e(r).currentNote.type.$errors[0].$message,required:""},{default:o(()=>[a(ne,{modelValue:e(t).currentNote.type,"onUpdate:modelValue":n[2]||(n[2]=u=>e(t).currentNote.type=u),options:i,"value-prop":"type",label:"name"},null,8,["modelValue","options"])]),_:1},8,["label","error"])]),_:1}),a(A,{class:"mt-4",layout:"one-column"},{default:o(()=>[a(O,{label:s.$t("settings.customization.notes.notes"),error:e(r).currentNote.notes.$error&&e(r).currentNote.notes.$errors[0].$message,required:""},{default:o(()=>[a(se,{modelValue:e(t).currentNote.notes,"onUpdate:modelValue":n[3]||(n[3]=u=>e(t).currentNote.notes=u),invalid:e(r).currentNote.notes.$error,fields:e(c),onInput:n[4]||(n[4]=u=>e(r).currentNote.notes.$touch())},null,8,["modelValue","invalid","fields"])]),_:1},8,["label","error"])]),_:1}),a(A,{class:"mt-4"},{default:o(()=>[a(H,{modelValue:e(t).currentNote.auto,"onUpdate:modelValue":n[5]||(n[5]=u=>e(t).currentNote.auto=u),class:"flex","label-right":s.$t("settings.customization.notes.auto")+", s'insère lors de la création"},null,8,["modelValue","label-right"]),a(O,{label:"Image dans la note [html:NOTE]"},{default:o(()=>[a(re,{modelValue:e(h),"onUpdate:modelValue":n[6]||(n[6]=u=>ce(h)?h.value=u:h=u),accept:"image/*",onChange:Y,onRemove:oe},null,8,["modelValue"])]),_:1})]),_:1}),a(A,{class:"mt-4"},{default:o(()=>[a(H,{modelValue:e(t).currentNote.auto_title,"onUpdate:modelValue":n[7]||(n[7]=u=>e(t).currentNote.auto_title=u),class:"flex","label-right":s.$t("settings.customization.notes.auto_title")+", s'insère lors de la création"},null,8,["modelValue","label-right"]),a(O,{label:"Ordre d'affichage (pour les notes automatiques)",required:""},{default:o(()=>[a(J,{modelValue:e(t).currentNote.order,"onUpdate:modelValue":n[8]||(n[8]=u=>e(t).currentNote.order=u),type:"number",invalid:e(r).currentNote.order.$error,step:"1",onInput:n[9]||(n[9]=u=>e(r).currentNote.order.$touch())},null,8,["modelValue","invalid"])]),_:1})]),_:1})]),E("div",we,[a(X,{class:"mr-2",variant:"primary-outline",type:"button",onClick:k},{default:o(()=>[w(B(s.$t("general.cancel")),1)]),_:1}),a(X,{loading:e(_),disabled:e(_),variant:"primary",type:"submit"},{left:o(u=>[a(V,{name:"ArrowDownOnSquareIcon",class:te(u.class)},null,8,["class"])]),default:o(()=>[w(" "+B(e(t).isEdit?s.$t("general.update"):s.$t("general.save")),1)]),_:1},8,["loading","disabled"])])],40,Be)]),_:1},8,["show"])}}},Ie={__name:"NoteIndexDropdown",props:{row:{type:Object,default:null},table:{type:Object,default:null},loadData:{type:Function,default:null}},setup(z){const l=z,D=Q(),t=R(),{t:v}=P(),p=L(),S=W(),f=Z(),y=j();ae("utils");function _(i){p.fetchNote(i),y.openModal({title:v("settings.customization.notes.edit_note"),componentName:"NoteModal",size:"md",refreshData:l.loadData})}function g(i){p.replicateNote(i).then(()=>{l.loadData&&l.loadData()})}function h(i){D.openDialog({title:v("general.are_you_sure"),message:v("settings.customization.notes.note_confirm_delete"),yesLabel:v("general.yes"),noLabel:v("general.no"),variant:"danger",hideNoButton:!1,size:"lg"}).then(async()=>{(await p.deleteNote(i)).data.success?t.showNotification({type:"success",message:v("settings.customization.notes.deleted_message")}):t.showNotification({type:"error",message:v("settings.customization.notes.already_in_use")}),l.loadData&&l.loadData()})}return(i,c)=>{const N=m("BaseIcon"),I=m("BaseButton"),r=m("BaseDropdownItem"),b=m("BaseDropdown");return C(),$(b,null,{activator:o(()=>[e(S).name==="notes.view"?(C(),$(I,{key:0,variant:"primary"},{default:o(()=>[a(N,{name:"EllipsisHorizontalIcon",class:"h-5 text-white"})]),_:1})):(C(),$(N,{key:1,name:"EllipsisHorizontalIcon",class:"h-5 text-gray-500"}))]),default:o(()=>[e(f).hasAbilities(e(U).MANAGE_NOTE)?(C(),$(r,{key:0,onClick:c[0]||(c[0]=M=>
1_(z.row.id))},{default:o(()=>[a(N,{name:"PencilIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),w(" "+B(i.$t("general.edit")),1)]),_:1})):G("",!0),e(f).hasAbilities(e(U).MANAGE_NOTE)?(C(),$(r,{key:1,onClick:c[1]||(c[1]=M=>g(z.row.id))},{default:o(()=>[a(N,{name:"DocumentDuplicateIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),w(" Dupliquer ")]),_:1})):G("",!0),e(f).hasAbilities(e(U).MANAGE_NOTE)?(C(),$(r,{key:2,onClick:c[2]||(c[2]=M=>h(z.row.id))},{default:o(()=>[a(N,{name:"TrashIcon",class:"w-5 h-5 mr-3 text-gray-400 group-hover:text-gray-500"}),w(" "+B(i.$t("general.delete")),1)]),_:1})):G("",!0)]),_:1})}}},$e=["onClick"],Ze={__name:"NotesSetting",setup(z){const{t:l}=P(),D=j();Q();const t=L();R();const v=Z(),p=q(""),S=ae("utils"),f=T(()=>[{key:"name",label:l("settings.customization.notes.name"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"type",label:l("settings.customization.notes.type"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"auto",label:l("settings.customization.notes.auto"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"auto_title",label:l("settings.customization.notes.auto_title"),thClass:"extra",tdClass:"font-medium text-gray-900"},{key:"order",label:l("settings.customization.notes.order"),thClass:"extra",tdClass:"font-medium text-gray-900 text-right",sortable:!0},{key:"actions",label:"",tdClass:"text-right text-sm font-medium",sortable:!1}]);async function y({page:i,filter:c,sort:N,limit:I}){let r=ee({orderByField:N.fieldName||"order",orderBy:N.order||"asc",page:i,limit:I}),b=await t.fetchNotes(r);return{data:b.data.data,pagination:{totalPages:b.data.meta.last_page,currentPage:i,totalCount:b.data.meta.total,limit:I}}}async function _(i){await t.fetchNote(i),D.openModal({title:l("settings.customization.notes.edit_note"),componentName:"NoteModal",size:"md",refreshData:p.value&&p.value.refresh})}async function g(){await D.openModal({title:l("settings.customization.notes.add_note"),componentName:"NoteModal",size:"md",refreshData:p.value&&p.value.refresh})}async function h(){p.value&&p.value.refresh()}return(i,c)=>{const N=m("BaseIcon"),I=m("BaseButton"),r=m("BaseBadge"),b=m("BaseTable"),M=m("BaseSettingCard");return C(),pe(fe,null,[a(Se),a(M,{title:i.$t("settings.customization.notes.title"),description:i.$t("settings.customization.notes.description")},{action:o(()=>[e(v).hasAbilities(e(U).MANAGE_NOTE)?(C(),$(I,{key:0,variant:"primary-outline",onClick:g},{left:o(d=>[a(N,{class:te(d.class),name:"PlusIcon"},null,8,["class"])]),default:o(()=>[w(" "+B(i.$t("settings.customization.notes.add_note")),1)]),_:1})):G("",!0)]),default:o(()=>[a(b,{ref_key:"table",ref:p,data:y,columns:e(f),class:"mt-14",limit:10,sortBy:"order",sortOrder:"asc"},{"cell-name":o(({row:d})=>[E("a",{href:"#",class:"font-medium text-primary-500",onClick:Y=>_(d.data.id)},B(d.data.name),9,$e)]),"cell-type":o(({row:d})=>[E("span",null,B(e(l)("general."+d.data.type)),1)]),"cell-auto":o(({row:d})=>[a(r,{"bg-color":e(S).getBadgeStatusColor(d.data.auto?"YES":"NO").bgColor,color:e(S).getBadgeStatusColor(d.data.auto?"YES":"NO").color},{default:o(()=>[w(B(d.data.auto?"OUI":"NON"),1)]),_:2},1032,["bg-color","color"])]),"cell-auto_title":o(({row:d})=>[a(r,{"bg-color":e(S).getBadgeStatusColor(d.data.auto_title?"YES":"NO").bgColor,color:e(S).getBadgeStatusColor(d.data.auto_title?"YES":"NO").color},{default:o(()=>[w(B(d.data.auto_title?"OUI":"NON"),1)]),_:2},1032,["bg-color","color"])]),"cell-actions":o(({row:d})=>[a(Ie,{row:d.data,table:p.value,"load-data":h},null,8,["row","table"])]),_:1},8,["columns"])]),_:1},8,["title","description"])],64)}}};export{Ze 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.