@openmrs/esm-billing-app 1.3.2-pre.2111 → 1.3.2-pre.2113

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.
package/dist/7968.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";(globalThis.webpackChunk_openmrs_esm_billing_app=globalThis.webpackChunk_openmrs_esm_billing_app||[]).push([["7968"],{8730(e,t,a){a.d(t,{A:()=>r});var l=a(5275),n=a.n(l),i=a(3137);let r=({title:e})=>n().createElement(i.PageHeader,{className:"-esm-billing__billing-header__header___P+PIw","data-testid":"billing-header"},n().createElement(i.PageHeaderContent,{illustration:n().createElement(i.PaymentsDeskPictogram,null),title:e}))},2373(e,t,a){a.d(t,{Zz:()=>n,aL:()=>i,o_:()=>r});var l=a(3137);function n(e){return Array.isArray(e)?e.reduce((e,t)=>"number"==typeof t.price&&"number"==typeof t.quantity&&!0!==t.voided?e+t.price*t.quantity:e,0):0}let i=(e,t)=>{let a=window.i18next?.language?.substring(0,2)??"",l=new Intl.NumberFormat(a,{style:"currency",currency:t,minimumFractionDigits:2}).format(Math.abs(e));return e<0&&(l=`(${l})`),l},r=(e,t)=>{switch(e){case"male":return(0,l.getCoreTranslation)("male");case"female":return(0,l.getCoreTranslation)("female");case"other":return(0,l.getCoreTranslation)("other");case"unknown":return(0,l.getCoreTranslation)("unknown");default:return e}}},1772(e,t,a){a.d(t,{aL:()=>l.aL,o_:()=>l.o_});var l=a(2373)},6762(e,t,a){a.d(t,{A:()=>y});var l=a(5275),n=a.n(l),i=a(6942),r=a.n(i),s=a(8395),o=a(4751),m=a.n(o),u=a(1752),c=a(3137),d=a(5084);let _="-esm-billing__line-item-action-menu__menuitem___lOuJD",b=({bill:e,item:t,onMutate:a,showDiscountRequest:i,onDiscountRequest:r,showRefundRequest:o,onRefundRequest:m})=>{let{t:b}=(0,s.useTranslation)(),p=(0,c.useLayoutType)(),E=(0,l.useCallback)(()=>{let l=(0,c.showModal)("edit-bill-line-item-modal",{bill:e,item:t,closeModal:()=>l(),onMutate:a})},[e,t,a]),y=(0,l.useCallback)(()=>{let e=(0,c.showModal)("delete-line-item-confirmation-modal",{item:t,closeModal:()=>e(),onMutate:a})},[t,a]),h=e?.status===d.ih.PENDING;return n().createElement(u.Layer,null,n().createElement(u.OverflowMenu,{align:"left",flipped:!0,size:(0,c.isDesktop)(p)?"sm":"lg","data-testid":`action-menu-${t.uuid}`},n().createElement(u.OverflowMenuItem,{className:_,"data-testid":`edit-button-${t.uuid}`,disabled:!h,itemText:(0,c.getCoreTranslation)("edit"),onClick:E}),n().createElement(u.OverflowMenuItem,{className:_,"data-testid":`delete-button-${t.uuid}`,disabled:!h,isDelete:!0,itemText:(0,c.getCoreTranslation)("delete"),onClick:y}),i&&n().createElement(u.OverflowMenuItem,{className:_,"data-testid":`request-discount-button-${t.uuid}`,itemText:b("requestDiscount","Request discount"),onClick:r}),o&&n().createElement(u.OverflowMenuItem,{className:_,"data-testid":`request-refund-button-${t.uuid}`,itemText:b("requestRefund","Request refund"),onClick:m})))};var p=a(1772);let E=e=>(e.price??0)*(e.quantity??0),y=({bill:e,isLoadingBill:t,onMutate:a,viewOnly:i})=>{let{t:o}=(0,s.useTranslation)(),{defaultCurrency:_}=(0,c.useConfig)(),y=(0,c.useLayoutType)(),h=(0,l.useMemo)(()=>e?.lineItems??[],[e?.lineItems]),g=(0,c.isDesktop)(y)?"sm":"lg",[f,v]=(0,l.useState)(""),T=(0,c.useDebounce)(f),C=(0,l.useMemo)(()=>(e?.discounts??[]).filter(e=>!e.voided),[e?.discounts]),N=e?.status===d.ih.PENDING||e?.status===d.ih.POSTED,k=C.some(e=>!e.lineItemUuid),D=(0,l.useMemo)(()=>(e?.refunds??[]).filter(e=>!e.voided),[e?.refunds]),w=e?.status===d.ih.PAID||e?.status===d.ih.PARTIALLY_REFUNDED||e?.status===d.ih.REFUND_REQUESTED,A=D.filter(e=>e.status===d.fH.REQUESTED||e.status===d.fH.APPROVED),P=A.some(e=>!e.lineItemUuid),S=(0,l.useMemo)(()=>T?m().filter(T,h,{extract:e=>`${e.billableService} ${e.item}`}).sort((e,t)=>e.score-t.score).map(e=>e.original):h,[T,h]),I=(0,l.useMemo)(()=>new Map(h.map(e=>[e.uuid,e])),[h]),B=[{header:o("number","Number"),key:"no",width:7},{header:o("billItem","Bill item"),key:"billItem",width:25},{header:o("status","Status"),key:"status",width:25},{header:o("quantity","Quantity"),key:"quantity",width:15},{header:o("price","Price"),key:"price",width:24},{header:o("total","Total"),key:"total",width:15}],R=(0,l.useMemo)(()=>S?.map((e,t)=>({no:`${t+1}`,id:`${e.uuid}`,billItem:e.billableService?e.billableService:e?.item,status:e.status,quantity:e.quantity,price:(0,p.aL)(e.price,_),total:(0,p.aL)(E(e),_)}))??[],[S,_]);return t?n().createElement(u.DataTableSkeleton,{"data-testid":"loader",columnCount:B.length,showHeader:!1,showToolbar:!1,zebra:!0}):n().createElement("div",{className:"-esm-billing__invoice-table__lineItemsWrapper___ABU3I"},n().createElement(u.DataTable,{headers:B,rows:R,size:g,useZebraStyles:!0,overflowMenuOnHover:(0,c.isDesktop)(y)},({rows:t,headers:l,getRowProps:s,getTableProps:m})=>n().createElement(u.TableContainer,{description:n().createElement("span",{className:"-esm-billing__invoice-table__tableDescription___JKz3j"},n().createElement("span",null,o("itemsToBeBilled","Items to be billed"))),title:o("lineItems","Line items")},!i&&n().createElement(u.TableToolbarSearch,{className:"-esm-billing__invoice-table__searchbox___oxEnj",expanded:!0,onChange:e=>v(e.target.value),placeholder:o("searchThisTable","Search this table"),size:g}),n().createElement(u.Table,{...m(),"aria-label":o("invoiceLineItems","Invoice line items"),className:r()("-esm-billing__invoice-table__invoiceTable___2hd71","billingTable")},n().createElement(u.TableHead,null,n().createElement(u.TableRow,null,l.map(e=>n().createElement(u.TableHeader,{key:e.key},e.header)),!i&&n().createElement(u.TableHeader,{"aria-label":(0,c.getCoreTranslation)("actions")}))),n().createElement(u.TableBody,null,t.map(t=>{let l,r,o=I.get(t.id);return n().createElement(u.TableRow,{key:t.id,...s({row:t})},t.cells.map(e=>n().createElement(u.TableCell,{key:e.id},e.value)),!i&&n().createElement(u.TableCell,{className:"cds--table-column-menu"},o&&n().createElement(b,{bill:e,item:o,onMutate:a,showDiscountRequest:N&&!k&&(l=o.uuid,!C.some(e=>e.lineItemUuid===l)),onDiscountRequest:()=>{let t;t=(0,c.showModal)("request-discount-modal",{bill:{uuid:e.uuid,total:e.totalAmount??0,amountDue:Math.max(0,(e.netAmount??e.totalAmount??0)-(e.tenderedAmount??0)),receiptNumber:e.receiptNumber,lineItemCount:h.length},lineItem:{uuid:o.uuid,display:o.item||o.billableService||"--",total:E(o),quantity:o.quantity,price:o.price},onMutate:()=>a?.(),closeModal:()=>t()})},showRefundRequest:w&&!P&&(r=o.uuid??"",!A.some(e=>e.lineItemUuid===r))&&!!o.uuid,onRefundRequest:()=>(t=>{if(!t.uuid)return;let l=E(t),n=l-D.filter(e=>e.lineItemUuid===t.uuid&&(e.status===d.fH.APPROVED||e.status===d.fH.COMPLETED)).reduce((e,t)=>e+t.refundAmount,0),i=(0,c.showModal)("request-refund-modal",{bill:{uuid:e.uuid,total:e.totalAmount??0,amountAfterDiscount:e.netAmount??e.totalAmount??0},lineItem:{uuid:t.uuid,display:t.item||t.billableService||"--",total:l,quantity:t.quantity,price:t.price},remainingRefundable:Math.max(0,n),onMutate:()=>a?.(),closeModal:()=>i()})})(o)})))}))))),S?.length===0&&n().createElement("div",{className:"-esm-billing__invoice-table__filterEmptyState___ZtVBH"},n().createElement(u.Layer,null,n().createElement(u.Tile,{className:"-esm-billing__invoice-table__filterEmptyStateTile___j92yY"},n().createElement("p",{className:"-esm-billing__invoice-table__filterEmptyStateContent___41NoP"},o("noMatchingItemsToDisplay","No matching items to display")),!i&&n().createElement("p",{className:"-esm-billing__invoice-table__filterEmptyStateHelper___+DQR2"},o("checkFilters","Check the filters above"))))))}},8683(e,t,a){a.d(t,{KY:()=>s,eK:()=>m,qC:()=>o,zb:()=>u});var l=a(3137),n=a(7003);let i=`${n.B}billRefund`,r=`${n.B}bill`;function s({statuses:e}){let t=new URLSearchParams({refundStatus:e.join(","),v:"default"}),a=`${r}?${t.toString()}`,{data:n,isLoading:i,error:o,mutate:m,isValidating:u}=(0,l.useOpenmrsFetchAll)(a);return{bills:n??[],isLoading:i,error:o,mutate:m,isValidating:u}}async function o(e){return(await (0,l.openmrsFetch)(i,{method:"POST",headers:{"Content-Type":"application/json"},body:e})).data}async function m(e,t){return(await (0,l.openmrsFetch)(`${i}/${e}`,{method:"POST",headers:{"Content-Type":"application/json"},body:t})).data}async function u(e,t){await (0,l.openmrsFetch)(`${i}/${e}?reason=${encodeURIComponent(t)}`,{method:"DELETE"})}},7283(e,t,a){a.r(t),a.d(t,{default:()=>K});var l=a(5275),n=a.n(l),i=a(9335),r=a(8395),s=a(8730),o=a(6942),m=a.n(o),u=a(1752),c=a(3137),d=a(6199),_=a(5084);let b={container:"-esm-billing__bills-table__container___PDs67",emptyStateContainer:"-esm-billing__bills-table__emptyStateContainer___+sc4M",loaderContainer:"-esm-billing__bills-table__loaderContainer___9+3cP",billListContainer:"-esm-billing__bills-table__billListContainer___z5Mjt",filterEmptyState:"-esm-billing__bills-table__filterEmptyState___hV8Kp",filterContainer:"-esm-billing__bills-table__filterContainer___HlgpD",datePickerContainer:"-esm-billing__bills-table__datePickerContainer___Ss4P3",clearDatesButton:"-esm-billing__bills-table__clearDatesButton___ZS5e8",menu:"-esm-billing__bills-table__menu___F7TXn",headerContainer:"-esm-billing__bills-table__headerContainer___FouPn",backgroundDataFetchingIndicator:"-esm-billing__bills-table__backgroundDataFetchingIndicator___-WVf2",tableContainer:"-esm-billing__bills-table__tableContainer___-rFXM",hiddenRow:"-esm-billing__bills-table__hiddenRow___UsKb7",emptyRow:"-esm-billing__bills-table__emptyRow___kJSR-",visitSummaryContainer:"-esm-billing__bills-table__visitSummaryContainer___TzYie",expandedActiveVisitRow:"-esm-billing__bills-table__expandedActiveVisitRow___-imGs",action:"-esm-billing__bills-table__action___T5jNA",illo:"-esm-billing__bills-table__illo___zE0Ny",content:"-esm-billing__bills-table__content___XIyTL",desktopHeading:"-esm-billing__bills-table__desktopHeading___qYmFK",tabletHeading:"-esm-billing__bills-table__tabletHeading___JVDgu",tile:"-esm-billing__bills-table__tile___Zxkhk",menuitem:"-esm-billing__bills-table__menuitem___owZSX",filterEmptyStateTile:"-esm-billing__bills-table__filterEmptyStateTile___qWUMb",filterEmptyStateContent:"-esm-billing__bills-table__filterEmptyStateContent___W3mdv",filterEmptyStateHelper:"-esm-billing__bills-table__filterEmptyStateHelper___nvBYb"};function p({layout:e,handleSearch:t,isValidating:a,responsiveSize:l,searchString:i,t:r}){return n().createElement(n().Fragment,null,n().createElement("div",{className:b.headerContainer},n().createElement("div",{className:m()({[b.tabletHeading]:!(0,c.isDesktop)(e),[b.desktopHeading]:(0,c.isDesktop)(e)})},n().createElement("h4",null,r("billList","Bill list"))),a&&n().createElement("div",{className:b.backgroundDataFetchingIndicator},n().createElement("span",null,n().createElement(u.InlineLoading,null)))),n().createElement(u.Search,{autoFocus:!0,closeButtonLabelText:r("clearSearch","Clear"),"data-testid":"billsTableSearchBar",labelText:r("searchForPatient","Search for a patient"),placeholder:r("filterBillsByPatient","Filter bills by patient name or identifier"),value:i,onChange:t,size:l}))}let E=()=>{let{t:e}=(0,r.useTranslation)(),t=(0,c.useLayoutType)(),{pageSize:a}=(0,c.useConfig)(),[i,s]=(0,l.useState)(a??10),o=(0,c.isDesktop)(t)?"sm":"lg",m=(0,l.useMemo)(()=>[{id:"",text:e("allBills","All bills"),status:""},{id:_.ih.PENDING,text:e("pendingConfirmationBills","Pending confirmation"),status:_.ih.PENDING},{id:_.ih.POSTED,text:e("pendingPaymentBills","Pending payment"),status:_.ih.POSTED},{id:_.ih.PAID,text:e("paidBills","Paid bills"),status:_.ih.PAID},{id:_.ih.REFUNDED,text:e("refundedBills","Refunded bills"),status:`${_.ih.REFUNDED},${_.ih.PARTIALLY_REFUNDED}`},{id:_.ih.REFUND_REQUESTED,text:e("pendingRefundBills","Pending refunds"),status:_.ih.REFUND_REQUESTED}],[e]),[E,y]=(0,l.useState)(()=>m.find(e=>e.id===_.ih.PENDING)??m[0]),[h,g]=(0,l.useState)(""),f=(0,c.useDebounce)(h,500),[v,T]=(0,l.useState)(null),[C,N]=(0,l.useState)(null),{bills:k,error:D,currentPage:w,isLoading:A,isValidating:P,totalCount:S,goTo:I}=(0,d.fu)(i,E.status,f||void 0,v,C),B=[{header:e("billDate","Bill date"),key:"dateCreated"},{header:e("invoiceNumber","Invoice number"),key:"receiptNumberDisplay"},{header:e("patientIdentifier","Patient identifier"),key:"identifier"},{header:e("patientName","Patient name"),key:"patientName"},{header:e("billedItems","Billed items"),key:"billedItems"}],R=(0,l.useMemo)(()=>k?.map(e=>({...e,id:String(e.id),dateCreated:e.dateCreated?(0,c.formatDate)((0,c.parseDate)(e.dateCreated),{mode:"wide"}):"--",receiptNumberDisplay:n().createElement(c.ConfigurableLink,{style:{textDecoration:"none"},to:"${openmrsSpaBase}/home/billing/patient/${patientUuid}/${uuid}",templateParams:{patientUuid:e.patientUuid,uuid:e.uuid}},e.receiptNumber),billedItems:e?.lineItems?.map(e=>e.billableService||e.item).filter(Boolean).join(" & ")})),[k]),M=""!==h.trim()||""!==E.id||null!==v||null!==C,L=(0,l.useCallback)(e=>{I(1),g(e.target.value)},[I,g]),H=(0,l.useCallback)(({selectedItem:e})=>{y(e),I(1)},[I]),x=(0,l.useCallback)(e=>{T(e??null),I(1)},[I]),$=(0,l.useCallback)(e=>{N(e??null),I(1)},[I]),z=(0,l.useCallback)(()=>{T(null),N(null),I(1)},[I]);return n().createElement(n().Fragment,null,n().createElement("div",{className:b.filterContainer},n().createElement(u.Dropdown,{className:b.filterDropdown,direction:"bottom",id:"bill-payment-status-filter",selectedItem:E,items:m,itemToString:e=>e?e.text:"",label:"",onChange:H,size:o,titleText:e("filterBy","Filter by:"),type:"inline"}),n().createElement("div",{className:b.datePickerContainer},n().createElement(c.OpenmrsDatePicker,{id:"bill-start-date-filter",labelText:e("from","From"),maxDate:C,value:v,onChange:x,size:o}),n().createElement(c.OpenmrsDatePicker,{id:"bill-end-date-filter",labelText:e("to","To"),minDate:v,value:C,onChange:$,size:o,invalidText:e("endDateBeforeStartDate","End date must be after the start date")}),v||C?n().createElement(u.Button,{className:b.clearDatesButton,kind:"ghost",onClick:z,size:o},e("clearDates","Clear dates")):null)),A&&!k?.length?n().createElement("div",{className:b.loaderContainer,"data-testid":"bills-table-skeleton"},n().createElement(u.DataTableSkeleton,{rowCount:i,showHeader:!1,showToolbar:!1,zebra:!0,columnCount:B?.length})):D?n().createElement("div",{className:b.errorContainer},n().createElement(u.Layer,null,n().createElement(c.ErrorState,{error:D,headerTitle:e("billList","Bill list")}))):R?.length>0||M?n().createElement("div",{className:b.billListContainer},n().createElement(p,{handleSearch:L,isValidating:P,layout:t,responsiveSize:o,searchString:h,t:e}),n().createElement(u.DataTable,{isSortable:!0,rows:R,headers:B,size:o,useZebraStyles:R?.length>1},({rows:t,headers:a,getRowProps:l,getTableProps:i})=>n().createElement(u.TableContainer,null,n().createElement(u.Table,{...i(),"aria-label":e("billList","Bill list")},n().createElement(u.TableHead,null,n().createElement(u.TableRow,null,a.map(e=>n().createElement(u.TableHeader,{key:e.key},e.header)))),n().createElement(u.TableBody,null,t.map(e=>n().createElement(u.TableRow,{key:e.id,...l({row:e})},e.cells.map(e=>n().createElement(u.TableCell,{key:e.id},e.value)))))))),R?.length===0&&n().createElement("div",{className:b.filterEmptyState},n().createElement(u.Layer,{level:0},n().createElement(u.Tile,{className:b.filterEmptyStateTile},n().createElement("p",{className:b.filterEmptyStateContent},e("noMatchingBillsToDisplay","No matching bills to display")),n().createElement("p",{className:b.filterEmptyStateHelper},e("checkFilters","Check the filters above"))))),S>0&&n().createElement(u.Pagination,{forwardText:e("nextPage","Next page"),backwardText:e("previousPage","Previous page"),page:w,pageSize:i,pageSizes:[10,20,30,40,50],totalItems:S,onChange:({pageSize:e,page:t})=>{e!==i?(s(e),I(1)):t!==w&&I(t)}})):n().createElement(u.Layer,{className:b.emptyStateContainer},n().createElement(u.Tile,{className:b.tile},n().createElement("div",{className:b.illo},n().createElement(c.EmptyCardIllustration,null)),n().createElement("p",{className:b.content},e("noBillsToDisplay","There are no bills to display.")))))};function y(){let{t:e}=(0,r.useTranslation)();return n().createElement(n().Fragment,null,n().createElement(s.A,{title:e("billing","Billing")}),n().createElement("section",{className:"-esm-billing__billing-dashboard__billsTableContainer___XBT2N"},n().createElement(E,null)))}var h=a(2137),g=a(9564),f=a(7240),v=a(1772),T=a(6762),C=a(9785),N=a(4476),k=a(3285);let D=({label:e,value:t,hasBalance:a})=>n().createElement("div",{className:"-esm-billing__invoice-breakdown__invoiceBreakdown___IGWfb"},n().createElement("span",{className:a?"-esm-billing__invoice-breakdown__extendedLabel___fJ78V":"-esm-billing__invoice-breakdown__label___WpAJx"},e,": "),n().createElement("span",{className:"-esm-billing__invoice-breakdown__value___L3Y8v"},t));var w=a(6335),A=a.n(w),P=a(7003);let S={errorRetryCount:2},I=async e=>{let{uuid:t,attributes:a}=e,l=a?.find(e=>"919b51c9-8e2e-468f-8354-181bf3e55786"===e.attributeType.uuid)?.uuid;return(0,c.openmrsFetch)(`${c.restBaseUrl}/visit/${t}/attribute/${l}`,{body:{value:!1},headers:{"Content-Type":"application/json"},method:"POST"})},B=({disablePayment:e})=>{let{t}=(0,r.useTranslation)(),{control:a,formState:{errors:l}}=(0,C.xW)(),{paymentModes:i,isLoading:s,error:o}=(()=>{let e=`${P.B}paymentMode`,{data:t,isLoading:a,error:l,mutate:n}=A()(e,c.openmrsFetch,S);return{paymentModes:t?.data?.results??[],isLoading:a,mutate:n,error:l}})();return s?n().createElement(u.NumberInputSkeleton,null):o?n().createElement("div",{className:"-esm-billing__payment-form__errorPaymentContainer___Ft9DN"},n().createElement(c.ErrorState,{headerTitle:t("errorLoadingPaymentModes","Error loading payment modes"),error:o})):e?null:n().createElement("div",{className:"-esm-billing__payment-form__container___P4SMq"},n().createElement("div",{className:"-esm-billing__payment-form__paymentMethodContainer___fZiwB"},n().createElement(C.xI,{control:a,name:"payment.method",render:({field:e})=>n().createElement(u.Dropdown,{id:"paymentMethod",selectedItem:i?.find(t=>t.uuid===e.value)??null,onChange:({selectedItem:t})=>e.onChange(t?.uuid??""),titleText:t("paymentMethod","Payment method"),label:t("selectPaymentMethod","Select payment method"),items:i,itemToString:e=>e?e.name:"",invalid:!!l?.payment?.method,invalidText:l?.payment?.method?.message})}),n().createElement(C.xI,{control:a,name:"payment.amount",render:({field:e})=>n().createElement(u.NumberInput,{allowEmpty:!0,disableWheel:!0,hideSteppers:!0,id:"paymentAmount",invalid:!!l?.payment?.amount,invalidText:l?.payment?.amount?.message,label:t("amount","Amount"),onChange:(t,{value:a})=>{let l=""===a||void 0===a?void 0:Number(a);e.onChange(l)},placeholder:t("enterAmount","Enter amount"),value:e.value??""})}),n().createElement(C.xI,{name:"payment.referenceCode",control:a,render:({field:e})=>n().createElement(u.TextInput,{id:"paymentReferenceCode",labelText:t("referenceNumber","Reference number"),name:e.name,onBlur:e.onBlur,onChange:e.onChange,placeholder:t("enterReferenceNumber","Enter reference number"),type:"text",value:e.value??""})})))},R=({bill:e})=>{let{t}=(0,r.useTranslation)(),{defaultCurrency:a}=(0,c.useConfig)(),l=[{key:"dateCreated",header:t("dateOfPayment","Date of payment")},{key:"amount",header:t("billAmount","Bill amount")},{key:"amountTendered",header:t("amountTendered","Amount tendered")},{key:"paymentMethod",header:t("paymentMethod","Payment method")}],i=(e?.payments??[]).map((e,t)=>{let l=new Date(e.dateCreated);return{id:`${e.uuid}-${t}`,dateCreated:(0,c.formatDate)(l),amountTendered:(0,v.aL)(e.amountTendered,a),amount:(0,v.aL)(e.amount,a),paymentMethod:e.instanceType.name,sortKey:l.getTime()}});if(i.sort((e,t)=>t.sortKey-e.sortKey),0!==Object.values(e?.payments??{}).length)return n().createElement(u.DataTable,{size:"sm",rows:i,headers:l},({rows:e,headers:t,getTableProps:a,getHeaderProps:l,getRowProps:i})=>n().createElement(u.Table,a(),n().createElement(u.TableHead,null,n().createElement(u.TableRow,null,t.map(e=>n().createElement(u.TableHeader,l({header:e}),e.header)))),n().createElement(u.TableBody,null,e.map(e=>n().createElement(u.TableRow,i({row:e}),e.cells.map(e=>n().createElement(u.TableCell,{key:e.id},e.value)))))))},M=({bill:e,mutate:t,onFinalizeBill:a})=>{let{t:l}=(0,r.useTranslation)(),{mutate:i}=(0,w.useSWRConfig)(),s=N.z.object({method:N.z.string().refine(e=>!!e,"Payment method is required"),amount:N.z.number({required_error:l("amountRequired","Amount is required"),invalid_type_error:l("amountRequired","Amount is required")}).positive({message:l("amountMustBePositive","Amount must be greater than 0")}).max((e?.netAmount??0)-(e?.tenderedAmount??0),{message:l("paymentAmountCannotExceedAmountDue","Payment amount cannot exceed amount due")}),referenceCode:N.z.union([N.z.number(),N.z.string()]).optional()}),o=N.z.object({payment:s}),{currentVisit:m}=(0,c.useVisit)(e?.patientUuid),{defaultCurrency:b}=(0,c.useConfig)(),p={payment:{method:"",amount:void 0,referenceCode:""}},E=(0,C.mN)({mode:"all",defaultValues:p,resolver:(0,k.u)(o)}),y=(0,C.FH)({name:"payment",control:E.control,defaultValue:p.payment});if(!e)return null;let h=(e.refunds??[]).filter(e=>e.status===_.fH.COMPLETED).reduce((e,t)=>e+t.refundAmount,0),g=(e.netAmount??0)-(e.tenderedAmount??0),f=e.status===_.ih.PENDING,T=async()=>{if(y?.method&&null!=y.amount)try{await (0,d.TS)({instanceType:y.method,amountTendered:Number(y.amount),amount:e.totalAmount??0},e.uuid),(0,c.showSnackbar)({title:l("billPayment","Bill payment"),subtitle:l("paymentProcessedSuccessfully","Payment processed successfully"),kind:"success"}),m&&I(m),E.reset(p),t(),i((0,d.Z5)(e.patientUuid))}catch(e){(0,c.showSnackbar)({title:l("errorProcessingPayment","Error processing payment"),kind:"error",subtitle:e?.message})}};return n().createElement(C.Op,E,n().createElement("div",{className:"-esm-billing__payments__wrapper___V4WiR"},n().createElement("div",{className:"-esm-billing__payments__paymentContainer___1SfXU"},n().createElement(c.CardHeader,{title:l("payments","Payments")},n().createElement("span",null)),n().createElement("div",null,f?n().createElement("div",{className:"-esm-billing__payments__pendingEmptyState___jUFD7"},n().createElement(u.Layer,null,n().createElement(u.Tile,{className:"-esm-billing__payments__pendingEmptyStateTile___q+iuz"},n().createElement("p",{className:"-esm-billing__payments__pendingEmptyStateContent___B8pVF"},l("billNotFinalized","Bill not finalized")),n().createElement("p",{className:"-esm-billing__payments__pendingEmptyStateHelper___amDGw"},l("finalizeBillToRecordPayment","Finalize this bill before recording a payment.")),n().createElement(u.Button,{className:"-esm-billing__payments__finalizeButton___nCnCg",kind:"primary",size:"sm",onClick:a},l("finalizeBill","Finalize bill"))))):n().createElement(n().Fragment,null,n().createElement(R,{bill:e}),n().createElement(B,{disablePayment:g<=0})))),n().createElement("div",{className:"-esm-billing__payments__divider___C6sdr"}),n().createElement("div",{className:"-esm-billing__payments__paymentTotals___-3A2t"},n().createElement(D,{label:l("totalAmount","Total amount"),value:(0,v.aL)(e.totalAmount??0,b)}),n().createElement(D,{label:l("totalTendered","Total tendered"),value:(0,v.aL)(e.tenderedAmount??0,b)}),n().createElement(D,{label:l("discount","Discount"),value:`- ${(0,v.aL)((e.totalAmount??0)-(e.netAmount??0),b)}`}),n().createElement(D,{label:l("refunds","Refunds"),value:`- ${(0,v.aL)(h,b)}`}),n().createElement(D,{hasBalance:g<0,label:l("amountDue","Amount due"),value:(0,v.aL)(g,b)}),n().createElement("div",{className:"-esm-billing__payments__processPayments___RG8aV"},n().createElement(u.Button,{onClick:()=>(0,c.navigate)({to:window.getOpenmrsSpaBase()+"home/billing"}),kind:"secondary"},l("discard","Discard")),!f&&n().createElement(u.Button,{onClick:T,disabled:!y?.method||null==y.amount||!E.formState.isValid},l("processPayment","Process Payment"))))))},L=({billUuid:e})=>{let{t}=(0,r.useTranslation)(),[a,i]=(0,l.useState)(!1),s=new URL(window.location.href);return n().createElement(u.Button,{kind:"secondary",className:"-esm-billing__print-receipt__button___QnAQS",renderIcon:e=>n().createElement(g.xj,{size:24,...e}),onClick:()=>{i(!0),setTimeout(()=>{let t=`${s.origin}/openmrs${P.B}receipt?billUuid=${e}`,a=document.createElement("a");a.href=t,a.download=`receipt_${e}.pdf`,document.body.appendChild(a),a.click(),document.body.removeChild(a),i(!1)},1e3)},disabled:a},a?(0,c.getCoreTranslation)("loading"):t("printReceipt","Print receipt"))},H=()=>{let{data:e}=(0,d.eC)();return e?n().createElement("div",{className:"-esm-billing__printable-footer__container___mTh7B"},n().createElement("p",{className:"-esm-billing__printable-footer__itemFooter___Y5pkL"},e?.display)):n().createElement("div",null,"--")};var x=a(2193),$=a.n(x);let z="-esm-billing__printable-invoice-header__img___rSlvX",F="-esm-billing__printable-invoice-header__sectionHeading___tOV2s",U="-esm-billing__printable-invoice-header__itemLabel___+hACh",q=({patientDetails:e,defaultFacility:t,bill:a})=>{let{t:l}=(0,r.useTranslation)(),{logo:i,country:s,defaultCurrency:o}=(0,c.useConfig)(),m={[l("invoiceNo","Invoice #")]:a?.receiptNumber,[l("invoiceDate","Invoice date")]:a?.dateCreated?(0,c.formatDate)((0,c.parseDate)(a.dateCreated),{mode:"wide",noToday:!0,time:!1}):"--",[l("totalAmount","Total amount")]:`${o} ${a?.totalAmount}`,[l("totalPaid","Total paid")]:`${o} ${a?.tenderedAmount}`,[l("amountBalance","Amount balance")]:`${o} ${a?.netAmount-a?.tenderedAmount}`,...a?.status&&{[l("invoiceStatus","Invoice status")]:a.status}},u={[l("name","Name")]:e?.name,...e.gender&&{[l("gender","Gender")]:e.gender},...e.birthDate&&{[l("birthDate","Date of birth")]:(0,c.formatDate)((0,c.parseDate)(e.birthDate),{time:!1})},...e.address&&{[l("address","Address")]:e.address}};return n().createElement("div",{className:"-esm-billing__printable-invoice-header__container___1u0nI"},n().createElement("div",{className:"-esm-billing__printable-invoice-header__printableHeader___Jl02J"},n().createElement("div",{className:"-esm-billing__printable-invoice-header__logo___ZpVka"},i?.src&&!$()(i.src)?n().createElement("img",{className:z,src:(0,c.interpolateUrl)(i.src),alt:i.alt}):i?.alt&&!$()(i.alt)?i.alt:n().createElement("svg",{className:z,role:"img",width:110,height:40,viewBox:"0 0 380 119",xmlns:"http://www.w3.org/2000/svg"},n().createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M40.29 40.328a27.755 27.755 0 0 1 19.688-8.154c7.669 0 14.613 3.102 19.647 8.116l.02-18.54A42.835 42.835 0 0 0 59.978 17c-7.089 0-13.813 1.93-19.709 4.968l.021 18.36ZM79.645 79.671a27.744 27.744 0 0 1-19.684 8.154c-7.67 0-14.614-3.101-19.651-8.116l-.02 18.54A42.857 42.857 0 0 0 59.96 103a42.833 42.833 0 0 0 19.672-4.751l.013-18.578ZM40.328 79.696c-5.038-5.037-8.154-11.995-8.154-19.685 0-7.669 3.102-14.612 8.116-19.65l-18.54-.02A42.85 42.85 0 0 0 17 60.012a42.819 42.819 0 0 0 4.752 19.672l18.576.013ZM79.634 40.289a27.753 27.753 0 0 1 8.154 19.688 27.744 27.744 0 0 1-8.117 19.646l18.542.02a42.842 42.842 0 0 0 4.749-19.666c0-7.09-1.714-13.779-4.751-19.675l-18.577-.013ZM156.184 60.002c0-8.748-6.118-15.776-15.025-15.776-8.909 0-15.025 7.028-15.025 15.776 0 8.749 6.116 15.78 15.025 15.78 8.907 0 15.025-7.031 15.025-15.78Zm-34.881 0c0-11.482 8.318-19.958 19.856-19.958 11.536 0 19.855 8.477 19.855 19.959 0 11.484-8.319 19.964-19.855 19.964-11.538 0-19.856-8.48-19.856-19.965ZM179.514 75.54c5.507 0 9.05-4.14 9.05-9.482 0-5.341-3.543-9.483-9.05-9.483-5.505 0-9.046 4.142-9.046 9.483 0 5.342 3.541 9.482 9.046 9.482ZM166.22 53.306h4.248v3.704h.11c2.344-2.725 5.449-4.36 9.154-4.36 8.014 0 13.408 5.67 13.408 13.408 0 7.63-5.613 13.406-12.752 13.406-4.58 0-8.231-2.29-9.81-5.178h-.11V90.87h-4.248V53.306ZM217.773 63.768c-.163-4.305-3-7.193-7.686-7.193-4.685 0-7.79 2.888-8.335 7.193h16.021Zm3.653 10.412c-3.001 3.868-6.596 5.284-11.339 5.284-8.01 0-12.914-5.993-12.914-13.406 0-7.901 5.559-13.407 13.08-13.407 7.196 0 12.096 4.906 12.096 13.354v1.362h-20.597c.325 4.413 3.704 8.173 8.335 8.173 3.65 0 6.105-1.307 8.12-3.868l3.219 2.508ZM227.854 59.356c0-2.346-.216-4.36-.216-6.05h4.031c0 1.363.11 2.777.11 4.195h.11c1.144-2.505 4.306-4.85 8.5-4.85 6.705 0 9.699 4.252 9.699 10.41v15.748h-4.248v-15.31c0-4.253-1.856-6.924-5.833-6.924-5.503 0-7.903 3.979-7.903 9.811V78.81h-4.25V59.356ZM259.211 41.008h6.708L278.8 70.791h.107l12.982-29.782h6.549v37.99h-4.506V47.124h-.106L280.192 79h-2.738l-13.629-31.875h-.107V79h-4.507V41.01ZM312.392 57.752h4.023c4.992 0 11.487 0 11.487-6.282 0-5.47-4.776-6.276-9.177-6.276h-6.333v12.558Zm-4.506-16.744h9.711c7.352 0 15.132 1.072 15.132 10.462 0 5.527-3.594 9.125-9.495 10.037L334.018 79h-5.525l-10.304-17.063h-5.797V79h-4.506V41.01ZM358.123 47.712c-1.506-2.413-4.187-3.486-6.926-3.486-3.973 0-8.1 1.88-8.1 6.385 0 3.49 1.931 5.047 7.994 6.98 5.903 1.878 11.377 3.809 11.377 11.267 0 7.567-6.495 11.11-13.36 11.11-4.402 0-9.125-1.45-11.7-5.262l3.862-3.165c1.61 2.794 4.83 4.24 8.105 4.24 3.862 0 8.263-2.253 8.263-6.601 0-4.669-3.165-5.474-9.928-7.728-5.366-1.771-9.442-4.134-9.442-10.463 0-7.298 6.277-10.945 12.929-10.945 4.241 0 7.836 1.178 10.625 4.45l-3.699 3.218Z"}))),n().createElement("div",{className:"-esm-billing__printable-invoice-header__facilityDetails___uJPtI"},n().createElement("p",{className:"-esm-billing__printable-invoice-header__facilityName___81nN9"},t?.display),n().createElement("p",{className:U},s))),n().createElement("h1",{className:"-esm-billing__printable-invoice-header__invoiceHeading___9Xftg"},l("invoice","Invoice")),n().createElement("div",{className:"-esm-billing__printable-invoice-header__printableBody___cMhfI"},n().createElement("div",{className:"-esm-billing__printable-invoice-header__detailsContainer___rJn9A"},n().createElement("div",null,n().createElement("h2",{className:F},l("patientInformation","Patient information")),Object.entries(u).map(([e,t])=>n().createElement("p",{className:U,key:e},n().createElement("strong",null,e),n().createElement("span",null,": ",t)))),n().createElement("div",null,n().createElement("h2",{className:F},l("invoiceSummary","Invoice summary")),Object.entries(m).map(([e,t])=>n().createElement("p",{className:U,key:e},n().createElement("strong",null,e),n().createElement("span",null,": ",t)))))))},O={itemsContainer:"-esm-billing__printable-invoice__itemsContainer___EA1KS",tableContainer:"-esm-billing__printable-invoice__tableContainer___CeBjk",totalContainer:"-esm-billing__printable-invoice__totalContainer___+8XbC",item:"-esm-billing__printable-invoice__item___U-0e6",itemHeading:"-esm-billing__printable-invoice__itemHeading___mHy3a",itemTotal:"-esm-billing__printable-invoice__itemTotal___pOXNY",itemLabel:"-esm-billing__printable-invoice__itemLabel___i+Nva",summaryContainer:"-esm-billing__printable-invoice__summaryContainer___A5A-s",paymentHistoryContainer:"-esm-billing__printable-invoice__paymentHistoryContainer___Z+0Pi",balanceContainer:"-esm-billing__printable-invoice__balanceContainer___oekII"},V=({bill:e,patient:t,componentRef:a,defaultFacility:i})=>{let{t:s}=(0,r.useTranslation)(),o=(0,c.useLayoutType)(),{defaultCurrency:m}=(0,c.useConfig)(),d=(0,c.isDesktop)(o)?"sm":"lg",_=[{header:s("inventoryItem","Inventory item"),key:"billItem"},{header:s("quantity","Quantity"),key:"quantity"},{header:s("unitPrice","Unit price"),key:"price"},{header:s("total","Total"),key:"total"}],b=e?.lineItems?.map(e=>({id:`${e.uuid}`,billItem:e.billableService?e.billableService:e.item,quantity:e.quantity,price:`${m} ${e.price}`,total:`${m} ${e.price*e.quantity}`}))??[],p=[{key:"no",header:s("no","No")},{key:"paymentMethod",header:s("paymentMethod","Payment method")},{key:"amountPaid",header:s("amountPaid","Amount paid")},{key:"dateCreated",header:s("dateOfPayment","Date of payment")}],E=(0,l.useMemo)(()=>e?e.payments?.map((e,t)=>({no:t+1,id:`${e.uuid}-${t}`,paymentMethod:e.instanceType.name,amountPaid:`${m} ${e.amountTendered.toFixed(2)}`,dateCreated:(0,c.formatDate)(new Date(e.dateCreated))})):[],[e,m]),y=(0,l.useMemo)(()=>{let e=t?.address?.[0],a=[e?.line?.join(" "),e?.city,e?.district,e?.state].filter(Boolean).join(", ");return{name:`${t?.name?.[0]?.given?.join(" ")} ${t?.name?.[0].family}`,birthDate:t?.birthDate,gender:(0,v.o_)(t?.gender,s),address:a}},[t,s]);return n().createElement("div",{className:O.container,ref:a},n().createElement(q,{patientDetails:y,defaultFacility:i,bill:e}),n().createElement("div",{className:O.itemsContainer},n().createElement("div",{className:O.tableContainer},n().createElement(u.DataTable,{rows:b,headers:_,size:d,useZebraStyles:!1},({rows:e,headers:t,getRowProps:a,getTableProps:l})=>n().createElement(u.TableContainer,null,n().createElement(u.Table,{...l(),"aria-label":s("invoiceLineItems","Invoice line items")},n().createElement(u.TableHead,null,n().createElement(u.TableRow,null,t.map(e=>n().createElement(u.TableHeader,{key:e.key},e.header)))),n().createElement(u.TableBody,null,e.map(e=>n().createElement(u.TableRow,{key:e.id,...a({row:e})},e.cells.map(e=>n().createElement(u.TableCell,{key:e.id},e.value)))))))),e?.netAmount!=null&&e.totalAmount!==e.netAmount?n().createElement(n().Fragment,null,n().createElement("div",{className:O.balanceContainer},n().createElement("span",{className:O.itemHeading},s("subtotal","Subtotal"),":")," ",n().createElement("span",{className:O.itemLabel},n().createElement("strong",null,m," ",e?.totalAmount))),n().createElement("div",{className:O.balanceContainer},n().createElement("span",{className:O.itemHeading},s("discount","Discount"),":")," ",n().createElement("span",{className:O.itemLabel},n().createElement("strong",null,"- ",m," ",(e?.totalAmount??0)-(e?.netAmount??0)))),n().createElement("div",{className:O.balanceContainer},n().createElement("span",{className:O.itemHeading},s("totalAmount","Total amount"),":")," ",n().createElement("span",{className:O.itemLabel},n().createElement("strong",null,m," ",e?.netAmount)))):n().createElement("div",{className:O.balanceContainer},n().createElement("span",{className:O.itemHeading},s("totalAmount","Total amount"),":")," ",n().createElement("span",{className:O.itemLabel},n().createElement("strong",null,m," ",e?.totalAmount))),e?.payments?.length>0&&n().createElement("div",{className:O.paymentHistoryContainer},n().createElement(u.DataTable,{rows:E,headers:p,size:d},({rows:e,headers:t,getRowProps:a,getTableProps:l})=>n().createElement(u.TableContainer,null,n().createElement(u.Table,{...l(),"aria-label":s("paymentHistory","Payment History")},n().createElement(u.TableHead,null,n().createElement(u.TableRow,null,t.map(e=>n().createElement(u.TableHeader,{key:e.key},e.header)))),n().createElement(u.TableBody,null,e.map(e=>n().createElement(u.TableRow,{key:e.id,...a({row:e})},e.cells.map(e=>n().createElement(u.TableCell,{key:e.id},e.value))))))))),n().createElement("div",{className:O.balanceContainer},n().createElement("span",{className:O.itemHeading},s("totalTendered","Total tendered"),":"),n().createElement("span",{className:O.itemLabel},n().createElement("strong",null,m," ",e?.tenderedAmount))),n().createElement("div",{className:O.balanceContainer},n().createElement("span",{className:O.itemHeading},s("balance","Balance"),":"),n().createElement("span",{className:O.itemLabel},n().createElement("strong",null,m," ",e?.netAmount-e?.tenderedAmount))))),n().createElement(H,null))},j=({bill:e})=>{let{t}=(0,r.useTranslation)(),{defaultCurrency:a}=(0,c.useConfig)(),i=(0,c.useLayoutType)(),s=(0,c.isDesktop)(i)?"sm":"lg",o=(0,l.useMemo)(()=>(e.discounts??[]).filter(e=>!e.voided),[e.discounts]),d=[{header:t("discountItem","Item"),key:"item",width:25},{header:t("discountType","Type"),key:"type",width:15},{header:t("discountAmount","Amount"),key:"amount",width:15},{header:t("justification","Justification"),key:"justification",width:30},{header:t("status","Status"),key:"status",width:15}],b=(0,l.useMemo)(()=>(o??[]).map(l=>({id:l.uuid,item:function(e,t,a){if(!e.lineItemUuid)return a;let l=t.lineItems?.find(t=>t.uuid===e.lineItemUuid);return l?.item||l?.billableService||a}(l,e,t("wholeBill","Whole bill")),type:l.discountType===_.Bp.PERCENTAGE?t("percentage","Percentage"):t("fixedAmount","Fixed amount"),amount:(0,v.aL)(l.discountAmount,a),justification:l.justification,status:t(l.status.toLowerCase(),l.status)})),[o,e,a,t]);return o&&0!==o.length?n().createElement("div",{className:"-esm-billing__discounts-table__discountsWrapper___nAknV"},n().createElement(u.DataTable,{headers:d,rows:b,size:s,useZebraStyles:!0,overflowMenuOnHover:(0,c.isDesktop)(i)},({rows:e,headers:a,getRowProps:l,getTableProps:i})=>n().createElement(u.TableContainer,{description:n().createElement("span",{className:"-esm-billing__discounts-table__tableDescription___dsPxA"},n().createElement("span",null,t("discountsAppliedToBill","Discounts applied to this bill"))),title:t("discounts","Discounts")},n().createElement(u.Table,{...i(),"aria-label":t("billDiscounts","Bill discounts"),className:m()("-esm-billing__discounts-table__discountsTable___Wd5vG","billingTable")},n().createElement(u.TableHead,null,n().createElement(u.TableRow,null,a.map(e=>n().createElement(u.TableHeader,{key:e.key},e.header)))),n().createElement(u.TableBody,null,e.map(e=>n().createElement(u.TableRow,{key:e.id,...l({row:e})},e.cells.map(e=>n().createElement(u.TableCell,{key:e.id},e.value))))))))):null};var Z=a(8683);let G=({bill:e,onMutate:t})=>{let{t:a}=(0,r.useTranslation)(),{defaultCurrency:i}=(0,c.useConfig)(),s=(0,c.useSession)(),o=(0,c.useLayoutType)(),d=(0,c.isDesktop)(o)?"sm":"lg",[b,p]=(0,l.useState)(null),E=[{header:a("refundItem","Item"),key:"item"},{header:a("refundAmount","Refund amount"),key:"amount"},{header:a("reason","Reason"),key:"reason"},{header:a("status","Status"),key:"status"},{header:a("action","Action"),key:"action"}],y=(0,l.useMemo)(()=>(e.refunds??[]).filter(e=>!e.voided),[e.refunds]),h=(0,l.useCallback)(async e=>{p(e.uuid);try{await (0,Z.eK)(e.uuid,{status:_.fH.COMPLETED,completer:s.user?.uuid}),(0,c.showSnackbar)({title:a("refundProcessed","Refund processed"),kind:"success"}),t?.()}catch(t){let e=t?.responseBody?.error?.message??(t instanceof Error?t.message:void 0);(0,c.showSnackbar)({title:a("refundProcessFailed","Could not process refund"),subtitle:e,kind:"error"})}finally{p(null)}},[t,s.user?.uuid,a]),g=(0,l.useMemo)(()=>(y??[]).map(t=>({id:t.uuid,item:function(e,t,a){if(!e.lineItemUuid)return a;let l=t.lineItems?.find(t=>t.uuid===e.lineItemUuid);return l?.item||l?.billableService||a}(t,e,a("wholeBill","Whole bill")),amount:(0,v.aL)(t.refundAmount,i),reason:t.reason,status:a(t.status.toLowerCase(),t.status),action:n().createElement(u.Button,{kind:"primary",size:"sm",disabled:b===t.uuid||t.status!==_.fH.APPROVED,onClick:()=>h(t)},b===t.uuid?n().createElement(u.InlineLoading,{description:a("processing","Processing")+"..."}):a("processRefund","Process refund"))})),[y,e,i,b,a,h]);return y&&0!==y.length?n().createElement("div",{className:"-esm-billing__refunds-table__refundsWrapper___ZvDhw"},n().createElement(u.DataTable,{headers:E,rows:g,size:d,useZebraStyles:!0},({rows:e,headers:t,getRowProps:l,getTableProps:i})=>n().createElement(u.TableContainer,{description:n().createElement("span",{className:"-esm-billing__refunds-table__tableDescription___hGPCT"},n().createElement("span",null,a("refundsOnBill","Refunds on this bill"))),title:a("refunds","Refunds")},n().createElement(u.Table,{...i(),"aria-label":a("billRefunds","Bill refunds"),className:m()("-esm-billing__refunds-table__refundsTable___B5xVc","billingTable")},n().createElement(u.TableHead,null,n().createElement(u.TableRow,null,t.map(e=>n().createElement(u.TableHeader,{key:e.key},e.header)))),n().createElement(u.TableBody,null,e.map(e=>n().createElement(u.TableRow,{key:e.id,...l({row:e})},e.cells.map(e=>n().createElement(u.TableCell,{key:e.id},e.value))))))))):null},W="-esm-billing__invoice__invoiceContainer___6Vmk0",Y=`
1
+ "use strict";(globalThis.webpackChunk_openmrs_esm_billing_app=globalThis.webpackChunk_openmrs_esm_billing_app||[]).push([["7968"],{8730(e,t,a){a.d(t,{A:()=>r});var l=a(5275),n=a.n(l),i=a(9124);let r=({title:e})=>n().createElement(i.PageHeader,{className:"-esm-billing__billing-header__header___P+PIw","data-testid":"billing-header"},n().createElement(i.PageHeaderContent,{illustration:n().createElement(i.PaymentsDeskPictogram,null),title:e}))},2373(e,t,a){a.d(t,{Zz:()=>n,aL:()=>i,o_:()=>r});var l=a(9124);function n(e){return Array.isArray(e)?e.reduce((e,t)=>"number"==typeof t.price&&"number"==typeof t.quantity&&!0!==t.voided?e+t.price*t.quantity:e,0):0}let i=(e,t)=>{let a=window.i18next?.language?.substring(0,2)??"",l=new Intl.NumberFormat(a,{style:"currency",currency:t,minimumFractionDigits:2}).format(Math.abs(e));return e<0&&(l=`(${l})`),l},r=(e,t)=>{switch(e){case"male":return(0,l.getCoreTranslation)("male");case"female":return(0,l.getCoreTranslation)("female");case"other":return(0,l.getCoreTranslation)("other");case"unknown":return(0,l.getCoreTranslation)("unknown");default:return e}}},1772(e,t,a){a.d(t,{aL:()=>l.aL,o_:()=>l.o_});var l=a(2373)},6762(e,t,a){a.d(t,{A:()=>y});var l=a(5275),n=a.n(l),i=a(6942),r=a.n(i),s=a(8395),o=a(4751),m=a.n(o),u=a(1752),c=a(9124),d=a(5084);let _="-esm-billing__line-item-action-menu__menuitem___lOuJD",b=({bill:e,item:t,onMutate:a,showDiscountRequest:i,onDiscountRequest:r,showRefundRequest:o,onRefundRequest:m})=>{let{t:b}=(0,s.useTranslation)(),p=(0,c.useLayoutType)(),E=(0,l.useCallback)(()=>{let l=(0,c.showModal)("edit-bill-line-item-modal",{bill:e,item:t,closeModal:()=>l(),onMutate:a})},[e,t,a]),y=(0,l.useCallback)(()=>{let e=(0,c.showModal)("delete-line-item-confirmation-modal",{item:t,closeModal:()=>e(),onMutate:a})},[t,a]),h=e?.status===d.ih.PENDING;return n().createElement(u.Layer,null,n().createElement(u.OverflowMenu,{align:"left",flipped:!0,size:(0,c.isDesktop)(p)?"sm":"lg","data-testid":`action-menu-${t.uuid}`},n().createElement(u.OverflowMenuItem,{className:_,"data-testid":`edit-button-${t.uuid}`,disabled:!h,itemText:(0,c.getCoreTranslation)("edit"),onClick:E}),n().createElement(u.OverflowMenuItem,{className:_,"data-testid":`delete-button-${t.uuid}`,disabled:!h,isDelete:!0,itemText:(0,c.getCoreTranslation)("delete"),onClick:y}),i&&n().createElement(u.OverflowMenuItem,{className:_,"data-testid":`request-discount-button-${t.uuid}`,itemText:b("requestDiscount","Request discount"),onClick:r}),o&&n().createElement(u.OverflowMenuItem,{className:_,"data-testid":`request-refund-button-${t.uuid}`,itemText:b("requestRefund","Request refund"),onClick:m})))};var p=a(1772);let E=e=>(e.price??0)*(e.quantity??0),y=({bill:e,isLoadingBill:t,onMutate:a,viewOnly:i})=>{let{t:o}=(0,s.useTranslation)(),{defaultCurrency:_}=(0,c.useConfig)(),y=(0,c.useLayoutType)(),h=(0,l.useMemo)(()=>e?.lineItems??[],[e?.lineItems]),g=(0,c.isDesktop)(y)?"sm":"lg",[f,v]=(0,l.useState)(""),T=(0,c.useDebounce)(f),C=(0,l.useMemo)(()=>(e?.discounts??[]).filter(e=>!e.voided),[e?.discounts]),N=e?.status===d.ih.PENDING||e?.status===d.ih.POSTED,k=C.some(e=>!e.lineItemUuid),D=(0,l.useMemo)(()=>(e?.refunds??[]).filter(e=>!e.voided),[e?.refunds]),w=e?.status===d.ih.PAID||e?.status===d.ih.PARTIALLY_REFUNDED||e?.status===d.ih.REFUND_REQUESTED,A=D.filter(e=>e.status===d.fH.REQUESTED||e.status===d.fH.APPROVED),P=A.some(e=>!e.lineItemUuid),S=(0,l.useMemo)(()=>T?m().filter(T,h,{extract:e=>`${e.billableService} ${e.item}`}).sort((e,t)=>e.score-t.score).map(e=>e.original):h,[T,h]),I=(0,l.useMemo)(()=>new Map(h.map(e=>[e.uuid,e])),[h]),B=[{header:o("number","Number"),key:"no",width:7},{header:o("billItem","Bill item"),key:"billItem",width:25},{header:o("status","Status"),key:"status",width:25},{header:o("quantity","Quantity"),key:"quantity",width:15},{header:o("price","Price"),key:"price",width:24},{header:o("total","Total"),key:"total",width:15}],R=(0,l.useMemo)(()=>S?.map((e,t)=>({no:`${t+1}`,id:`${e.uuid}`,billItem:e.billableService?e.billableService:e?.item,status:e.status,quantity:e.quantity,price:(0,p.aL)(e.price,_),total:(0,p.aL)(E(e),_)}))??[],[S,_]);return t?n().createElement(u.DataTableSkeleton,{"data-testid":"loader",columnCount:B.length,showHeader:!1,showToolbar:!1,zebra:!0}):n().createElement("div",{className:"-esm-billing__invoice-table__lineItemsWrapper___ABU3I"},n().createElement(u.DataTable,{headers:B,rows:R,size:g,useZebraStyles:!0,overflowMenuOnHover:(0,c.isDesktop)(y)},({rows:t,headers:l,getRowProps:s,getTableProps:m})=>n().createElement(u.TableContainer,{description:n().createElement("span",{className:"-esm-billing__invoice-table__tableDescription___JKz3j"},n().createElement("span",null,o("itemsToBeBilled","Items to be billed"))),title:o("lineItems","Line items")},!i&&n().createElement(u.TableToolbarSearch,{className:"-esm-billing__invoice-table__searchbox___oxEnj",expanded:!0,onChange:e=>v(e.target.value),placeholder:o("searchThisTable","Search this table"),size:g}),n().createElement(u.Table,{...m(),"aria-label":o("invoiceLineItems","Invoice line items"),className:r()("-esm-billing__invoice-table__invoiceTable___2hd71","billingTable")},n().createElement(u.TableHead,null,n().createElement(u.TableRow,null,l.map(e=>n().createElement(u.TableHeader,{key:e.key},e.header)),!i&&n().createElement(u.TableHeader,{"aria-label":(0,c.getCoreTranslation)("actions")}))),n().createElement(u.TableBody,null,t.map(t=>{let l,r,o=I.get(t.id);return n().createElement(u.TableRow,{key:t.id,...s({row:t})},t.cells.map(e=>n().createElement(u.TableCell,{key:e.id},e.value)),!i&&n().createElement(u.TableCell,{className:"cds--table-column-menu"},o&&n().createElement(b,{bill:e,item:o,onMutate:a,showDiscountRequest:N&&!k&&(l=o.uuid,!C.some(e=>e.lineItemUuid===l)),onDiscountRequest:()=>{let t;t=(0,c.showModal)("request-discount-modal",{bill:{uuid:e.uuid,total:e.totalAmount??0,amountDue:Math.max(0,(e.netAmount??e.totalAmount??0)-(e.tenderedAmount??0)),receiptNumber:e.receiptNumber,lineItemCount:h.length},lineItem:{uuid:o.uuid,display:o.item||o.billableService||"--",total:E(o),quantity:o.quantity,price:o.price},onMutate:()=>a?.(),closeModal:()=>t()})},showRefundRequest:w&&!P&&(r=o.uuid??"",!A.some(e=>e.lineItemUuid===r))&&!!o.uuid,onRefundRequest:()=>(t=>{if(!t.uuid)return;let l=E(t),n=l-D.filter(e=>e.lineItemUuid===t.uuid&&(e.status===d.fH.APPROVED||e.status===d.fH.COMPLETED)).reduce((e,t)=>e+t.refundAmount,0),i=(0,c.showModal)("request-refund-modal",{bill:{uuid:e.uuid,total:e.totalAmount??0,amountAfterDiscount:e.netAmount??e.totalAmount??0},lineItem:{uuid:t.uuid,display:t.item||t.billableService||"--",total:l,quantity:t.quantity,price:t.price},remainingRefundable:Math.max(0,n),onMutate:()=>a?.(),closeModal:()=>i()})})(o)})))}))))),S?.length===0&&n().createElement("div",{className:"-esm-billing__invoice-table__filterEmptyState___ZtVBH"},n().createElement(u.Layer,null,n().createElement(u.Tile,{className:"-esm-billing__invoice-table__filterEmptyStateTile___j92yY"},n().createElement("p",{className:"-esm-billing__invoice-table__filterEmptyStateContent___41NoP"},o("noMatchingItemsToDisplay","No matching items to display")),!i&&n().createElement("p",{className:"-esm-billing__invoice-table__filterEmptyStateHelper___+DQR2"},o("checkFilters","Check the filters above"))))))}},8683(e,t,a){a.d(t,{KY:()=>s,eK:()=>m,qC:()=>o,zb:()=>u});var l=a(9124),n=a(7003);let i=`${n.B}billRefund`,r=`${n.B}bill`;function s({statuses:e}){let t=new URLSearchParams({refundStatus:e.join(","),v:"default"}),a=`${r}?${t.toString()}`,{data:n,isLoading:i,error:o,mutate:m,isValidating:u}=(0,l.useOpenmrsFetchAll)(a);return{bills:n??[],isLoading:i,error:o,mutate:m,isValidating:u}}async function o(e){return(await (0,l.openmrsFetch)(i,{method:"POST",headers:{"Content-Type":"application/json"},body:e})).data}async function m(e,t){return(await (0,l.openmrsFetch)(`${i}/${e}`,{method:"POST",headers:{"Content-Type":"application/json"},body:t})).data}async function u(e,t){await (0,l.openmrsFetch)(`${i}/${e}?reason=${encodeURIComponent(t)}`,{method:"DELETE"})}},7283(e,t,a){a.r(t),a.d(t,{default:()=>K});var l=a(5275),n=a.n(l),i=a(9335),r=a(8395),s=a(8730),o=a(6942),m=a.n(o),u=a(1752),c=a(9124),d=a(6199),_=a(5084);let b={container:"-esm-billing__bills-table__container___PDs67",emptyStateContainer:"-esm-billing__bills-table__emptyStateContainer___+sc4M",loaderContainer:"-esm-billing__bills-table__loaderContainer___9+3cP",billListContainer:"-esm-billing__bills-table__billListContainer___z5Mjt",filterEmptyState:"-esm-billing__bills-table__filterEmptyState___hV8Kp",filterContainer:"-esm-billing__bills-table__filterContainer___HlgpD",datePickerContainer:"-esm-billing__bills-table__datePickerContainer___Ss4P3",clearDatesButton:"-esm-billing__bills-table__clearDatesButton___ZS5e8",menu:"-esm-billing__bills-table__menu___F7TXn",headerContainer:"-esm-billing__bills-table__headerContainer___FouPn",backgroundDataFetchingIndicator:"-esm-billing__bills-table__backgroundDataFetchingIndicator___-WVf2",tableContainer:"-esm-billing__bills-table__tableContainer___-rFXM",hiddenRow:"-esm-billing__bills-table__hiddenRow___UsKb7",emptyRow:"-esm-billing__bills-table__emptyRow___kJSR-",visitSummaryContainer:"-esm-billing__bills-table__visitSummaryContainer___TzYie",expandedActiveVisitRow:"-esm-billing__bills-table__expandedActiveVisitRow___-imGs",action:"-esm-billing__bills-table__action___T5jNA",illo:"-esm-billing__bills-table__illo___zE0Ny",content:"-esm-billing__bills-table__content___XIyTL",desktopHeading:"-esm-billing__bills-table__desktopHeading___qYmFK",tabletHeading:"-esm-billing__bills-table__tabletHeading___JVDgu",tile:"-esm-billing__bills-table__tile___Zxkhk",menuitem:"-esm-billing__bills-table__menuitem___owZSX",filterEmptyStateTile:"-esm-billing__bills-table__filterEmptyStateTile___qWUMb",filterEmptyStateContent:"-esm-billing__bills-table__filterEmptyStateContent___W3mdv",filterEmptyStateHelper:"-esm-billing__bills-table__filterEmptyStateHelper___nvBYb"};function p({layout:e,handleSearch:t,isValidating:a,responsiveSize:l,searchString:i,t:r}){return n().createElement(n().Fragment,null,n().createElement("div",{className:b.headerContainer},n().createElement("div",{className:m()({[b.tabletHeading]:!(0,c.isDesktop)(e),[b.desktopHeading]:(0,c.isDesktop)(e)})},n().createElement("h4",null,r("billList","Bill list"))),a&&n().createElement("div",{className:b.backgroundDataFetchingIndicator},n().createElement("span",null,n().createElement(u.InlineLoading,null)))),n().createElement(u.Search,{autoFocus:!0,closeButtonLabelText:r("clearSearch","Clear"),"data-testid":"billsTableSearchBar",labelText:r("searchForPatient","Search for a patient"),placeholder:r("filterBillsByPatient","Filter bills by patient name or identifier"),value:i,onChange:t,size:l}))}let E=()=>{let{t:e}=(0,r.useTranslation)(),t=(0,c.useLayoutType)(),{pageSize:a}=(0,c.useConfig)(),[i,s]=(0,l.useState)(a??10),o=(0,c.isDesktop)(t)?"sm":"lg",m=(0,l.useMemo)(()=>[{id:"",text:e("allBills","All bills"),status:""},{id:_.ih.PENDING,text:e("pendingConfirmationBills","Pending confirmation"),status:_.ih.PENDING},{id:_.ih.POSTED,text:e("pendingPaymentBills","Pending payment"),status:_.ih.POSTED},{id:_.ih.PAID,text:e("paidBills","Paid bills"),status:_.ih.PAID},{id:_.ih.REFUNDED,text:e("refundedBills","Refunded bills"),status:`${_.ih.REFUNDED},${_.ih.PARTIALLY_REFUNDED}`},{id:_.ih.REFUND_REQUESTED,text:e("pendingRefundBills","Pending refunds"),status:_.ih.REFUND_REQUESTED}],[e]),[E,y]=(0,l.useState)(()=>m.find(e=>e.id===_.ih.PENDING)??m[0]),[h,g]=(0,l.useState)(""),f=(0,c.useDebounce)(h,500),[v,T]=(0,l.useState)(null),[C,N]=(0,l.useState)(null),{bills:k,error:D,currentPage:w,isLoading:A,isValidating:P,totalCount:S,goTo:I}=(0,d.fu)(i,E.status,f||void 0,v,C),B=[{header:e("billDate","Bill date"),key:"dateCreated"},{header:e("invoiceNumber","Invoice number"),key:"receiptNumberDisplay"},{header:e("patientIdentifier","Patient identifier"),key:"identifier"},{header:e("patientName","Patient name"),key:"patientName"},{header:e("billedItems","Billed items"),key:"billedItems"}],R=(0,l.useMemo)(()=>k?.map(e=>({...e,id:String(e.id),dateCreated:e.dateCreated?(0,c.formatDate)((0,c.parseDate)(e.dateCreated),{mode:"wide"}):"--",receiptNumberDisplay:n().createElement(c.ConfigurableLink,{style:{textDecoration:"none"},to:"${openmrsSpaBase}/home/billing/patient/${patientUuid}/${uuid}",templateParams:{patientUuid:e.patientUuid,uuid:e.uuid}},e.receiptNumber),billedItems:e?.lineItems?.map(e=>e.billableService||e.item).filter(Boolean).join(" & ")})),[k]),M=""!==h.trim()||""!==E.id||null!==v||null!==C,L=(0,l.useCallback)(e=>{I(1),g(e.target.value)},[I,g]),H=(0,l.useCallback)(({selectedItem:e})=>{y(e),I(1)},[I]),x=(0,l.useCallback)(e=>{T(e??null),I(1)},[I]),$=(0,l.useCallback)(e=>{N(e??null),I(1)},[I]),z=(0,l.useCallback)(()=>{T(null),N(null),I(1)},[I]);return n().createElement(n().Fragment,null,n().createElement("div",{className:b.filterContainer},n().createElement(u.Dropdown,{className:b.filterDropdown,direction:"bottom",id:"bill-payment-status-filter",selectedItem:E,items:m,itemToString:e=>e?e.text:"",label:"",onChange:H,size:o,titleText:e("filterBy","Filter by:"),type:"inline"}),n().createElement("div",{className:b.datePickerContainer},n().createElement(c.OpenmrsDatePicker,{id:"bill-start-date-filter",labelText:e("from","From"),maxDate:C,value:v,onChange:x,size:o}),n().createElement(c.OpenmrsDatePicker,{id:"bill-end-date-filter",labelText:e("to","To"),minDate:v,value:C,onChange:$,size:o,invalidText:e("endDateBeforeStartDate","End date must be after the start date")}),v||C?n().createElement(u.Button,{className:b.clearDatesButton,kind:"ghost",onClick:z,size:o},e("clearDates","Clear dates")):null)),A&&!k?.length?n().createElement("div",{className:b.loaderContainer,"data-testid":"bills-table-skeleton"},n().createElement(u.DataTableSkeleton,{rowCount:i,showHeader:!1,showToolbar:!1,zebra:!0,columnCount:B?.length})):D?n().createElement("div",{className:b.errorContainer},n().createElement(u.Layer,null,n().createElement(c.ErrorState,{error:D,headerTitle:e("billList","Bill list")}))):R?.length>0||M?n().createElement("div",{className:b.billListContainer},n().createElement(p,{handleSearch:L,isValidating:P,layout:t,responsiveSize:o,searchString:h,t:e}),n().createElement(u.DataTable,{isSortable:!0,rows:R,headers:B,size:o,useZebraStyles:R?.length>1},({rows:t,headers:a,getRowProps:l,getTableProps:i})=>n().createElement(u.TableContainer,null,n().createElement(u.Table,{...i(),"aria-label":e("billList","Bill list")},n().createElement(u.TableHead,null,n().createElement(u.TableRow,null,a.map(e=>n().createElement(u.TableHeader,{key:e.key},e.header)))),n().createElement(u.TableBody,null,t.map(e=>n().createElement(u.TableRow,{key:e.id,...l({row:e})},e.cells.map(e=>n().createElement(u.TableCell,{key:e.id},e.value)))))))),R?.length===0&&n().createElement("div",{className:b.filterEmptyState},n().createElement(u.Layer,{level:0},n().createElement(u.Tile,{className:b.filterEmptyStateTile},n().createElement("p",{className:b.filterEmptyStateContent},e("noMatchingBillsToDisplay","No matching bills to display")),n().createElement("p",{className:b.filterEmptyStateHelper},e("checkFilters","Check the filters above"))))),S>0&&n().createElement(u.Pagination,{forwardText:e("nextPage","Next page"),backwardText:e("previousPage","Previous page"),page:w,pageSize:i,pageSizes:[10,20,30,40,50],totalItems:S,onChange:({pageSize:e,page:t})=>{e!==i?(s(e),I(1)):t!==w&&I(t)}})):n().createElement(u.Layer,{className:b.emptyStateContainer},n().createElement(u.Tile,{className:b.tile},n().createElement("div",{className:b.illo},n().createElement(c.EmptyCardIllustration,null)),n().createElement("p",{className:b.content},e("noBillsToDisplay","There are no bills to display.")))))};function y(){let{t:e}=(0,r.useTranslation)();return n().createElement(n().Fragment,null,n().createElement(s.A,{title:e("billing","Billing")}),n().createElement("section",{className:"-esm-billing__billing-dashboard__billsTableContainer___XBT2N"},n().createElement(E,null)))}var h=a(2137),g=a(9564),f=a(7240),v=a(1772),T=a(6762),C=a(9785),N=a(4476),k=a(3285);let D=({label:e,value:t,hasBalance:a})=>n().createElement("div",{className:"-esm-billing__invoice-breakdown__invoiceBreakdown___IGWfb"},n().createElement("span",{className:a?"-esm-billing__invoice-breakdown__extendedLabel___fJ78V":"-esm-billing__invoice-breakdown__label___WpAJx"},e,": "),n().createElement("span",{className:"-esm-billing__invoice-breakdown__value___L3Y8v"},t));var w=a(6335),A=a.n(w),P=a(7003);let S={errorRetryCount:2},I=async e=>{let{uuid:t,attributes:a}=e,l=a?.find(e=>"919b51c9-8e2e-468f-8354-181bf3e55786"===e.attributeType.uuid)?.uuid;return(0,c.openmrsFetch)(`${c.restBaseUrl}/visit/${t}/attribute/${l}`,{body:{value:!1},headers:{"Content-Type":"application/json"},method:"POST"})},B=({disablePayment:e})=>{let{t}=(0,r.useTranslation)(),{control:a,formState:{errors:l}}=(0,C.xW)(),{paymentModes:i,isLoading:s,error:o}=(()=>{let e=`${P.B}paymentMode`,{data:t,isLoading:a,error:l,mutate:n}=A()(e,c.openmrsFetch,S);return{paymentModes:t?.data?.results??[],isLoading:a,mutate:n,error:l}})();return s?n().createElement(u.NumberInputSkeleton,null):o?n().createElement("div",{className:"-esm-billing__payment-form__errorPaymentContainer___Ft9DN"},n().createElement(c.ErrorState,{headerTitle:t("errorLoadingPaymentModes","Error loading payment modes"),error:o})):e?null:n().createElement("div",{className:"-esm-billing__payment-form__container___P4SMq"},n().createElement("div",{className:"-esm-billing__payment-form__paymentMethodContainer___fZiwB"},n().createElement(C.xI,{control:a,name:"payment.method",render:({field:e})=>n().createElement(u.Dropdown,{id:"paymentMethod",selectedItem:i?.find(t=>t.uuid===e.value)??null,onChange:({selectedItem:t})=>e.onChange(t?.uuid??""),titleText:t("paymentMethod","Payment method"),label:t("selectPaymentMethod","Select payment method"),items:i,itemToString:e=>e?e.name:"",invalid:!!l?.payment?.method,invalidText:l?.payment?.method?.message})}),n().createElement(C.xI,{control:a,name:"payment.amount",render:({field:e})=>n().createElement(u.NumberInput,{allowEmpty:!0,disableWheel:!0,hideSteppers:!0,id:"paymentAmount",invalid:!!l?.payment?.amount,invalidText:l?.payment?.amount?.message,label:t("amount","Amount"),onChange:(t,{value:a})=>{let l=""===a||void 0===a?void 0:Number(a);e.onChange(l)},placeholder:t("enterAmount","Enter amount"),value:e.value??""})}),n().createElement(C.xI,{name:"payment.referenceCode",control:a,render:({field:e})=>n().createElement(u.TextInput,{id:"paymentReferenceCode",labelText:t("referenceNumber","Reference number"),name:e.name,onBlur:e.onBlur,onChange:e.onChange,placeholder:t("enterReferenceNumber","Enter reference number"),type:"text",value:e.value??""})})))},R=({bill:e})=>{let{t}=(0,r.useTranslation)(),{defaultCurrency:a}=(0,c.useConfig)(),l=[{key:"dateCreated",header:t("dateOfPayment","Date of payment")},{key:"amount",header:t("billAmount","Bill amount")},{key:"amountTendered",header:t("amountTendered","Amount tendered")},{key:"paymentMethod",header:t("paymentMethod","Payment method")}],i=(e?.payments??[]).map((e,t)=>{let l=new Date(e.dateCreated);return{id:`${e.uuid}-${t}`,dateCreated:(0,c.formatDate)(l),amountTendered:(0,v.aL)(e.amountTendered,a),amount:(0,v.aL)(e.amount,a),paymentMethod:e.instanceType.name,sortKey:l.getTime()}});if(i.sort((e,t)=>t.sortKey-e.sortKey),0!==Object.values(e?.payments??{}).length)return n().createElement(u.DataTable,{size:"sm",rows:i,headers:l},({rows:e,headers:t,getTableProps:a,getHeaderProps:l,getRowProps:i})=>n().createElement(u.Table,a(),n().createElement(u.TableHead,null,n().createElement(u.TableRow,null,t.map(e=>n().createElement(u.TableHeader,l({header:e}),e.header)))),n().createElement(u.TableBody,null,e.map(e=>n().createElement(u.TableRow,i({row:e}),e.cells.map(e=>n().createElement(u.TableCell,{key:e.id},e.value)))))))},M=({bill:e,mutate:t,onFinalizeBill:a})=>{let{t:l}=(0,r.useTranslation)(),{mutate:i}=(0,w.useSWRConfig)(),s=N.z.object({method:N.z.string().refine(e=>!!e,"Payment method is required"),amount:N.z.number({required_error:l("amountRequired","Amount is required"),invalid_type_error:l("amountRequired","Amount is required")}).positive({message:l("amountMustBePositive","Amount must be greater than 0")}).max((e?.netAmount??0)-(e?.tenderedAmount??0),{message:l("paymentAmountCannotExceedAmountDue","Payment amount cannot exceed amount due")}),referenceCode:N.z.union([N.z.number(),N.z.string()]).optional()}),o=N.z.object({payment:s}),{currentVisit:m}=(0,c.useVisit)(e?.patientUuid),{defaultCurrency:b}=(0,c.useConfig)(),p={payment:{method:"",amount:void 0,referenceCode:""}},E=(0,C.mN)({mode:"all",defaultValues:p,resolver:(0,k.u)(o)}),y=(0,C.FH)({name:"payment",control:E.control,defaultValue:p.payment});if(!e)return null;let h=(e.refunds??[]).filter(e=>e.status===_.fH.COMPLETED).reduce((e,t)=>e+t.refundAmount,0),g=(e.netAmount??0)-(e.tenderedAmount??0),f=e.status===_.ih.PENDING,T=async()=>{if(y?.method&&null!=y.amount)try{await (0,d.TS)({instanceType:y.method,amountTendered:Number(y.amount),amount:e.totalAmount??0},e.uuid),(0,c.showSnackbar)({title:l("billPayment","Bill payment"),subtitle:l("paymentProcessedSuccessfully","Payment processed successfully"),kind:"success"}),m&&I(m),E.reset(p),t(),i((0,d.Z5)(e.patientUuid))}catch(e){(0,c.showSnackbar)({title:l("errorProcessingPayment","Error processing payment"),kind:"error",subtitle:e?.message})}};return n().createElement(C.Op,E,n().createElement("div",{className:"-esm-billing__payments__wrapper___V4WiR"},n().createElement("div",{className:"-esm-billing__payments__paymentContainer___1SfXU"},n().createElement(c.CardHeader,{title:l("payments","Payments")},n().createElement("span",null)),n().createElement("div",null,f?n().createElement("div",{className:"-esm-billing__payments__pendingEmptyState___jUFD7"},n().createElement(u.Layer,null,n().createElement(u.Tile,{className:"-esm-billing__payments__pendingEmptyStateTile___q+iuz"},n().createElement("p",{className:"-esm-billing__payments__pendingEmptyStateContent___B8pVF"},l("billNotFinalized","Bill not finalized")),n().createElement("p",{className:"-esm-billing__payments__pendingEmptyStateHelper___amDGw"},l("finalizeBillToRecordPayment","Finalize this bill before recording a payment.")),n().createElement(u.Button,{className:"-esm-billing__payments__finalizeButton___nCnCg",kind:"primary",size:"sm",onClick:a},l("finalizeBill","Finalize bill"))))):n().createElement(n().Fragment,null,n().createElement(R,{bill:e}),n().createElement(B,{disablePayment:g<=0})))),n().createElement("div",{className:"-esm-billing__payments__divider___C6sdr"}),n().createElement("div",{className:"-esm-billing__payments__paymentTotals___-3A2t"},n().createElement(D,{label:l("totalAmount","Total amount"),value:(0,v.aL)(e.totalAmount??0,b)}),n().createElement(D,{label:l("totalTendered","Total tendered"),value:(0,v.aL)(e.tenderedAmount??0,b)}),n().createElement(D,{label:l("discount","Discount"),value:`- ${(0,v.aL)((e.totalAmount??0)-(e.netAmount??0),b)}`}),n().createElement(D,{label:l("refunds","Refunds"),value:`- ${(0,v.aL)(h,b)}`}),n().createElement(D,{hasBalance:g<0,label:l("amountDue","Amount due"),value:(0,v.aL)(g,b)}),n().createElement("div",{className:"-esm-billing__payments__processPayments___RG8aV"},n().createElement(u.Button,{onClick:()=>(0,c.navigate)({to:window.getOpenmrsSpaBase()+"home/billing"}),kind:"secondary"},l("discard","Discard")),!f&&n().createElement(u.Button,{onClick:T,disabled:!y?.method||null==y.amount||!E.formState.isValid},l("processPayment","Process Payment"))))))},L=({billUuid:e})=>{let{t}=(0,r.useTranslation)(),[a,i]=(0,l.useState)(!1),s=new URL(window.location.href);return n().createElement(u.Button,{kind:"secondary",className:"-esm-billing__print-receipt__button___QnAQS",renderIcon:e=>n().createElement(g.xj,{size:24,...e}),onClick:()=>{i(!0),setTimeout(()=>{let t=`${s.origin}/openmrs${P.B}receipt?billUuid=${e}`,a=document.createElement("a");a.href=t,a.download=`receipt_${e}.pdf`,document.body.appendChild(a),a.click(),document.body.removeChild(a),i(!1)},1e3)},disabled:a},a?(0,c.getCoreTranslation)("loading"):t("printReceipt","Print receipt"))},H=()=>{let{data:e}=(0,d.eC)();return e?n().createElement("div",{className:"-esm-billing__printable-footer__container___mTh7B"},n().createElement("p",{className:"-esm-billing__printable-footer__itemFooter___Y5pkL"},e?.display)):n().createElement("div",null,"--")};var x=a(2193),$=a.n(x);let z="-esm-billing__printable-invoice-header__img___rSlvX",F="-esm-billing__printable-invoice-header__sectionHeading___tOV2s",U="-esm-billing__printable-invoice-header__itemLabel___+hACh",q=({patientDetails:e,defaultFacility:t,bill:a})=>{let{t:l}=(0,r.useTranslation)(),{logo:i,country:s,defaultCurrency:o}=(0,c.useConfig)(),m={[l("invoiceNo","Invoice #")]:a?.receiptNumber,[l("invoiceDate","Invoice date")]:a?.dateCreated?(0,c.formatDate)((0,c.parseDate)(a.dateCreated),{mode:"wide",noToday:!0,time:!1}):"--",[l("totalAmount","Total amount")]:`${o} ${a?.totalAmount}`,[l("totalPaid","Total paid")]:`${o} ${a?.tenderedAmount}`,[l("amountBalance","Amount balance")]:`${o} ${a?.netAmount-a?.tenderedAmount}`,...a?.status&&{[l("invoiceStatus","Invoice status")]:a.status}},u={[l("name","Name")]:e?.name,...e.gender&&{[l("gender","Gender")]:e.gender},...e.birthDate&&{[l("birthDate","Date of birth")]:(0,c.formatDate)((0,c.parseDate)(e.birthDate),{time:!1})},...e.address&&{[l("address","Address")]:e.address}};return n().createElement("div",{className:"-esm-billing__printable-invoice-header__container___1u0nI"},n().createElement("div",{className:"-esm-billing__printable-invoice-header__printableHeader___Jl02J"},n().createElement("div",{className:"-esm-billing__printable-invoice-header__logo___ZpVka"},i?.src&&!$()(i.src)?n().createElement("img",{className:z,src:(0,c.interpolateUrl)(i.src),alt:i.alt}):i?.alt&&!$()(i.alt)?i.alt:n().createElement("svg",{className:z,role:"img",width:110,height:40,viewBox:"0 0 380 119",xmlns:"http://www.w3.org/2000/svg"},n().createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M40.29 40.328a27.755 27.755 0 0 1 19.688-8.154c7.669 0 14.613 3.102 19.647 8.116l.02-18.54A42.835 42.835 0 0 0 59.978 17c-7.089 0-13.813 1.93-19.709 4.968l.021 18.36ZM79.645 79.671a27.744 27.744 0 0 1-19.684 8.154c-7.67 0-14.614-3.101-19.651-8.116l-.02 18.54A42.857 42.857 0 0 0 59.96 103a42.833 42.833 0 0 0 19.672-4.751l.013-18.578ZM40.328 79.696c-5.038-5.037-8.154-11.995-8.154-19.685 0-7.669 3.102-14.612 8.116-19.65l-18.54-.02A42.85 42.85 0 0 0 17 60.012a42.819 42.819 0 0 0 4.752 19.672l18.576.013ZM79.634 40.289a27.753 27.753 0 0 1 8.154 19.688 27.744 27.744 0 0 1-8.117 19.646l18.542.02a42.842 42.842 0 0 0 4.749-19.666c0-7.09-1.714-13.779-4.751-19.675l-18.577-.013ZM156.184 60.002c0-8.748-6.118-15.776-15.025-15.776-8.909 0-15.025 7.028-15.025 15.776 0 8.749 6.116 15.78 15.025 15.78 8.907 0 15.025-7.031 15.025-15.78Zm-34.881 0c0-11.482 8.318-19.958 19.856-19.958 11.536 0 19.855 8.477 19.855 19.959 0 11.484-8.319 19.964-19.855 19.964-11.538 0-19.856-8.48-19.856-19.965ZM179.514 75.54c5.507 0 9.05-4.14 9.05-9.482 0-5.341-3.543-9.483-9.05-9.483-5.505 0-9.046 4.142-9.046 9.483 0 5.342 3.541 9.482 9.046 9.482ZM166.22 53.306h4.248v3.704h.11c2.344-2.725 5.449-4.36 9.154-4.36 8.014 0 13.408 5.67 13.408 13.408 0 7.63-5.613 13.406-12.752 13.406-4.58 0-8.231-2.29-9.81-5.178h-.11V90.87h-4.248V53.306ZM217.773 63.768c-.163-4.305-3-7.193-7.686-7.193-4.685 0-7.79 2.888-8.335 7.193h16.021Zm3.653 10.412c-3.001 3.868-6.596 5.284-11.339 5.284-8.01 0-12.914-5.993-12.914-13.406 0-7.901 5.559-13.407 13.08-13.407 7.196 0 12.096 4.906 12.096 13.354v1.362h-20.597c.325 4.413 3.704 8.173 8.335 8.173 3.65 0 6.105-1.307 8.12-3.868l3.219 2.508ZM227.854 59.356c0-2.346-.216-4.36-.216-6.05h4.031c0 1.363.11 2.777.11 4.195h.11c1.144-2.505 4.306-4.85 8.5-4.85 6.705 0 9.699 4.252 9.699 10.41v15.748h-4.248v-15.31c0-4.253-1.856-6.924-5.833-6.924-5.503 0-7.903 3.979-7.903 9.811V78.81h-4.25V59.356ZM259.211 41.008h6.708L278.8 70.791h.107l12.982-29.782h6.549v37.99h-4.506V47.124h-.106L280.192 79h-2.738l-13.629-31.875h-.107V79h-4.507V41.01ZM312.392 57.752h4.023c4.992 0 11.487 0 11.487-6.282 0-5.47-4.776-6.276-9.177-6.276h-6.333v12.558Zm-4.506-16.744h9.711c7.352 0 15.132 1.072 15.132 10.462 0 5.527-3.594 9.125-9.495 10.037L334.018 79h-5.525l-10.304-17.063h-5.797V79h-4.506V41.01ZM358.123 47.712c-1.506-2.413-4.187-3.486-6.926-3.486-3.973 0-8.1 1.88-8.1 6.385 0 3.49 1.931 5.047 7.994 6.98 5.903 1.878 11.377 3.809 11.377 11.267 0 7.567-6.495 11.11-13.36 11.11-4.402 0-9.125-1.45-11.7-5.262l3.862-3.165c1.61 2.794 4.83 4.24 8.105 4.24 3.862 0 8.263-2.253 8.263-6.601 0-4.669-3.165-5.474-9.928-7.728-5.366-1.771-9.442-4.134-9.442-10.463 0-7.298 6.277-10.945 12.929-10.945 4.241 0 7.836 1.178 10.625 4.45l-3.699 3.218Z"}))),n().createElement("div",{className:"-esm-billing__printable-invoice-header__facilityDetails___uJPtI"},n().createElement("p",{className:"-esm-billing__printable-invoice-header__facilityName___81nN9"},t?.display),n().createElement("p",{className:U},s))),n().createElement("h1",{className:"-esm-billing__printable-invoice-header__invoiceHeading___9Xftg"},l("invoice","Invoice")),n().createElement("div",{className:"-esm-billing__printable-invoice-header__printableBody___cMhfI"},n().createElement("div",{className:"-esm-billing__printable-invoice-header__detailsContainer___rJn9A"},n().createElement("div",null,n().createElement("h2",{className:F},l("patientInformation","Patient information")),Object.entries(u).map(([e,t])=>n().createElement("p",{className:U,key:e},n().createElement("strong",null,e),n().createElement("span",null,": ",t)))),n().createElement("div",null,n().createElement("h2",{className:F},l("invoiceSummary","Invoice summary")),Object.entries(m).map(([e,t])=>n().createElement("p",{className:U,key:e},n().createElement("strong",null,e),n().createElement("span",null,": ",t)))))))},O={itemsContainer:"-esm-billing__printable-invoice__itemsContainer___EA1KS",tableContainer:"-esm-billing__printable-invoice__tableContainer___CeBjk",totalContainer:"-esm-billing__printable-invoice__totalContainer___+8XbC",item:"-esm-billing__printable-invoice__item___U-0e6",itemHeading:"-esm-billing__printable-invoice__itemHeading___mHy3a",itemTotal:"-esm-billing__printable-invoice__itemTotal___pOXNY",itemLabel:"-esm-billing__printable-invoice__itemLabel___i+Nva",summaryContainer:"-esm-billing__printable-invoice__summaryContainer___A5A-s",paymentHistoryContainer:"-esm-billing__printable-invoice__paymentHistoryContainer___Z+0Pi",balanceContainer:"-esm-billing__printable-invoice__balanceContainer___oekII"},V=({bill:e,patient:t,componentRef:a,defaultFacility:i})=>{let{t:s}=(0,r.useTranslation)(),o=(0,c.useLayoutType)(),{defaultCurrency:m}=(0,c.useConfig)(),d=(0,c.isDesktop)(o)?"sm":"lg",_=[{header:s("inventoryItem","Inventory item"),key:"billItem"},{header:s("quantity","Quantity"),key:"quantity"},{header:s("unitPrice","Unit price"),key:"price"},{header:s("total","Total"),key:"total"}],b=e?.lineItems?.map(e=>({id:`${e.uuid}`,billItem:e.billableService?e.billableService:e.item,quantity:e.quantity,price:`${m} ${e.price}`,total:`${m} ${e.price*e.quantity}`}))??[],p=[{key:"no",header:s("no","No")},{key:"paymentMethod",header:s("paymentMethod","Payment method")},{key:"amountPaid",header:s("amountPaid","Amount paid")},{key:"dateCreated",header:s("dateOfPayment","Date of payment")}],E=(0,l.useMemo)(()=>e?e.payments?.map((e,t)=>({no:t+1,id:`${e.uuid}-${t}`,paymentMethod:e.instanceType.name,amountPaid:`${m} ${e.amountTendered.toFixed(2)}`,dateCreated:(0,c.formatDate)(new Date(e.dateCreated))})):[],[e,m]),y=(0,l.useMemo)(()=>{let e=t?.address?.[0],a=[e?.line?.join(" "),e?.city,e?.district,e?.state].filter(Boolean).join(", ");return{name:`${t?.name?.[0]?.given?.join(" ")} ${t?.name?.[0].family}`,birthDate:t?.birthDate,gender:(0,v.o_)(t?.gender,s),address:a}},[t,s]);return n().createElement("div",{className:O.container,ref:a},n().createElement(q,{patientDetails:y,defaultFacility:i,bill:e}),n().createElement("div",{className:O.itemsContainer},n().createElement("div",{className:O.tableContainer},n().createElement(u.DataTable,{rows:b,headers:_,size:d,useZebraStyles:!1},({rows:e,headers:t,getRowProps:a,getTableProps:l})=>n().createElement(u.TableContainer,null,n().createElement(u.Table,{...l(),"aria-label":s("invoiceLineItems","Invoice line items")},n().createElement(u.TableHead,null,n().createElement(u.TableRow,null,t.map(e=>n().createElement(u.TableHeader,{key:e.key},e.header)))),n().createElement(u.TableBody,null,e.map(e=>n().createElement(u.TableRow,{key:e.id,...a({row:e})},e.cells.map(e=>n().createElement(u.TableCell,{key:e.id},e.value)))))))),e?.netAmount!=null&&e.totalAmount!==e.netAmount?n().createElement(n().Fragment,null,n().createElement("div",{className:O.balanceContainer},n().createElement("span",{className:O.itemHeading},s("subtotal","Subtotal"),":")," ",n().createElement("span",{className:O.itemLabel},n().createElement("strong",null,m," ",e?.totalAmount))),n().createElement("div",{className:O.balanceContainer},n().createElement("span",{className:O.itemHeading},s("discount","Discount"),":")," ",n().createElement("span",{className:O.itemLabel},n().createElement("strong",null,"- ",m," ",(e?.totalAmount??0)-(e?.netAmount??0)))),n().createElement("div",{className:O.balanceContainer},n().createElement("span",{className:O.itemHeading},s("totalAmount","Total amount"),":")," ",n().createElement("span",{className:O.itemLabel},n().createElement("strong",null,m," ",e?.netAmount)))):n().createElement("div",{className:O.balanceContainer},n().createElement("span",{className:O.itemHeading},s("totalAmount","Total amount"),":")," ",n().createElement("span",{className:O.itemLabel},n().createElement("strong",null,m," ",e?.totalAmount))),e?.payments?.length>0&&n().createElement("div",{className:O.paymentHistoryContainer},n().createElement(u.DataTable,{rows:E,headers:p,size:d},({rows:e,headers:t,getRowProps:a,getTableProps:l})=>n().createElement(u.TableContainer,null,n().createElement(u.Table,{...l(),"aria-label":s("paymentHistory","Payment History")},n().createElement(u.TableHead,null,n().createElement(u.TableRow,null,t.map(e=>n().createElement(u.TableHeader,{key:e.key},e.header)))),n().createElement(u.TableBody,null,e.map(e=>n().createElement(u.TableRow,{key:e.id,...a({row:e})},e.cells.map(e=>n().createElement(u.TableCell,{key:e.id},e.value))))))))),n().createElement("div",{className:O.balanceContainer},n().createElement("span",{className:O.itemHeading},s("totalTendered","Total tendered"),":"),n().createElement("span",{className:O.itemLabel},n().createElement("strong",null,m," ",e?.tenderedAmount))),n().createElement("div",{className:O.balanceContainer},n().createElement("span",{className:O.itemHeading},s("balance","Balance"),":"),n().createElement("span",{className:O.itemLabel},n().createElement("strong",null,m," ",e?.netAmount-e?.tenderedAmount))))),n().createElement(H,null))},j=({bill:e})=>{let{t}=(0,r.useTranslation)(),{defaultCurrency:a}=(0,c.useConfig)(),i=(0,c.useLayoutType)(),s=(0,c.isDesktop)(i)?"sm":"lg",o=(0,l.useMemo)(()=>(e.discounts??[]).filter(e=>!e.voided),[e.discounts]),d=[{header:t("discountItem","Item"),key:"item",width:25},{header:t("discountType","Type"),key:"type",width:15},{header:t("discountAmount","Amount"),key:"amount",width:15},{header:t("justification","Justification"),key:"justification",width:30},{header:t("status","Status"),key:"status",width:15}],b=(0,l.useMemo)(()=>(o??[]).map(l=>({id:l.uuid,item:function(e,t,a){if(!e.lineItemUuid)return a;let l=t.lineItems?.find(t=>t.uuid===e.lineItemUuid);return l?.item||l?.billableService||a}(l,e,t("wholeBill","Whole bill")),type:l.discountType===_.Bp.PERCENTAGE?t("percentage","Percentage"):t("fixedAmount","Fixed amount"),amount:(0,v.aL)(l.discountAmount,a),justification:l.justification,status:t(l.status.toLowerCase(),l.status)})),[o,e,a,t]);return o&&0!==o.length?n().createElement("div",{className:"-esm-billing__discounts-table__discountsWrapper___nAknV"},n().createElement(u.DataTable,{headers:d,rows:b,size:s,useZebraStyles:!0,overflowMenuOnHover:(0,c.isDesktop)(i)},({rows:e,headers:a,getRowProps:l,getTableProps:i})=>n().createElement(u.TableContainer,{description:n().createElement("span",{className:"-esm-billing__discounts-table__tableDescription___dsPxA"},n().createElement("span",null,t("discountsAppliedToBill","Discounts applied to this bill"))),title:t("discounts","Discounts")},n().createElement(u.Table,{...i(),"aria-label":t("billDiscounts","Bill discounts"),className:m()("-esm-billing__discounts-table__discountsTable___Wd5vG","billingTable")},n().createElement(u.TableHead,null,n().createElement(u.TableRow,null,a.map(e=>n().createElement(u.TableHeader,{key:e.key},e.header)))),n().createElement(u.TableBody,null,e.map(e=>n().createElement(u.TableRow,{key:e.id,...l({row:e})},e.cells.map(e=>n().createElement(u.TableCell,{key:e.id},e.value))))))))):null};var Z=a(8683);let G=({bill:e,onMutate:t})=>{let{t:a}=(0,r.useTranslation)(),{defaultCurrency:i}=(0,c.useConfig)(),s=(0,c.useSession)(),o=(0,c.useLayoutType)(),d=(0,c.isDesktop)(o)?"sm":"lg",[b,p]=(0,l.useState)(null),E=[{header:a("refundItem","Item"),key:"item"},{header:a("refundAmount","Refund amount"),key:"amount"},{header:a("reason","Reason"),key:"reason"},{header:a("status","Status"),key:"status"},{header:a("action","Action"),key:"action"}],y=(0,l.useMemo)(()=>(e.refunds??[]).filter(e=>!e.voided),[e.refunds]),h=(0,l.useCallback)(async e=>{p(e.uuid);try{await (0,Z.eK)(e.uuid,{status:_.fH.COMPLETED,completer:s.user?.uuid}),(0,c.showSnackbar)({title:a("refundProcessed","Refund processed"),kind:"success"}),t?.()}catch(t){let e=t?.responseBody?.error?.message??(t instanceof Error?t.message:void 0);(0,c.showSnackbar)({title:a("refundProcessFailed","Could not process refund"),subtitle:e,kind:"error"})}finally{p(null)}},[t,s.user?.uuid,a]),g=(0,l.useMemo)(()=>(y??[]).map(t=>({id:t.uuid,item:function(e,t,a){if(!e.lineItemUuid)return a;let l=t.lineItems?.find(t=>t.uuid===e.lineItemUuid);return l?.item||l?.billableService||a}(t,e,a("wholeBill","Whole bill")),amount:(0,v.aL)(t.refundAmount,i),reason:t.reason,status:a(t.status.toLowerCase(),t.status),action:n().createElement(u.Button,{kind:"primary",size:"sm",disabled:b===t.uuid||t.status!==_.fH.APPROVED,onClick:()=>h(t)},b===t.uuid?n().createElement(u.InlineLoading,{description:a("processing","Processing")+"..."}):a("processRefund","Process refund"))})),[y,e,i,b,a,h]);return y&&0!==y.length?n().createElement("div",{className:"-esm-billing__refunds-table__refundsWrapper___ZvDhw"},n().createElement(u.DataTable,{headers:E,rows:g,size:d,useZebraStyles:!0},({rows:e,headers:t,getRowProps:l,getTableProps:i})=>n().createElement(u.TableContainer,{description:n().createElement("span",{className:"-esm-billing__refunds-table__tableDescription___hGPCT"},n().createElement("span",null,a("refundsOnBill","Refunds on this bill"))),title:a("refunds","Refunds")},n().createElement(u.Table,{...i(),"aria-label":a("billRefunds","Bill refunds"),className:m()("-esm-billing__refunds-table__refundsTable___B5xVc","billingTable")},n().createElement(u.TableHead,null,n().createElement(u.TableRow,null,t.map(e=>n().createElement(u.TableHeader,{key:e.key},e.header)))),n().createElement(u.TableBody,null,e.map(e=>n().createElement(u.TableRow,{key:e.id,...l({row:e})},e.cells.map(e=>n().createElement(u.TableCell,{key:e.id},e.value))))))))):null},W="-esm-billing__invoice__invoiceContainer___6Vmk0",Y=`
2
2
  @page {
3
3
  /* Remove the browser's default header (title) and footer (url) */
4
4
  margin: 0;
package/dist/8528.js CHANGED
@@ -1 +1 @@
1
- "use strict";(globalThis.webpackChunk_openmrs_esm_billing_app=globalThis.webpackChunk_openmrs_esm_billing_app||[]).push([["8528"],{6739(e,a,t){t.r(a),t.d(a,{default:()=>u});var n=t(5275),i=t.n(n),o=t(8395),r=t(9785),l=t(4476),s=t(3285),c=t(1752),d=t(3137);let u=({closeModal:e,onCashPointAdded:a})=>{let{t}=(0,o.useTranslation)(),[u,m]=(0,n.useState)([]),h=l.z.object({name:l.z.string().min(1,t("cashPointNameRequired","Cash Point Name is required")),uuid:l.z.string().min(1,t("uuidRequired","UUID is required")).regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,t("invalidUuidFormat","Invalid UUID format")),location:l.z.string().min(1,t("locationRequired","Location is required"))}),{control:p,handleSubmit:g,reset:b,formState:{errors:C,isSubmitting:P}}=(0,r.mN)({resolver:(0,s.u)(h),defaultValues:{name:"",uuid:"",location:""}}),v=(0,n.useCallback)(async()=>{try{let e=(await (0,d.openmrsFetch)(`${d.restBaseUrl}/location?v=default`)).data.results.map(e=>({id:e.uuid,label:e.display}));m(e)}catch(e){(0,d.showSnackbar)({title:(0,d.getCoreTranslation)("error"),subtitle:t("errorFetchingLocations","An error occurred while fetching locations."),kind:"error",isLowContrast:!1})}},[t]);(0,n.useEffect)(()=>{v()},[v]);let T=async n=>{try{await (0,d.openmrsFetch)(`${d.restBaseUrl}/billing/cashPoint`,{method:"POST",headers:{"Content-Type":"application/json"},body:{name:n.name,uuid:n.uuid,location:{uuid:n.location}}}),(0,d.showSnackbar)({title:t("success","Success"),subtitle:t("cashPointSaved","Cash point was successfully saved."),kind:"success"}),e(),b({name:"",uuid:"",location:""}),a()}catch(e){(0,d.showSnackbar)({title:(0,d.getCoreTranslation)("error"),subtitle:e?.message||t("errorSavingCashPoint","An error occurred while saving the cash point."),kind:"error",isLowContrast:!1})}};return i().createElement(i().Fragment,null,i().createElement(c.ModalHeader,{closeModal:e,title:t("addCashPoint","Add Cash Point")}),i().createElement(c.Form,{onSubmit:g(T)},i().createElement(c.ModalBody,null,i().createElement(c.Stack,{gap:5},i().createElement(r.xI,{name:"name",control:p,render:({field:e})=>i().createElement(c.TextInput,{id:"cash-point-name",labelText:t("cashPointName","Cash Point Name"),placeholder:t("cashPointNamePlaceholder","For example, Pharmacy Cash Point"),invalid:!!C.name,invalidText:C.name?.message,...e})}),i().createElement(r.xI,{name:"uuid",control:p,render:({field:e})=>i().createElement(c.TextInput,{id:"cash-point-uuid",labelText:t("cashPointUuid","Cash Point UUID"),placeholder:t("cashPointUuidPlaceholder","Enter UUID"),invalid:!!C.uuid,invalidText:C.uuid?.message,...e})}),i().createElement(r.xI,{name:"location",control:p,render:({field:e})=>i().createElement(c.Dropdown,{id:"cash-point-location",label:t("selectLocation","Select Location"),titleText:t("cashPointLocation","Cash Point Location"),items:u,selectedItem:u.find(a=>a.id===e.value),onChange:({selectedItem:a})=>e.onChange(a?.id),invalid:!!C.location,invalidText:C.location?.message})}))),i().createElement(c.ModalFooter,null,i().createElement(c.Button,{kind:"secondary",onClick:e},(0,d.getCoreTranslation)("cancel")),i().createElement(c.Button,{type:"submit",disabled:P},P?t("saving","Saving")+"...":(0,d.getCoreTranslation)("save")))))}}}]);
1
+ "use strict";(globalThis.webpackChunk_openmrs_esm_billing_app=globalThis.webpackChunk_openmrs_esm_billing_app||[]).push([["8528"],{6739(e,a,t){t.r(a),t.d(a,{default:()=>u});var n=t(5275),i=t.n(n),o=t(8395),r=t(9785),l=t(4476),s=t(3285),c=t(1752),d=t(9124);let u=({closeModal:e,onCashPointAdded:a})=>{let{t}=(0,o.useTranslation)(),[u,m]=(0,n.useState)([]),h=l.z.object({name:l.z.string().min(1,t("cashPointNameRequired","Cash Point Name is required")),uuid:l.z.string().min(1,t("uuidRequired","UUID is required")).regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,t("invalidUuidFormat","Invalid UUID format")),location:l.z.string().min(1,t("locationRequired","Location is required"))}),{control:p,handleSubmit:g,reset:b,formState:{errors:C,isSubmitting:P}}=(0,r.mN)({resolver:(0,s.u)(h),defaultValues:{name:"",uuid:"",location:""}}),v=(0,n.useCallback)(async()=>{try{let e=(await (0,d.openmrsFetch)(`${d.restBaseUrl}/location?v=default`)).data.results.map(e=>({id:e.uuid,label:e.display}));m(e)}catch(e){(0,d.showSnackbar)({title:(0,d.getCoreTranslation)("error"),subtitle:t("errorFetchingLocations","An error occurred while fetching locations."),kind:"error",isLowContrast:!1})}},[t]);(0,n.useEffect)(()=>{v()},[v]);let T=async n=>{try{await (0,d.openmrsFetch)(`${d.restBaseUrl}/billing/cashPoint`,{method:"POST",headers:{"Content-Type":"application/json"},body:{name:n.name,uuid:n.uuid,location:{uuid:n.location}}}),(0,d.showSnackbar)({title:t("success","Success"),subtitle:t("cashPointSaved","Cash point was successfully saved."),kind:"success"}),e(),b({name:"",uuid:"",location:""}),a()}catch(e){(0,d.showSnackbar)({title:(0,d.getCoreTranslation)("error"),subtitle:e?.message||t("errorSavingCashPoint","An error occurred while saving the cash point."),kind:"error",isLowContrast:!1})}};return i().createElement(i().Fragment,null,i().createElement(c.ModalHeader,{closeModal:e,title:t("addCashPoint","Add Cash Point")}),i().createElement(c.Form,{onSubmit:g(T)},i().createElement(c.ModalBody,null,i().createElement(c.Stack,{gap:5},i().createElement(r.xI,{name:"name",control:p,render:({field:e})=>i().createElement(c.TextInput,{id:"cash-point-name",labelText:t("cashPointName","Cash Point Name"),placeholder:t("cashPointNamePlaceholder","For example, Pharmacy Cash Point"),invalid:!!C.name,invalidText:C.name?.message,...e})}),i().createElement(r.xI,{name:"uuid",control:p,render:({field:e})=>i().createElement(c.TextInput,{id:"cash-point-uuid",labelText:t("cashPointUuid","Cash Point UUID"),placeholder:t("cashPointUuidPlaceholder","Enter UUID"),invalid:!!C.uuid,invalidText:C.uuid?.message,...e})}),i().createElement(r.xI,{name:"location",control:p,render:({field:e})=>i().createElement(c.Dropdown,{id:"cash-point-location",label:t("selectLocation","Select Location"),titleText:t("cashPointLocation","Cash Point Location"),items:u,selectedItem:u.find(a=>a.id===e.value),onChange:({selectedItem:a})=>e.onChange(a?.id),invalid:!!C.location,invalidText:C.location?.message})}))),i().createElement(c.ModalFooter,null,i().createElement(c.Button,{kind:"secondary",onClick:e},(0,d.getCoreTranslation)("cancel")),i().createElement(c.Button,{type:"submit",disabled:P},P?t("saving","Saving")+"...":(0,d.getCoreTranslation)("save")))))}}}]);
package/dist/9414.js CHANGED
@@ -1 +1 @@
1
- (globalThis.webpackChunk_openmrs_esm_billing_app=globalThis.webpackChunk_openmrs_esm_billing_app||[]).push([["9414"],{4751(e){var t;e.exports=t={},t.simpleFilter=function(e,l){return l.filter(function(l){return t.test(e,l)})},t.test=function(e,l){return null!==t.match(e,l)},t.match=function(e,t,l){l=l||{};var a,i=0,n=[],r=t.length,s=0,o=0,u=l.pre||"",m=l.post||"",c=l.caseSensitive&&t||t.toLowerCase();e=l.caseSensitive&&e||e.toLowerCase();for(var d=0;d<r;d++)a=t[d],c[d]===e[i]?(a=u+a+m,i+=1,o+=1+o):o=0,s+=o,n[n.length]=a;return i===e.length?(s=c===e?1/0:s,{rendered:n.join(""),score:s}):null},t.filter=function(e,l,a){return l&&0!==l.length?"string"!=typeof e?l:(a=a||{},l.reduce(function(l,i,n,r){var s=i;a.extract&&(s=a.extract(i));var o=t.match(e,s,a);return null!=o&&(l[l.length]={string:o.rendered,score:o.score,index:n,original:i}),l},[]).sort(function(e,t){var l=t.score-e.score;return l||e.index-t.index})):[]}},2373(e,t,l){"use strict";l.d(t,{Zz:()=>i,aL:()=>n,o_:()=>r});var a=l(3137);function i(e){return Array.isArray(e)?e.reduce((e,t)=>"number"==typeof t.price&&"number"==typeof t.quantity&&!0!==t.voided?e+t.price*t.quantity:e,0):0}let n=(e,t)=>{let l=window.i18next?.language?.substring(0,2)??"",a=new Intl.NumberFormat(l,{style:"currency",currency:t,minimumFractionDigits:2}).format(Math.abs(e));return e<0&&(a=`(${a})`),a},r=(e,t)=>{switch(e){case"male":return(0,a.getCoreTranslation)("male");case"female":return(0,a.getCoreTranslation)("female");case"other":return(0,a.getCoreTranslation)("other");case"unknown":return(0,a.getCoreTranslation)("unknown");default:return e}}},1772(e,t,l){"use strict";l.d(t,{aL:()=>a.aL,o_:()=>a.o_});var a=l(2373)},6762(e,t,l){"use strict";l.d(t,{A:()=>h});var a=l(5275),i=l.n(a),n=l(6942),r=l.n(n),s=l(8395),o=l(4751),u=l.n(o),m=l(1752),c=l(3137),d=l(5084);let b="-esm-billing__line-item-action-menu__menuitem___lOuJD",_=({bill:e,item:t,onMutate:l,showDiscountRequest:n,onDiscountRequest:r,showRefundRequest:o,onRefundRequest:u})=>{let{t:_}=(0,s.useTranslation)(),p=(0,c.useLayoutType)(),f=(0,a.useCallback)(()=>{let a=(0,c.showModal)("edit-bill-line-item-modal",{bill:e,item:t,closeModal:()=>a(),onMutate:l})},[e,t,l]),h=(0,a.useCallback)(()=>{let e=(0,c.showModal)("delete-line-item-confirmation-modal",{item:t,closeModal:()=>e(),onMutate:l})},[t,l]),E=e?.status===d.ih.PENDING;return i().createElement(m.Layer,null,i().createElement(m.OverflowMenu,{align:"left",flipped:!0,size:(0,c.isDesktop)(p)?"sm":"lg","data-testid":`action-menu-${t.uuid}`},i().createElement(m.OverflowMenuItem,{className:b,"data-testid":`edit-button-${t.uuid}`,disabled:!E,itemText:(0,c.getCoreTranslation)("edit"),onClick:f}),i().createElement(m.OverflowMenuItem,{className:b,"data-testid":`delete-button-${t.uuid}`,disabled:!E,isDelete:!0,itemText:(0,c.getCoreTranslation)("delete"),onClick:h}),n&&i().createElement(m.OverflowMenuItem,{className:b,"data-testid":`request-discount-button-${t.uuid}`,itemText:_("requestDiscount","Request discount"),onClick:r}),o&&i().createElement(m.OverflowMenuItem,{className:b,"data-testid":`request-refund-button-${t.uuid}`,itemText:_("requestRefund","Request refund"),onClick:u})))};var p=l(1772);let f=e=>(e.price??0)*(e.quantity??0),h=({bill:e,isLoadingBill:t,onMutate:l,viewOnly:n})=>{let{t:o}=(0,s.useTranslation)(),{defaultCurrency:b}=(0,c.useConfig)(),h=(0,c.useLayoutType)(),E=(0,a.useMemo)(()=>e?.lineItems??[],[e?.lineItems]),y=(0,c.isDesktop)(h)?"sm":"lg",[T,g]=(0,a.useState)(""),v=(0,c.useDebounce)(T),w=(0,a.useMemo)(()=>(e?.discounts??[]).filter(e=>!e.voided),[e?.discounts]),k=e?.status===d.ih.PENDING||e?.status===d.ih.POSTED,N=w.some(e=>!e.lineItemUuid),D=(0,a.useMemo)(()=>(e?.refunds??[]).filter(e=>!e.voided),[e?.refunds]),I=e?.status===d.ih.PAID||e?.status===d.ih.PARTIALLY_REFUNDED||e?.status===d.ih.REFUND_REQUESTED,C=D.filter(e=>e.status===d.fH.REQUESTED||e.status===d.fH.APPROVED),S=C.some(e=>!e.lineItemUuid),M=(0,a.useMemo)(()=>v?u().filter(v,E,{extract:e=>`${e.billableService} ${e.item}`}).sort((e,t)=>e.score-t.score).map(e=>e.original):E,[v,E]),x=(0,a.useMemo)(()=>new Map(E.map(e=>[e.uuid,e])),[E]),R=[{header:o("number","Number"),key:"no",width:7},{header:o("billItem","Bill item"),key:"billItem",width:25},{header:o("status","Status"),key:"status",width:25},{header:o("quantity","Quantity"),key:"quantity",width:15},{header:o("price","Price"),key:"price",width:24},{header:o("total","Total"),key:"total",width:15}],q=(0,a.useMemo)(()=>M?.map((e,t)=>({no:`${t+1}`,id:`${e.uuid}`,billItem:e.billableService?e.billableService:e?.item,status:e.status,quantity:e.quantity,price:(0,p.aL)(e.price,b),total:(0,p.aL)(f(e),b)}))??[],[M,b]);return t?i().createElement(m.DataTableSkeleton,{"data-testid":"loader",columnCount:R.length,showHeader:!1,showToolbar:!1,zebra:!0}):i().createElement("div",{className:"-esm-billing__invoice-table__lineItemsWrapper___ABU3I"},i().createElement(m.DataTable,{headers:R,rows:q,size:y,useZebraStyles:!0,overflowMenuOnHover:(0,c.isDesktop)(h)},({rows:t,headers:a,getRowProps:s,getTableProps:u})=>i().createElement(m.TableContainer,{description:i().createElement("span",{className:"-esm-billing__invoice-table__tableDescription___JKz3j"},i().createElement("span",null,o("itemsToBeBilled","Items to be billed"))),title:o("lineItems","Line items")},!n&&i().createElement(m.TableToolbarSearch,{className:"-esm-billing__invoice-table__searchbox___oxEnj",expanded:!0,onChange:e=>g(e.target.value),placeholder:o("searchThisTable","Search this table"),size:y}),i().createElement(m.Table,{...u(),"aria-label":o("invoiceLineItems","Invoice line items"),className:r()("-esm-billing__invoice-table__invoiceTable___2hd71","billingTable")},i().createElement(m.TableHead,null,i().createElement(m.TableRow,null,a.map(e=>i().createElement(m.TableHeader,{key:e.key},e.header)),!n&&i().createElement(m.TableHeader,{"aria-label":(0,c.getCoreTranslation)("actions")}))),i().createElement(m.TableBody,null,t.map(t=>{let a,r,o=x.get(t.id);return i().createElement(m.TableRow,{key:t.id,...s({row:t})},t.cells.map(e=>i().createElement(m.TableCell,{key:e.id},e.value)),!n&&i().createElement(m.TableCell,{className:"cds--table-column-menu"},o&&i().createElement(_,{bill:e,item:o,onMutate:l,showDiscountRequest:k&&!N&&(a=o.uuid,!w.some(e=>e.lineItemUuid===a)),onDiscountRequest:()=>{let t;t=(0,c.showModal)("request-discount-modal",{bill:{uuid:e.uuid,total:e.totalAmount??0,amountDue:Math.max(0,(e.netAmount??e.totalAmount??0)-(e.tenderedAmount??0)),receiptNumber:e.receiptNumber,lineItemCount:E.length},lineItem:{uuid:o.uuid,display:o.item||o.billableService||"--",total:f(o),quantity:o.quantity,price:o.price},onMutate:()=>l?.(),closeModal:()=>t()})},showRefundRequest:I&&!S&&(r=o.uuid??"",!C.some(e=>e.lineItemUuid===r))&&!!o.uuid,onRefundRequest:()=>(t=>{if(!t.uuid)return;let a=f(t),i=a-D.filter(e=>e.lineItemUuid===t.uuid&&(e.status===d.fH.APPROVED||e.status===d.fH.COMPLETED)).reduce((e,t)=>e+t.refundAmount,0),n=(0,c.showModal)("request-refund-modal",{bill:{uuid:e.uuid,total:e.totalAmount??0,amountAfterDiscount:e.netAmount??e.totalAmount??0},lineItem:{uuid:t.uuid,display:t.item||t.billableService||"--",total:a,quantity:t.quantity,price:t.price},remainingRefundable:Math.max(0,i),onMutate:()=>l?.(),closeModal:()=>n()})})(o)})))}))))),M?.length===0&&i().createElement("div",{className:"-esm-billing__invoice-table__filterEmptyState___ZtVBH"},i().createElement(m.Layer,null,i().createElement(m.Tile,{className:"-esm-billing__invoice-table__filterEmptyStateTile___j92yY"},i().createElement("p",{className:"-esm-billing__invoice-table__filterEmptyStateContent___41NoP"},o("noMatchingItemsToDisplay","No matching items to display")),!n&&i().createElement("p",{className:"-esm-billing__invoice-table__filterEmptyStateHelper___+DQR2"},o("checkFilters","Check the filters above"))))))}},501(e,t,l){"use strict";l.r(t),l.d(t,{default:()=>c});var a=l(5275),i=l.n(a),n=l(8395),r=l(1752),s=l(3137),o=l(6199),u=l(1772),m=l(6762);let c=({visit:e,patientUuid:t})=>{let{t:l}=(0,n.useTranslation)(),{defaultCurrency:c}=(0,s.useConfig)(),{bills:d,error:b,isLoading:_,isValidating:p,mutate:f}=(0,o.u1)(t,void 0,e.uuid),h=(0,a.useMemo)(()=>new Map(d?.map(e=>[e.uuid,e])),[d]),E=[{header:l("billDate","Bill date"),key:"billDate"},{header:l("invoiceNumber","Invoice number"),key:"invoiceNumber"},{header:l("billedItems","Billed items"),key:"billedItems"},{header:l("billTotal","Bill total"),key:"billTotal"}],y=d?.map(e=>({id:e.uuid,billDate:e.dateCreated?(e=>{try{return(0,s.formatDate)((0,s.parseDate)(e),{mode:"wide"})}catch{return"--"}})(e.dateCreated):"--",invoiceNumber:e.receiptNumber,billedItems:e?.lineItems?.map(e=>e?.billableService||e?.item).filter(Boolean).join(" & ")||"--",billTotal:(0,u.aL)(e.totalAmount??0,c)}));return _?i().createElement(r.DataTableSkeleton,{showHeader:!1,showToolbar:!1,zebra:!0}):b?i().createElement(r.Layer,null,i().createElement(s.ErrorState,{error:b,headerTitle:l("billList","Bill list")})):d?.length?i().createElement(r.DataTable,{isSortable:!0,rows:y,headers:E,size:"md",useZebraStyles:!0},({getExpandHeaderProps:e,getHeaderProps:t,getRowProps:a,getTableContainerProps:n,getTableProps:s,headers:o,rows:u})=>i().createElement(r.TableContainer,n(),i().createElement(r.Table,{...s(),"aria-label":l("billList","Bill list")},i().createElement(r.TableHead,null,i().createElement(r.TableRow,null,i().createElement(r.TableExpandHeader,{enableToggle:!0,...e()}),o.map(e=>i().createElement(r.TableHeader,{key:e.key,...t({header:e})},e.header)))),i().createElement(r.TableBody,null,u.map(e=>{let t=h.get(e.id);return i().createElement(i().Fragment,{key:e.id},i().createElement(r.TableExpandRow,a({row:e}),e.cells.map(e=>i().createElement(r.TableCell,{key:e.id},e.value))),e.isExpanded?i().createElement(r.TableExpandedRow,{colSpan:o.length+1},t?i().createElement(m.A,{bill:t,onMutate:f,isLoadingBill:p,viewOnly:!0}):i().createElement(r.InlineNotification,{kind:"error",lowContrast:!0,title:l("billNotFound","Bill details could not be loaded")})):i().createElement(r.TableExpandedRow,{className:"-esm-billing__visit-bills-panel__hiddenRow___bUtY6",colSpan:o.length+1}))}))))):i().createElement(r.Layer,{className:"-esm-billing__visit-bills-panel__emptyStateContainer___Hx5PG"},i().createElement(r.Tile,{className:"-esm-billing__visit-bills-panel__tile___UvjB5"},i().createElement("div",{className:"-esm-billing__visit-bills-panel__illo___+MOyS"},i().createElement(s.EmptyCardIllustration,null)),i().createElement("p",{className:"-esm-billing__visit-bills-panel__content___KqK8N"},l("noBillsToDisplay","There are no bills to display."))))}},6942(e){!function(){"use strict";var t={}.hasOwnProperty;function l(){for(var e="",i=0;i<arguments.length;i++){var n=arguments[i];n&&(e=a(e,function(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return l.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var i="";for(var n in e)t.call(e,n)&&e[n]&&(i=a(i,n));return i}(n)))}return e}function a(e,t){return t?e?e+" "+t:e+t:e}e.exports?(l.default=l,e.exports=l):"function"==typeof define&&"object"==typeof define.amd&&define.amd?define("classnames",[],function(){return l}):window.classNames=l}()}}]);
1
+ (globalThis.webpackChunk_openmrs_esm_billing_app=globalThis.webpackChunk_openmrs_esm_billing_app||[]).push([["9414"],{4751(e){var t;e.exports=t={},t.simpleFilter=function(e,l){return l.filter(function(l){return t.test(e,l)})},t.test=function(e,l){return null!==t.match(e,l)},t.match=function(e,t,l){l=l||{};var a,i=0,n=[],r=t.length,s=0,o=0,u=l.pre||"",m=l.post||"",c=l.caseSensitive&&t||t.toLowerCase();e=l.caseSensitive&&e||e.toLowerCase();for(var d=0;d<r;d++)a=t[d],c[d]===e[i]?(a=u+a+m,i+=1,o+=1+o):o=0,s+=o,n[n.length]=a;return i===e.length?(s=c===e?1/0:s,{rendered:n.join(""),score:s}):null},t.filter=function(e,l,a){return l&&0!==l.length?"string"!=typeof e?l:(a=a||{},l.reduce(function(l,i,n,r){var s=i;a.extract&&(s=a.extract(i));var o=t.match(e,s,a);return null!=o&&(l[l.length]={string:o.rendered,score:o.score,index:n,original:i}),l},[]).sort(function(e,t){var l=t.score-e.score;return l||e.index-t.index})):[]}},2373(e,t,l){"use strict";l.d(t,{Zz:()=>i,aL:()=>n,o_:()=>r});var a=l(9124);function i(e){return Array.isArray(e)?e.reduce((e,t)=>"number"==typeof t.price&&"number"==typeof t.quantity&&!0!==t.voided?e+t.price*t.quantity:e,0):0}let n=(e,t)=>{let l=window.i18next?.language?.substring(0,2)??"",a=new Intl.NumberFormat(l,{style:"currency",currency:t,minimumFractionDigits:2}).format(Math.abs(e));return e<0&&(a=`(${a})`),a},r=(e,t)=>{switch(e){case"male":return(0,a.getCoreTranslation)("male");case"female":return(0,a.getCoreTranslation)("female");case"other":return(0,a.getCoreTranslation)("other");case"unknown":return(0,a.getCoreTranslation)("unknown");default:return e}}},1772(e,t,l){"use strict";l.d(t,{aL:()=>a.aL,o_:()=>a.o_});var a=l(2373)},6762(e,t,l){"use strict";l.d(t,{A:()=>h});var a=l(5275),i=l.n(a),n=l(6942),r=l.n(n),s=l(8395),o=l(4751),u=l.n(o),m=l(1752),c=l(9124),d=l(5084);let b="-esm-billing__line-item-action-menu__menuitem___lOuJD",_=({bill:e,item:t,onMutate:l,showDiscountRequest:n,onDiscountRequest:r,showRefundRequest:o,onRefundRequest:u})=>{let{t:_}=(0,s.useTranslation)(),p=(0,c.useLayoutType)(),f=(0,a.useCallback)(()=>{let a=(0,c.showModal)("edit-bill-line-item-modal",{bill:e,item:t,closeModal:()=>a(),onMutate:l})},[e,t,l]),h=(0,a.useCallback)(()=>{let e=(0,c.showModal)("delete-line-item-confirmation-modal",{item:t,closeModal:()=>e(),onMutate:l})},[t,l]),E=e?.status===d.ih.PENDING;return i().createElement(m.Layer,null,i().createElement(m.OverflowMenu,{align:"left",flipped:!0,size:(0,c.isDesktop)(p)?"sm":"lg","data-testid":`action-menu-${t.uuid}`},i().createElement(m.OverflowMenuItem,{className:b,"data-testid":`edit-button-${t.uuid}`,disabled:!E,itemText:(0,c.getCoreTranslation)("edit"),onClick:f}),i().createElement(m.OverflowMenuItem,{className:b,"data-testid":`delete-button-${t.uuid}`,disabled:!E,isDelete:!0,itemText:(0,c.getCoreTranslation)("delete"),onClick:h}),n&&i().createElement(m.OverflowMenuItem,{className:b,"data-testid":`request-discount-button-${t.uuid}`,itemText:_("requestDiscount","Request discount"),onClick:r}),o&&i().createElement(m.OverflowMenuItem,{className:b,"data-testid":`request-refund-button-${t.uuid}`,itemText:_("requestRefund","Request refund"),onClick:u})))};var p=l(1772);let f=e=>(e.price??0)*(e.quantity??0),h=({bill:e,isLoadingBill:t,onMutate:l,viewOnly:n})=>{let{t:o}=(0,s.useTranslation)(),{defaultCurrency:b}=(0,c.useConfig)(),h=(0,c.useLayoutType)(),E=(0,a.useMemo)(()=>e?.lineItems??[],[e?.lineItems]),y=(0,c.isDesktop)(h)?"sm":"lg",[T,g]=(0,a.useState)(""),v=(0,c.useDebounce)(T),w=(0,a.useMemo)(()=>(e?.discounts??[]).filter(e=>!e.voided),[e?.discounts]),k=e?.status===d.ih.PENDING||e?.status===d.ih.POSTED,N=w.some(e=>!e.lineItemUuid),D=(0,a.useMemo)(()=>(e?.refunds??[]).filter(e=>!e.voided),[e?.refunds]),I=e?.status===d.ih.PAID||e?.status===d.ih.PARTIALLY_REFUNDED||e?.status===d.ih.REFUND_REQUESTED,C=D.filter(e=>e.status===d.fH.REQUESTED||e.status===d.fH.APPROVED),S=C.some(e=>!e.lineItemUuid),M=(0,a.useMemo)(()=>v?u().filter(v,E,{extract:e=>`${e.billableService} ${e.item}`}).sort((e,t)=>e.score-t.score).map(e=>e.original):E,[v,E]),x=(0,a.useMemo)(()=>new Map(E.map(e=>[e.uuid,e])),[E]),R=[{header:o("number","Number"),key:"no",width:7},{header:o("billItem","Bill item"),key:"billItem",width:25},{header:o("status","Status"),key:"status",width:25},{header:o("quantity","Quantity"),key:"quantity",width:15},{header:o("price","Price"),key:"price",width:24},{header:o("total","Total"),key:"total",width:15}],q=(0,a.useMemo)(()=>M?.map((e,t)=>({no:`${t+1}`,id:`${e.uuid}`,billItem:e.billableService?e.billableService:e?.item,status:e.status,quantity:e.quantity,price:(0,p.aL)(e.price,b),total:(0,p.aL)(f(e),b)}))??[],[M,b]);return t?i().createElement(m.DataTableSkeleton,{"data-testid":"loader",columnCount:R.length,showHeader:!1,showToolbar:!1,zebra:!0}):i().createElement("div",{className:"-esm-billing__invoice-table__lineItemsWrapper___ABU3I"},i().createElement(m.DataTable,{headers:R,rows:q,size:y,useZebraStyles:!0,overflowMenuOnHover:(0,c.isDesktop)(h)},({rows:t,headers:a,getRowProps:s,getTableProps:u})=>i().createElement(m.TableContainer,{description:i().createElement("span",{className:"-esm-billing__invoice-table__tableDescription___JKz3j"},i().createElement("span",null,o("itemsToBeBilled","Items to be billed"))),title:o("lineItems","Line items")},!n&&i().createElement(m.TableToolbarSearch,{className:"-esm-billing__invoice-table__searchbox___oxEnj",expanded:!0,onChange:e=>g(e.target.value),placeholder:o("searchThisTable","Search this table"),size:y}),i().createElement(m.Table,{...u(),"aria-label":o("invoiceLineItems","Invoice line items"),className:r()("-esm-billing__invoice-table__invoiceTable___2hd71","billingTable")},i().createElement(m.TableHead,null,i().createElement(m.TableRow,null,a.map(e=>i().createElement(m.TableHeader,{key:e.key},e.header)),!n&&i().createElement(m.TableHeader,{"aria-label":(0,c.getCoreTranslation)("actions")}))),i().createElement(m.TableBody,null,t.map(t=>{let a,r,o=x.get(t.id);return i().createElement(m.TableRow,{key:t.id,...s({row:t})},t.cells.map(e=>i().createElement(m.TableCell,{key:e.id},e.value)),!n&&i().createElement(m.TableCell,{className:"cds--table-column-menu"},o&&i().createElement(_,{bill:e,item:o,onMutate:l,showDiscountRequest:k&&!N&&(a=o.uuid,!w.some(e=>e.lineItemUuid===a)),onDiscountRequest:()=>{let t;t=(0,c.showModal)("request-discount-modal",{bill:{uuid:e.uuid,total:e.totalAmount??0,amountDue:Math.max(0,(e.netAmount??e.totalAmount??0)-(e.tenderedAmount??0)),receiptNumber:e.receiptNumber,lineItemCount:E.length},lineItem:{uuid:o.uuid,display:o.item||o.billableService||"--",total:f(o),quantity:o.quantity,price:o.price},onMutate:()=>l?.(),closeModal:()=>t()})},showRefundRequest:I&&!S&&(r=o.uuid??"",!C.some(e=>e.lineItemUuid===r))&&!!o.uuid,onRefundRequest:()=>(t=>{if(!t.uuid)return;let a=f(t),i=a-D.filter(e=>e.lineItemUuid===t.uuid&&(e.status===d.fH.APPROVED||e.status===d.fH.COMPLETED)).reduce((e,t)=>e+t.refundAmount,0),n=(0,c.showModal)("request-refund-modal",{bill:{uuid:e.uuid,total:e.totalAmount??0,amountAfterDiscount:e.netAmount??e.totalAmount??0},lineItem:{uuid:t.uuid,display:t.item||t.billableService||"--",total:a,quantity:t.quantity,price:t.price},remainingRefundable:Math.max(0,i),onMutate:()=>l?.(),closeModal:()=>n()})})(o)})))}))))),M?.length===0&&i().createElement("div",{className:"-esm-billing__invoice-table__filterEmptyState___ZtVBH"},i().createElement(m.Layer,null,i().createElement(m.Tile,{className:"-esm-billing__invoice-table__filterEmptyStateTile___j92yY"},i().createElement("p",{className:"-esm-billing__invoice-table__filterEmptyStateContent___41NoP"},o("noMatchingItemsToDisplay","No matching items to display")),!n&&i().createElement("p",{className:"-esm-billing__invoice-table__filterEmptyStateHelper___+DQR2"},o("checkFilters","Check the filters above"))))))}},501(e,t,l){"use strict";l.r(t),l.d(t,{default:()=>c});var a=l(5275),i=l.n(a),n=l(8395),r=l(1752),s=l(9124),o=l(6199),u=l(1772),m=l(6762);let c=({visit:e,patientUuid:t})=>{let{t:l}=(0,n.useTranslation)(),{defaultCurrency:c}=(0,s.useConfig)(),{bills:d,error:b,isLoading:_,isValidating:p,mutate:f}=(0,o.u1)(t,void 0,e.uuid),h=(0,a.useMemo)(()=>new Map(d?.map(e=>[e.uuid,e])),[d]),E=[{header:l("billDate","Bill date"),key:"billDate"},{header:l("invoiceNumber","Invoice number"),key:"invoiceNumber"},{header:l("billedItems","Billed items"),key:"billedItems"},{header:l("billTotal","Bill total"),key:"billTotal"}],y=d?.map(e=>({id:e.uuid,billDate:e.dateCreated?(e=>{try{return(0,s.formatDate)((0,s.parseDate)(e),{mode:"wide"})}catch{return"--"}})(e.dateCreated):"--",invoiceNumber:e.receiptNumber,billedItems:e?.lineItems?.map(e=>e?.billableService||e?.item).filter(Boolean).join(" & ")||"--",billTotal:(0,u.aL)(e.totalAmount??0,c)}));return _?i().createElement(r.DataTableSkeleton,{showHeader:!1,showToolbar:!1,zebra:!0}):b?i().createElement(r.Layer,null,i().createElement(s.ErrorState,{error:b,headerTitle:l("billList","Bill list")})):d?.length?i().createElement(r.DataTable,{isSortable:!0,rows:y,headers:E,size:"md",useZebraStyles:!0},({getExpandHeaderProps:e,getHeaderProps:t,getRowProps:a,getTableContainerProps:n,getTableProps:s,headers:o,rows:u})=>i().createElement(r.TableContainer,n(),i().createElement(r.Table,{...s(),"aria-label":l("billList","Bill list")},i().createElement(r.TableHead,null,i().createElement(r.TableRow,null,i().createElement(r.TableExpandHeader,{enableToggle:!0,...e()}),o.map(e=>i().createElement(r.TableHeader,{key:e.key,...t({header:e})},e.header)))),i().createElement(r.TableBody,null,u.map(e=>{let t=h.get(e.id);return i().createElement(i().Fragment,{key:e.id},i().createElement(r.TableExpandRow,a({row:e}),e.cells.map(e=>i().createElement(r.TableCell,{key:e.id},e.value))),e.isExpanded?i().createElement(r.TableExpandedRow,{colSpan:o.length+1},t?i().createElement(m.A,{bill:t,onMutate:f,isLoadingBill:p,viewOnly:!0}):i().createElement(r.InlineNotification,{kind:"error",lowContrast:!0,title:l("billNotFound","Bill details could not be loaded")})):i().createElement(r.TableExpandedRow,{className:"-esm-billing__visit-bills-panel__hiddenRow___bUtY6",colSpan:o.length+1}))}))))):i().createElement(r.Layer,{className:"-esm-billing__visit-bills-panel__emptyStateContainer___Hx5PG"},i().createElement(r.Tile,{className:"-esm-billing__visit-bills-panel__tile___UvjB5"},i().createElement("div",{className:"-esm-billing__visit-bills-panel__illo___+MOyS"},i().createElement(s.EmptyCardIllustration,null)),i().createElement("p",{className:"-esm-billing__visit-bills-panel__content___KqK8N"},l("noBillsToDisplay","There are no bills to display."))))}},6942(e){!function(){"use strict";var t={}.hasOwnProperty;function l(){for(var e="",i=0;i<arguments.length;i++){var n=arguments[i];n&&(e=a(e,function(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return l.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var i="";for(var n in e)t.call(e,n)&&e[n]&&(i=a(i,n));return i}(n)))}return e}function a(e,t){return t?e?e+" "+t:e+t:e}e.exports?(l.default=l,e.exports=l):"function"==typeof define&&"object"==typeof define.amd&&define.amd?define("classnames",[],function(){return l}):window.classNames=l}()}}]);
@@ -1,3 +1,3 @@
1
- var _openmrs_esm_billing_app;!function(){var e="u">typeof globalThis?globalThis:self;if(void 0===e._FEDERATION_RUNTIME_CORE||void 0===e._OPENMRS_FEDERATION_SDK||void 0===e._OPENMRS_FEDERATION_ERROR_CODES)throw Error("@openmrs/esm-billing-app cannot start: the OpenMRS app shell serving this page does not provide the Module Federation runtime. This app was built with newer OpenMRS tooling than the app shell, so either upgrade @openmrs/esm-app-shell, or rebuild this app with tooling matching the app shell.");var t=e._FEDERATION_RUNTIME_CORE_FROM;t&&t.version&&"2.8"!==String(t.version).split(".").slice(0,2).join(".")&&console.warn("@openmrs/esm-billing-app was built against Module Federation 2.8.x but the app shell provides "+t.version+". Shared dependencies may not de-duplicate correctly.")}(),(()=>{var e,t,r,n,o,i={2185(e,t,r){"use strict";var n,o,i,a,s,l,u,p,c,d,f,h,m=r(7032),g=r.n(m);let b=[].filter(({plugin:e})=>e).map(({plugin:e,params:t})=>e(t)),y={};if((r.initializeSharingData||r.initializeExposesData)&&r.federation){let e=(e,t,r)=>{e&&e[t]&&(e[t]=r)},t=(e,t,r)=>{let n=r();Array.isArray(n)?(null!=e[t]||(e[t]=[]),e[t].push(...n)):"object"==typeof n&&null!==n&&(null!=e[t]||(e[t]={}),Object.assign(e[t],n))},m=(e,t,r)=>{null!=e[t]||(e[t]=r())},S=null!=(n=null==(l=r.remotesLoadingData)?void 0:l.chunkMapping)?n:{},E=null!=(o=null==(u=r.remotesLoadingData)?void 0:u.moduleIdToRemoteDataMapping)?o:{},M=null!=(i=null==(p=r.initializeSharingData)?void 0:p.scopeToSharingDataMapping)?i:{},O=null!=(a=null==(c=r.consumesLoadingData)?void 0:c.chunkMapping)?a:{},_=null!=(s=null==(d=r.consumesLoadingData)?void 0:d.moduleIdToConsumeDataMapping)?s:{},v={},R=[],T={},w=null==(f=r.initializeExposesData)?void 0:f.shareScope;for(let e in g())r.federation[e]=g()[e];m(r.federation,"consumesLoadingModuleToHandlerMapping",()=>{let e={};for(let[t,r]of Object.entries(_))e[t]={getter:r.fallback,shareInfo:{shareConfig:{fixedDependencies:!1,requiredVersion:r.requiredVersion,strictVersion:r.strictVersion,singleton:r.singleton,eager:r.eager},scope:[r.shareScope]},shareKey:r.shareKey};return e}),m(r.federation,"initOptions",()=>({})),m(r.federation.initOptions,"name",()=>"@openmrs/esm-billing-app"),m(r.federation.initOptions,"shareStrategy",()=>"version-first"),m(r.federation.initOptions,"shared",()=>{let e={};for(let[t,r]of Object.entries(M))for(let n of r)if("object"==typeof n&&null!==n){let{name:r,version:o,factory:i,eager:a,singleton:s,requiredVersion:l,strictVersion:u}=n,p={},c=function(e){return void 0!==e};c(s)&&(p.singleton=s),c(l)&&(p.requiredVersion=l),c(a)&&(p.eager=a),c(u)&&(p.strictVersion=u);let d={version:o,scope:[t],shareConfig:p,get:i};e[r]?e[r].push(d):e[r]=[d]}return e}),t(r.federation.initOptions,"remotes",()=>Object.values(y).flat().filter(e=>"script"===e.externalType)),t(r.federation.initOptions,"plugins",()=>b),m(r.federation,"bundlerRuntimeOptions",()=>({})),m(r.federation.bundlerRuntimeOptions,"remotes",()=>({})),m(r.federation.bundlerRuntimeOptions.remotes,"chunkMapping",()=>S),m(r.federation.bundlerRuntimeOptions.remotes,"remoteInfos",()=>y),m(r.federation.bundlerRuntimeOptions.remotes,"idToExternalAndNameMapping",()=>{let e={};for(let[t,r]of Object.entries(E))e[t]=[r.shareScope,r.name,r.externalModuleId,r.remoteName];return e}),m(r.federation.bundlerRuntimeOptions.remotes,"webpackRequire",()=>r),t(r.federation.bundlerRuntimeOptions.remotes,"idToRemoteMap",()=>{let e={};for(let[t,r]of Object.entries(E)){let n=y[r.remoteName];n&&(e[t]=n)}return e}),e(r,"S",r.federation.bundlerRuntime.S),r.federation.attachShareScopeMap&&r.federation.attachShareScopeMap(r),e(r.f,"remotes",(e,t)=>r.federation.bundlerRuntime.remotes({chunkId:e,promises:t,chunkMapping:S,idToExternalAndNameMapping:r.federation.bundlerRuntimeOptions.remotes.idToExternalAndNameMapping,idToRemoteMap:r.federation.bundlerRuntimeOptions.remotes.idToRemoteMap,webpackRequire:r})),e(r.f,"consumes",(e,t)=>r.federation.bundlerRuntime.consumes({chunkId:e,promises:t,chunkMapping:O,moduleToHandlerMapping:r.federation.consumesLoadingModuleToHandlerMapping,installedModules:v,webpackRequire:r})),e(r,"I",(e,t)=>r.federation.bundlerRuntime.I({shareScopeName:e,initScope:t,initPromises:R,initTokens:T,webpackRequire:r})),e(r,"initContainer",(e,t,n)=>r.federation.bundlerRuntime.initContainerEntry({shareScope:e,initScope:t,remoteEntryInitOptions:n,shareScopeKey:w,webpackRequire:r})),e(r,"getContainer",(e,t)=>{var n=r.initializeExposesData.moduleMap;return r.R=t,t=Object.prototype.hasOwnProperty.call(n,e)?n[e]():Promise.resolve().then(()=>{throw Error('Module "'+e+'" does not exist in container.')}),r.R=void 0,t}),r.federation.instance=r.federation.runtime.init(r.federation.initOptions),(null==(h=r.consumesLoadingData)?void 0:h.initialConsumes)&&r.federation.bundlerRuntime.installInitialConsumes({webpackRequire:r,installedModules:v,initialConsumes:r.consumesLoadingData.initialConsumes,moduleToHandlerMapping:r.federation.consumesLoadingModuleToHandlerMapping})}},1760(e,t,r){"use strict";r.d(t,{get:()=>r.getContainer,init:()=>r.initContainer})},3054(e){"use strict";e.exports=globalThis._FEDERATION_RUNTIME_CORE},9170(e){"use strict";e.exports=globalThis._OPENMRS_FEDERATION_ERROR_CODES},1853(e){"use strict";e.exports=globalThis._OPENMRS_FEDERATION_SDK},9369(e,t){var r=Object.create,n=Object.defineProperty,o=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.getPrototypeOf,s=Object.prototype.hasOwnProperty;t.__toESM=(e,t,l)=>(l=null!=e?r(a(e)):{},((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(var a,l=i(t),u=0,p=l.length;u<p;u++)a=l[u],s.call(e,a)||void 0===a||n(e,a,{get:(e=>t[e]).bind(null,a),enumerable:!(r=o(t,a))||r.enumerable});return e})(!t&&e&&e.__esModule?l:n(l,"default",{value:e,enumerable:!0}),e))},1222(e,t,r){Object.defineProperties(t,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}}),r(9369);let n=r(1146),o=r(3054),i={...o.helpers.global,getGlobalFederationInstance:n.getGlobalFederationInstance},a=o.helpers.share,s=o.helpers.utils;t.default={global:i,share:a,utils:s},t.global=i,t.share=a,t.utils=s},7201(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),r(9369);let n=r(1146),o=r(3054),i=r(9170);function a(e){let t=new((0,o.getGlobalFederationConstructor)()||o.ModuleFederation)({id:`${e.name}@${e.version||Date.now()}`,...e});return(0,o.setGlobalFederationInstance)(t),t}let s=null;(0,o.setGlobalFederationConstructor)(o.ModuleFederation),Object.defineProperty(t,"Module",{enumerable:!0,get:function(){return o.Module}}),t.ModuleFederation=o.ModuleFederation,t.createInstance=a,t.getInstance=function(e){return e?o.CurrentGlobal.__FEDERATION__.__INSTANCES__.find(e)||null:s},Object.defineProperty(t,"getRemoteEntry",{enumerable:!0,get:function(){return o.getRemoteEntry}}),Object.defineProperty(t,"getRemoteInfo",{enumerable:!0,get:function(){return o.getRemoteInfo}}),t.init=function(e){let t=n.getGlobalFederationInstance(e.name,e.version),r={...e,id:e.id||""};return t?(t.initOptions(r),s||(s=t),t):s=a(r)},t.loadRemote=function(...e){return(0,o.assert)(s,i.RUNTIME_009,i.runtimeDescMap),s.loadRemote.apply(s,e)},Object.defineProperty(t,"loadScript",{enumerable:!0,get:function(){return o.loadScript}}),Object.defineProperty(t,"loadScriptNode",{enumerable:!0,get:function(){return o.loadScriptNode}}),t.loadShare=function(...e){return(0,o.assert)(s,i.RUNTIME_009,i.runtimeDescMap),s.loadShare.apply(s,e)},t.loadShareSync=function(...e){return(0,o.assert)(s,i.RUNTIME_009,i.runtimeDescMap),s.loadShareSync.apply(s,e)},t.preloadRemote=function(...e){return(0,o.assert)(s,i.RUNTIME_009,i.runtimeDescMap),s.preloadRemote.apply(s,e)},Object.defineProperty(t,"registerGlobalPlugins",{enumerable:!0,get:function(){return o.registerGlobalPlugins}}),t.registerPlugins=function(...e){return(0,o.assert)(s,i.RUNTIME_009,i.runtimeDescMap),s.registerPlugins.apply(s,e)},t.registerRemotes=function(...e){return(0,o.assert)(s,i.RUNTIME_009,i.runtimeDescMap),s.registerRemotes.apply(s,e)},t.registerShared=function(...e){return(0,o.assert)(s,i.RUNTIME_009,i.runtimeDescMap),s.registerShared.apply(s,e)}},1146(e,t,r){r(9369);let n=r(3054);t.getGlobalFederationInstance=function(e,t){let r="@openmrs/esm-billing-app:1.3.2-pre.2111";return n.CurrentGlobal.__FEDERATION__.__INSTANCES__.find(n=>!!r&&n.options.id===r||n.options.name===e&&!n.options.version&&!t||n.options.name===e&&!!t&&n.options.version===t)}},1326(e,t){var r=Object.create,n=Object.defineProperty,o=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.getPrototypeOf,s=Object.prototype.hasOwnProperty;t.__toESM=(e,t,l)=>(l=null!=e?r(a(e)):{},((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(var a,l=i(t),u=0,p=l.length;u<p;u++)a=l[u],s.call(e,a)||void 0===a||n(e,a,{get:(e=>t[e]).bind(null,a),enumerable:!(r=o(t,a))||r.enumerable});return e})(!t&&e&&e.__esModule?l:n(l,"default",{value:e,enumerable:!0}),e))},3026(e,t){t.attachShareScopeMap=function(e){e.S&&!e.federation.hasAttachShareScopeMap&&e.federation.instance&&e.federation.instance.shareScopeMap&&(e.S=e.federation.instance.shareScopeMap,e.federation.hasAttachShareScopeMap=!0)}},9592(e,t){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.FEDERATION_SUPPORTED_TYPES=["script"]},5769(e,t,r){let n=r(3026),o=r(9671),i=r(9864),a=r(9296),s=r(2742);t.consumes=function(e){o.updateConsumeOptions(e);let{chunkId:t,promises:r,installedModules:l,webpackRequire:u,chunkMapping:p,moduleToHandlerMapping:c}=e;n.attachShareScopeMap(u),u.o(p,t)&&p[t].forEach(e=>{if(u.o(l,e))return r.push(l[e]);let t=t=>{l[e]=0,u.m[e]=r=>{delete u.c[e];let n=t(),{shareInfo:o}=c[e];if(o?.shareConfig?.layer&&n&&"object"==typeof n)try{n.hasOwnProperty("layer")&&void 0!==n.layer||(n.layer=o.shareConfig.layer)}catch(e){}r.exports=n}},n=t=>{delete l[e],u.m[e]=r=>{throw delete u.c[e],t}};try{let o=u.federation.instance;if(!o)throw Error("Federation instance not found!");let{shareKey:p,getter:d,shareInfo:f,treeShakingGetter:h}=c[e],m=i.getUsedExports(u,p),g={...f};Array.isArray(g.scope)&&Array.isArray(g.scope[0])&&(g.scope=g.scope[0]),m&&(g.treeShaking={usedExports:m,useIn:[o.options.name]});let b=o.loadShare(p,{customShareInfo:g}).then(e=>{if(!1===e){if("function"!=typeof d)throw Error(s.getShortErrorMsg(a.RUNTIME_012,{[a.RUNTIME_012]:'The getter for the shared module is not a function. This may be caused by setting "shared.import: false" without the host providing the corresponding lib.'},{shareKey:p}));return h?.()||d()}return e});b.then?r.push(l[e]=b.then(t).catch(n)):t(b)}catch(e){n(e)}})}},9296(e,t){t.RUNTIME_012="RUNTIME-012"},2742(e,t){t.getShortErrorMsg=(e,t,r,n)=>{let o=[`${[t[e]]} #${e}`];return r&&o.push(`args: ${JSON.stringify(r)}`),o.push(`View the docs to see how to solve: https://module-federation.io/guide/troubleshooting/${e.split("-")[0].toLowerCase()}#${e.toLowerCase()}`),n&&o.push(`Original Error Message:
1
+ var _openmrs_esm_billing_app;!function(){var e="u">typeof globalThis?globalThis:self;if(void 0===e._FEDERATION_RUNTIME_CORE||void 0===e._OPENMRS_FEDERATION_SDK||void 0===e._OPENMRS_FEDERATION_ERROR_CODES)throw Error("@openmrs/esm-billing-app cannot start: the OpenMRS app shell serving this page does not provide the Module Federation runtime. This app was built with newer OpenMRS tooling than the app shell, so either upgrade @openmrs/esm-app-shell, or rebuild this app with tooling matching the app shell.");var t=e._FEDERATION_RUNTIME_CORE_FROM;t&&t.version&&"2.8"!==String(t.version).split(".").slice(0,2).join(".")&&console.warn("@openmrs/esm-billing-app was built against Module Federation 2.8.x but the app shell provides "+t.version+". Shared dependencies may not de-duplicate correctly.")}(),(()=>{var e,t,r,n,o,i={2185(e,t,r){"use strict";var n,o,i,a,s,l,u,p,c,d,f,h,m=r(7032),g=r.n(m);let b=[].filter(({plugin:e})=>e).map(({plugin:e,params:t})=>e(t)),y={};if((r.initializeSharingData||r.initializeExposesData)&&r.federation){let e=(e,t,r)=>{e&&e[t]&&(e[t]=r)},t=(e,t,r)=>{let n=r();Array.isArray(n)?(null!=e[t]||(e[t]=[]),e[t].push(...n)):"object"==typeof n&&null!==n&&(null!=e[t]||(e[t]={}),Object.assign(e[t],n))},m=(e,t,r)=>{null!=e[t]||(e[t]=r())},S=null!=(n=null==(l=r.remotesLoadingData)?void 0:l.chunkMapping)?n:{},E=null!=(o=null==(u=r.remotesLoadingData)?void 0:u.moduleIdToRemoteDataMapping)?o:{},M=null!=(i=null==(p=r.initializeSharingData)?void 0:p.scopeToSharingDataMapping)?i:{},O=null!=(a=null==(c=r.consumesLoadingData)?void 0:c.chunkMapping)?a:{},_=null!=(s=null==(d=r.consumesLoadingData)?void 0:d.moduleIdToConsumeDataMapping)?s:{},v={},R=[],T={},w=null==(f=r.initializeExposesData)?void 0:f.shareScope;for(let e in g())r.federation[e]=g()[e];m(r.federation,"consumesLoadingModuleToHandlerMapping",()=>{let e={};for(let[t,r]of Object.entries(_))e[t]={getter:r.fallback,shareInfo:{shareConfig:{fixedDependencies:!1,requiredVersion:r.requiredVersion,strictVersion:r.strictVersion,singleton:r.singleton,eager:r.eager},scope:[r.shareScope]},shareKey:r.shareKey};return e}),m(r.federation,"initOptions",()=>({})),m(r.federation.initOptions,"name",()=>"@openmrs/esm-billing-app"),m(r.federation.initOptions,"shareStrategy",()=>"version-first"),m(r.federation.initOptions,"shared",()=>{let e={};for(let[t,r]of Object.entries(M))for(let n of r)if("object"==typeof n&&null!==n){let{name:r,version:o,factory:i,eager:a,singleton:s,requiredVersion:l,strictVersion:u}=n,p={},c=function(e){return void 0!==e};c(s)&&(p.singleton=s),c(l)&&(p.requiredVersion=l),c(a)&&(p.eager=a),c(u)&&(p.strictVersion=u);let d={version:o,scope:[t],shareConfig:p,get:i};e[r]?e[r].push(d):e[r]=[d]}return e}),t(r.federation.initOptions,"remotes",()=>Object.values(y).flat().filter(e=>"script"===e.externalType)),t(r.federation.initOptions,"plugins",()=>b),m(r.federation,"bundlerRuntimeOptions",()=>({})),m(r.federation.bundlerRuntimeOptions,"remotes",()=>({})),m(r.federation.bundlerRuntimeOptions.remotes,"chunkMapping",()=>S),m(r.federation.bundlerRuntimeOptions.remotes,"remoteInfos",()=>y),m(r.federation.bundlerRuntimeOptions.remotes,"idToExternalAndNameMapping",()=>{let e={};for(let[t,r]of Object.entries(E))e[t]=[r.shareScope,r.name,r.externalModuleId,r.remoteName];return e}),m(r.federation.bundlerRuntimeOptions.remotes,"webpackRequire",()=>r),t(r.federation.bundlerRuntimeOptions.remotes,"idToRemoteMap",()=>{let e={};for(let[t,r]of Object.entries(E)){let n=y[r.remoteName];n&&(e[t]=n)}return e}),e(r,"S",r.federation.bundlerRuntime.S),r.federation.attachShareScopeMap&&r.federation.attachShareScopeMap(r),e(r.f,"remotes",(e,t)=>r.federation.bundlerRuntime.remotes({chunkId:e,promises:t,chunkMapping:S,idToExternalAndNameMapping:r.federation.bundlerRuntimeOptions.remotes.idToExternalAndNameMapping,idToRemoteMap:r.federation.bundlerRuntimeOptions.remotes.idToRemoteMap,webpackRequire:r})),e(r.f,"consumes",(e,t)=>r.federation.bundlerRuntime.consumes({chunkId:e,promises:t,chunkMapping:O,moduleToHandlerMapping:r.federation.consumesLoadingModuleToHandlerMapping,installedModules:v,webpackRequire:r})),e(r,"I",(e,t)=>r.federation.bundlerRuntime.I({shareScopeName:e,initScope:t,initPromises:R,initTokens:T,webpackRequire:r})),e(r,"initContainer",(e,t,n)=>r.federation.bundlerRuntime.initContainerEntry({shareScope:e,initScope:t,remoteEntryInitOptions:n,shareScopeKey:w,webpackRequire:r})),e(r,"getContainer",(e,t)=>{var n=r.initializeExposesData.moduleMap;return r.R=t,t=Object.prototype.hasOwnProperty.call(n,e)?n[e]():Promise.resolve().then(()=>{throw Error('Module "'+e+'" does not exist in container.')}),r.R=void 0,t}),r.federation.instance=r.federation.runtime.init(r.federation.initOptions),(null==(h=r.consumesLoadingData)?void 0:h.initialConsumes)&&r.federation.bundlerRuntime.installInitialConsumes({webpackRequire:r,installedModules:v,initialConsumes:r.consumesLoadingData.initialConsumes,moduleToHandlerMapping:r.federation.consumesLoadingModuleToHandlerMapping})}},1760(e,t,r){"use strict";r.d(t,{get:()=>r.getContainer,init:()=>r.initContainer})},3054(e){"use strict";e.exports=globalThis._FEDERATION_RUNTIME_CORE},9170(e){"use strict";e.exports=globalThis._OPENMRS_FEDERATION_ERROR_CODES},1853(e){"use strict";e.exports=globalThis._OPENMRS_FEDERATION_SDK},9369(e,t){var r=Object.create,n=Object.defineProperty,o=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.getPrototypeOf,s=Object.prototype.hasOwnProperty;t.__toESM=(e,t,l)=>(l=null!=e?r(a(e)):{},((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(var a,l=i(t),u=0,p=l.length;u<p;u++)a=l[u],s.call(e,a)||void 0===a||n(e,a,{get:(e=>t[e]).bind(null,a),enumerable:!(r=o(t,a))||r.enumerable});return e})(!t&&e&&e.__esModule?l:n(l,"default",{value:e,enumerable:!0}),e))},1222(e,t,r){Object.defineProperties(t,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}}),r(9369);let n=r(1146),o=r(3054),i={...o.helpers.global,getGlobalFederationInstance:n.getGlobalFederationInstance},a=o.helpers.share,s=o.helpers.utils;t.default={global:i,share:a,utils:s},t.global=i,t.share=a,t.utils=s},7201(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),r(9369);let n=r(1146),o=r(3054),i=r(9170);function a(e){let t=new((0,o.getGlobalFederationConstructor)()||o.ModuleFederation)({id:`${e.name}@${e.version||Date.now()}`,...e});return(0,o.setGlobalFederationInstance)(t),t}let s=null;(0,o.setGlobalFederationConstructor)(o.ModuleFederation),Object.defineProperty(t,"Module",{enumerable:!0,get:function(){return o.Module}}),t.ModuleFederation=o.ModuleFederation,t.createInstance=a,t.getInstance=function(e){return e?o.CurrentGlobal.__FEDERATION__.__INSTANCES__.find(e)||null:s},Object.defineProperty(t,"getRemoteEntry",{enumerable:!0,get:function(){return o.getRemoteEntry}}),Object.defineProperty(t,"getRemoteInfo",{enumerable:!0,get:function(){return o.getRemoteInfo}}),t.init=function(e){let t=n.getGlobalFederationInstance(e.name,e.version),r={...e,id:e.id||""};return t?(t.initOptions(r),s||(s=t),t):s=a(r)},t.loadRemote=function(...e){return(0,o.assert)(s,i.RUNTIME_009,i.runtimeDescMap),s.loadRemote.apply(s,e)},Object.defineProperty(t,"loadScript",{enumerable:!0,get:function(){return o.loadScript}}),Object.defineProperty(t,"loadScriptNode",{enumerable:!0,get:function(){return o.loadScriptNode}}),t.loadShare=function(...e){return(0,o.assert)(s,i.RUNTIME_009,i.runtimeDescMap),s.loadShare.apply(s,e)},t.loadShareSync=function(...e){return(0,o.assert)(s,i.RUNTIME_009,i.runtimeDescMap),s.loadShareSync.apply(s,e)},t.preloadRemote=function(...e){return(0,o.assert)(s,i.RUNTIME_009,i.runtimeDescMap),s.preloadRemote.apply(s,e)},Object.defineProperty(t,"registerGlobalPlugins",{enumerable:!0,get:function(){return o.registerGlobalPlugins}}),t.registerPlugins=function(...e){return(0,o.assert)(s,i.RUNTIME_009,i.runtimeDescMap),s.registerPlugins.apply(s,e)},t.registerRemotes=function(...e){return(0,o.assert)(s,i.RUNTIME_009,i.runtimeDescMap),s.registerRemotes.apply(s,e)},t.registerShared=function(...e){return(0,o.assert)(s,i.RUNTIME_009,i.runtimeDescMap),s.registerShared.apply(s,e)}},1146(e,t,r){r(9369);let n=r(3054);t.getGlobalFederationInstance=function(e,t){let r="@openmrs/esm-billing-app:1.3.2-pre.2113";return n.CurrentGlobal.__FEDERATION__.__INSTANCES__.find(n=>!!r&&n.options.id===r||n.options.name===e&&!n.options.version&&!t||n.options.name===e&&!!t&&n.options.version===t)}},1326(e,t){var r=Object.create,n=Object.defineProperty,o=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.getPrototypeOf,s=Object.prototype.hasOwnProperty;t.__toESM=(e,t,l)=>(l=null!=e?r(a(e)):{},((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(var a,l=i(t),u=0,p=l.length;u<p;u++)a=l[u],s.call(e,a)||void 0===a||n(e,a,{get:(e=>t[e]).bind(null,a),enumerable:!(r=o(t,a))||r.enumerable});return e})(!t&&e&&e.__esModule?l:n(l,"default",{value:e,enumerable:!0}),e))},3026(e,t){t.attachShareScopeMap=function(e){e.S&&!e.federation.hasAttachShareScopeMap&&e.federation.instance&&e.federation.instance.shareScopeMap&&(e.S=e.federation.instance.shareScopeMap,e.federation.hasAttachShareScopeMap=!0)}},9592(e,t){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.FEDERATION_SUPPORTED_TYPES=["script"]},5769(e,t,r){let n=r(3026),o=r(9671),i=r(9864),a=r(9296),s=r(2742);t.consumes=function(e){o.updateConsumeOptions(e);let{chunkId:t,promises:r,installedModules:l,webpackRequire:u,chunkMapping:p,moduleToHandlerMapping:c}=e;n.attachShareScopeMap(u),u.o(p,t)&&p[t].forEach(e=>{if(u.o(l,e))return r.push(l[e]);let t=t=>{l[e]=0,u.m[e]=r=>{delete u.c[e];let n=t(),{shareInfo:o}=c[e];if(o?.shareConfig?.layer&&n&&"object"==typeof n)try{n.hasOwnProperty("layer")&&void 0!==n.layer||(n.layer=o.shareConfig.layer)}catch(e){}r.exports=n}},n=t=>{delete l[e],u.m[e]=r=>{throw delete u.c[e],t}};try{let o=u.federation.instance;if(!o)throw Error("Federation instance not found!");let{shareKey:p,getter:d,shareInfo:f,treeShakingGetter:h}=c[e],m=i.getUsedExports(u,p),g={...f};Array.isArray(g.scope)&&Array.isArray(g.scope[0])&&(g.scope=g.scope[0]),m&&(g.treeShaking={usedExports:m,useIn:[o.options.name]});let b=o.loadShare(p,{customShareInfo:g}).then(e=>{if(!1===e){if("function"!=typeof d)throw Error(s.getShortErrorMsg(a.RUNTIME_012,{[a.RUNTIME_012]:'The getter for the shared module is not a function. This may be caused by setting "shared.import: false" without the host providing the corresponding lib.'},{shareKey:p}));return h?.()||d()}return e});b.then?r.push(l[e]=b.then(t).catch(n)):t(b)}catch(e){n(e)}})}},9296(e,t){t.RUNTIME_012="RUNTIME-012"},2742(e,t){t.getShortErrorMsg=(e,t,r,n)=>{let o=[`${[t[e]]} #${e}`];return r&&o.push(`args: ${JSON.stringify(r)}`),o.push(`View the docs to see how to solve: https://module-federation.io/guide/troubleshooting/${e.split("-")[0].toLowerCase()}#${e.toLowerCase()}`),n&&o.push(`Original Error Message:
2
2
  ${n}`),o.join("\n")}},2176(e,t){t.getSharedFallbackGetter=({shareKey:e,factory:t,version:r,webpackRequire:n,libraryType:o="global"})=>{let{runtime:i,instance:a,bundlerRuntime:s,sharedFallback:l}=n.federation;if(!l)return t;let u=l[e];if(!u)return t;let p=r?u.find(e=>e[1]===r):u[0];if(!p)throw Error(`No fallback item found for shareKey: ${e} and version: ${r}`);return()=>i.getRemoteEntry({origin:n.federation.instance,remoteInfo:{name:p[2],entry:`${n.p}${p[0]}`,type:o,entryGlobalName:p[2],shareScope:"default"}}).then(t=>{if(!t)throw Error(`Failed to load fallback entry for shareKey: ${e} and version: ${r}`);return t.init(n.federation.instance,s).then(()=>t.get())})}},9864(e,t){t.getUsedExports=function(e,t){let r=e.federation.usedExports;if(r)return r[t]}},7032(e,t,r){Object.defineProperties(t,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});let n=r(1326),o=r(3026),i=r(5313),a=r(5769),s=r(2614),l=r(8066),u=r(8593),p=r(6554),c=r(2176),d=r(7201);d=n.__toESM(d);let f={remotes:i.remotes,consumes:a.consumes,I:s.initializeSharing,S:{},installInitialConsumes:l.installInitialConsumes,initContainerEntry:u.initContainerEntry,init:p.init,getSharedFallbackGetter:c.getSharedFallbackGetter},h={runtime:d,instance:void 0,initOptions:void 0,bundlerRuntime:f,attachShareScopeMap:o.attachShareScopeMap,bundlerRuntimeOptions:{}},m=h.instance,g=h.initOptions,b=h.bundlerRuntimeOptions;t.attachShareScopeMap=o.attachShareScopeMap,t.bundlerRuntime=f,t.bundlerRuntimeOptions=b,t.default=h,t.initOptions=g,t.instance=m,Object.defineProperty(t,"runtime",{enumerable:!0,get:function(){return d}})},6554(e,t,r){let n=r(1326),o=r(7201),i=r(1222);i=n.__toESM(i),t.init=function({webpackRequire:e}){let{initOptions:t,runtime:n,sharedFallback:a,bundlerRuntime:s,libraryType:l}=e.federation;if(!t)throw Error("initOptions is required!");return t.plugins||=[],t.plugins.push({name:"tree-shake-plugin",beforeInit(t){let{userOptions:n,origin:u,options:p}=t,c=n.version||p.version;if(!a)return t;let d=n.shared||{},f=[];Object.keys(d).forEach(t=>{(Array.isArray(d[t])?d[t]:[d[t]]).forEach(r=>{f.push([t,r]),"get"in r&&(r.treeShaking||={},r.treeShaking.get=r.get,r.get=s.getSharedFallbackGetter({shareKey:t,factory:r.get,webpackRequire:e,libraryType:l,version:r.version}))})});let h=i.default.global.getGlobalSnapshotInfoByModuleInfo({name:u.name,version:c});return h&&"shared"in h&&(Object.keys(p.shared||{}).forEach(e=>{p.shared[e].forEach(t=>{f.push([e,t])})}),f.forEach(([e,t])=>{((e,t)=>{let n=h.shared.find(t=>t.sharedName===e);if(!n)return;let{treeShaking:i}=t;if(!i)return;let{secondarySharedTreeShakingName:a,secondarySharedTreeShakingEntry:s,treeShakingStatus:p}=n;i.status!==p&&(i.status=p,s&&l&&a&&(i.get=async()=>{let e=await (0,o.getRemoteEntry)({origin:u,remoteInfo:{name:a,entry:s,type:l,entryGlobalName:a,shareScope:"default"}});return await e.init(u,r.federation.bundlerRuntime),e.get()}))})(e,t)})),t}}),n.init(t)}},8593(e,t){t.initContainerEntry=function(e){let{webpackRequire:t,shareScope:r,initScope:n,shareScopeKey:o,remoteEntryInitOptions:i}=e;if(!t.S||!t.federation||!t.federation.instance||!t.federation.initOptions)return;let a=t.federation.instance;a.initOptions({name:t.federation.initOptions.name,remotes:[],...i});let s=i?.shareScopeKeys,l=i?.shareScopeMap;if(o&&"string"!=typeof o)o.forEach(e=>{if(!s||!l)return void a.initShareScopeMap(e,r,{hostShareScopeMap:i?.shareScopeMap||{}});l[e]||(l[e]={});let t=l[e];a.initShareScopeMap(e,t,{hostShareScopeMap:i?.shareScopeMap||{}})});else{let e=o||"default";Array.isArray(s)?s.forEach(e=>{l[e]||(l[e]={});let t=l[e];a.initShareScopeMap(e,t,{hostShareScopeMap:i?.shareScopeMap||{}})}):a.initShareScopeMap(e,r,{hostShareScopeMap:i?.shareScopeMap||{}})}return(t.federation.attachShareScopeMap&&t.federation.attachShareScopeMap(t),Array.isArray(o))?t.federation.initOptions.shared?t.I(o,n):Promise.all(o.map(e=>t.I(e,n))).then(()=>!0):t.I(o||"default",n)}},2614(e,t,r){let n=r(3026),o=r(9592);t.initializeSharing=function({shareScopeName:e,webpackRequire:t,initPromises:r,initTokens:i,initScope:a}){let s=Array.isArray(e)?e:[e];var l=[],u=function(s){a||(a=[]);let l=t.federation.instance;var u=i[s];if(u||(u=i[s]={from:l.name}),a.indexOf(u)>=0)return;a.push(u);let p=r[s];if(p)return p;var c=r=>{var n=e=>{let t;return t="Initialization of sharing external failed: "+e,"u">typeof console&&console.warn&&console.warn(t)};try{var o=t(r);if(!o)return;var i=r=>r&&r.init&&r.init(t.S[s],a,{shareScopeMap:t.S||{},shareScopeKeys:e});if(o.then)return d.push(o.then(i,n));var l=i(o);if(l&&"boolean"!=typeof l&&l.then)return d.push(l.catch(n))}catch(e){n(e)}};let d=l.initializeSharing(s,{strategy:l.options.shareStrategy,initScope:a,from:"build"});n.attachShareScopeMap(t);let f=t.federation.bundlerRuntimeOptions.remotes;return(f&&Object.keys(f.idToRemoteMap).forEach(e=>{let t=f.idToRemoteMap[e],r=f.idToExternalAndNameMapping[e][2];if(t.length>1)c(r);else if(1===t.length){let e=t[0];o.FEDERATION_SUPPORTED_TYPES.includes(e.externalType)||c(r)}}),d.length)?r[s]=Promise.all(d).then(()=>r[s]=!0):r[s]=!0};return s.forEach(e=>{l.push(u(e))}),Promise.all(l).then(()=>!0)}},8066(e,t,r){let n=r(9671),o=r(9864);t.installInitialConsumes=function(e){n.updateConsumeOptions(e);let{moduleToHandlerMapping:t,webpackRequire:r,installedModules:i,initialConsumes:a,asyncLoad:s}=e,l=[];a.forEach(e=>{l.push([e,()=>(function(e){let{moduleId:t,moduleToHandlerMapping:r,webpackRequire:n,asyncLoad:i}=e,a=n.federation.instance;if(!a)throw Error("Federation instance not found!");let{shareKey:s,shareInfo:l}=r[t];try{let e=o.getUsedExports(n,s),t={...l};if(e&&(t.treeShaking={usedExports:e,useIn:[a.options.name]}),i)return a.loadShare(s,{customShareInfo:t});return a.loadShareSync(s,{customShareInfo:t})}catch(e){throw console.error('loadShareSync failed! The function should not be called unless you set "eager:true". If you do not set it, and encounter this issue, you can check whether an async boundary is implemented.'),console.error("The original error message is as follows: "),e}})({moduleId:e,moduleToHandlerMapping:t,webpackRequire:r,asyncLoad:s})])});let u=(e,n)=>{r.m[e]=o=>{i[e]=0,delete r.c[e];let a=n();if("function"!=typeof a)throw Error(`Shared module is not available for eager consumption: ${e}`);let s=a(),{shareInfo:l}=t[e];if(l?.shareConfig?.layer&&s&&"object"==typeof s)try{s.hasOwnProperty("layer")&&void 0!==s.layer||(s.layer=l.shareConfig.layer)}catch(e){}o.exports=s}};if(s)return Promise.all(l.map(async([e,t])=>{let r=await t();u(e,()=>r)}));l.forEach(([e,t])=>{u(e,t)})}},5313(e,t,r){r(1326);let n=r(3026),o=r(9592),i=r(9671),a=r(1853);t.remotes=function(e){i.updateRemoteOptions(e);let{chunkId:t,promises:r,webpackRequire:s,chunkMapping:l,idToExternalAndNameMapping:u,idToRemoteMap:p}=e;n.attachShareScopeMap(s),s.o(l,t)&&l[t].forEach(e=>{let t=s.R;t||(t=[]);let n=u[e],i=p[e]||[];if(t.indexOf(n)>=0)return;if(t.push(n),n.p)return r.push(n.p);let l=t=>{t||(t=Error("Container missing")),"string"==typeof t.message&&(t.message+=`
3
- while loading "${n[1]}" from ${n[2]}`),s.m[e]=()=>{throw t},n.p=0},c=(e,t,o,i,a,s)=>{try{let u=e(t,o);if(!u||!u.then)return a(u,i,s);{let e=u.then(e=>a(e,i),l);if(!s)return e;r.push(n.p=e)}}catch(e){l(e)}};var d=(e,r,o)=>c(r.get,n[1],t,0,f,o),f=t=>{n.p=1,s.m[e]=e=>{e.exports=t()}};1===i.length&&o.FEDERATION_SUPPORTED_TYPES.includes(i[0].externalType)&&i[0].name?c(()=>{try{let e=(0,a.decodeName)(i[0].name,a.ENCODE_NAME_PREFIX)+n[1].slice(1),t=s.federation.instance,r=()=>s.federation.instance.loadRemote(e,{loadFactory:!1,from:"build"});if("version-first"===t.options.shareStrategy){let e=Array.isArray(n[0])?n[0]:[n[0]];return Promise.all(e.map(e=>t.sharedHandler.initializeSharing(e))).then(()=>r())}return r()}catch(e){l(e)}},n[2],0,0,f,1):c(s,n[2],0,0,(e,t,r)=>e?c(s.I,n[0],0,e,d,r):l(),1)})}},9671(e,t){t.updateConsumeOptions=function(e){let{webpackRequire:t,moduleToHandlerMapping:r}=e,{consumesLoadingData:n,initializeSharingData:o}=t,{sharedFallback:i,bundlerRuntime:a,libraryType:s}=t.federation;if(n&&!n._updated){let{moduleIdToConsumeDataMapping:o={},initialConsumes:l=[],chunkMapping:u={}}=n;if(Object.entries(o).forEach(([e,n])=>{r[e]||(r[e]={getter:i?a?.getSharedFallbackGetter({shareKey:n.shareKey,factory:n.fallback,webpackRequire:t,libraryType:s}):n.fallback,treeShakingGetter:i?n.fallback:void 0,shareInfo:{shareConfig:{requiredVersion:n.requiredVersion,strictVersion:n.strictVersion,singleton:n.singleton,eager:n.eager,layer:n.layer},scope:Array.isArray(n.shareScope)?n.shareScope:[n.shareScope||"default"],treeShaking:i?{get:n.fallback,mode:n.treeShakingMode}:void 0},shareKey:n.shareKey})}),"initialConsumes"in e){let{initialConsumes:t=[]}=e;l.forEach(e=>{t.includes(e)||t.push(e)})}if("chunkMapping"in e){let{chunkMapping:t={}}=e;Object.entries(u).forEach(([e,r])=>{t[e]||(t[e]=[]),r.forEach(r=>{t[e].includes(r)||t[e].push(r)})})}n._updated=1}if(o&&!o._updated){let{federation:e}=t;if(!e.instance||!o.scopeToSharingDataMapping)return;let r={};for(let[e,t]of Object.entries(o.scopeToSharingDataMapping))for(let n of t)if("object"==typeof n&&null!==n){let{name:t,version:o,factory:i,eager:a,singleton:s,requiredVersion:l,strictVersion:u}=n,p={requiredVersion:`^${o}`},c=function(e){return void 0!==e};c(s)&&(p.singleton=s),c(l)&&(p.requiredVersion=l),c(a)&&(p.eager=a),c(u)&&(p.strictVersion=u);let d={version:o,scope:[e],shareConfig:p,get:i};r[t]?r[t].push(d):r[t]=[d]}e.instance.registerShared(r),o._updated=1}},t.updateRemoteOptions=function(e){let{webpackRequire:t,idToExternalAndNameMapping:r={},idToRemoteMap:n={},chunkMapping:o={}}=e,{remotesLoadingData:i}=t,a=t.federation?.bundlerRuntimeOptions?.remotes?.remoteInfos;if(!i||i._updated||!a)return;let{chunkMapping:s,moduleIdToRemoteDataMapping:l}=i;if(s&&l){for(let[e,t]of Object.entries(l))if(r[e]||(r[e]=[t.shareScope,t.name,t.externalModuleId]),!n[e]&&a[t.remoteName]){let r=a[t.remoteName];n[e]||=[],r.forEach(t=>{n[e].includes(t)||n[e].push(t)})}o&&Object.entries(s).forEach(([e,t])=>{o[e]||(o[e]=[]),t.forEach(t=>{o[e].includes(t)||o[e].push(t)})}),i._updated=1}}}},a={};function s(e){var t=a[e];if(void 0!==t)return t.exports;var r=a[e]={id:e,loaded:!1,exports:{}};return i[e].call(r.exports,r,r.exports,s),r.loaded=!0,r.exports}s.m=i,s.c=a,s.x=()=>s(1760),s.federation||(s.federation={chunkMatcher:function(e){return!/^(1288|296|477|6585)$/.test(e)},rootOutputDir:""}),s.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return s.d(t,{a:t}),t},s.d=(e,t)=>{for(var r in t)s.o(t,r)&&!s.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},s.f={},s.e=e=>Promise.all(Object.keys(s.f).reduce((t,r)=>(s.f[r](e,t),t),[])),s.u=e=>""+e+".js",s.miniCssF=e=>""+e+".css",s.g=(()=>{if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}})(),s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),l={},s.l=function(e,t,r,n){if(l[e])return void l[e].push(t);if(void 0!==r)for(var o,i,a=document.getElementsByTagName("script"),u=0;u<a.length;u++){var p=a[u];if(p.getAttribute("src")==e||p.getAttribute("data-rspack")=="@openmrs/esm-billing-app:"+r){o=p;break}}o||(i=!0,(o=document.createElement("script")).timeout=120,s.nc&&o.setAttribute("nonce",s.nc),o.setAttribute("data-rspack","@openmrs/esm-billing-app:"+r),o.src=e),l[e]=[t];var c=function(t,r){o.onerror=o.onload=null,clearTimeout(d);var n=l[e];if(delete l[e],o.parentNode&&o.parentNode.removeChild(o),n&&n.forEach(function(e){return e(r)}),t)return t(r)},d=setTimeout(c.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=c.bind(null,o.onerror),o.onload=c.bind(null,o.onload),i&&document.head.appendChild(o)},s.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},s.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),s.rv=()=>"1.7.9",s.S={},s.initializeSharingData={scopeToSharingDataMapping:{default:[{name:"@carbon/react",version:"1.92.1",factory:()=>Promise.all([s.e("6153"),s.e("9730"),s.e("319"),s.e("4480"),s.e("1617"),s.e("2109"),s.e("6536"),s.e("296"),s.e("1288")]).then(()=>()=>s(203)),eager:0,singleton:1,requiredVersion:"1.x",strictVersion:0},{name:"@openmrs/esm-framework",version:"10.0.1-pre.5753",factory:()=>Promise.all([s.e("6153"),s.e("4480"),s.e("5215"),s.e("570"),s.e("296"),s.e("1288"),s.e("6585"),s.e("477")]).then(()=>()=>s(8146)),eager:0,singleton:1,requiredVersion:"10.x",strictVersion:0},{name:"react-dom",version:"18.3.1",factory:()=>Promise.all([s.e("5098"),s.e("296")]).then(()=>()=>s(961)),eager:0,singleton:1,requiredVersion:"18.x",strictVersion:0},{name:"react-i18next",version:"16.0.0",factory:()=>Promise.all([s.e("3379"),s.e("296")]).then(()=>()=>s(673)),eager:0,singleton:1,requiredVersion:"16.x",strictVersion:0},{name:"react-router-dom",version:"6.21.3",factory:()=>Promise.all([s.e("749"),s.e("296"),s.e("1288")]).then(()=>()=>s(6204)),eager:0,singleton:1,requiredVersion:"6.x",strictVersion:0},{name:"react",version:"18.3.1",factory:()=>s.e("6237").then(()=>()=>s(6540)),eager:0,singleton:1,requiredVersion:"18.x",strictVersion:0},{name:"swr/_internal",version:"2.5.1",factory:()=>Promise.all([s.e("6362"),s.e("296")]).then(()=>()=>s(4993)),eager:0,singleton:1,requiredVersion:"2.x",strictVersion:0},{name:"swr/immutable",version:"2.5.1",factory:()=>Promise.all([s.e("6362"),s.e("7977"),s.e("296"),s.e("5898")]).then(()=>()=>s(4225)),eager:0,singleton:1,requiredVersion:"2.x",strictVersion:0},{name:"swr/infinite",version:"2.5.1",factory:()=>Promise.all([s.e("6362"),s.e("7977"),s.e("296"),s.e("1578")]).then(()=>()=>s(3041)),eager:0,singleton:1,requiredVersion:"2.x",strictVersion:0},{name:"swr",version:"2.5.1",factory:()=>Promise.all([s.e("6362"),s.e("7977"),s.e("296"),s.e("8410")]).then(()=>()=>s(2177)),eager:0,singleton:1,requiredVersion:"2.x",strictVersion:0}]},uniqueName:"@openmrs/esm-billing-app"},s.I=s.I||function(){throw Error("should have __webpack_require__.I")},s.g.importScripts&&(u=s.g.location+"");var l,u,p=s.g.document;if(!u&&p&&(p.currentScript&&"SCRIPT"===p.currentScript.tagName.toUpperCase()&&(u=p.currentScript.src),!u)){var c=p.getElementsByTagName("script");if(c.length)for(var d=c.length-1;d>-1&&(!u||!/^http(s?):/.test(u));)u=c[d--].src}if(!u)throw Error("Automatic publicPath is not supported in this browser");if(s.p=u=u.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),s.consumesLoadingData={chunkMapping:{477:["2142","2016","3954"],1288:["7643"],4263:["3137"],6585:["9335","1752","8395","6335"],296:["5275"]},moduleIdToConsumeDataMapping:{2016:{shareScope:"default",shareKey:"swr/immutable",import:"swr/immutable",requiredVersion:"2.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([s.e("6362"),s.e("7977"),s.e("3517")]).then(()=>()=>s(4225))},3954:{shareScope:"default",shareKey:"swr/_internal",import:"swr/_internal",requiredVersion:"2.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>s.e("6362").then(()=>()=>s(4993))},7643:{shareScope:"default",shareKey:"react-dom",import:"react-dom",requiredVersion:"18.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>s.e("5098").then(()=>()=>s(961))},1752:{shareScope:"default",shareKey:"@carbon/react",import:"@carbon/react",requiredVersion:"1.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([s.e("6153"),s.e("9730"),s.e("319"),s.e("1617"),s.e("2109"),s.e("6536"),s.e("1288")]).then(()=>()=>s(203))},8395:{shareScope:"default",shareKey:"react-i18next",import:"react-i18next",requiredVersion:"16.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>s.e("3379").then(()=>()=>s(673))},5275:{shareScope:"default",shareKey:"react",import:"react",requiredVersion:"18.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>s.e("6237").then(()=>()=>s(6540))},9335:{shareScope:"default",shareKey:"react-router-dom",import:"react-router-dom",requiredVersion:"6.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([s.e("749"),s.e("1288")]).then(()=>()=>s(6204))},6335:{shareScope:"default",shareKey:"swr",import:"swr",requiredVersion:"2.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([s.e("6362"),s.e("7977"),s.e("6029")]).then(()=>()=>s(2177))},3137:{shareScope:"default",shareKey:"@openmrs/esm-framework",import:"@openmrs/esm-framework",requiredVersion:"10.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([s.e("6153"),s.e("5215"),s.e("1288"),s.e("477")]).then(()=>()=>s(8146))},2142:{shareScope:"default",shareKey:"swr/infinite",import:"swr/infinite",requiredVersion:"2.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([s.e("6362"),s.e("7977"),s.e("9197")]).then(()=>()=>s(3041))}},initialConsumes:[]},s.f.consumes=s.f.consumes||function(){throw Error("should have __webpack_require__.f.consumes")},"u">typeof document){var f=function(e,t,r,n,o){var i=document.createElement("link");return i.rel="stylesheet",i.type="text/css",s.nc&&(i.nonce=s.nc),i.href=t,i.onerror=i.onload=function(r){if(i.onerror=i.onload=null,"load"===r.type)n();else{var a=r&&("load"===r.type?"missing":r.type),s=r&&r.target&&r.target.href||t,l=Error("Loading CSS chunk "+e+" failed.\\n("+s+")");l.code="CSS_CHUNK_LOAD_FAILED",l.type=a,l.request=s,i.parentNode&&i.parentNode.removeChild(i),o(l)}},r?r.parentNode.insertBefore(i,r.nextSibling):document.head.appendChild(i),i},h=function(e,t){for(var r=document.getElementsByTagName("link"),n=0;n<r.length;n++){var o=r[n],i=o.getAttribute("data-href")||o.getAttribute("href");if(i&&(i=i.split("?")[0]),"stylesheet"===o.rel&&(i===e||i===t))return o}for(var a=document.getElementsByTagName("style"),n=0;n<a.length;n++){var o=a[n],i=o.getAttribute("data-href");if(i===e||i===t)return o}},m={8928:0};s.f.miniCss=function(e,t){if(m[e])t.push(m[e]);else 0!==m[e]&&({1026:1,1564:1,1899:1,203:1,2269:1,3461:1,350:1,3784:1,4263:1,5215:1,5390:1,6594:1,6699:1,6908:1,6969:1,7247:1,7968:1,9414:1})[e]&&t.push(m[e]=new Promise(function(t,r){var n=s.miniCssF(e),o=s.p+n;if(h(n,o))return t();f(e,o,null,t,r)}).then(function(){m[e]=0},function(t){throw delete m[e],t}))}}s.initializeExposesData={moduleMap:{"./start":()=>Promise.all([s.e("9730"),s.e("4480"),s.e("570"),s.e("6988"),s.e("296"),s.e("6585"),s.e("4263")]).then(()=>()=>s(7498))},shareScope:"default"},s.getContainer=s.getContainer||function(){throw Error("should have __webpack_require__.getContainer")},s.initContainer=s.initContainer||function(){throw Error("should have __webpack_require__.initContainer")},e={8928:0},s.f.j=function(t,r){var n=s.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else if(/^(1288|296|477|6585)$/.test(t))e[t]=0;else{var o=new Promise((r,o)=>n=e[t]=[r,o]);r.push(n[2]=o);var i=s.p+s.u(t),a=Error();s.l(i,function(r){if(s.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),i=r&&r.target&&r.target.src;a.message="Loading chunk "+t+" failed.\n("+o+": "+i+")",a.name="ChunkLoadError",a.type=o,a.request=i,n[1](a)}},"chunk-"+t,t)}},t=(t,r)=>{var n,o,[i,a,l]=r,u=0;if(i.some(t=>0!==e[t])){for(n in a)s.o(a,n)&&(s.m[n]=a[n]);l&&l(s)}for(t&&t(r);u<i.length;u++)o=i[u],s.o(e,o)&&e[o]&&e[o][0](),e[o]=0},(r=globalThis.webpackChunk_openmrs_esm_billing_app=globalThis.webpackChunk_openmrs_esm_billing_app||[]).forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r)),s.ruid="bundler=rspack@1.7.9",n=s.x,o=!1,s.x=function(){if(o||(o=!0,s(2185)),"function"==typeof n)return n();console.warn("[MF] Invalid prevStartup")},_openmrs_esm_billing_app=s.x()})();
3
+ while loading "${n[1]}" from ${n[2]}`),s.m[e]=()=>{throw t},n.p=0},c=(e,t,o,i,a,s)=>{try{let u=e(t,o);if(!u||!u.then)return a(u,i,s);{let e=u.then(e=>a(e,i),l);if(!s)return e;r.push(n.p=e)}}catch(e){l(e)}};var d=(e,r,o)=>c(r.get,n[1],t,0,f,o),f=t=>{n.p=1,s.m[e]=e=>{e.exports=t()}};1===i.length&&o.FEDERATION_SUPPORTED_TYPES.includes(i[0].externalType)&&i[0].name?c(()=>{try{let e=(0,a.decodeName)(i[0].name,a.ENCODE_NAME_PREFIX)+n[1].slice(1),t=s.federation.instance,r=()=>s.federation.instance.loadRemote(e,{loadFactory:!1,from:"build"});if("version-first"===t.options.shareStrategy){let e=Array.isArray(n[0])?n[0]:[n[0]];return Promise.all(e.map(e=>t.sharedHandler.initializeSharing(e))).then(()=>r())}return r()}catch(e){l(e)}},n[2],0,0,f,1):c(s,n[2],0,0,(e,t,r)=>e?c(s.I,n[0],0,e,d,r):l(),1)})}},9671(e,t){t.updateConsumeOptions=function(e){let{webpackRequire:t,moduleToHandlerMapping:r}=e,{consumesLoadingData:n,initializeSharingData:o}=t,{sharedFallback:i,bundlerRuntime:a,libraryType:s}=t.federation;if(n&&!n._updated){let{moduleIdToConsumeDataMapping:o={},initialConsumes:l=[],chunkMapping:u={}}=n;if(Object.entries(o).forEach(([e,n])=>{r[e]||(r[e]={getter:i?a?.getSharedFallbackGetter({shareKey:n.shareKey,factory:n.fallback,webpackRequire:t,libraryType:s}):n.fallback,treeShakingGetter:i?n.fallback:void 0,shareInfo:{shareConfig:{requiredVersion:n.requiredVersion,strictVersion:n.strictVersion,singleton:n.singleton,eager:n.eager,layer:n.layer},scope:Array.isArray(n.shareScope)?n.shareScope:[n.shareScope||"default"],treeShaking:i?{get:n.fallback,mode:n.treeShakingMode}:void 0},shareKey:n.shareKey})}),"initialConsumes"in e){let{initialConsumes:t=[]}=e;l.forEach(e=>{t.includes(e)||t.push(e)})}if("chunkMapping"in e){let{chunkMapping:t={}}=e;Object.entries(u).forEach(([e,r])=>{t[e]||(t[e]=[]),r.forEach(r=>{t[e].includes(r)||t[e].push(r)})})}n._updated=1}if(o&&!o._updated){let{federation:e}=t;if(!e.instance||!o.scopeToSharingDataMapping)return;let r={};for(let[e,t]of Object.entries(o.scopeToSharingDataMapping))for(let n of t)if("object"==typeof n&&null!==n){let{name:t,version:o,factory:i,eager:a,singleton:s,requiredVersion:l,strictVersion:u}=n,p={requiredVersion:`^${o}`},c=function(e){return void 0!==e};c(s)&&(p.singleton=s),c(l)&&(p.requiredVersion=l),c(a)&&(p.eager=a),c(u)&&(p.strictVersion=u);let d={version:o,scope:[e],shareConfig:p,get:i};r[t]?r[t].push(d):r[t]=[d]}e.instance.registerShared(r),o._updated=1}},t.updateRemoteOptions=function(e){let{webpackRequire:t,idToExternalAndNameMapping:r={},idToRemoteMap:n={},chunkMapping:o={}}=e,{remotesLoadingData:i}=t,a=t.federation?.bundlerRuntimeOptions?.remotes?.remoteInfos;if(!i||i._updated||!a)return;let{chunkMapping:s,moduleIdToRemoteDataMapping:l}=i;if(s&&l){for(let[e,t]of Object.entries(l))if(r[e]||(r[e]=[t.shareScope,t.name,t.externalModuleId]),!n[e]&&a[t.remoteName]){let r=a[t.remoteName];n[e]||=[],r.forEach(t=>{n[e].includes(t)||n[e].push(t)})}o&&Object.entries(s).forEach(([e,t])=>{o[e]||(o[e]=[]),t.forEach(t=>{o[e].includes(t)||o[e].push(t)})}),i._updated=1}}}},a={};function s(e){var t=a[e];if(void 0!==t)return t.exports;var r=a[e]={id:e,loaded:!1,exports:{}};return i[e].call(r.exports,r,r.exports,s),r.loaded=!0,r.exports}s.m=i,s.c=a,s.x=()=>s(1760),s.federation||(s.federation={chunkMatcher:function(e){return!/^(1288|296|477|6585)$/.test(e)},rootOutputDir:""}),s.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return s.d(t,{a:t}),t},s.d=(e,t)=>{for(var r in t)s.o(t,r)&&!s.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},s.f={},s.e=e=>Promise.all(Object.keys(s.f).reduce((t,r)=>(s.f[r](e,t),t),[])),s.u=e=>""+e+".js",s.miniCssF=e=>""+e+".css",s.g=(()=>{if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}})(),s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),l={},s.l=function(e,t,r,n){if(l[e])return void l[e].push(t);if(void 0!==r)for(var o,i,a=document.getElementsByTagName("script"),u=0;u<a.length;u++){var p=a[u];if(p.getAttribute("src")==e||p.getAttribute("data-rspack")=="@openmrs/esm-billing-app:"+r){o=p;break}}o||(i=!0,(o=document.createElement("script")).timeout=120,s.nc&&o.setAttribute("nonce",s.nc),o.setAttribute("data-rspack","@openmrs/esm-billing-app:"+r),o.src=e),l[e]=[t];var c=function(t,r){o.onerror=o.onload=null,clearTimeout(d);var n=l[e];if(delete l[e],o.parentNode&&o.parentNode.removeChild(o),n&&n.forEach(function(e){return e(r)}),t)return t(r)},d=setTimeout(c.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=c.bind(null,o.onerror),o.onload=c.bind(null,o.onload),i&&document.head.appendChild(o)},s.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},s.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),s.rv=()=>"1.7.9",s.S={},s.initializeSharingData={scopeToSharingDataMapping:{default:[{name:"@carbon/react",version:"1.92.1",factory:()=>Promise.all([s.e("6153"),s.e("9730"),s.e("319"),s.e("4480"),s.e("1617"),s.e("2109"),s.e("6536"),s.e("296"),s.e("1288")]).then(()=>()=>s(203)),eager:0,singleton:1,requiredVersion:"1.x",strictVersion:0},{name:"@openmrs/esm-framework",version:"10.0.1-pre.5753",factory:()=>Promise.all([s.e("6153"),s.e("4480"),s.e("5215"),s.e("570"),s.e("296"),s.e("1288"),s.e("6585"),s.e("477")]).then(()=>()=>s(8146)),eager:0,singleton:1,requiredVersion:"11.x",strictVersion:0},{name:"react-dom",version:"18.3.1",factory:()=>Promise.all([s.e("5098"),s.e("296")]).then(()=>()=>s(961)),eager:0,singleton:1,requiredVersion:"18.x",strictVersion:0},{name:"react-i18next",version:"16.0.0",factory:()=>Promise.all([s.e("3379"),s.e("296")]).then(()=>()=>s(673)),eager:0,singleton:1,requiredVersion:"16.x",strictVersion:0},{name:"react-router-dom",version:"6.21.3",factory:()=>Promise.all([s.e("749"),s.e("296"),s.e("1288")]).then(()=>()=>s(6204)),eager:0,singleton:1,requiredVersion:"6.x",strictVersion:0},{name:"react",version:"18.3.1",factory:()=>s.e("6237").then(()=>()=>s(6540)),eager:0,singleton:1,requiredVersion:"18.x",strictVersion:0},{name:"swr/_internal",version:"2.5.1",factory:()=>Promise.all([s.e("6362"),s.e("296")]).then(()=>()=>s(4993)),eager:0,singleton:1,requiredVersion:"2.x",strictVersion:0},{name:"swr/immutable",version:"2.5.1",factory:()=>Promise.all([s.e("6362"),s.e("7977"),s.e("296"),s.e("5898")]).then(()=>()=>s(4225)),eager:0,singleton:1,requiredVersion:"2.x",strictVersion:0},{name:"swr/infinite",version:"2.5.1",factory:()=>Promise.all([s.e("6362"),s.e("7977"),s.e("296"),s.e("1578")]).then(()=>()=>s(3041)),eager:0,singleton:1,requiredVersion:"2.x",strictVersion:0},{name:"swr",version:"2.5.1",factory:()=>Promise.all([s.e("6362"),s.e("7977"),s.e("296"),s.e("8410")]).then(()=>()=>s(2177)),eager:0,singleton:1,requiredVersion:"2.x",strictVersion:0}]},uniqueName:"@openmrs/esm-billing-app"},s.I=s.I||function(){throw Error("should have __webpack_require__.I")},s.g.importScripts&&(u=s.g.location+"");var l,u,p=s.g.document;if(!u&&p&&(p.currentScript&&"SCRIPT"===p.currentScript.tagName.toUpperCase()&&(u=p.currentScript.src),!u)){var c=p.getElementsByTagName("script");if(c.length)for(var d=c.length-1;d>-1&&(!u||!/^http(s?):/.test(u));)u=c[d--].src}if(!u)throw Error("Automatic publicPath is not supported in this browser");if(s.p=u=u.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),s.consumesLoadingData={chunkMapping:{477:["2142","2016","3954"],1288:["7643"],4263:["9124"],6585:["9335","1752","8395","6335"],296:["5275"]},moduleIdToConsumeDataMapping:{3954:{shareScope:"default",shareKey:"swr/_internal",import:"swr/_internal",requiredVersion:"2.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>s.e("6362").then(()=>()=>s(4993))},7643:{shareScope:"default",shareKey:"react-dom",import:"react-dom",requiredVersion:"18.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>s.e("5098").then(()=>()=>s(961))},1752:{shareScope:"default",shareKey:"@carbon/react",import:"@carbon/react",requiredVersion:"1.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([s.e("6153"),s.e("9730"),s.e("319"),s.e("1617"),s.e("2109"),s.e("6536"),s.e("1288")]).then(()=>()=>s(203))},8395:{shareScope:"default",shareKey:"react-i18next",import:"react-i18next",requiredVersion:"16.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>s.e("3379").then(()=>()=>s(673))},5275:{shareScope:"default",shareKey:"react",import:"react",requiredVersion:"18.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>s.e("6237").then(()=>()=>s(6540))},9124:{shareScope:"default",shareKey:"@openmrs/esm-framework",import:"@openmrs/esm-framework",requiredVersion:"11.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([s.e("6153"),s.e("5215"),s.e("1288"),s.e("477")]).then(()=>()=>s(8146))},9335:{shareScope:"default",shareKey:"react-router-dom",import:"react-router-dom",requiredVersion:"6.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([s.e("749"),s.e("1288")]).then(()=>()=>s(6204))},6335:{shareScope:"default",shareKey:"swr",import:"swr",requiredVersion:"2.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([s.e("6362"),s.e("7977"),s.e("6029")]).then(()=>()=>s(2177))},2142:{shareScope:"default",shareKey:"swr/infinite",import:"swr/infinite",requiredVersion:"2.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([s.e("6362"),s.e("7977"),s.e("9197")]).then(()=>()=>s(3041))},2016:{shareScope:"default",shareKey:"swr/immutable",import:"swr/immutable",requiredVersion:"2.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([s.e("6362"),s.e("7977"),s.e("3517")]).then(()=>()=>s(4225))}},initialConsumes:[]},s.f.consumes=s.f.consumes||function(){throw Error("should have __webpack_require__.f.consumes")},"u">typeof document){var f=function(e,t,r,n,o){var i=document.createElement("link");return i.rel="stylesheet",i.type="text/css",s.nc&&(i.nonce=s.nc),i.href=t,i.onerror=i.onload=function(r){if(i.onerror=i.onload=null,"load"===r.type)n();else{var a=r&&("load"===r.type?"missing":r.type),s=r&&r.target&&r.target.href||t,l=Error("Loading CSS chunk "+e+" failed.\\n("+s+")");l.code="CSS_CHUNK_LOAD_FAILED",l.type=a,l.request=s,i.parentNode&&i.parentNode.removeChild(i),o(l)}},r?r.parentNode.insertBefore(i,r.nextSibling):document.head.appendChild(i),i},h=function(e,t){for(var r=document.getElementsByTagName("link"),n=0;n<r.length;n++){var o=r[n],i=o.getAttribute("data-href")||o.getAttribute("href");if(i&&(i=i.split("?")[0]),"stylesheet"===o.rel&&(i===e||i===t))return o}for(var a=document.getElementsByTagName("style"),n=0;n<a.length;n++){var o=a[n],i=o.getAttribute("data-href");if(i===e||i===t)return o}},m={8928:0};s.f.miniCss=function(e,t){if(m[e])t.push(m[e]);else 0!==m[e]&&({1026:1,1564:1,1899:1,203:1,2269:1,3461:1,350:1,3784:1,4263:1,5215:1,5390:1,6594:1,6699:1,6908:1,6969:1,7247:1,7968:1,9414:1})[e]&&t.push(m[e]=new Promise(function(t,r){var n=s.miniCssF(e),o=s.p+n;if(h(n,o))return t();f(e,o,null,t,r)}).then(function(){m[e]=0},function(t){throw delete m[e],t}))}}s.initializeExposesData={moduleMap:{"./start":()=>Promise.all([s.e("9730"),s.e("4480"),s.e("570"),s.e("6988"),s.e("296"),s.e("6585"),s.e("4263")]).then(()=>()=>s(7498))},shareScope:"default"},s.getContainer=s.getContainer||function(){throw Error("should have __webpack_require__.getContainer")},s.initContainer=s.initContainer||function(){throw Error("should have __webpack_require__.initContainer")},e={8928:0},s.f.j=function(t,r){var n=s.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else if(/^(1288|296|477|6585)$/.test(t))e[t]=0;else{var o=new Promise((r,o)=>n=e[t]=[r,o]);r.push(n[2]=o);var i=s.p+s.u(t),a=Error();s.l(i,function(r){if(s.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),i=r&&r.target&&r.target.src;a.message="Loading chunk "+t+" failed.\n("+o+": "+i+")",a.name="ChunkLoadError",a.type=o,a.request=i,n[1](a)}},"chunk-"+t,t)}},t=(t,r)=>{var n,o,[i,a,l]=r,u=0;if(i.some(t=>0!==e[t])){for(n in a)s.o(a,n)&&(s.m[n]=a[n]);l&&l(s)}for(t&&t(r);u<i.length;u++)o=i[u],s.o(e,o)&&e[o]&&e[o][0](),e[o]=0},(r=globalThis.webpackChunk_openmrs_esm_billing_app=globalThis.webpackChunk_openmrs_esm_billing_app||[]).forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r)),s.ruid="bundler=rspack@1.7.9",n=s.x,o=!1,s.x=function(){if(o||(o=!0,s(2185)),"function"==typeof n)return n();console.warn("[MF] Invalid prevStartup")},_openmrs_esm_billing_app=s.x()})();