@dropins/storefront-quote-management 1.0.0-beta9 → 1.1.0-beta1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/api/graphql/NegotiableQuoteTemplateFragment.d.ts +1 -1
  2. package/api/index.d.ts +1 -0
  3. package/api/sendQuoteTemplateForReview/sendQuoteTemplateForReview.d.ts +3 -0
  4. package/api/setQuoteTemplateExpirationDate/graphql/setQuoteTemplateExpirationDate.d.ts +10 -0
  5. package/api/setQuoteTemplateExpirationDate/index.d.ts +10 -0
  6. package/api/setQuoteTemplateExpirationDate/setQuoteTemplateExpirationDate.d.ts +8 -0
  7. package/api.js +5 -5
  8. package/api.js.map +1 -1
  9. package/chunks/AttachedFilesList.js +1 -1
  10. package/chunks/CheckWithCircle.js +1 -1
  11. package/chunks/ChevronDown.js +1 -1
  12. package/chunks/ConfirmationModal.js +1 -1
  13. package/chunks/ItemsQuoted.js +1 -1
  14. package/chunks/ItemsQuotedTemplate.js +2 -2
  15. package/chunks/ItemsQuotedTemplate.js.map +1 -1
  16. package/chunks/LineItemNoteModal.js +2 -2
  17. package/chunks/LineItemNoteModal.js.map +1 -1
  18. package/chunks/NegotiableQuoteFragment.js +5 -1
  19. package/chunks/NegotiableQuoteFragment.js.map +1 -1
  20. package/chunks/NegotiableQuoteTemplateFragment.js +5 -1
  21. package/chunks/NegotiableQuoteTemplateFragment.js.map +1 -1
  22. package/chunks/OrderSummaryLine.js +1 -1
  23. package/chunks/QuoteCommentsList.js +1 -1
  24. package/chunks/QuoteCommentsList3.js +1 -1
  25. package/chunks/QuoteHistoryLog.js +1 -1
  26. package/chunks/QuoteHistoryLog3.js +1 -1
  27. package/chunks/QuoteTemplateCommentsList.js +2 -2
  28. package/chunks/QuoteTemplateCommentsList.js.map +1 -1
  29. package/chunks/QuoteTemplateHistoryLog.js +1 -1
  30. package/chunks/RenameQuoteModal.js +1 -1
  31. package/chunks/ShippingAddressDisplay.js +1 -1
  32. package/chunks/WarningFilled.js +1 -1
  33. package/chunks/addQuoteTemplateLineItemNote.js +1 -1
  34. package/chunks/dateUtils.js +2 -2
  35. package/chunks/dateUtils.js.map +1 -1
  36. package/chunks/duplicateNegotiableQuote.js +1 -1
  37. package/chunks/generateQuoteFromTemplate.js +1 -1
  38. package/chunks/getQuoteTemplates.js +1 -1
  39. package/chunks/negotiableQuotes.js +1 -1
  40. package/chunks/openQuoteTemplate.js +23 -12
  41. package/chunks/openQuoteTemplate.js.map +1 -1
  42. package/chunks/requestNegotiableQuote.js +1 -1
  43. package/chunks/setLineItemNote.js +1 -1
  44. package/chunks/state.js +1 -1
  45. package/chunks/transform-quote-template.js +1 -1
  46. package/chunks/transform-quote.js +2 -2
  47. package/chunks/transform-quote.js.map +1 -1
  48. package/chunks/uploadFile.js +1 -1
  49. package/components/ExpirationDateModal/ExpirationDateModal.d.ts +16 -0
  50. package/components/ExpirationDateModal/index.d.ts +11 -0
  51. package/components/ManageNegotiableQuoteTemplate/ManageNegotiableQuoteTemplate.d.ts +2 -0
  52. package/components/index.d.ts +1 -0
  53. package/containers/ItemsQuoted.js +1 -1
  54. package/containers/ItemsQuotedTemplate.js +1 -1
  55. package/containers/ManageNegotiableQuote.js +1 -1
  56. package/containers/ManageNegotiableQuoteTemplate/ManageNegotiableQuoteTemplate.d.ts +19 -1
  57. package/containers/ManageNegotiableQuoteTemplate.js +3 -3
  58. package/containers/ManageNegotiableQuoteTemplate.js.map +1 -1
  59. package/containers/OrderSummary.js +1 -1
  60. package/containers/OrderSummaryLine.js +1 -1
  61. package/containers/QuoteCommentsList.js +1 -1
  62. package/containers/QuoteHistoryLog.js +1 -1
  63. package/containers/QuoteSummaryList.js +1 -1
  64. package/containers/QuoteTemplateCommentsList.js +1 -1
  65. package/containers/QuoteTemplateHistoryLog.js +1 -1
  66. package/containers/QuoteTemplatesListTable.js +1 -1
  67. package/containers/QuotesListTable.js +1 -1
  68. package/containers/RequestNegotiableQuoteForm.js +1 -1
  69. package/containers/ShippingAddressDisplay.js +1 -1
  70. package/data/models/negotiable-quote-model.d.ts +4 -0
  71. package/data/transforms/__fixtures__/negotiableQuoteData.d.ts +16 -0
  72. package/data/transforms/__fixtures__/negotiableQuoteTemplateData.d.ts +60 -0
  73. package/hooks/useExpirationDate.d.ts +64 -0
  74. package/hooks/useItemsQuotedTemplate.d.ts +1 -0
  75. package/i18n/en_US.json.d.ts +12 -0
  76. package/package.json +1 -1
  77. package/render.js +4 -3
  78. package/render.js.map +1 -1
@@ -1,6 +1,6 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
- import{jsx as a,jsxs as p,Fragment as fe}from"@dropins/tools/preact-jsx-runtime.js";import{useState as l,useEffect as ne,useCallback as s,useMemo as h,useRef as Sa,createPortal as x}from"@dropins/tools/preact-compat.js";import{classes as d,VComponent as I,Slot as D}from"@dropins/tools/lib.js";import{f as Oe}from"../chunks/dateUtils.js";import{events as Da}from"@dropins/tools/event-bus.js";import{Skeleton as La,SkeletonRow as W,InLineAlert as L,Modal as Ea,Input as ge,Button as k,TextArea as Ia,Icon as ee}from"@dropins/tools/components.js";import{N as Ge}from"../chunks/transform-quote-template.js";import{S as wa,A as ka,T as Ha,R as Ba}from"../chunks/RenameQuoteModal.js";/* empty css */import"@dropins/tools/preact.js";import"@dropins/tools/preact-hooks.js";import{C as ae}from"../chunks/ConfirmationModal.js";/* empty css *//* empty css */import{S as U}from"../chunks/WarningFilled.js";import{useText as be}from"@dropins/tools/i18n.js";import"../chunks/state.js";import{d as Fa,c as Aa,s as xa,a as Wa,o as Ua}from"../chunks/openQuoteTemplate.js";import{g as Oa}from"../chunks/generateQuoteFromTemplate.js";import{S as Ga}from"../chunks/ShippingAddressDisplay.js";import{I as $a}from"../chunks/ItemsQuotedTemplate.js";import{Q as za}from"../chunks/QuoteTemplateCommentsList.js";import{Q as Pa}from"../chunks/QuoteTemplateHistoryLog.js";import{S as pe}from"../chunks/CheckWithCircle.js";import"../chunks/transform-quote.js";import"@dropins/tools/fetch-graphql.js";import"../chunks/NegotiableQuoteTemplateFragment.js";import"../chunks/LineItemNoteModal.js";import"../chunks/addQuoteTemplateLineItemNote.js";import"../chunks/QuoteCommentsList.js";import"../chunks/QuoteHistoryLog.js";const ja=({className:n,loading:u,templateName:c,templateStatus:q,banner:e,details:N,actionBar:Q,referenceDocuments:b,itemsTable:M,shippingInformationTitle:m,shippingInformation:r,commentsTitle:v,comments:g,footer:T,...y})=>u?a(Va,{}):p("div",{...y,className:d(["quote-management-manage-negotiable-quote-template",n]),children:[p("div",{className:d(["quote-management-manage-negotiable-quote-template__header"]),children:[c&&a(I,{node:c,className:d(["quote-management-manage-negotiable-quote-template__template-name"])}),q&&a(I,{node:q,className:d(["quote-management-manage-negotiable-quote-template__template-status"])})]}),e&&a(I,{node:e,className:d(["quote-management-manage-negotiable-quote-template__banner"])}),N&&a(I,{node:N,className:d(["quote-management-manage-negotiable-quote-template__details"])}),Q&&a(I,{node:Q,className:d(["quote-management-manage-negotiable-quote-template__action-bar"])}),b&&a("div",{"data-testid":"reference-documents-container",className:d(["quote-management-manage-negotiable-quote-template__reference-documents-container"]),children:a(I,{node:b,className:d(["quote-management-manage-negotiable-quote-template__reference-documents"])})}),M&&a(I,{node:M,className:d(["quote-management-manage-negotiable-quote-template__items-table"])}),p("div",{"data-testid":"template-shipping-information-container",className:d(["quote-management-manage-negotiable-quote-template__shipping-information-container"]),children:[m&&a(I,{node:m,className:d(["quote-management-manage-negotiable-quote-template__shipping-information-title"])}),r&&a(I,{node:r,className:d(["quote-management-manage-negotiable-quote-template__shipping-information"])})]}),p("div",{"data-testid":"comments-container",className:d(["quote-management-manage-negotiable-quote-template__comments-container"]),children:[v&&a(I,{node:v,className:d(["quote-management-manage-negotiable-quote-template__comments-title"])}),g&&a(I,{node:g,className:d(["quote-management-manage-negotiable-quote-template__comments"])})]}),T&&a(I,{node:T,className:d(["quote-management-manage-negotiable-quote-template__footer"])})]}),Va=()=>p(La,{"data-testid":"manage-negotiable-quote-template-skeleton",children:[a(W,{variant:"heading",fullWidth:!0,size:"large"}),a(W,{variant:"row",fullWidth:!1,size:"small"}),a(W,{variant:"row",fullWidth:!1,size:"small"}),a(W,{variant:"row",fullWidth:!0}),a(W,{variant:"row",fullWidth:!0,size:"xlarge",lines:2}),a(W,{variant:"row",fullWidth:!1,size:"small"})]}),Ja=({className:n,open:u,document:c,errorMessage:q,errorBanner:e,successBanner:N,showCloseButton:Q=!0,isSubmitting:b=!1,onSave:M,onClose:m})=>{const[r,v]=l(""),[g,T]=l(""),[y,w]=l(""),[_,R]=l({}),C=be({title:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.title",documentNameLabel:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.documentNameLabel",documentIdentifierLabel:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.documentIdentifierLabel",referenceUrlLabel:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.referenceUrlLabel",addButton:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.addButton",updateButton:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.updateButton",cancelButton:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.cancelButton",documentNameRequired:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.documentNameRequired",documentIdentifierRequired:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.documentIdentifierRequired",referenceUrlRequired:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.referenceUrlRequired",invalidUrl:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.invalidUrl",errorHeading:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.errorHeading"}),H=e||(q?a(L,{type:"error",variant:"primary",icon:a(U,{}),heading:C.errorHeading,description:q,"data-testid":"reference-document-form-modal-error-banner-inline"}):null),A=!!c;ne(()=>{u&&(c?(v(c.name||""),T(c.identifier||""),w(c.url||"")):(v(""),T(""),w("")),R({}))},[u,c]);const S=s(f=>{if(!f.trim())return!1;try{return new URL(f),!0}catch{return!1}},[]),te=s(()=>{const f={};if(r.trim()||(f.documentName=C.documentNameRequired),y.trim()?S(y.trim())||(f.referenceUrl=C.invalidUrl):f.referenceUrl=C.referenceUrlRequired,g.trim()||(f.documentIdentifier=C.documentIdentifierRequired),Object.keys(f).length>0){R(f);return}M({uid:c==null?void 0:c.uid,name:r.trim(),identifier:g.trim(),url:y.trim()})},[r,g,y,c,C,S,M]),B=s(()=>{v(""),T(""),w(""),R({}),m==null||m()},[m]);return u?p(Ea,{open:u,size:"medium",title:a(fe,{children:C.title}),onClose:B,clickToDismiss:!0,escapeToDismiss:!0,showCloseButton:Q,className:d(["quote-management-reference-document-form-modal",n]),"data-testid":"reference-document-form-modal",children:[H&&a("div",{className:d(["quote-management-reference-document-form-modal__error-banner"]),"data-testid":"reference-document-form-modal-error-banner",children:H}),N&&a("div",{className:d(["quote-management-reference-document-form-modal__success-banner"]),"data-testid":"reference-document-form-modal-success-banner",children:N}),p("div",{className:d(["quote-management-reference-document-form-modal__content"]),children:[p("div",{children:[a(ge,{name:"documentName",type:"text",value:r,onInput:f=>{v(f.target.value),R({..._,documentName:void 0})},floatingLabel:C.documentNameLabel,required:!0,error:!!_.documentName,disabled:b,"data-testid":"reference-document-name-input"}),_.documentName&&a("span",{className:d(["quote-management-reference-document-form-modal__error-text"]),"data-testid":"reference-document-name-error",children:_.documentName})]}),p("div",{children:[a(ge,{name:"documentIdentifier",type:"text",value:g,onInput:f=>{T(f.target.value),R({..._,documentIdentifier:void 0})},floatingLabel:C.documentIdentifierLabel,error:!!_.documentIdentifier,disabled:b,"data-testid":"reference-document-identifier-input"}),_.documentIdentifier&&a("span",{className:d(["quote-management-reference-document-form-modal__error-text"]),"data-testid":"reference-document-identifier-error",children:_.documentIdentifier})]}),p("div",{children:[a(ge,{name:"referenceUrl",type:"url",value:y,onInput:f=>{w(f.target.value),R({..._,referenceUrl:void 0})},floatingLabel:C.referenceUrlLabel,required:!0,error:!!_.referenceUrl,disabled:b,"data-testid":"reference-document-url-input"}),_.referenceUrl&&a("span",{className:d(["quote-management-reference-document-form-modal__error-text"]),"data-testid":"reference-document-url-error",children:_.referenceUrl})]})]}),p("div",{className:d(["quote-management-reference-document-form-modal__actions"]),children:[a(k,{variant:"secondary",size:"medium",onClick:B,disabled:b,className:d(["quote-management-reference-document-form-modal__cancel-button"]),"data-testid":"reference-document-form-cancel-button",children:C.cancelButton}),a(k,{variant:"primary",size:"medium",onClick:te,disabled:b,className:d(["quote-management-reference-document-form-modal__save-button"]),"data-testid":"reference-document-form-save-button",children:A?C.updateButton:C.addButton})]})]}):null},Ka=({className:n,documents:u,isEditable:c=!1,onAdd:q,onEdit:e,onRemove:N,...Q})=>{const b=be({add:"NegotiableQuoteTemplate.Manage.referenceDocuments.add",edit:"NegotiableQuoteTemplate.Manage.referenceDocuments.edit",remove:"NegotiableQuoteTemplate.Manage.referenceDocuments.remove",noReferenceDocuments:"NegotiableQuoteTemplate.Manage.referenceDocuments.noReferenceDocuments"}),M=r=>r.identifier?`${r.name}, ${r.identifier}`:`${r.name} ${r.url}`,m=(r,v)=>{r.preventDefault(),window.open(v,"_blank","noopener,noreferrer")};return a("div",{className:d(["quote-management-reference-documents-list",n]),"data-testid":"reference-documents-list",...Q,children:p("div",{className:"quote-management-reference-documents-list__content",children:[u.map(r=>p("div",{className:"quote-management-reference-documents-list__document","data-testid":`reference-document-${r.uid||r.url}`,children:[a("a",{href:r.url,onClick:v=>m(v,r.url),className:"quote-management-reference-documents-list__document-link",target:"_blank",rel:"noopener noreferrer","data-testid":`reference-document-link-${r.uid||r.url}`,children:M(r)}),c&&p("div",{className:"quote-management-reference-documents-list__document-actions",children:[a(k,{variant:"tertiary",onClick:()=>e==null?void 0:e(r),className:"quote-management-reference-documents-list__edit-button","data-testid":`reference-document-edit-${r.uid||r.url}`,children:b.edit}),a("span",{className:"quote-management-reference-documents-list__separator",children:"|"}),a(k,{variant:"tertiary",onClick:()=>N==null?void 0:N(r),className:"quote-management-reference-documents-list__remove-button","data-testid":`reference-document-remove-${r.uid||r.url}`,children:b.remove})]})]},r.uid||r.url)),c&&p(k,{variant:"tertiary",onClick:q,className:"quote-management-reference-documents-list__add-button","data-testid":"reference-documents-add-button",children:["+ ",b.add]}),u.length===0&&!c&&a("div",{className:"quote-management-reference-documents-list__empty",children:b.noReferenceDocuments})]})})},Xa=n=>{const{templateReferenceDocuments:u,localReferenceDocuments:c}=n,q=s(m=>{if(u)return u.find(r=>m.uid&&r.uid?r.uid===m.uid:r.url===m.url)},[u]),e=s(m=>q(m)!==void 0,[q]),N=s((m,r)=>m.name!==r.name||m.identifier!==r.identifier||m.url!==r.url,[]),Q=s(()=>u?c.filter(m=>!u.some(r=>m.uid&&r.uid?r.uid===m.uid:r.url===m.url)):c,[u,c]),b=s(()=>c.map(m=>({uid:m.uid,name:m.name,identifier:m.identifier,url:m.url})),[c]),M=h(()=>u?c.some(g=>q(g)===void 0)||u.some(g=>!c.some(T=>T.uid&&g.uid?T.uid===g.uid:T.url===g.url))?!0:c.some(g=>{const T=q(g);return T?N(g,T):!1}):c.length>0,[u,c,q,N]);return{isDocumentInTemplateData:e,getNewDocuments:Q,getReferenceDocumentLinks:b,hasUnsavedChanges:M}},Ya=(n={})=>{const{initialTemplateName:u,templateNameRequiredErrorMessage:c="Template name is required"}=n,[q,e]=l(!1),[N,Q]=l(""),[b,M]=l(""),[m,r]=l(""),[v,g]=l(""),[T,y]=l(""),w=s(S=>{Q(S||u||""),M(""),r(""),g(""),y(""),e(!0)},[u]),_=s(()=>{e(!1),Q(""),M(""),r(""),g(""),y("")},[]),R=s(S=>{Q(S),S.trim()&&g("")},[]),C=s(S=>{M(S)},[]),H=s(()=>N.trim()?(r(""),g(""),e(!1),!0):(g(c),!1),[N,c]),A=s(()=>{Q(""),M(""),r(""),g(""),y("")},[]);return{isRenameModalOpen:q,renameTemplateName:N,renameReason:b,renameError:m,renameTemplateNameError:v,renameSuccess:T,handleRenameClick:w,handleRenameClose:_,handleRenameTemplateNameChange:R,handleRenameReasonChange:C,handleRenameSave:H,resetRenameState:A}},wn=({slots:n,onActionsButtonClick:u,onSendForReview:c,...q})=>{var Ue;const[e,N]=l(void 0),[Q,b]=l(!0),[M,m]=l(""),[r,v]=l(!1),[g,T]=l(!1),[y,w]=l(null),[_,R]=l(!1),[C,H]=l(!1),[A,S]=l(null),[te,B]=l(!1),[f,O]=l([]),[Me,P]=l(!1),[j,V]=l(void 0),[$e,J]=l(null),[he,Te]=l(!1),[Ne,Qe]=l(!1),[ve,K]=l(""),[Ce,X]=l(""),[qe,re]=l(!1),[_e,ye]=l(!1),[Re,G]=l(""),[Se,Y]=l(""),De=Sa(!1),{getReferenceDocumentLinks:Le,hasUnsavedChanges:Ee}=Xa({templateReferenceDocuments:e==null?void 0:e.referenceDocuments,localReferenceDocuments:f}),t=be({createdLabel:"NegotiableQuoteTemplate.Manage.createdLabel",salesRepLabel:"NegotiableQuoteTemplate.Manage.salesRepLabel",expiresLabel:"NegotiableQuoteTemplate.Manage.expiresLabel",templateIdLabel:"NegotiableQuoteTemplate.Manage.templateIdLabel",actionsLabel:"NegotiableQuoteTemplate.Manage.actionsLabel",referenceDocumentsTitle:"NegotiableQuoteTemplate.Manage.referenceDocuments.title",commentsTitle:"NegotiableQuoteTemplate.Manage.comments.title",historyLogTitle:"NegotiableQuoteTemplate.Manage.historyLog.title",itemsQuotedTab:"NegotiableQuoteTemplate.Manage.tabs.itemsQuoted",commentsTab:"NegotiableQuoteTemplate.Manage.tabs.comments",historyLogTab:"NegotiableQuoteTemplate.Manage.tabs.historyLog",templateCommentsPlaceholder:"NegotiableQuoteTemplate.Manage.templateComments.placeholder",sendForReview:"NegotiableQuoteTemplate.Manage.actionButtons.sendForReview",delete:"NegotiableQuoteTemplate.Manage.actionButtons.delete",cancel:"NegotiableQuoteTemplate.Manage.actionButtons.cancel",confirmationModalDeleteTitle:"NegotiableQuoteTemplate.Manage.confirmationModal.delete.title",confirmationModalDeleteMessage:"NegotiableQuoteTemplate.Manage.confirmationModal.delete.message",confirmationModalDeleteConfirm:"NegotiableQuoteTemplate.Manage.confirmationModal.delete.confirm",confirmationModalDeleteErrorHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.delete.errorHeading",confirmationModalDeleteErrorFallback:"NegotiableQuoteTemplate.Manage.confirmationModal.delete.errorFallback",confirmationModalDeleteSuccessHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.delete.successHeading",confirmationModalDeleteSuccessDescription:"NegotiableQuoteTemplate.Manage.confirmationModal.delete.successDescription",confirmationModalCancelTitle:"NegotiableQuoteTemplate.Manage.confirmationModal.cancelTemplate.title",confirmationModalCancelMessage:"NegotiableQuoteTemplate.Manage.confirmationModal.cancelTemplate.message",confirmationModalCancelConfirm:"NegotiableQuoteTemplate.Manage.confirmationModal.cancelTemplate.confirm",confirmationModalCancelErrorHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.cancelTemplate.errorHeading",confirmationModalCancelErrorFallback:"NegotiableQuoteTemplate.Manage.confirmationModal.cancelTemplate.errorFallback",confirmationModalCancelSuccessHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.cancelTemplate.successHeading",confirmationModalCancelSuccessDescription:"NegotiableQuoteTemplate.Manage.confirmationModal.cancelTemplate.successDescription",confirmationModalCancel:"NegotiableQuoteTemplate.Manage.confirmationModal.cancel",accept:"NegotiableQuoteTemplate.Manage.actionButtons.accept",generateQuote:"NegotiableQuoteTemplate.Manage.actionButtons.generateQuote",generateQuoteModalTitle:"NegotiableQuoteTemplate.Manage.actionButtons.generateQuote",generateQuoteModalMessage:"NegotiableQuoteTemplate.Manage.confirmationModal.generateQuote.message",generateQuoteModalCancel:"NegotiableQuoteTemplate.Manage.confirmationModal.cancel",generateQuoteModalConfirm:"NegotiableQuoteTemplate.Manage.confirmationModal.generateQuote.confirm",generateQuoteModalConfirmLoading:"NegotiableQuoteTemplate.Manage.confirmationModal.generateQuote.confirmLoading",generateQuoteModalSuccessHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.generateQuote.successHeading",generateQuoteSuccessMessage:"NegotiableQuoteTemplate.Manage.confirmationModal.generateQuote.successDescription",generateQuoteModalErrorHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.generateQuote.errorHeading",generateQuoteErrorFallback:"NegotiableQuoteTemplate.Manage.confirmationModal.generateQuote.errorFallback",acceptModalTitle:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.title",acceptModalMessage:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.message",acceptModalCancel:"NegotiableQuoteTemplate.Manage.confirmationModal.cancel",acceptModalConfirm:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.confirm",acceptModalConfirmLoading:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.confirmLoading",acceptModalSuccessHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.successHeading",acceptSuccessMessage:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.successDescription",acceptModalErrorHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.errorHeading",acceptErrorFallback:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.errorFallback",documentDuplicateUidError:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.duplicateUidError",renameTitle:"NegotiableQuoteTemplate.Manage.rename.title",renameTemplateNameLabel:"NegotiableQuoteTemplate.Manage.rename.templateNameLabel",renameReasonLabel:"NegotiableQuoteTemplate.Manage.rename.reasonLabel",renameButton:"NegotiableQuoteTemplate.Manage.rename.renameButton",renameCancelButton:"NegotiableQuoteTemplate.Manage.rename.cancelButton",renameErrorHeading:"NegotiableQuoteTemplate.Manage.rename.errorHeading",renameTemplateNameRequired:"NegotiableQuoteTemplate.Manage.rename.templateNameRequired",renameErrorDefault:"NegotiableQuoteTemplate.Manage.rename.errorDefault",renameSuccessHeading:"NegotiableQuoteTemplate.Manage.rename.successHeading",renameSuccessMessage:"NegotiableQuoteTemplate.Manage.rename.successMessage",shippingInformationTitle:"NegotiableQuoteTemplate.Manage.shippingInformation.title",unsavedChangesWarningHeading:"NegotiableQuoteTemplate.Manage.unsavedChangesWarningHeading",unsavedChangesWarningMessage:"NegotiableQuoteTemplate.Manage.unsavedChangesWarningMessage",shippingAddressWarningHeading:"NegotiableQuoteTemplate.Manage.shippingAddressWarningHeading",shippingAddressWarningMessage:"NegotiableQuoteTemplate.Manage.shippingAddressWarningMessage"}),{isRenameModalOpen:Ie,renameTemplateName:E,renameReason:$,renameError:oe,renameTemplateNameError:ze,renameSuccess:ie,handleRenameClick:we,handleRenameClose:Pe,handleRenameTemplateNameChange:je,handleRenameReasonChange:Ve,handleRenameSave:Je,resetRenameState:ke}=Ya({initialTemplateName:e==null?void 0:e.name,templateNameRequiredErrorMessage:t.renameTemplateNameRequired}),He=h(()=>E!==""&&E!==(e==null?void 0:e.name),[E,e==null?void 0:e.name]),z=h(()=>Ee||He,[Ee,He]);ne(()=>{const o=Da.on("quote-management/quote-template-data",i=>{i.quoteTemplate&&(N(i.quoteTemplate),b(!1),m(""),v(!1),O(i.quoteTemplate.referenceDocuments||[]),ke())},{eager:!0});return()=>o==null?void 0:o.off()},[ke]),ne(()=>{e!=null&&e.referenceDocuments&&O(e.referenceDocuments)},[e==null?void 0:e.referenceDocuments]),ne(()=>{e&&e.status===Ge.UPDATED&&!De.current&&(De.current=!0,(async()=>{try{await Ua({templateId:e.id})}catch(i){console.error("Failed to auto-open quote template:",i)}})())},[e]);const Ke=s(()=>{T(!1),w(null),R(!1)},[]),Xe=s(async()=>{if(e!=null&&e.id){w(null),R(!1);try{await Fa({templateId:e.id}),R(!0),setTimeout(()=>{T(!1),R(!1)},2e3)}catch(o){const i=o.message||t.confirmationModalDeleteErrorFallback;w(i)}}},[e,t.confirmationModalDeleteErrorFallback]),Ye=s(()=>{w(null)},[]),Ze=s(()=>{R(!1)},[]),ea=s(()=>{H(!1),S(null),B(!1)},[]),aa=s(async()=>{if(e!=null&&e.id){S(null),B(!1);try{await Aa({templateId:e.id}),B(!0),setTimeout(()=>{H(!1),B(!1)},2e3)}catch(o){const i=o.message||t.confirmationModalCancelErrorFallback;S(i)}}},[e,t.confirmationModalCancelErrorFallback]),na=s(()=>{S(null)},[]),ta=s(()=>{B(!1)},[]),ce=s(async()=>{const o=Le(),i=[$.trim(),M.trim()].filter(Boolean).join(`
3
+ import{jsxs as h,jsx as a,Fragment as fe}from"@dropins/tools/preact-jsx-runtime.js";import{useState as m,useEffect as pe,useCallback as s,useMemo as N,useRef as rt,createPortal as G}from"@dropins/tools/preact-compat.js";import{classes as d,VComponent as L,Slot as E}from"@dropins/tools/lib.js";import{f as ca}from"../chunks/dateUtils.js";import{events as ot}from"@dropins/tools/event-bus.js";import{Modal as sa,InputDate as it,Button as H,Skeleton as ct,SkeletonRow as j,InLineAlert as S,Input as Le,TextArea as lt,InputFile as mt,Icon as de}from"@dropins/tools/components.js";import{N as la}from"../chunks/transform-quote-template.js";import{S as ma,A as st,T as dt,R as ut}from"../chunks/RenameQuoteModal.js";import{v as gt,f as pt,a as ft,S as bt,A as ht}from"../chunks/AttachedFilesList.js";/* empty css */import"@dropins/tools/preact.js";import"@dropins/tools/preact-hooks.js";import{C as ue}from"../chunks/ConfirmationModal.js";/* empty css *//* empty css */import{useText as be}from"@dropins/tools/i18n.js";import{S as P}from"../chunks/WarningFilled.js";import"../chunks/state.js";import{u as Mt}from"../chunks/uploadFile.js";import{s as Nt,d as Tt,c as vt,a as Qt,b as qt,o as Ct}from"../chunks/openQuoteTemplate.js";import{g as xt}from"../chunks/generateQuoteFromTemplate.js";import{S as _t}from"../chunks/ShippingAddressDisplay.js";import{I as Dt}from"../chunks/ItemsQuotedTemplate.js";import{Q as Et}from"../chunks/QuoteTemplateCommentsList.js";import{Q as yt}from"../chunks/QuoteTemplateHistoryLog.js";import{S as ge}from"../chunks/CheckWithCircle.js";import"../chunks/transform-quote.js";import"@dropins/tools/fetch-graphql.js";import"../chunks/NegotiableQuoteTemplateFragment.js";import"../chunks/LineItemNoteModal.js";import"../chunks/addQuoteTemplateLineItemNote.js";import"../chunks/QuoteCommentsList.js";import"../chunks/QuoteHistoryLog.js";const St=({className:t,open:g,expirationDate:l,expirationDateError:T,errorBanner:v,successBanner:f,showCloseButton:Q=!0,onExpirationDateChange:e,onSave:x,onClose:c})=>{const o=be({title:"NegotiableQuoteTemplate.Manage.expirationDate.title",expirationDateLabel:"NegotiableQuoteTemplate.Manage.expirationDate.expirationDateLabel",saveButton:"NegotiableQuoteTemplate.Manage.expirationDate.saveButton",cancelButton:"NegotiableQuoteTemplate.Manage.expirationDate.cancelButton"});return g?h(sa,{open:g,size:"medium",title:a(fe,{children:o.title}),onClose:c,clickToDismiss:!0,escapeToDismiss:!0,showCloseButton:Q,className:d(["quote-management-expiration-date-modal",t]),"data-testid":"expiration-date-modal",children:[v&&a("div",{className:d(["quote-management-expiration-date-modal__error-banner"]),"data-testid":"expiration-date-modal-error-banner",children:v}),f&&a("div",{className:d(["quote-management-expiration-date-modal__success-banner"]),"data-testid":"expiration-date-modal-success-banner",children:f}),a("div",{className:d(["quote-management-expiration-date-modal__content"]),children:a("div",{children:a(it,{name:"expirationDate",value:l,onChange:p=>e(p.target.value),floatingLabel:o.expirationDateLabel,required:!0,error:T,"data-testid":"expiration-date-input"})})}),h("div",{className:d(["quote-management-expiration-date-modal__actions"]),children:[a(H,{variant:"secondary",size:"medium",onClick:c,className:d(["quote-management-expiration-date-modal__cancel-button"]),children:o.cancelButton}),a(H,{variant:"primary",size:"medium",onClick:x,className:d(["quote-management-expiration-date-modal__save-button"]),children:o.saveButton})]})]}):null},Rt=({className:t,loading:g,templateName:l,templateStatus:T,banner:v,details:f,actionBar:Q,referenceDocuments:e,itemsTable:x,shippingInformationTitle:c,shippingInformation:o,commentsTitle:p,comments:M,attachFilesField:u,attachedFilesList:D,footer:R,...q})=>g?a(Lt,{}):h("div",{...q,className:d(["quote-management-manage-negotiable-quote-template",t]),children:[h("div",{className:d(["quote-management-manage-negotiable-quote-template__header"]),children:[l&&a(L,{node:l,className:d(["quote-management-manage-negotiable-quote-template__template-name"])}),T&&a(L,{node:T,className:d(["quote-management-manage-negotiable-quote-template__template-status"])})]}),v&&a(L,{node:v,className:d(["quote-management-manage-negotiable-quote-template__banner"])}),f&&a(L,{node:f,className:d(["quote-management-manage-negotiable-quote-template__details"])}),Q&&a(L,{node:Q,className:d(["quote-management-manage-negotiable-quote-template__action-bar"])}),e&&a("div",{"data-testid":"reference-documents-container",className:d(["quote-management-manage-negotiable-quote-template__reference-documents-container"]),children:a(L,{node:e,className:d(["quote-management-manage-negotiable-quote-template__reference-documents"])})}),x&&a(L,{node:x,className:d(["quote-management-manage-negotiable-quote-template__items-table"])}),h("div",{"data-testid":"template-shipping-information-container",className:d(["quote-management-manage-negotiable-quote-template__shipping-information-container"]),children:[c&&a(L,{node:c,className:d(["quote-management-manage-negotiable-quote-template__shipping-information-title"])}),o&&a(L,{node:o,className:d(["quote-management-manage-negotiable-quote-template__shipping-information"])})]}),h("div",{"data-testid":"comments-container",className:d(["quote-management-manage-negotiable-quote-template__comments-container"]),children:[p&&a(L,{node:p,className:d(["quote-management-manage-negotiable-quote-template__comments-title"])}),M&&a(L,{node:M,className:d(["quote-management-manage-negotiable-quote-template__comments"])}),u&&a(L,{node:u,className:d(["quote-management-manage-negotiable-quote-template__attach-files-field"])}),D&&a(L,{node:D,className:d(["quote-management-manage-negotiable-quote-template__attached-files-list"])})]}),R&&a(L,{node:R,className:d(["quote-management-manage-negotiable-quote-template__footer"])})]}),Lt=()=>h(ct,{"data-testid":"manage-negotiable-quote-template-skeleton",children:[a(j,{variant:"heading",fullWidth:!0,size:"large"}),a(j,{variant:"row",fullWidth:!1,size:"small"}),a(j,{variant:"row",fullWidth:!1,size:"small"}),a(j,{variant:"row",fullWidth:!0}),a(j,{variant:"row",fullWidth:!0,size:"xlarge",lines:2}),a(j,{variant:"row",fullWidth:!1,size:"small"})]}),Ft=({className:t,open:g,document:l,errorMessage:T,errorBanner:v,successBanner:f,showCloseButton:Q=!0,isSubmitting:e=!1,onSave:x,onClose:c})=>{const[o,p]=m(""),[M,u]=m(""),[D,R]=m(""),[q,F]=m({}),C=be({title:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.title",documentNameLabel:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.documentNameLabel",documentIdentifierLabel:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.documentIdentifierLabel",referenceUrlLabel:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.referenceUrlLabel",addButton:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.addButton",updateButton:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.updateButton",cancelButton:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.cancelButton",documentNameRequired:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.documentNameRequired",documentIdentifierRequired:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.documentIdentifierRequired",referenceUrlRequired:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.referenceUrlRequired",invalidUrl:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.invalidUrl",errorHeading:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.errorHeading"}),k=v||(T?a(S,{type:"error",variant:"primary",icon:a(P,{}),heading:C.errorHeading,description:T,"data-testid":"reference-document-form-modal-error-banner-inline"}):null),B=!!l;pe(()=>{g&&(l?(p(l.name||""),u(l.identifier||""),R(l.url||"")):(p(""),u(""),R("")),F({}))},[g,l]);const y=s(_=>{if(!_.trim())return!1;try{return new URL(_),!0}catch{return!1}},[]),U=s(()=>{const _={};if(o.trim()||(_.documentName=C.documentNameRequired),D.trim()?y(D.trim())||(_.referenceUrl=C.invalidUrl):_.referenceUrl=C.referenceUrlRequired,M.trim()||(_.documentIdentifier=C.documentIdentifierRequired),Object.keys(_).length>0){F(_);return}x({uid:l==null?void 0:l.uid,name:o.trim(),identifier:M.trim(),url:D.trim()})},[o,M,D,l,C,y,x]),W=s(()=>{p(""),u(""),R(""),F({}),c==null||c()},[c]);return g?h(sa,{open:g,size:"medium",title:a(fe,{children:C.title}),onClose:W,clickToDismiss:!0,escapeToDismiss:!0,showCloseButton:Q,className:d(["quote-management-reference-document-form-modal",t]),"data-testid":"reference-document-form-modal",children:[k&&a("div",{className:d(["quote-management-reference-document-form-modal__error-banner"]),"data-testid":"reference-document-form-modal-error-banner",children:k}),f&&a("div",{className:d(["quote-management-reference-document-form-modal__success-banner"]),"data-testid":"reference-document-form-modal-success-banner",children:f}),h("div",{className:d(["quote-management-reference-document-form-modal__content"]),children:[h("div",{children:[a(Le,{name:"documentName",type:"text",value:o,onInput:_=>{p(_.target.value),F({...q,documentName:void 0})},floatingLabel:C.documentNameLabel,required:!0,error:!!q.documentName,disabled:e,"data-testid":"reference-document-name-input"}),q.documentName&&a("span",{className:d(["quote-management-reference-document-form-modal__error-text"]),"data-testid":"reference-document-name-error",children:q.documentName})]}),h("div",{children:[a(Le,{name:"documentIdentifier",type:"text",value:M,onInput:_=>{u(_.target.value),F({...q,documentIdentifier:void 0})},floatingLabel:C.documentIdentifierLabel,error:!!q.documentIdentifier,disabled:e,"data-testid":"reference-document-identifier-input"}),q.documentIdentifier&&a("span",{className:d(["quote-management-reference-document-form-modal__error-text"]),"data-testid":"reference-document-identifier-error",children:q.documentIdentifier})]}),h("div",{children:[a(Le,{name:"referenceUrl",type:"url",value:D,onInput:_=>{R(_.target.value),F({...q,referenceUrl:void 0})},floatingLabel:C.referenceUrlLabel,required:!0,error:!!q.referenceUrl,disabled:e,"data-testid":"reference-document-url-input"}),q.referenceUrl&&a("span",{className:d(["quote-management-reference-document-form-modal__error-text"]),"data-testid":"reference-document-url-error",children:q.referenceUrl})]})]}),h("div",{className:d(["quote-management-reference-document-form-modal__actions"]),children:[a(H,{variant:"secondary",size:"medium",onClick:W,disabled:e,className:d(["quote-management-reference-document-form-modal__cancel-button"]),"data-testid":"reference-document-form-cancel-button",children:C.cancelButton}),a(H,{variant:"primary",size:"medium",onClick:U,disabled:e,className:d(["quote-management-reference-document-form-modal__save-button"]),"data-testid":"reference-document-form-save-button",children:B?C.updateButton:C.addButton})]})]}):null},kt=({className:t,documents:g,isEditable:l=!1,onAdd:T,onEdit:v,onRemove:f,...Q})=>{const e=be({add:"NegotiableQuoteTemplate.Manage.referenceDocuments.add",edit:"NegotiableQuoteTemplate.Manage.referenceDocuments.edit",remove:"NegotiableQuoteTemplate.Manage.referenceDocuments.remove",noReferenceDocuments:"NegotiableQuoteTemplate.Manage.referenceDocuments.noReferenceDocuments"}),x=o=>o.identifier?`${o.name}, ${o.identifier}`:`${o.name} ${o.url}`,c=(o,p)=>{o.preventDefault(),window.open(p,"_blank","noopener,noreferrer")};return a("div",{className:d(["quote-management-reference-documents-list",t]),"data-testid":"reference-documents-list",...Q,children:h("div",{className:"quote-management-reference-documents-list__content",children:[g.map(o=>h("div",{className:"quote-management-reference-documents-list__document","data-testid":`reference-document-${o.uid||o.url}`,children:[a("a",{href:o.url,onClick:p=>c(p,o.url),className:"quote-management-reference-documents-list__document-link",target:"_blank",rel:"noopener noreferrer","data-testid":`reference-document-link-${o.uid||o.url}`,children:x(o)}),l&&h("div",{className:"quote-management-reference-documents-list__document-actions",children:[a(H,{variant:"tertiary",onClick:()=>v==null?void 0:v(o),className:"quote-management-reference-documents-list__edit-button","data-testid":`reference-document-edit-${o.uid||o.url}`,children:e.edit}),a("span",{className:"quote-management-reference-documents-list__separator",children:"|"}),a(H,{variant:"tertiary",onClick:()=>f==null?void 0:f(o),className:"quote-management-reference-documents-list__remove-button","data-testid":`reference-document-remove-${o.uid||o.url}`,children:e.remove})]})]},o.uid||o.url)),l&&h(H,{variant:"tertiary",onClick:T,className:"quote-management-reference-documents-list__add-button","data-testid":"reference-documents-add-button",children:["+ ",e.add]}),g.length===0&&!l&&a("div",{className:"quote-management-reference-documents-list__empty",children:e.noReferenceDocuments})]})})},It=t=>{const{templateReferenceDocuments:g,localReferenceDocuments:l}=t,T=s(c=>{if(g)return g.find(o=>c.uid&&o.uid?o.uid===c.uid:o.url===c.url)},[g]),v=s(c=>T(c)!==void 0,[T]),f=s((c,o)=>c.name!==o.name||c.identifier!==o.identifier||c.url!==o.url,[]),Q=s(()=>g?l.filter(c=>!g.some(o=>c.uid&&o.uid?o.uid===c.uid:o.url===c.url)):l,[g,l]),e=s(()=>l.map(c=>({uid:c.uid,name:c.name,identifier:c.identifier,url:c.url})),[l]),x=N(()=>g?l.some(M=>T(M)===void 0)||g.some(M=>!l.some(u=>u.uid&&M.uid?u.uid===M.uid:u.url===M.url))?!0:l.some(M=>{const u=T(M);return u?f(M,u):!1}):l.length>0,[g,l,T,f]);return{isDocumentInTemplateData:v,getNewDocuments:Q,getReferenceDocumentLinks:e,hasUnsavedChanges:x}},wt=(t={})=>{const{initialTemplateName:g,templateNameRequiredErrorMessage:l="Template name is required"}=t,[T,v]=m(!1),[f,Q]=m(""),[e,x]=m(""),[c,o]=m(""),[p,M]=m(""),[u,D]=m(""),R=s(y=>{Q(y||g||""),x(""),o(""),M(""),D(""),v(!0)},[g]),q=s(()=>{v(!1),Q(""),x(""),o(""),M(""),D("")},[]),F=s(y=>{Q(y),y.trim()&&M("")},[]),C=s(y=>{x(y)},[]),k=s(()=>f.trim()?(o(""),M(""),v(!1),!0):(M(l),!1),[f,l]),B=s(()=>{Q(""),x(""),o(""),M(""),D("")},[]);return{isRenameModalOpen:T,renameTemplateName:f,renameReason:e,renameError:c,renameTemplateNameError:p,renameSuccess:u,handleRenameClick:R,handleRenameClose:q,handleRenameTemplateNameChange:F,handleRenameReasonChange:C,handleRenameSave:k,resetRenameState:B}},Ht=(t={})=>{const{templateId:g,initialExpirationDate:l,expirationDateRequiredErrorMessage:T="Expiration date is required"}=t,[v,f]=m(!1),[Q,e]=m(""),[x,c]=m(""),[o,p]=m(""),[M,u]=m(""),D=s(k=>{e(k||l||""),c(""),p(""),u(""),f(!0)},[l]),R=s(()=>{f(!1),e(""),c(""),p(""),u("")},[]),q=s(k=>{e(k),k.trim()&&p("")},[]),F=s(async()=>{if(!Q.trim())return p(T),!1;if(!/^\d{4}-\d{2}-\d{2}$/.test(Q))return p("Please enter a valid date"),!1;const B=new Date(Q),y=new Date;if(y.setHours(0,0,0,0),B<y)return p("Expiration date must be in the future"),!1;if(!g)return c("Template ID is required"),!1;c(""),p("");try{return await Nt({templateId:g,expirationDate:Q}),f(!1),u("Expiration date saved successfully"),!0}catch(U){console.error("Failed to set expiration date:",U);const W=U instanceof Error?U.message:"Failed to set expiration date. Please try again.";return c(W),!1}},[Q,T,g]),C=s(()=>{e(""),c(""),p(""),u("")},[]);return{isExpirationModalOpen:v,expirationDate:Q,expirationError:x,expirationDateError:o,expirationSuccess:M,handleExpirationClick:D,handleExpirationClose:R,handleExpirationDateChange:q,handleExpirationSave:F,resetExpirationState:C}},Tn=({slots:t,onActionsButtonClick:g,onSendForReview:l,maxFiles:T,maxFileSize:v,acceptedFileTypes:f,...Q})=>{var ia;const[e,x]=m(void 0),[c,o]=m(!0),[p,M]=m(""),[u,D]=m(!1),[R,q]=m(!1),[F,C]=m(null),[k,B]=m(!1),[y,U]=m(!1),[W,_]=m(null),[da,K]=m(!1),[z,V]=m([]),[Fe,ee]=m(!1),[ae,te]=m(void 0),[ua,ne]=m(null),[ke,Ie]=m(!1),[we,He]=m(!1),[Be,re]=m(""),[Ae,oe]=m(""),[Ue,he]=m(!1),[We,ze]=m(!1),[Oe,J]=m(""),[$e,ie]=m(""),Ge=rt(!1),[I,X]=m([]),[ce,le]=m(void 0),{getReferenceDocumentLinks:Pe,hasUnsavedChanges:je}=It({templateReferenceDocuments:e==null?void 0:e.referenceDocuments,localReferenceDocuments:z}),n=be({createdLabel:"NegotiableQuoteTemplate.Manage.createdLabel",salesRepLabel:"NegotiableQuoteTemplate.Manage.salesRepLabel",expiresLabel:"NegotiableQuoteTemplate.Manage.expiresLabel",templateIdLabel:"NegotiableQuoteTemplate.Manage.templateIdLabel",actionsLabel:"NegotiableQuoteTemplate.Manage.actionsLabel",referenceDocumentsTitle:"NegotiableQuoteTemplate.Manage.referenceDocuments.title",commentsTitle:"NegotiableQuoteTemplate.Manage.comments.title",historyLogTitle:"NegotiableQuoteTemplate.Manage.historyLog.title",itemsQuotedTab:"NegotiableQuoteTemplate.Manage.tabs.itemsQuoted",commentsTab:"NegotiableQuoteTemplate.Manage.tabs.comments",historyLogTab:"NegotiableQuoteTemplate.Manage.tabs.historyLog",templateCommentsPlaceholder:"NegotiableQuoteTemplate.Manage.templateComments.placeholder",sendForReview:"NegotiableQuoteTemplate.Manage.actionButtons.sendForReview",delete:"NegotiableQuoteTemplate.Manage.actionButtons.delete",cancel:"NegotiableQuoteTemplate.Manage.actionButtons.cancel",attachFiles:"NegotiableQuote.Manage.attachFiles",fileUploadError:"NegotiableQuote.Manage.fileUploadError",maxFilesExceeded:"NegotiableQuote.Manage.maxFilesExceeded",maxFileSizeExceeded:"NegotiableQuote.Manage.maxFileSizeExceeded",invalidFileType:"NegotiableQuote.Manage.invalidFileType",confirmationModalDeleteTitle:"NegotiableQuoteTemplate.Manage.confirmationModal.delete.title",confirmationModalDeleteMessage:"NegotiableQuoteTemplate.Manage.confirmationModal.delete.message",confirmationModalDeleteConfirm:"NegotiableQuoteTemplate.Manage.confirmationModal.delete.confirm",confirmationModalDeleteErrorHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.delete.errorHeading",confirmationModalDeleteErrorFallback:"NegotiableQuoteTemplate.Manage.confirmationModal.delete.errorFallback",confirmationModalDeleteSuccessHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.delete.successHeading",confirmationModalDeleteSuccessDescription:"NegotiableQuoteTemplate.Manage.confirmationModal.delete.successDescription",confirmationModalCancelTitle:"NegotiableQuoteTemplate.Manage.confirmationModal.cancelTemplate.title",confirmationModalCancelMessage:"NegotiableQuoteTemplate.Manage.confirmationModal.cancelTemplate.message",confirmationModalCancelConfirm:"NegotiableQuoteTemplate.Manage.confirmationModal.cancelTemplate.confirm",confirmationModalCancelErrorHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.cancelTemplate.errorHeading",confirmationModalCancelErrorFallback:"NegotiableQuoteTemplate.Manage.confirmationModal.cancelTemplate.errorFallback",confirmationModalCancelSuccessHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.cancelTemplate.successHeading",confirmationModalCancelSuccessDescription:"NegotiableQuoteTemplate.Manage.confirmationModal.cancelTemplate.successDescription",confirmationModalCancel:"NegotiableQuoteTemplate.Manage.confirmationModal.cancel",accept:"NegotiableQuoteTemplate.Manage.actionButtons.accept",generateQuote:"NegotiableQuoteTemplate.Manage.actionButtons.generateQuote",generateQuoteModalTitle:"NegotiableQuoteTemplate.Manage.actionButtons.generateQuote",generateQuoteModalMessage:"NegotiableQuoteTemplate.Manage.confirmationModal.generateQuote.message",generateQuoteModalCancel:"NegotiableQuoteTemplate.Manage.confirmationModal.cancel",generateQuoteModalConfirm:"NegotiableQuoteTemplate.Manage.confirmationModal.generateQuote.confirm",generateQuoteModalConfirmLoading:"NegotiableQuoteTemplate.Manage.confirmationModal.generateQuote.confirmLoading",generateQuoteModalSuccessHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.generateQuote.successHeading",generateQuoteSuccessMessage:"NegotiableQuoteTemplate.Manage.confirmationModal.generateQuote.successDescription",generateQuoteModalErrorHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.generateQuote.errorHeading",generateQuoteErrorFallback:"NegotiableQuoteTemplate.Manage.confirmationModal.generateQuote.errorFallback",acceptModalTitle:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.title",acceptModalMessage:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.message",acceptModalCancel:"NegotiableQuoteTemplate.Manage.confirmationModal.cancel",acceptModalConfirm:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.confirm",acceptModalConfirmLoading:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.confirmLoading",acceptModalSuccessHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.successHeading",acceptSuccessMessage:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.successDescription",acceptModalErrorHeading:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.errorHeading",acceptErrorFallback:"NegotiableQuoteTemplate.Manage.confirmationModal.accept.errorFallback",documentDuplicateUidError:"NegotiableQuoteTemplate.Manage.referenceDocuments.form.duplicateUidError",renameTitle:"NegotiableQuoteTemplate.Manage.rename.title",renameTemplateNameLabel:"NegotiableQuoteTemplate.Manage.rename.templateNameLabel",renameReasonLabel:"NegotiableQuoteTemplate.Manage.rename.reasonLabel",renameButton:"NegotiableQuoteTemplate.Manage.rename.renameButton",renameCancelButton:"NegotiableQuoteTemplate.Manage.rename.cancelButton",renameErrorHeading:"NegotiableQuoteTemplate.Manage.rename.errorHeading",renameTemplateNameRequired:"NegotiableQuoteTemplate.Manage.rename.templateNameRequired",renameErrorDefault:"NegotiableQuoteTemplate.Manage.rename.errorDefault",renameSuccessHeading:"NegotiableQuoteTemplate.Manage.rename.successHeading",renameSuccessMessage:"NegotiableQuoteTemplate.Manage.rename.successMessage",expirationDateRequired:"NegotiableQuoteTemplate.Manage.expirationDate.expirationDateRequired",expirationDateErrorHeading:"NegotiableQuoteTemplate.Manage.expirationDate.errorHeading",expirationDateSuccessHeading:"NegotiableQuoteTemplate.Manage.expirationDate.successHeading",shippingInformationTitle:"NegotiableQuoteTemplate.Manage.shippingInformation.title",unsavedChangesWarningHeading:"NegotiableQuoteTemplate.Manage.unsavedChangesWarningHeading",unsavedChangesWarningMessage:"NegotiableQuoteTemplate.Manage.unsavedChangesWarningMessage",shippingAddressWarningHeading:"NegotiableQuoteTemplate.Manage.shippingAddressWarningHeading",shippingAddressWarningMessage:"NegotiableQuoteTemplate.Manage.shippingAddressWarningMessage"}),{isRenameModalOpen:me,renameTemplateName:w,renameReason:Y,renameError:Me,renameTemplateNameError:ga,renameSuccess:Ne,handleRenameClick:Ke,handleRenameClose:pa,handleRenameTemplateNameChange:fa,handleRenameReasonChange:ba,handleRenameSave:ha,resetRenameState:Ve}=wt({initialTemplateName:e==null?void 0:e.name,templateNameRequiredErrorMessage:n.renameTemplateNameRequired}),{isExpirationModalOpen:Je,expirationDate:Ma,expirationError:Te,expirationDateError:Na,expirationSuccess:ve,handleExpirationClick:Xe,handleExpirationClose:Ta,handleExpirationDateChange:va,handleExpirationSave:Qa,resetExpirationState:Ye}=Ht({templateId:e==null?void 0:e.id,initialExpirationDate:e==null?void 0:e.expirationDate,expirationDateRequiredErrorMessage:n.expirationDateRequired}),Ze=N(()=>me?!1:w!==""&&w!==(e==null?void 0:e.name),[w,e==null?void 0:e.name,me]),Z=N(()=>je||Ze,[je,Ze]),Qe=s(async r=>{if(T&&I.length+r.length>T){le(n.maxFilesExceeded.replace("{maxFiles}",String(T)));return}for(const b of r){if(v&&!gt(b.size,v)){le(n.maxFileSizeExceeded.replace("{maxSize}",pt(v)));return}if(f&&!ft(b.type,f)){le(n.invalidFileType);return}}le(void 0);const i=r.map(b=>({key:`temp-${Date.now()}-${Math.random()}-${b.name}`,name:b.name,size:b.size,status:"uploading"}));X(b=>[...b,...i]);for(let b=0;b<r.length;b++){const O=r[b],A=i[b].key;try{const Se=await Mt(O);X(Re=>Re.map($=>$.key===A?{...$,key:Se.key,status:"success"}:$))}catch(Se){X(Re=>Re.map($=>$.key===A?{...$,status:"error",error:Se.message}:$))}}},[T,v,f,I,n]),qe=s(r=>{X(i=>i.filter(b=>b.key!==r))},[]);pe(()=>{const r=ot.on("quote-management/quote-template-data",i=>{i.quoteTemplate&&(x(i.quoteTemplate),o(!1),M(""),D(!1),X([]),V(i.quoteTemplate.referenceDocuments||[]),Ve(),Ye())},{eager:!0});return()=>r==null?void 0:r.off()},[Ve,Ye]),pe(()=>{e!=null&&e.referenceDocuments&&V(e.referenceDocuments)},[e==null?void 0:e.referenceDocuments]),pe(()=>{e&&e.status===la.UPDATED&&!Ge.current&&(Ge.current=!0,(async()=>{try{await Ct({templateId:e.id})}catch(i){console.error("Failed to auto-open quote template:",i)}})())},[e]);const qa=s(()=>{q(!1),C(null),B(!1)},[]),Ca=s(async()=>{if(e!=null&&e.id){C(null),B(!1);try{await Tt({templateId:e.id}),B(!0),setTimeout(()=>{q(!1),B(!1)},2e3)}catch(r){const i=r.message||n.confirmationModalDeleteErrorFallback;C(i)}}},[e,n.confirmationModalDeleteErrorFallback]),xa=s(()=>{C(null)},[]),_a=s(()=>{B(!1)},[]),Da=s(()=>{U(!1),_(null),K(!1)},[]),Ea=s(async()=>{if(e!=null&&e.id){_(null),K(!1);try{await vt({templateId:e.id}),K(!0),setTimeout(()=>{U(!1),K(!1)},2e3)}catch(r){const i=r.message||n.confirmationModalCancelErrorFallback;_(i)}}},[e,n.confirmationModalCancelErrorFallback]),ya=s(()=>{_(null)},[]),Sa=s(()=>{K(!1)},[]),Ce=s(async()=>{const r=Pe(),i=I.filter(A=>A.status==="success"),b=[Y.trim(),p.trim()].filter(Boolean).join(`
4
4
 
5
- `).trim()||void 0,F=E&&E!==(e==null?void 0:e.name)?E:void 0;if(c){c({templateData:e,name:F,comment:i,referenceDocumentLinks:o});return}v(!0);try{await xa({templateId:e.id,name:F,comment:i,referenceDocumentLinks:o.length>0?o:void 0})}catch(Ra){console.error("Failed to send quote template for review:",Ra),v(!1)}},[e,c,M,$,E,Le]),me=s(()=>{V(void 0),J(null),P(!0)},[]),le=s(o=>{V(o),J(null),P(!0)},[]),se=s(o=>{O(i=>i.filter(F=>F.uid!==o.uid||F.url!==o.url))},[]),ra=s(o=>{J(null),O(j?i=>i.map(F=>F.identifier===j.identifier?o:F):i=>[...i,o]),P(!1),V(void 0)},[j]),oa=s(()=>{P(!1),V(void 0),J(null)},[]),ia=s(async()=>{Qe(!0),X(""),K("");try{await Oa({templateId:e.id}),K(t.generateQuoteSuccessMessage)}catch(o){console.error("Failed to generate quote from template:",o);const i=o instanceof Error?o.message:t.generateQuoteErrorFallback;X(i)}finally{Qe(!1)}},[e,t.generateQuoteSuccessMessage,t.generateQuoteErrorFallback]),ca=s(()=>{Te(!1),X(""),K("")},[]),ma=s(async()=>{ye(!0),Y(""),G("");try{await Wa({templateId:e.id}),G(t.acceptSuccessMessage),setTimeout(()=>{re(!1),G("")},2e3)}catch(o){console.error("Failed to accept quote template:",o);const i=o instanceof Error?o.message:t.acceptErrorFallback;Y(i)}finally{ye(!1)}},[e,t.acceptSuccessMessage,t.acceptErrorFallback]),la=s(()=>{re(!1),Y(""),G("")},[]),sa=h(()=>{const o=!(e!=null&&e.canSendForReview),i=E||(e==null?void 0:e.name);return a(D,{name:"TemplateName",slot:n==null?void 0:n.TemplateName,context:{templateName:e==null?void 0:e.name,templateData:e,templateDisplayName:i,isRenameDisabled:o},children:p("div",{className:"quote-management-manage-negotiable-quote-template__template-name-wrapper",children:[a("h1",{"data-testid":"template-name",className:"quote-management-manage-negotiable-quote-template__template-name-title",children:i}),a("button",{onClick:()=>we(i),disabled:o,"data-testid":"rename-template-button",className:"quote-management-manage-negotiable-quote-template__rename-button","aria-label":"Rename template",children:a(wa,{})})]})})},[n==null?void 0:n.TemplateName,e,we,E]),da=h(()=>a(D,{name:"TemplateStatus",slot:n==null?void 0:n.TemplateStatus,context:{templateStatus:e==null?void 0:e.status,templateData:e},children:a("div",{"data-testid":"template-status",children:e==null?void 0:e.status})}),[n==null?void 0:n.TemplateStatus,e]),ua=h(()=>{if(!e)return;const o=e.expirationDate?Oe(e.expirationDate,"short"):void 0;return p(D,{name:"Details",slot:n==null?void 0:n.Details,context:{templateData:e},children:[p("div",{className:"quote-management-manage-negotiable-quote-template__detail",children:[a("span",{className:"quote-management-manage-negotiable-quote-template__detail-title","data-testid":"template-id-label",children:t.templateIdLabel}),a("span",{className:"quote-management-manage-negotiable-quote-template__detail-content","data-testid":"template-id-value",children:e.id})]}),p("div",{className:"quote-management-manage-negotiable-quote-template__detail",children:[a("span",{className:"quote-management-manage-negotiable-quote-template__detail-title","data-testid":"created-label",children:t.createdLabel}),p("span",{className:"quote-management-manage-negotiable-quote-template__detail-content","data-testid":"created-value",children:[Oe(e.createdAt,"short")," (",e.buyer.firstname," ",e.buyer.lastname,")"]})]}),p("div",{className:"quote-management-manage-negotiable-quote-template__detail",children:[a("span",{className:"quote-management-manage-negotiable-quote-template__detail-title","data-testid":"sales-rep-label",children:t.salesRepLabel}),a("span",{className:"quote-management-manage-negotiable-quote-template__detail-content","data-testid":"sales-rep-value",children:e.salesRepName})]}),o&&p("div",{className:"quote-management-manage-negotiable-quote-template__detail",children:[a("span",{className:"quote-management-manage-negotiable-quote-template__detail-title","data-testid":"expires-label",children:t.expiresLabel}),a("span",{className:"quote-management-manage-negotiable-quote-template__detail-content","data-testid":"expires-value",children:o})]})]})},[n==null?void 0:n.Details,t,e]),Be=h(()=>[{label:t.generateQuote,value:"generateQuote",disabled:!(e!=null&&e.canGenerateQuoteFromTemplate)}],[t,e==null?void 0:e.canGenerateQuoteFromTemplate]),ga=h(()=>{const o=i=>{switch(i){case"generateQuote":Te(!0),X(""),K(""),u==null||u(i);break}};return a(D,{name:"ActionBar",slot:n==null?void 0:n.ActionBar,context:{templateData:e},children:a(ka,{dropdownPlaceholder:t.actionsLabel,dropdownOptions:[],buttons:Be.map(i=>a(k,{variant:"tertiary",onClick:()=>o(i.value),"data-testid":`actions-bar-${i.value}-button`,"data-action":i.value,disabled:i.disabled,children:i.label},i.value))})})},[Be,t,n==null?void 0:n.ActionBar,e,u]),Z=h(()=>{const o=e==null?void 0:e.status;return o==="Draft"||o==="Open"},[e==null?void 0:e.status]),pa=h(()=>{const o=f.length>0||Z,i=o?t.referenceDocumentsTitle:void 0;return a(D,{name:"ReferenceDocuments",slot:n==null?void 0:n.ReferenceDocuments,context:{templateData:e,referenceDocuments:f,isEditable:Z,onAddDocument:me,onEditDocument:le,onRemoveDocument:se,referenceDocumentsTitle:t.referenceDocumentsTitle},children:p("div",{"data-testid":"reference-documents",children:[o&&a("h2",{children:i}),a(Ka,{documents:f,isEditable:Z,onAdd:me,onEdit:le,onRemove:se})]})})},[n==null?void 0:n.ReferenceDocuments,t,e,f,Z,me,le,se]),fa=h(()=>a(D,{name:"ShippingInformationTitle",slot:n==null?void 0:n.ShippingInformationTitle,context:{templateData:e},children:a("h2",{children:t.shippingInformationTitle})}),[n==null?void 0:n.ShippingInformationTitle,e,t]),ba=h(()=>{var o;return a(D,{name:"ShippingInformation",slot:n==null?void 0:n.ShippingInformation,context:{templateData:e,loading:Q,setLoading:b},children:a(Ga,{shippingAddress:(o=e==null?void 0:e.shippingAddresses)==null?void 0:o[0],loading:Q,"data-testid":"manage-template-shipping-address"})})},[n==null?void 0:n.ShippingInformation,e,Q,b]),Ma=h(()=>a(D,{name:"ItemsTable",slot:n==null?void 0:n.ItemsTable,context:{templateData:e},children:a(Ha,{tabs:new Map([["items-quoted",t.itemsQuotedTab],["comments",t.commentsTab],["history-log",t.historyLogTab]]),tabsContent:new Map([["items-quoted",a(D,{name:"ItemsQuotedTab",slot:n==null?void 0:n.ItemsQuotedTab,context:{templateData:e},children:a($a,{templateData:e})},"items-quoted")],["comments",a(D,{name:"CommentsTab",slot:n==null?void 0:n.CommentsTab,context:{templateData:e},children:a(za,{templateData:e})},"comments")],["history-log",a(D,{name:"HistoryLogTab",slot:n==null?void 0:n.HistoryLogTab,context:{templateData:e},children:a(Pa,{templateData:e})},"history-log")]])})}),[n==null?void 0:n.ItemsTable,n==null?void 0:n.ItemsQuotedTab,n==null?void 0:n.CommentsTab,n==null?void 0:n.HistoryLogTab,t,e]),ha=h(()=>a(D,{name:"CommentsTitle",slot:n==null?void 0:n.CommentsTitle,context:{templateData:e},children:a("h2",{children:t.commentsTitle})}),[n==null?void 0:n.CommentsTitle,t,e]),Ta=h(()=>a(D,{name:"Comments",slot:n==null?void 0:n.Comments,context:{templateData:e},children:a(Ia,{name:"templateComments",placeholder:t.templateCommentsPlaceholder,rows:3,value:M,onInput:o=>{m(o.target.value)},disabled:!(e!=null&&e.canSendForReview)||r})}),[n==null?void 0:n.Comments,t,e,M,r]),Fe=h(()=>z?a(L,{type:"warning",variant:"primary",icon:a(U,{}),heading:t.unsavedChangesWarningHeading,description:t.unsavedChangesWarningMessage,"data-testid":"unsaved-changes-warning-alert"}):void 0,[z,t.unsavedChangesWarningHeading,t.unsavedChangesWarningMessage]),Ae=h(()=>{var o;return(o=e==null?void 0:e.shippingAddresses)!=null&&o.length?void 0:a(L,{type:"warning",variant:"primary",icon:a(U,{}),heading:t.shippingAddressWarningHeading,description:t.shippingAddressWarningMessage,"data-testid":"shipping-address-warning-alert"})},[(Ue=e==null?void 0:e.shippingAddresses)==null?void 0:Ue.length,t.shippingAddressWarningHeading,t.shippingAddressWarningMessage]),Na=h(()=>p(fe,{children:[Fe,Ae]}),[Fe,Ae]),Qa=h(()=>{var i;const o=(e==null?void 0:e.status)===Ge.OPEN&&(e==null?void 0:e.canAccept);return p(D,{name:"Footer",slot:n==null?void 0:n.Footer,context:{templateData:e,comment:M,isSubmitting:r,referenceDocuments:f,hasUnsavedChanges:z,handleSendForReview:ce,showAcceptButton:o,renameTemplateName:E,renameReason:$},children:[o&&a(k,{variant:"primary",onClick:()=>{re(!0),Y(""),G("")},"data-testid":"accept-button",disabled:r||z,children:t.accept}),(e==null?void 0:e.canSendForReview)&&a(k,{variant:"primary",onClick:ce,"data-testid":"send-for-review-button",disabled:r||!((i=e==null?void 0:e.shippingAddresses)!=null&&i.length),children:t.sendForReview}),(e==null?void 0:e.canCancel)&&a(k,{variant:"tertiary",onClick:()=>H(!0),"data-testid":"cancel-template-button",disabled:r,children:t.cancel}),(e==null?void 0:e.canDelete)&&a(k,{variant:"tertiary",onClick:()=>T(!0),"data-testid":"delete-template-button",disabled:r,children:t.delete})]})},[n==null?void 0:n.Footer,t,e,M,r,ce,f,z,E,$]),va=y?a(L,{type:"error",variant:"primary",icon:a(U,{}),heading:t.confirmationModalDeleteErrorHeading,description:y,onDismiss:Ye,"data-testid":"confirmation-modal-error-banner"}):null,xe=(_?a(L,{type:"success",variant:"primary",icon:a(pe,{}),heading:t.confirmationModalDeleteSuccessHeading,description:t.confirmationModalDeleteSuccessDescription,onDismiss:Ze,"data-testid":"confirmation-modal-success-banner"}):null)||va,Ca=A?a(L,{type:"error",variant:"primary",icon:a(U,{}),heading:t.confirmationModalCancelErrorHeading,description:A,onDismiss:na,"data-testid":"confirmation-modal-cancel-error-banner"}):null,We=(te?a(L,{type:"success",variant:"primary",icon:a(pe,{}),heading:t.confirmationModalCancelSuccessHeading,description:t.confirmationModalCancelSuccessDescription,onDismiss:ta,"data-testid":"confirmation-modal-cancel-success-banner"}):null)||Ca,qa=h(()=>oe?a(L,{type:"error",variant:"primary",icon:a(U,{color:"var(--color-error)"}),heading:t.renameErrorHeading,description:oe}):void 0,[oe,t.renameErrorHeading]),_a=h(()=>ie?a(L,{type:"success",variant:"primary",icon:a(pe,{}),heading:t.renameSuccessHeading,description:ie}):void 0,[ie,t.renameSuccessHeading]),ya={...q,loading:Q,templateName:sa,templateStatus:da,banner:Na,details:ua,actionBar:ga,referenceDocuments:pa,itemsTable:Ma,shippingInformationTitle:fa,shippingInformation:ba,commentsTitle:ha,comments:Ta,footer:Qa};let de=null;ve?de=a(L,{type:"success",variant:"primary",icon:a(ee,{source:"CheckWithCircle"}),heading:t.generateQuoteModalSuccessHeading,description:ve,"data-testid":"generate-quote-success-banner"}):Ce&&(de=a(L,{type:"error",variant:"primary",icon:a(ee,{source:"WarningFilled"}),heading:t.generateQuoteModalErrorHeading,description:Ce,"data-testid":"generate-quote-error-banner"}));let ue=null;return Re?ue=a(L,{type:"success",variant:"primary",icon:a(ee,{source:"CheckWithCircle"}),heading:t.acceptModalSuccessHeading,description:Re,"data-testid":"accept-success-banner"}):Se&&(ue=a(L,{type:"error",variant:"primary",icon:a(ee,{source:"WarningFilled"}),heading:t.acceptModalErrorHeading,description:Se,"data-testid":"accept-error-banner"})),p(fe,{children:[a(ja,{...ya}),g&&x(a(ae,{open:g,title:t.confirmationModalDeleteTitle,message:t.confirmationModalDeleteMessage,cancelLabel:t.confirmationModalCancel,confirmLabel:t.confirmationModalDeleteConfirm,onCancel:Ke,onConfirm:Xe,showCloseButton:!xe,confirmationBanner:xe}),document.body),C&&x(a(ae,{open:C,title:t.confirmationModalCancelTitle,message:t.confirmationModalCancelMessage,cancelLabel:t.confirmationModalCancel,confirmLabel:t.confirmationModalCancelConfirm,onCancel:ea,onConfirm:aa,showCloseButton:!We,confirmationBanner:We}),document.body),Me&&x(a(Ja,{open:Me,document:j,errorMessage:$e||void 0,onSave:ra,onClose:oa,isSubmitting:r}),document.body),he&&x(a(ae,{open:he,title:t.generateQuoteModalTitle,message:t.generateQuoteModalMessage,cancelLabel:t.generateQuoteModalCancel,confirmLabel:Ne?t.generateQuoteModalConfirmLoading:t.generateQuoteModalConfirm,onCancel:ca,onConfirm:Ne?void 0:ia,showCloseButton:!0,confirmationBanner:de,"data-testid":"generate-quote-confirmation-modal"}),document.body),qe&&x(a(ae,{open:qe,title:t.acceptModalTitle,message:t.acceptModalMessage,cancelLabel:t.acceptModalCancel,confirmLabel:_e?t.acceptModalConfirmLoading:t.acceptModalConfirm,onCancel:la,onConfirm:_e?void 0:ma,showCloseButton:!0,confirmationBanner:ue,"data-testid":"accept-confirmation-modal"}),document.body),Ie&&x(a(Ba,{open:Ie,quoteName:E,renameReason:$,quoteNameError:ze,errorBanner:qa,successBanner:_a,onQuoteNameChange:je,onRenameReasonChange:Ve,onSave:Je,onClose:Pe}),document.body)]})};export{wn as ManageNegotiableQuoteTemplate,wn as default};
5
+ `).trim()||void 0,O=w&&w!==(e==null?void 0:e.name)?w:void 0;if(l){l({templateData:e,name:O,comment:b,referenceDocumentLinks:r,attachments:i.length?i:void 0});return}D(!0);try{await Qt({templateId:e.id,name:O,comment:b,referenceDocumentLinks:r.length>0?r:void 0,attachments:i.length?i.map(A=>({key:A.key})):void 0})}catch(A){console.error("Failed to send quote template for review:",A),D(!1)}},[e,l,p,Y,w,Pe,I]),xe=s(()=>{te(void 0),ne(null),ee(!0)},[]),_e=s(r=>{te(r),ne(null),ee(!0)},[]),De=s(r=>{V(i=>i.filter(b=>b.uid!==r.uid||b.url!==r.url))},[]),Ra=s(r=>{ne(null),V(ae?i=>i.map(b=>b.identifier===ae.identifier?r:b):i=>[...i,r]),ee(!1),te(void 0)},[ae]),La=s(()=>{ee(!1),te(void 0),ne(null)},[]),Fa=s(async()=>{He(!0),oe(""),re("");try{await xt({templateId:e.id}),re(n.generateQuoteSuccessMessage)}catch(r){console.error("Failed to generate quote from template:",r);const i=r instanceof Error?r.message:n.generateQuoteErrorFallback;oe(i)}finally{He(!1)}},[e,n.generateQuoteSuccessMessage,n.generateQuoteErrorFallback]),ka=s(()=>{Ie(!1),oe(""),re("")},[]),Ia=s(async()=>{ze(!0),ie(""),J("");try{await qt({templateId:e.id}),J(n.acceptSuccessMessage),setTimeout(()=>{he(!1),J("")},2e3)}catch(r){console.error("Failed to accept quote template:",r);const i=r instanceof Error?r.message:n.acceptErrorFallback;ie(i)}finally{ze(!1)}},[e,n.acceptSuccessMessage,n.acceptErrorFallback]),wa=s(()=>{he(!1),ie(""),J("")},[]),Ha=N(()=>{const r=!(e!=null&&e.canSendForReview),i=w||(e==null?void 0:e.name);return a(E,{name:"TemplateName",slot:t==null?void 0:t.TemplateName,context:{templateName:e==null?void 0:e.name,templateData:e,templateDisplayName:i,isRenameDisabled:r},children:h("div",{className:"quote-management-manage-negotiable-quote-template__template-name-wrapper",children:[a("h1",{"data-testid":"template-name",className:"quote-management-manage-negotiable-quote-template__template-name-title",children:i}),a("button",{onClick:()=>Ke(i),disabled:r,"data-testid":"rename-template-button",className:"quote-management-manage-negotiable-quote-template__rename-button","aria-label":"Rename template",children:a(ma,{})})]})})},[t==null?void 0:t.TemplateName,e,Ke,w]),Ba=N(()=>a(E,{name:"TemplateStatus",slot:t==null?void 0:t.TemplateStatus,context:{templateStatus:e==null?void 0:e.status,templateData:e},children:a("div",{"data-testid":"template-status",children:e==null?void 0:e.status})}),[t==null?void 0:t.TemplateStatus,e]),Aa=N(()=>{if(!e)return;const i=!["Active","Expired","Closed","Canceled","Inactive"].includes(e.status),b=e.expirationDate?ca(e.expirationDate,"short"):void 0;return h(E,{name:"Details",slot:t==null?void 0:t.Details,context:{templateData:e},children:[h("div",{className:"quote-management-manage-negotiable-quote-template__detail",children:[a("span",{className:"quote-management-manage-negotiable-quote-template__detail-title","data-testid":"template-id-label",children:n.templateIdLabel}),a("span",{className:"quote-management-manage-negotiable-quote-template__detail-content","data-testid":"template-id-value",children:e.id})]}),h("div",{className:"quote-management-manage-negotiable-quote-template__detail",children:[a("span",{className:"quote-management-manage-negotiable-quote-template__detail-title","data-testid":"created-label",children:n.createdLabel}),h("span",{className:"quote-management-manage-negotiable-quote-template__detail-content","data-testid":"created-value",children:[ca(e.createdAt,"short")," (",e.buyer.firstname," ",e.buyer.lastname,")"]})]}),h("div",{className:"quote-management-manage-negotiable-quote-template__detail",children:[a("span",{className:"quote-management-manage-negotiable-quote-template__detail-title","data-testid":"sales-rep-label",children:n.salesRepLabel}),a("span",{className:"quote-management-manage-negotiable-quote-template__detail-content","data-testid":"sales-rep-value",children:e.salesRepName})]}),h("div",{className:"quote-management-manage-negotiable-quote-template__detail",children:[a("span",{className:"quote-management-manage-negotiable-quote-template__detail-title","data-testid":"expires-label",children:n.expiresLabel}),h("div",{className:"quote-management-manage-negotiable-quote-template__expiration-wrapper",children:[a("span",{className:"quote-management-manage-negotiable-quote-template__detail-content","data-testid":"expires-value",children:b}),i&&a("button",{onClick:()=>Xe(e.expirationDate),className:"quote-management-manage-negotiable-quote-template__edit-expiration-button","data-testid":"edit-expiration-button","aria-label":"Edit expiration date",children:a(ma,{})})]})]})]})},[t==null?void 0:t.Details,n,e,Xe]),ea=N(()=>[{label:n.generateQuote,value:"generateQuote",disabled:!(e!=null&&e.canGenerateQuoteFromTemplate)}],[n,e==null?void 0:e.canGenerateQuoteFromTemplate]),Ua=N(()=>{const r=i=>{switch(i){case"generateQuote":Ie(!0),oe(""),re(""),g==null||g(i);break}};return a(E,{name:"ActionBar",slot:t==null?void 0:t.ActionBar,context:{templateData:e},children:a(st,{dropdownPlaceholder:n.actionsLabel,dropdownOptions:[],buttons:ea.map(i=>a(H,{variant:"tertiary",onClick:()=>r(i.value),"data-testid":`actions-bar-${i.value}-button`,"data-action":i.value,disabled:i.disabled,children:i.label},i.value))})})},[ea,n,t==null?void 0:t.ActionBar,e,g]),se=N(()=>{const r=e==null?void 0:e.status;return r==="Draft"||r==="Open"},[e==null?void 0:e.status]),Wa=N(()=>{const r=z.length>0||se,i=r?n.referenceDocumentsTitle:void 0;return a(E,{name:"ReferenceDocuments",slot:t==null?void 0:t.ReferenceDocuments,context:{templateData:e,referenceDocuments:z,isEditable:se,onAddDocument:xe,onEditDocument:_e,onRemoveDocument:De,referenceDocumentsTitle:n.referenceDocumentsTitle},children:h("div",{"data-testid":"reference-documents",children:[r&&a("h2",{children:i}),a(kt,{documents:z,isEditable:se,onAdd:xe,onEdit:_e,onRemove:De})]})})},[t==null?void 0:t.ReferenceDocuments,n,e,z,se,xe,_e,De]),za=N(()=>a(E,{name:"ShippingInformationTitle",slot:t==null?void 0:t.ShippingInformationTitle,context:{templateData:e},children:a("h2",{children:n.shippingInformationTitle})}),[t==null?void 0:t.ShippingInformationTitle,e,n]),Oa=N(()=>{var r;return a(E,{name:"ShippingInformation",slot:t==null?void 0:t.ShippingInformation,context:{templateData:e,loading:c,setLoading:o},children:a(_t,{shippingAddress:(r=e==null?void 0:e.shippingAddresses)==null?void 0:r[0],loading:c,"data-testid":"manage-template-shipping-address"})})},[t==null?void 0:t.ShippingInformation,e,c,o]),$a=N(()=>a(E,{name:"ItemsTable",slot:t==null?void 0:t.ItemsTable,context:{templateData:e},children:a(dt,{tabs:new Map([["items-quoted",n.itemsQuotedTab],["comments",n.commentsTab],["history-log",n.historyLogTab]]),tabsContent:new Map([["items-quoted",a(E,{name:"ItemsQuotedTab",slot:t==null?void 0:t.ItemsQuotedTab,context:{templateData:e},children:a(Dt,{templateData:e})},"items-quoted")],["comments",a(E,{name:"CommentsTab",slot:t==null?void 0:t.CommentsTab,context:{templateData:e},children:a(Et,{templateData:e})},"comments")],["history-log",a(E,{name:"HistoryLogTab",slot:t==null?void 0:t.HistoryLogTab,context:{templateData:e},children:a(yt,{templateData:e})},"history-log")]])})}),[t==null?void 0:t.ItemsTable,t==null?void 0:t.ItemsQuotedTab,t==null?void 0:t.CommentsTab,t==null?void 0:t.HistoryLogTab,n,e]),Ga=N(()=>a(E,{name:"CommentsTitle",slot:t==null?void 0:t.CommentsTitle,context:{templateData:e},children:a("h2",{children:n.commentsTitle})}),[t==null?void 0:t.CommentsTitle,n,e]),Pa=N(()=>a(E,{name:"Comments",slot:t==null?void 0:t.Comments,context:{templateData:e},children:a(lt,{name:"templateComments",placeholder:n.templateCommentsPlaceholder,rows:3,value:p,onInput:r=>{M(r.target.value)},disabled:!(e!=null&&e.canSendForReview)||u})}),[t==null?void 0:t.Comments,n,e,p,u]),aa=N(()=>!(e!=null&&e.canSendForReview),[e]),ja=N(()=>{const r=u||aa;return a(E,{name:"AttachFilesField",slot:t==null?void 0:t.AttachFilesField,context:{templateData:e,onFileChange:Qe,attachedFiles:I,fileUploadError:ce,disabled:r},children:h("div",{className:"quote-management-manage-negotiable-quote-template__attach-files",...r?{"data-disabled":!0}:{},"aria-disabled":r,children:[a(mt,{id:"manage-template-attach-files",multiple:!0,onChange:i=>{const b=i.target,O=b==null?void 0:b.files,A=O?Array.from(O):[];A.length>0&&Qe(A)},icon:a(bt,{}),disabled:r,"data-testid":"manage-template-attach-files",accept:f==null?void 0:f.join(","),children:n.attachFiles}),ce&&a("div",{className:"quote-management-manage-negotiable-quote-template__file-error","data-testid":"file-upload-error",children:ce})]})})},[t==null?void 0:t.AttachFilesField,e,Qe,u,aa,f,ce,n,I]),Ka=N(()=>{if(I.length)return a(E,{name:"AttachedFilesList",slot:t==null?void 0:t.AttachedFilesList,context:{templateData:e,files:I,onRemove:qe,disabled:u},children:a(ht,{files:I,onRemove:qe,disabled:u})})},[I,qe,u,t==null?void 0:t.AttachedFilesList,e]),ta=N(()=>Z?a(S,{type:"warning",variant:"primary",icon:a(P,{}),heading:n.unsavedChangesWarningHeading,description:n.unsavedChangesWarningMessage,"data-testid":"unsaved-changes-warning-alert"}):void 0,[Z,n.unsavedChangesWarningHeading,n.unsavedChangesWarningMessage]),na=N(()=>{var r;return(r=e==null?void 0:e.shippingAddresses)!=null&&r.length?void 0:a(S,{type:"warning",variant:"primary",icon:a(P,{}),heading:n.shippingAddressWarningHeading,description:n.shippingAddressWarningMessage,"data-testid":"shipping-address-warning-alert"})},[(ia=e==null?void 0:e.shippingAddresses)==null?void 0:ia.length,n.shippingAddressWarningHeading,n.shippingAddressWarningMessage]),Va=N(()=>h(fe,{children:[ta,na]}),[ta,na]),Ja=N(()=>{const r=(e==null?void 0:e.status)===la.OPEN&&(e==null?void 0:e.canAccept);return h(E,{name:"Footer",slot:t==null?void 0:t.Footer,context:{templateData:e,comment:p,isSubmitting:u,attachedFiles:I,referenceDocuments:z,hasUnsavedChanges:Z,handleSendForReview:Ce,showAcceptButton:r,renameTemplateName:w,renameReason:Y},children:[r&&a(H,{variant:"primary",onClick:()=>{he(!0),ie(""),J("")},"data-testid":"accept-button",disabled:u||Z,children:n.accept}),(e==null?void 0:e.canSendForReview)&&a(H,{variant:"primary",onClick:Ce,"data-testid":"send-for-review-button",disabled:!(e!=null&&e.canSendForReview)||u,children:n.sendForReview}),(e==null?void 0:e.canCancel)&&a(H,{variant:"tertiary",onClick:()=>U(!0),"data-testid":"cancel-template-button",disabled:u,children:n.cancel}),(e==null?void 0:e.canDelete)&&a(H,{variant:"tertiary",onClick:()=>q(!0),"data-testid":"delete-template-button",disabled:u,children:n.delete})]})},[t==null?void 0:t.Footer,n,e,p,u,I,Ce,z,Z,w,Y]),Xa=F?a(S,{type:"error",variant:"primary",icon:a(P,{}),heading:n.confirmationModalDeleteErrorHeading,description:F,onDismiss:xa,"data-testid":"confirmation-modal-error-banner"}):null,ra=(k?a(S,{type:"success",variant:"primary",icon:a(ge,{}),heading:n.confirmationModalDeleteSuccessHeading,description:n.confirmationModalDeleteSuccessDescription,onDismiss:_a,"data-testid":"confirmation-modal-success-banner"}):null)||Xa,Ya=W?a(S,{type:"error",variant:"primary",icon:a(P,{}),heading:n.confirmationModalCancelErrorHeading,description:W,onDismiss:ya,"data-testid":"confirmation-modal-cancel-error-banner"}):null,oa=(da?a(S,{type:"success",variant:"primary",icon:a(ge,{}),heading:n.confirmationModalCancelSuccessHeading,description:n.confirmationModalCancelSuccessDescription,onDismiss:Sa,"data-testid":"confirmation-modal-cancel-success-banner"}):null)||Ya,Za=N(()=>Me?a(S,{type:"error",variant:"primary",icon:a(P,{color:"var(--color-error)"}),heading:n.renameErrorHeading,description:Me}):void 0,[Me,n.renameErrorHeading]),et=N(()=>Ne?a(S,{type:"success",variant:"primary",icon:a(ge,{}),heading:n.renameSuccessHeading,description:Ne}):void 0,[Ne,n.renameSuccessHeading]),at=N(()=>Te?a(S,{type:"error",variant:"primary",icon:a(P,{color:"var(--color-error)"}),heading:n.expirationDateErrorHeading,description:Te}):void 0,[Te,n.expirationDateErrorHeading]),tt=N(()=>ve?a(S,{type:"success",variant:"primary",icon:a(ge,{}),heading:n.expirationDateSuccessHeading,description:ve}):void 0,[ve,n.expirationDateSuccessHeading]),nt={...Q,loading:c,templateName:Ha,templateStatus:Ba,banner:Va,details:Aa,actionBar:Ua,referenceDocuments:Wa,itemsTable:$a,shippingInformationTitle:za,shippingInformation:Oa,commentsTitle:Ga,comments:Pa,attachFilesField:ja,attachedFilesList:Ka,footer:Ja};let Ee=null;Be?Ee=a(S,{type:"success",variant:"primary",icon:a(de,{source:"CheckWithCircle"}),heading:n.generateQuoteModalSuccessHeading,description:Be,"data-testid":"generate-quote-success-banner"}):Ae&&(Ee=a(S,{type:"error",variant:"primary",icon:a(de,{source:"WarningFilled"}),heading:n.generateQuoteModalErrorHeading,description:Ae,"data-testid":"generate-quote-error-banner"}));let ye=null;return Oe?ye=a(S,{type:"success",variant:"primary",icon:a(de,{source:"CheckWithCircle"}),heading:n.acceptModalSuccessHeading,description:Oe,"data-testid":"accept-success-banner"}):$e&&(ye=a(S,{type:"error",variant:"primary",icon:a(de,{source:"WarningFilled"}),heading:n.acceptModalErrorHeading,description:$e,"data-testid":"accept-error-banner"})),h(fe,{children:[a(Rt,{...nt}),R&&G(a(ue,{open:R,title:n.confirmationModalDeleteTitle,message:n.confirmationModalDeleteMessage,cancelLabel:n.confirmationModalCancel,confirmLabel:n.confirmationModalDeleteConfirm,onCancel:qa,onConfirm:Ca,showCloseButton:!ra,confirmationBanner:ra}),document.body),y&&G(a(ue,{open:y,title:n.confirmationModalCancelTitle,message:n.confirmationModalCancelMessage,cancelLabel:n.confirmationModalCancel,confirmLabel:n.confirmationModalCancelConfirm,onCancel:Da,onConfirm:Ea,showCloseButton:!oa,confirmationBanner:oa}),document.body),Fe&&G(a(Ft,{open:Fe,document:ae,errorMessage:ua||void 0,onSave:Ra,onClose:La,isSubmitting:u}),document.body),ke&&G(a(ue,{open:ke,title:n.generateQuoteModalTitle,message:n.generateQuoteModalMessage,cancelLabel:n.generateQuoteModalCancel,confirmLabel:we?n.generateQuoteModalConfirmLoading:n.generateQuoteModalConfirm,onCancel:ka,onConfirm:we?void 0:Fa,showCloseButton:!0,confirmationBanner:Ee,"data-testid":"generate-quote-confirmation-modal"}),document.body),Ue&&G(a(ue,{open:Ue,title:n.acceptModalTitle,message:n.acceptModalMessage,cancelLabel:n.acceptModalCancel,confirmLabel:We?n.acceptModalConfirmLoading:n.acceptModalConfirm,onCancel:wa,onConfirm:We?void 0:Ia,showCloseButton:!0,confirmationBanner:ye,"data-testid":"accept-confirmation-modal"}),document.body),me&&G(a(ut,{open:me,quoteName:w,renameReason:Y,quoteNameError:ga,errorBanner:Za,successBanner:et,onQuoteNameChange:fa,onRenameReasonChange:ba,onSave:ha,onClose:pa}),document.body),Je&&G(a(St,{open:Je,expirationDate:Ma,expirationDateError:Na,errorBanner:at,successBanner:tt,onExpirationDateChange:va,onSave:Qa,onClose:Ta}),document.body)]})};export{Tn as ManageNegotiableQuoteTemplate,Tn as default};
6
6
  //# sourceMappingURL=ManageNegotiableQuoteTemplate.js.map