@dropins/storefront-purchase-order 1.2.0 → 1.2.1-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (232) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/api/addPurchaseOrderComment/addPurchaseOrderComment.d.ts +16 -2
  3. package/api/addPurchaseOrderComment/graphql/addPurchaseOrderComment.graphql.d.ts +0 -1
  4. package/api/addPurchaseOrderComment/index.d.ts +0 -1
  5. package/api/addPurchaseOrderItemsToCart/addPurchaseOrderItemsToCart.d.ts +16 -2
  6. package/api/addPurchaseOrderItemsToCart/graphql/addPurchaseOrderItemsToCart.graphql.d.ts +0 -1
  7. package/api/addPurchaseOrderItemsToCart/index.d.ts +0 -1
  8. package/api/approvePurchaseOrders/approvePurchaseOrders.d.ts +0 -2
  9. package/api/approvePurchaseOrders/graphql/approvePurchaseOrders.graphql.d.ts +1 -2
  10. package/api/approvePurchaseOrders/index.d.ts +0 -1
  11. package/api/cancelPurchaseOrders/cancelPurchaseOrders.d.ts +0 -2
  12. package/api/cancelPurchaseOrders/graphql/cancelPurchaseOrders.graphql.d.ts +1 -2
  13. package/api/cancelPurchaseOrders/index.d.ts +0 -1
  14. package/api/createPurchaseOrderApprovalRule/createPurchaseOrderApprovalRule.d.ts +0 -2
  15. package/api/createPurchaseOrderApprovalRule/graphql/createPurchaseOrderApprovalRule.graphql.d.ts +0 -1
  16. package/api/createPurchaseOrderApprovalRule/index.d.ts +0 -1
  17. package/api/currencyInfo/currencyInfo.d.ts +0 -1
  18. package/api/currencyInfo/graphql/currencyInfo.graphql.d.ts +0 -1
  19. package/api/currencyInfo/index.d.ts +0 -1
  20. package/api/deletePurchaseOrderApprovalRule/deletePurchaseOrderApprovalRule.d.ts +0 -1
  21. package/api/deletePurchaseOrderApprovalRule/graphql/deletePurchaseOrderApprovalRule.graphql.d.ts +0 -1
  22. package/api/deletePurchaseOrderApprovalRule/index.d.ts +0 -1
  23. package/api/fetch-graphql/fetch-graphql.d.ts +3 -4
  24. package/api/fetch-graphql/index.d.ts +0 -1
  25. package/api/fragments.d.ts +0 -1
  26. package/api/getPurchaseOrder/getPurchaseOrder.d.ts +16 -2
  27. package/api/getPurchaseOrder/graphql/getPurchaseOrder.graphql.d.ts +1 -2
  28. package/api/getPurchaseOrder/index.d.ts +0 -1
  29. package/api/getPurchaseOrderApprovalRule/getPurchaseOrderApprovalRule.d.ts +16 -2
  30. package/api/getPurchaseOrderApprovalRule/graphql/getPurchaseOrderApprovalRule.graphql.d.ts +0 -1
  31. package/api/getPurchaseOrderApprovalRule/index.d.ts +0 -1
  32. package/api/getPurchaseOrderApprovalRuleMetadata/getPurchaseOrderApprovalRuleMetadata.d.ts +16 -2
  33. package/api/getPurchaseOrderApprovalRuleMetadata/graphql/getPurchaseOrderApprovalRuleMetadata.graphql.d.ts +0 -1
  34. package/api/getPurchaseOrderApprovalRuleMetadata/index.d.ts +0 -1
  35. package/api/getPurchaseOrderApprovalRules/getPurchaseOrderApprovalRules.d.ts +16 -2
  36. package/api/getPurchaseOrderApprovalRules/graphql/getPurchaseOrderApprovalRules.graphql.d.ts +0 -1
  37. package/api/getPurchaseOrderApprovalRules/index.d.ts +0 -1
  38. package/api/getPurchaseOrders/getPurchaseOrders.d.ts +16 -2
  39. package/api/getPurchaseOrders/graphql/getPurchaseOrders.graphql.d.ts +1 -2
  40. package/api/getPurchaseOrders/index.d.ts +0 -1
  41. package/api/graphql/PurchaseOrderQuoteFragment.d.ts +0 -1
  42. package/api/graphql/PurchaseOrdersFragment.graphql.d.ts +1 -2
  43. package/api/index.d.ts +0 -1
  44. package/api/initialize/index.d.ts +0 -1
  45. package/api/initialize/initialize.d.ts +19 -5
  46. package/api/permissions.d.ts +0 -1
  47. package/api/placeOrderForPurchaseOrder/graphql/placeOrderForPurchaseOrder.graphql.d.ts +0 -1
  48. package/api/placeOrderForPurchaseOrder/index.d.ts +0 -1
  49. package/api/placeOrderForPurchaseOrder/placeOrderForPurchaseOrder.d.ts +16 -2
  50. package/api/placePurchaseOrder/graphql/placePurchaseOrder.graphql.d.ts +1 -2
  51. package/api/placePurchaseOrder/index.d.ts +0 -1
  52. package/api/placePurchaseOrder/placePurchaseOrder.d.ts +16 -2
  53. package/api/rejectPurchaseOrders/graphql/rejectPurchaseOrders.graphql.d.ts +1 -2
  54. package/api/rejectPurchaseOrders/index.d.ts +0 -1
  55. package/api/rejectPurchaseOrders/rejectPurchaseOrders.d.ts +0 -2
  56. package/api/updatePurchaseOrderApprovalRule/graphql/updatePurchaseOrderApprovalRule.graphql.d.ts +0 -1
  57. package/api/updatePurchaseOrderApprovalRule/index.d.ts +0 -1
  58. package/api/updatePurchaseOrderApprovalRule/updatePurchaseOrderApprovalRule.d.ts +0 -2
  59. package/api/validatePurchaseOrders/graphql/validatePurchaseOrders.graphql.d.ts +1 -2
  60. package/api/validatePurchaseOrders/index.d.ts +0 -1
  61. package/api/validatePurchaseOrders/validatePurchaseOrders.d.ts +0 -2
  62. package/api.d.ts +1 -1
  63. package/api.js +12 -12
  64. package/api.js.map +1 -1
  65. package/chunks/components.js +1 -1
  66. package/chunks/components.js.map +1 -1
  67. package/components/ApprovalRuleDetailsContent/ApprovalRuleDetailsContent.d.ts +16 -2
  68. package/components/ApprovalRuleDetailsContent/index.d.ts +0 -1
  69. package/components/ApprovalRuleForm/ApprovalRuleForm.d.ts +16 -2
  70. package/components/ApprovalRuleForm/blocks/ErrorMessage.d.ts +16 -2
  71. package/components/ApprovalRuleForm/blocks/Form.d.ts +18 -4
  72. package/components/ApprovalRuleForm/blocks/index.d.ts +0 -1
  73. package/components/ApprovalRuleForm/index.d.ts +0 -1
  74. package/components/FormLoader/FormLoader.d.ts +16 -2
  75. package/components/FormLoader/index.d.ts +0 -1
  76. package/components/PurchaseOrderApprovalFlowContent/PurchaseOrderApprovalFlowContent.d.ts +16 -2
  77. package/components/PurchaseOrderApprovalFlowContent/index.d.ts +0 -1
  78. package/components/PurchaseOrderCommentFormContent/PurchaseOrderCommentFormContent.d.ts +16 -2
  79. package/components/PurchaseOrderCommentFormContent/index.d.ts +0 -1
  80. package/components/PurchaseOrderCommentsListContent/PurchaseOrderCommentsListContent.d.ts +16 -2
  81. package/components/PurchaseOrderCommentsListContent/index.d.ts +0 -1
  82. package/components/PurchaseOrderConfirmationContent/PurchaseOrderConfirmationContent.d.ts +16 -2
  83. package/components/PurchaseOrderConfirmationContent/index.d.ts +0 -1
  84. package/components/PurchaseOrderHistoryLogContent/PurchaseOrderHistoryLogContent.d.ts +16 -2
  85. package/components/PurchaseOrderHistoryLogContent/index.d.ts +0 -1
  86. package/components/PurchaseOrderStatusContent/PurchaseOrderStatusContent.d.ts +16 -2
  87. package/components/PurchaseOrderStatusContent/index.d.ts +0 -1
  88. package/components/PurchaseOrdersHeader/PurchaseOrdersHeader.d.ts +16 -2
  89. package/components/PurchaseOrdersHeader/index.d.ts +0 -1
  90. package/components/PurchaseOrdersTable/PurchaseOrdersTable.d.ts +16 -2
  91. package/components/PurchaseOrdersTable/index.d.ts +0 -1
  92. package/components/PurchaseOrdersTableActions/PurchaseOrdersTableActions.d.ts +16 -2
  93. package/components/PurchaseOrdersTableActions/index.d.ts +0 -1
  94. package/components/index.d.ts +0 -1
  95. package/configs/approvalRuleForm.config.d.ts +19 -5
  96. package/configs/companyPurchaseOrders.config.d.ts +16 -2
  97. package/configs/customerPurchaseOrders.config.d.ts +16 -2
  98. package/configs/index.d.ts +0 -1
  99. package/configs/pageSize.config.d.ts +0 -1
  100. package/configs/purchaseOrderApprovalRules.config.d.ts +16 -2
  101. package/containers/ApprovalRuleDetails/ApprovalRuleDetails.d.ts +17 -3
  102. package/containers/ApprovalRuleDetails/index.d.ts +0 -1
  103. package/containers/ApprovalRuleDetails.d.ts +1 -3
  104. package/containers/ApprovalRuleDetails.js +1 -1
  105. package/containers/ApprovalRuleForm/ApprovalRuleForm.d.ts +17 -3
  106. package/containers/ApprovalRuleForm/index.d.ts +0 -1
  107. package/containers/ApprovalRuleForm.d.ts +1 -3
  108. package/containers/ApprovalRuleForm.js +1 -1
  109. package/containers/ApprovalRulesList/ApprovalRulesList.d.ts +17 -3
  110. package/containers/ApprovalRulesList/index.d.ts +0 -1
  111. package/containers/ApprovalRulesList.d.ts +1 -3
  112. package/containers/ApprovalRulesList.js +1 -1
  113. package/containers/CompanyPurchaseOrders/CompanyPurchaseOrders.d.ts +17 -3
  114. package/containers/CompanyPurchaseOrders/index.d.ts +0 -1
  115. package/containers/CompanyPurchaseOrders.d.ts +1 -3
  116. package/containers/CompanyPurchaseOrders.js +1 -1
  117. package/containers/CustomerPurchaseOrders/CustomerPurchaseOrders.d.ts +17 -3
  118. package/containers/CustomerPurchaseOrders/index.d.ts +0 -1
  119. package/containers/CustomerPurchaseOrders.d.ts +1 -3
  120. package/containers/CustomerPurchaseOrders.js +1 -1
  121. package/containers/PurchaseOrderApprovalFlow/PurchaseOrderApprovalFlow.d.ts +17 -3
  122. package/containers/PurchaseOrderApprovalFlow/index.d.ts +0 -1
  123. package/containers/PurchaseOrderApprovalFlow.d.ts +1 -3
  124. package/containers/PurchaseOrderApprovalFlow.js +1 -1
  125. package/containers/PurchaseOrderCommentForm/PurchaseOrderCommentForm.d.ts +17 -3
  126. package/containers/PurchaseOrderCommentForm/index.d.ts +0 -1
  127. package/containers/PurchaseOrderCommentForm.d.ts +1 -3
  128. package/containers/PurchaseOrderCommentForm.js +1 -1
  129. package/containers/PurchaseOrderCommentsList/PurchaseOrderCommentsList.d.ts +17 -3
  130. package/containers/PurchaseOrderCommentsList/index.d.ts +0 -1
  131. package/containers/PurchaseOrderCommentsList.d.ts +1 -3
  132. package/containers/PurchaseOrderCommentsList.js +1 -1
  133. package/containers/PurchaseOrderConfirmation/PurchaseOrderConfirmation.d.ts +17 -3
  134. package/containers/PurchaseOrderConfirmation/index.d.ts +0 -1
  135. package/containers/PurchaseOrderConfirmation.d.ts +1 -3
  136. package/containers/PurchaseOrderConfirmation.js +1 -1
  137. package/containers/PurchaseOrderHistoryLog/PurchaseOrderHistoryLog.d.ts +17 -3
  138. package/containers/PurchaseOrderHistoryLog/index.d.ts +0 -1
  139. package/containers/PurchaseOrderHistoryLog.d.ts +1 -3
  140. package/containers/PurchaseOrderHistoryLog.js +1 -1
  141. package/containers/PurchaseOrderStatus/PurchaseOrderStatus.d.ts +17 -3
  142. package/containers/PurchaseOrderStatus/index.d.ts +0 -1
  143. package/containers/PurchaseOrderStatus.d.ts +1 -3
  144. package/containers/PurchaseOrderStatus.js +1 -1
  145. package/containers/RequireApprovalPurchaseOrders/RequireApprovalPurchaseOrders.d.ts +17 -3
  146. package/containers/RequireApprovalPurchaseOrders/index.d.ts +0 -1
  147. package/containers/RequireApprovalPurchaseOrders.d.ts +1 -3
  148. package/containers/RequireApprovalPurchaseOrders.js +1 -1
  149. package/containers/index.d.ts +0 -1
  150. package/data/models/cart-model.d.ts +0 -1
  151. package/data/models/customer-order-model.d.ts +0 -1
  152. package/data/models/customer-role-permissions-model.d.ts +0 -1
  153. package/data/models/index.d.ts +0 -1
  154. package/data/models/purchase-order-approval-rule-metadata-model.d.ts +0 -1
  155. package/data/models/purchase-order-approval-rule-model.d.ts +0 -1
  156. package/data/models/purchase-order-comment-model.d.ts +0 -1
  157. package/data/models/purchase-order-model.d.ts +0 -1
  158. package/data/transforms/index.d.ts +0 -1
  159. package/data/transforms/transform-cart.d.ts +16 -2
  160. package/data/transforms/transform-customer-order.d.ts +16 -2
  161. package/data/transforms/transform-customer-role-permissions.d.ts +16 -2
  162. package/data/transforms/transform-purchase-order-approval-rule-metadata.d.ts +16 -2
  163. package/data/transforms/transform-purchase-order-approval-rule.d.ts +16 -2
  164. package/data/transforms/transform-purchase-order-comment.d.ts +16 -2
  165. package/data/transforms/transform-purchase-order.d.ts +16 -2
  166. package/hooks/index.d.ts +0 -1
  167. package/hooks/useApprovalRuleDetails.d.ts +16 -2
  168. package/hooks/useApprovalRuleForm.d.ts +16 -2
  169. package/hooks/useApprovalRulesList.d.ts +16 -2
  170. package/hooks/useCustomerRolePermissions.d.ts +16 -2
  171. package/hooks/usePurchaseOrderData.d.ts +16 -2
  172. package/hooks/usePurchaseOrderStatus.d.ts +16 -2
  173. package/hooks/usePurchaseOrders.d.ts +16 -2
  174. package/lib/case-converter.d.ts +0 -1
  175. package/lib/cleanAndDeep.d.ts +0 -1
  176. package/lib/fetch-error.d.ts +0 -1
  177. package/lib/formValidation.d.ts +16 -2
  178. package/lib/formatDate.d.ts +0 -1
  179. package/lib/getRange.d.ts +0 -1
  180. package/lib/getStatusVariant.d.ts +0 -1
  181. package/lib/index.d.ts +1 -1
  182. package/lib/isValidUrl.d.ts +0 -1
  183. package/lib/navigation.d.ts +1 -0
  184. package/lib/network-error.d.ts +0 -1
  185. package/lib/transformToFormValues.d.ts +16 -2
  186. package/lib/updateFormFieldValue.d.ts +16 -2
  187. package/mocks/index.d.ts +2 -3
  188. package/mocks/storybook/approval-rules.d.ts +18 -0
  189. package/mocks/storybook/events-data.d.ts +6 -2
  190. package/mocks/storybook/index.d.ts +0 -1
  191. package/mocks/storybook/purchase-orders.d.ts +179 -0
  192. package/package.json +1 -1
  193. package/render/Provider.d.ts +16 -2
  194. package/render/index.d.ts +0 -1
  195. package/render/render.d.ts +17 -3
  196. package/render.d.ts +1 -1
  197. package/types/api/api.enums.types.d.ts +0 -1
  198. package/types/api/index.d.ts +0 -1
  199. package/types/components/approvalFlowContent.types.d.ts +0 -2
  200. package/types/components/approvalRuleDetailsContentProps.types.d.ts +16 -2
  201. package/types/components/approvalRuleForm.types.d.ts +16 -2
  202. package/types/components/historyLogContent.types.d.ts +0 -2
  203. package/types/components/index.d.ts +0 -1
  204. package/types/components/pagination.types.d.ts +0 -1
  205. package/types/components/purchaseOrderCommentFormContent.types.d.ts +0 -2
  206. package/types/components/purchaseOrderCommentsListContent.types.d.ts +0 -2
  207. package/types/components/purchaseOrderConfirmationContent.types.d.ts +16 -2
  208. package/types/components/purchaseOrderHistoryLogContent.types.d.ts +16 -2
  209. package/types/components/purchaseOrderStatusContent.types.d.ts +17 -3
  210. package/types/components/purchaseOrdersTable.types.d.ts +16 -2
  211. package/types/components/purchaseOrdersTableActions.d.ts +0 -1
  212. package/types/containers/approvalRuleDetailsProps.types.d.ts +0 -1
  213. package/types/containers/approvalRuleForm.types.d.ts +16 -2
  214. package/types/containers/approvalRulesList.types.d.ts +16 -2
  215. package/types/containers/companyPurchaseOrders.types.d.ts +16 -2
  216. package/types/containers/customerPurchaseOrders.types.d.ts +16 -2
  217. package/types/containers/historyLog.types.d.ts +0 -1
  218. package/types/containers/index.d.ts +0 -1
  219. package/types/containers/purchaseOrderApprovalFlow.types.d.ts +0 -1
  220. package/types/containers/purchaseOrderCommentForm.types.d.ts +0 -1
  221. package/types/containers/purchaseOrderCommentsList.types.d.ts +0 -1
  222. package/types/containers/purchaseOrderConfirmationProps.types.d.ts +16 -2
  223. package/types/containers/purchaseOrderHistoryLog.types.d.ts +0 -1
  224. package/types/containers/purchaseOrderStatus.types.d.ts +17 -3
  225. package/types/containers/requireApprovalPurchaseOrders.types.d.ts +16 -2
  226. package/types/hooks/index.d.ts +0 -1
  227. package/types/hooks/useApprovalRuleDetails.types.d.ts +0 -1
  228. package/types/hooks/useApprovalRuleForm.types.d.ts +16 -2
  229. package/types/hooks/useApprovalRulesList.types.d.ts +16 -2
  230. package/types/hooks/usePurchaseOrderStatus.types.d.ts +17 -3
  231. package/types/hooks/usePurchaseOrders.types.d.ts +16 -2
  232. package/i18n/en_US.json.d.ts +0 -310
@@ -1,4 +1,4 @@
1
1
  /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
- import{classes as x,Slot as He}from"@dropins/tools/lib.js";import{useText as ae,Text as y}from"@dropins/tools/i18n.js";import{jsxs as u,Fragment as _e,jsx as e}from"@dropins/tools/preact-jsx-runtime.js";import{InLineAlert as Le,Table as $e,Pagination as je,Picker as he,Card as ke,Header as Ge,Button as H,Tag as Me,Price as ze,ActionButton as ne,PriceRange as qe,Checkbox as We,Input as Ce,TextArea as Ie,RadioButton as Qe,MultiSelect as Ae}from"@dropins/tools/components.js";import{events as z}from"@dropins/tools/event-bus.js";import{g as Ze,getPurchaseOrders as Ke,i as Fe,rejectPurchaseOrders as xe,approvePurchaseOrders as Ve,a as De,f as be,PO_PERMISSIONS as Z,I as Je,c as Ye,b as Xe,d as er,currencyInfo as rr,getPurchaseOrderApprovalRuleMetadata as ar,getPurchaseOrderApprovalRule as Ue,t as sr,V as fe,R as tr,v as me,e as lr,updatePurchaseOrderApprovalRule as or,createPurchaseOrderApprovalRule as nr,u as ve,h as cr,getPurchaseOrderApprovalRules as ir,deletePurchaseOrderApprovalRule as dr,cancelPurchaseOrders as ur,placeOrderForPurchaseOrder as pr,addPurchaseOrderComment as hr}from"../api.js";import{useState as C,useEffect as q,useCallback as k,useMemo as B,useReducer as mr}from"@dropins/tools/preact-hooks.js";import{Fragment as Oe}from"@dropins/tools/preact.js";import*as K from"@dropins/tools/preact-compat.js";const Dr=({pageSizeConfig:r,totalCount:a=0,columns:s=[],rows:c=[],paginationConfig:t,alertMessageConfig:n={heading:"",description:"",type:"success"},loading:i=!1,className:l="",variant:o="secondary",skeletonRowCount:f=10,emptyTitle:g,header:E,footer:_,withWrapper:O,expandedRows:T})=>{var v;const P=ae({title:"PurchaseOrders.purchaseOrdersTable.noPurchaseOrders.default"}),{heading:d,description:M,type:L}=n,{currentPage:p,totalPages:R,handlePageChange:V}=t,{pageSizeOptionsList:A,onChange:I}=r,D=A==null?void 0:A.find(F=>F.selected),$=D&&D.value!==void 0?Number(D.value):10,{from:W,to:Q,total:ce}=Ze(p,$,a),j=!i&&c.length===0,se=u(_e,{children:[d||M?e(Le,{heading:d,description:M,type:L}):null,E?e("div",{className:"purchase-orders-table__header",children:E}):null,e($e,{className:"purchase-orders-table__table-wrapper",mobileLayout:"stacked",columns:s,rowData:c,expandedRows:T,loading:i,skeletonRowCount:+f}),j&&e("div",{className:"purchase-orders-table__empty-state",role:"status","aria-live":"polite",children:e("p",{children:g||P.title})}),a>0?u("div",{className:"purchase-orders-table__pagination-wrapper",children:[e("div",{className:"purchase-orders-table__pagination-counter",children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.pagination.status",fields:{from:W,to:Q,total:ce}})}),R>1&&e(je,{className:x(["purchase-orders-table__pagination",["purchase-orders-table__pagination--loading",i]]),currentPage:p,totalPages:R,onChange:V}),a>0&&A.length?u("div",{className:"purchase-orders-table__pagination-page-size",children:[e(y,{id:"PurchaseOrders.purchaseOrdersTable.pagination.pageSizeLabel.start"}),e(he,{disabled:i,handleSelect:I,options:A,value:((v=A==null?void 0:A.find(F=>F.selected))==null?void 0:v.value)||""})]}):null]}):null,_?e("div",{className:"purchase-orders-table__footer",children:_}):null]});return O?e(ke,{variant:o,"data-testid":"purchaseOrdersTable",className:x(["b2b-purchase-order-purchase-orders-table",["b2b-purchase-order-purchase-orders-table--empty-state",j],l]),children:se}):e("div",{"data-testid":"purchaseOrdersTable",className:x(["b2b-purchase-order-purchase-orders-table",["b2b-purchase-order-purchase-orders-table--empty-state",j],l]),children:se})},br=({headerText:r,divider:a=!1})=>e(Ge,{title:r,divider:a,className:x(["purchase-orders-header",["purchase-orders-header--with-divider",a]]),"data-testid":"purchase-orders-header"}),Ur=({loading:r,selectedCount:a,className:s,handleRejectSelected:c,handleApproveSelected:t})=>u("div",{className:x(["b2b-purchase-order-purchase-orders-table-actions",s]),children:[u("div",{children:["Selected ",a]}),u("div",{className:"b2b-purchase-order-purchase-orders-table-actions__buttons",children:[e(H,{variant:"secondary",onClick:c,disabled:r||a===0,children:"Reject selected"}),e(H,{variant:"primary",onClick:t,disabled:r||a===0,children:"Approve selected"})]})]});var ge=(r=>(r.CUSTOMER_PURCHASE_ORDERS="customerPurchaseOrders",r.COMPANY_PURCHASE_ORDERS="companyPurchaseOrders",r.CUSTOMER_APPROVAL_PURCHASE_ORDERS="customerApprovalPurchaseOrders",r))(ge||{});const Br=[{text:"10",value:"10",selected:!1},{text:"20",value:"20",selected:!0},{text:"30",value:"30",selected:!1},{text:"50",value:"50",selected:!1}],Be=[{key:"poNumber",label:"PO #"},{key:"status",label:"Status"},{key:"createdBy",label:"Created By"},{key:"action",label:"Actions"}],Se=[{key:"ruleName",label:"Rule Name"},{key:"status",label:"Status"},{key:"createdBy",label:"Created By"},{key:"action",label:"Actions"}],fr=[{key:"checkboxView",label:""},...Be],vr=20,Hr=({view:r,initialPageSize:a,routePurchaseOrderDetails:s,setColumns:c,setRowsData:t,t:n,permissions:i,loadingPermissions:l})=>{const o=r===ge.COMPANY_PURCHASE_ORDERS,f=r===ge.CUSTOMER_APPROVAL_PURCHASE_ORDERS,[g,E]=C(!0),[_,O]=C([]),[T,P]=C([]),[d,M]=C(a),[L,p]=C(!0),[R,V]=C({currentPage:1,totalPages:1,totalCount:0}),[A,I]=C({heading:"",description:"",type:"success"}),[D,$]=C(new Set);q(()=>{const b=z.on("purchase-order/refresh",()=>{E(!0)},{eager:!0});return()=>{b==null||b.off()}},[]),q(()=>{if(A.heading||A.description){const b=setTimeout(()=>{I({heading:"",description:"",type:"success"})},7e3);return()=>clearTimeout(b)}},[A.heading,A.description]);const{currentPage:W,totalPages:Q,totalCount:ce}=R,j=k(b=>{V(S=>({...S,currentPage:b})),$(new Set),E(!0)},[]),se=k(b=>{const S=b.target.value;M(m=>m.map(w=>({...w,selected:w.value===S}))),j(1),$(new Set),E(!0)},[j]),v=(i==null?void 0:i.isAdmin)??!1,F=B(()=>{let b={};return o&&(b={companyPurchaseOrders:!0}),f&&(b={myApprovals:!0}),b},[o,f]);q(()=>{var m;if(!g||l)return;p(!0);const b=(m=d==null?void 0:d.find(w=>w.selected))==null?void 0:m.value,S=parseInt(b??vr.toString(),10);Ke(F,S,W).then(w=>{var de,ue;const G=(w==null?void 0:w.purchaseOrderItems)??[],X=(de=w==null?void 0:w.pageInfo)==null?void 0:de.currentPage,U=(ue=w==null?void 0:w.pageInfo)==null?void 0:ue.totalPages,ee=w==null?void 0:w.totalCount;V({currentPage:X>U?U||1:X,totalPages:U,totalCount:ee}),P(G)}).catch(w=>{console.error("Failed to fetch purchase orders:",w),P([])}).finally(()=>{p(!1),E(!1)})},[g,W,d,F,l]);const h=k(b=>{const S=s==null?void 0:s(b);return Fe(S??"")?S:"#"},[s]),N=k(b=>{$(S=>{const m=new Set(S);return m.has(b)?m.delete(b):m.add(b),m})},[]),te=k(b=>{const S=b.target.value,m=b.target.checked;O(w=>m?[...w,S]:w.filter(G=>G!==S))},[]),J=k(b=>{const S=b.target.checked;O(()=>S?T.filter(m=>["PENDING","APPROVAL_REQUIRED"].includes(m.status)).map(m=>m.uid??""):[])},[T]),Y=k(()=>{p(!0),xe(_).then(()=>{I({heading:n.alertHeaderReject,description:n.alertDescriptionReject,type:"success"}),O([]),z.emit("purchase-order/refresh",!0)}).catch(b=>{I({heading:n.alertHeaderError,description:n.alertDescriptionError,type:"error"}),console.error(b)}).finally(()=>{p(!1)})},[_,n]),ie=k(()=>{p(!0),Ve(_).then(()=>{I({heading:n.alertHeaderApprove,description:n.alertDescriptionApprove,type:"success"}),O([]),z.emit("purchase-order/refresh",!0)}).catch(b=>{I({heading:n.alertHeaderError,description:n.alertDescriptionError,type:"error"}),console.error(b)}).finally(()=>{p(!1)})},[_,n]),le=B(()=>{const b=o||f?fr:Be;return(c==null?void 0:c(b))??b.map(S=>S.key==="checkboxView"&&(v||f)?{key:S.key,label:e("input",{type:"checkbox",name:"selectAll",disabled:T.every(m=>!["PENDING","APPROVAL_REQUIRED"].includes(m.status)),onChange:J}),ariaLabel:n.selectAllAriaLabel}:{...S,label:n[S.key]||S.label})},[n,v,o,f,c,T,J]),oe=B(()=>{const b=T.map((m,w)=>{var Pe,ye,Ee,Re,Te,we;const G=m.number??"",X=D.has(w),U=`${((Pe=m.createdBy)==null?void 0:Pe.firstname)??""} ${((ye=m.createdBy)==null?void 0:ye.lastname)??""}`.trim(),ee=e(ne,{type:"button",onClick:()=>N(w),children:e(y,{id:`PurchaseOrders.purchaseOrdersTable.buttons.${X?"expandedHidden":"expandedShow"}`})}),de=e(Me,{className:`b2b-purchase-order-purchase-orders-table__status b2b-purchase-order-purchase-orders-table__status--${De(m.status)}`,children:e(y,{id:`PurchaseOrders.purchaseOrdersTable.statusOrder.${m.status.toLowerCase()}`})}),ue=u("div",{className:"b2b-purchase-order-purchase-orders-table__row-details",children:[u("div",{className:"b2b-purchase-order-purchase-orders-table__row-details-content",children:[u("p",{children:[e("span",{children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.orderNumber"})})," ",m.order.orderNumber]}),u("p",{children:[e("span",{children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.createdDate"})})," ",be(m.createdAt)]}),u("p",{children:[e("span",{children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.updatedDate"})})," ",be(m.updatedAt)]}),u("p",{children:[e("span",{children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.total"})})," ",e(ze,{amount:(Re=(Ee=m==null?void 0:m.quote)==null?void 0:Ee.grandTotal)==null?void 0:Re.value,currency:(we=(Te=m==null?void 0:m.quote)==null?void 0:Te.grandTotal)==null?void 0:we.currency,weight:"normal"})]})]}),e("div",{className:"b2b-purchase-order-purchase-orders-table__row-details-action",children:e(ne,{onClick:()=>{window.location.href=h(m.uid??"")},"aria-label":`View purchase order ${G}`,children:n.actionView})})]});return{...v||f?{checkboxView:e("input",{type:"checkbox",name:G,value:m.uid,checked:_.includes(m.uid),onChange:te,disabled:!["PENDING","APPROVAL_REQUIRED"].includes(m.status)})}:{},poNumber:G,status:de,createdBy:U,action:ee,_rowDetails:ue}});let S=b;if(t){const m=t(b);m!==void 0&&Array.isArray(m)&&(S=m)}return S},[T,t,v,f,_,te,h,n.actionView,D,N]);return{tableConfig:{columns:le,rows:oe,expandedRows:D},paginationConfig:{currentPage:W,totalPages:Q,handlePageChange:j},pageSizeConfig:{pageSizeOptionsList:d,onChange:se},totalCount:ce,loading:L,selectedOrderIds:_,handleRejectSelected:Y,handleApproveSelected:ie,isAdmin:v,isRequireApprovalPOsView:f,alertMessageConfig:A}},gr=r=>{if(!r)return{isAdmin:!1,purchaseOrderEnabled:!1,role:{id:"",name:""},permissions:{purchaseOrderAll:!1,viewPurchaseOrders:!1,viewPurchaseOrdersForSubordinates:!1,viewPurchaseOrdersForCompany:!1,autoApprovePurchaseOrder:!1,superApprovePurchaseOrder:!1,viewApprovalRules:!1,manageApprovalRules:!1}};const a=r.admin===!0,s=i=>{const l=r[i];return l===!1?!1:l===!0?!0:a},c={purchaseOrderAll:s(Z.PO_ALL),viewPurchaseOrders:s(Z.VIEW_CUSTOMER),viewPurchaseOrdersForSubordinates:s(Z.VIEW_SUBORDINATES),viewPurchaseOrdersForCompany:s(Z.VIEW_COMPANY),autoApprovePurchaseOrder:s(Z.AUTO_APPROVE),superApprovePurchaseOrder:s(Z.SUPER_APPROVE),viewApprovalRules:s(Z.VIEW_RULES),manageApprovalRules:s(Z.MANAGE_RULES)},n=Object.values(r).some(i=>i===!1)?!1:Object.values(c).some(i=>i===!0);return{isAdmin:a,purchaseOrderEnabled:n,role:{id:"",name:a?"Company Administrator":""},permissions:c}},_r=()=>{const r=z.lastPayload("auth/permissions"),[a,s]=C(r);q(()=>{const n=z.on("auth/permissions",i=>{s(i)},{eager:!0});return()=>{n==null||n.off()}},[]);const c=!a;return{permissions:B(()=>gr(a),[a]),loadingPermissions:c}};function Or(r,a){switch(a.type){case"SET_LOADING":return{...r,isLoading:a.payload};case"SET_SUBMIT_ERROR":return{...r,submitError:a.payload};case"SET_FORM_VALUES":return{...r,formValues:a.payload};case"SET_AVAILABLE_APPLIES_TO":return{...r,availableAppliesTo:a.payload};case"SET_AVAILABLE_APPROVERS":return{...r,availableRequiresApprovalFrom:a.payload};case"SET_ERRORS":return{...r,errors:a.payload};case"SET_TOUCHED":return{...r,touched:a.payload};case"SET_CURRENCIES":return{...r,currencyCodesList:a.payload};case"UPDATE_FIELD":{const{key:s,value:c}=a.payload,t=cr(r.formValues,s,c),n={...r.touched,[s]:!0};s==="roleType"&&c==="specific_roles"&&(n.appliesTo=!0);const i=me(t),l=ve(i,r.errors,n);return{...r,formValues:t,touched:n,errors:l}}case"TOUCH_FIELD":{const s=a.payload,c={...r.touched,[s]:!0},t=me(r.formValues),n=ve(t,r.errors,c);return{...r,touched:c,errors:n}}case"MARK_FIELDS_TOUCHED":{const s={...r.touched,...a.payload},c=me(r.formValues),t=ve(c,r.errors,s);return{...r,touched:s,errors:t}}default:return r}}const Pr=({t:r,approvalRuleID:a,routeApprovalRulesList:s,onSubmit:c,onChange:t,permissions:n,loadingPermissions:i})=>{const[l,o]=mr(Or,Je),f=B(()=>Ye(r),[r]),g=B(()=>Xe(r),[r]),E=B(()=>er(r),[r]);q(()=>{o({type:"SET_LOADING",payload:!0}),rr().then(d=>{o({type:"SET_CURRENCIES",payload:d.availableCurrencyCodes})}).catch(d=>{console.error("Failed to fetch currencies:",d)}),ar().then(d=>{const{availableAppliesTo:M,availableRequiresApprovalFrom:L}=d;return o({type:"SET_AVAILABLE_APPLIES_TO",payload:M}),o({type:"SET_AVAILABLE_APPROVERS",payload:L}),a?Ue(a):null}).then(d=>{d&&o({type:"SET_FORM_VALUES",payload:sr(d)}),o({type:"SET_SUBMIT_ERROR",payload:null})}).catch(d=>{console.error("Failed to fetch data:",d),o({type:"SET_SUBMIT_ERROR",payload:(d==null?void 0:d.message)||fe.FAILED_TO_LOAD})}).finally(()=>{o({type:"SET_LOADING",payload:!1})})},[a]);const _=k((d,M)=>{o({type:"UPDATE_FIELD",payload:{key:d,value:M}}),t&&t({...l.formValues,[d]:M})},[t,l.formValues]),O=k(d=>{o({type:"TOUCH_FIELD",payload:d}),t&&t(l.formValues)},[t,l.formValues]),T=k(async()=>{o({type:"SET_LOADING",payload:!0}),o({type:"SET_SUBMIT_ERROR",payload:null}),o({type:"MARK_FIELDS_TOUCHED",payload:tr});const d=me(l.formValues);if(Object.keys(d).length>0){o({type:"SET_ERRORS",payload:d}),o({type:"SET_LOADING",payload:!1});return}const M=lr(l.formValues);try{let L;if(a?L=await or({uid:a,...M}):L=await nr(M),!L.uid){o({type:"SET_SUBMIT_ERROR",payload:fe.FAILED_TO_CREATE}),o({type:"SET_LOADING",payload:!1});return}c&&c(l.formValues),s?window.location.href=s():o({type:"SET_LOADING",payload:!1})}catch(L){console.error("Failed to save approval rule:",L),o({type:"SET_SUBMIT_ERROR",payload:(L==null?void 0:L.message)||fe.FAILED_TO_CREATE}),o({type:"SET_LOADING",payload:!1})}},[l.formValues,s,a,c]),P=B(()=>!!(l.isLoading||i||!(n!=null&&n.permissions.viewApprovalRules)&&!(n!=null&&n.permissions.manageApprovalRules)),[l.isLoading,i,n]);return{availableAppliesTo:l.availableAppliesTo,availableRequiresApprovalFrom:l.availableRequiresApprovalFrom,formValues:l.formValues,ruleTypeOptions:f,conditionOperators:g,currencies:l.currencyCodesList,appliesToOptions:E,handleSetFormValues:_,handleSubmit:T,handleFieldTouch:O,errors:l.errors,touched:l.touched,isLoading:l.isLoading,formLoading:P,submitError:l.submitError}},$r=({approvalRuleID:r,routeApprovalRulesList:a})=>{const[s,c]=C(!0),[t,n]=C(null);q(()=>{r&&(c(!0),Ue(r).then(o=>{o.uid&&n(o)}).catch(()=>{n(null)}).finally(()=>{c(!1)}))},[r]);const i=B(()=>{if(!t||s)return[];const{name:o,status:f,description:g,appliesToRoles:E,approverRoles:_,condition:O}=t;return[{label:e(y,{id:"PurchaseOrders.approvalRuleDetails.fields.ruleName"}),value:o},{label:e(y,{id:"PurchaseOrders.approvalRuleDetails.fields.status"}),value:e(y,{id:`PurchaseOrders.approvalRuleDetails.fields.statusView.${f.toLocaleLowerCase()}`})},{label:e(y,{id:"PurchaseOrders.approvalRuleDetails.fields.description"}),value:g},{label:e(y,{id:"PurchaseOrders.approvalRuleDetails.fields.appliesTo"}),value:e("ul",{children:E.map(T=>e("li",{children:T.name},T.id))})},{label:e(y,{id:"PurchaseOrders.approvalRuleDetails.fields.ruleType"}),value:e(y,{id:`PurchaseOrders.approvalRuleDetails.fields.condition.attribute.${O.attribute.toLocaleLowerCase()}`})},{label:u(_e,{children:[e(y,{id:`PurchaseOrders.approvalRuleDetails.fields.condition.attribute.${O.attribute.toLocaleLowerCase()}`}),":"]}),value:u("div",{children:[e(y,{id:`PurchaseOrders.approvalRuleDetails.fields.condition.operator.${O.operator.toLocaleLowerCase()}`}),e(y,{id:"PurchaseOrders.approvalRuleDetails.fields.amount.label"}),e(qe,{amount:O.amount.value,currency:O.amount.currency})]})},{label:e(y,{id:"PurchaseOrders.approvalRuleDetails.fields.requiresApprovalFrom"}),value:e("ul",{children:_.map(T=>e("li",{children:T.name},T.id))})}]},[t,s]);return{handleRedirectToList:()=>{window.location.href=(a==null?void 0:a())??""},loading:s,formValues:i}},yr=20,jr=({routeApprovalRuleDetails:r,routeCreateApprovalRule:a,routeEditApprovalRule:s,setColumns:c,setRowsData:t,initialPageSize:n,permissions:i,loadingPermissions:l,t:o})=>{const[f,g]=C([]),[E,_]=C(!0),[O,T]=C(!0),[P,d]=C(n),[M,L]=C({currentPage:1,totalPages:1,totalCount:0}),[p,R]=C(new Set);q(()=>{const v=z.on("purchase-order/refresh",()=>{_(!0)},{eager:!0});return()=>{v==null||v.off()}},[]);const{currentPage:V,totalPages:A,totalCount:I}=M,D=k(v=>{L(F=>({...F,currentPage:v})),R(new Set),_(!0)},[]),$=k(v=>{const F=v.target.value;d(h=>h.map(N=>({...N,selected:N.value===F}))),D(1),R(new Set),_(!0)},[D]),W=k(v=>{R(F=>{const h=new Set(F);return h.has(v)?h.delete(v):h.add(v),h})},[]);q(()=>{var h;if(!E||l)return;T(!0);const v=(h=P==null?void 0:P.find(N=>N.selected))==null?void 0:h.value,F=parseInt(v??yr.toString(),10);ir(V,F).then(N=>{var le,oe;const te=(N==null?void 0:N.items)??[],J=(le=N==null?void 0:N.pageInfo)==null?void 0:le.currentPage,Y=(oe=N==null?void 0:N.pageInfo)==null?void 0:oe.totalPages,ie=N==null?void 0:N.totalCount;L({currentPage:J>Y?Y||1:J,totalPages:Y,totalCount:ie}),g(te)}).catch(N=>{console.error("Error fetching approval rules:",N),g([])}).finally(()=>{T(!1),_(!1)})},[E,V,P,A,l]);const Q=k((v,F)=>{let h="";switch(F){case"new":{h=a==null?void 0:a(v);break}case"edit":{h=s==null?void 0:s(v);break}case"view":{h=r==null?void 0:r(v);break}}return Fe(h??"")?h:"#"},[a,s,r]),ce=B(()=>(c==null?void 0:c(Se))??Se.map(v=>({...v,label:o[v.key]||v.label})),[c,o]),j=k((v,F)=>{v.preventDefault(),T(!0),dr(F).then(()=>{z.emit("purchase-order/refresh",!0)}).finally(()=>{R(new Set)})},[]),se=B(()=>{const v=f==null?void 0:f.map((h,N)=>{var b,S,m,w,G,X;const{isAdmin:te,permissions:{manageApprovalRules:J}}=i,Y=p.has(N),ie=te||J,le=e(ne,{onClick:()=>W(N),children:e(y,{id:`PurchaseOrders.purchaseOrdersTable.buttons.${Y?"expandedHidden":"expandedShow"}`})}),oe=u("div",{className:"b2b-purchase-order-purchase-orders-table__row-details",children:[u("div",{className:"b2b-purchase-order-purchase-orders-table__row-details-content",children:[u("p",{children:[e("span",{children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.ruleType"})})," ",e(y,{id:`PurchaseOrders.purchaseOrdersTable.ruleTypes.${(S=(b=h.condition)==null?void 0:b.attribute)==null?void 0:S.toLocaleLowerCase()}`})]}),e("p",{children:e("span",{children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.appliesTo"})})}),e("ul",{children:((m=h==null?void 0:h.appliesToRoles)==null?void 0:m.length)<=0?e("li",{children:o.appliesToAll}):(w=h==null?void 0:h.appliesToRoles)==null?void 0:w.map((U,ee)=>e("li",{children:U.name},ee))}),e("p",{children:e("span",{children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.approver"})})}),e("ul",{children:(G=h==null?void 0:h.approverRoles)==null?void 0:G.map((U,ee)=>e("li",{children:U==null?void 0:U.name},ee))})]}),ie?e("div",{className:"b2b-purchase-order-purchase-orders-table__row-details-action",children:u("div",{className:"b2b-purchase-order-purchase-orders-table__row-details-action-inner-wrapper",children:[e(ne,{onClick:()=>{window.location.href=Q(h.uid,"edit")},"aria-label":o.ariaLabelEditRule.replace("{{ruleName}}",h.name),"data-testid":`edit-approval-rule-${h.uid}`,children:o.actionEdit}),e(ne,{onClick:U=>j(U,h.uid),"aria-label":o.ariaLabelDeleteRule.replace("{{ruleName}}",h.name),"data-testid":`delete-approval-rule-${h.uid}`,children:o.actionDelete})]})}):e("div",{className:"b2b-purchase-order-purchase-orders-table__row-details-action",children:e(ne,{onClick:()=>{window.location.href=Q(h.uid,"view")},"aria-label":o.ariaLabelViewRule.replace("{{ruleName}}",h.name),"data-testid":`view-approval-rule-${h.uid}`,children:o.actionView})})]});return{ruleName:h.name,status:e(Me,{className:`b2b-purchase-order-purchase-orders-table__status b2b-purchase-order-purchase-orders-table__status--${De(h.status)}`,children:e(y,{id:`PurchaseOrders.purchaseOrdersTable.rulesStatus.${(X=h.status)==null?void 0:X.toLocaleLowerCase()}`})}),createdBy:h.createdBy,action:le,_rowDetails:oe}});let F=v;if(t){const h=t(v);h!==void 0&&Array.isArray(h)&&(F=h)}return F},[f,p,i,t,o,Q,j,W]);return{tableConfig:{columns:ce,rows:se,expandedRows:p},paginationConfig:{currentPage:V,totalPages:A,handlePageChange:D},pageSizeConfig:{pageSizeOptionsList:P,onChange:$},totalCount:I,loading:O,handleCreateUrl:Q}},Er=()=>{const[r,a]=C(!0),[s,c]=C(null);return q(()=>{const t=z.on("purchase-order/data",n=>{n!=null&&n.uid&&c(n),a(!1)},{eager:!0});return()=>{t==null||t.off()}},[]),{poDataLoading:r,purchaseOrderData:s}},Gr=()=>{const{poDataLoading:r,purchaseOrderData:a}=Er(),s=ae({approvalSuccessMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.success.approval",rejectSuccessMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.success.reject",cancelSuccessMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.success.cancel",placeOrderSuccessMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.success.placeOrder",approvalErrorMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.errors.approval",rejectErrorMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.errors.reject",cancelErrorMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.errors.cancel",placeOrderErrorMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.errors.placeOrder"}),c=(a==null?void 0:a.uid)??null,t=(a==null?void 0:a.status)??"PENDING",n=(a==null?void 0:a.availableActions)??[],[i,l]=C("success"),[o,f]=C(""),[g,E]=C(!1),[_,O]=C(!0),T=()=>{O(!0)},P=k((V,A)=>{let I="";if(V){switch(A){case"APPROVE":I=s.approvalSuccessMessage;break;case"REJECT":I=s.rejectSuccessMessage;break;case"CANCEL":I=s.cancelSuccessMessage;break;case"PLACE_ORDER":I=s.placeOrderSuccessMessage;break}l("success")}else{switch(A){case"APPROVE":I=s.approvalErrorMessage;break;case"REJECT":I=s.rejectErrorMessage;break;case"CANCEL":I=s.cancelErrorMessage;break;case"PLACE_ORDER":I=s.placeOrderErrorMessage;break}l("error")}f(I),O(!1)},[s]),d=k(async(V,A)=>{if(c){E(!0);try{await V(c),P(!0,A)}catch{P(!1,A)}finally{E(!1),z.emit("purchase-order/refresh",!0)}}},[c,P]),M=k(()=>d(Ve,"APPROVE"),[d]),L=k(()=>d(xe,"REJECT"),[d]),p=k(()=>d(ur,"CANCEL"),[d]),R=k(()=>d(pr,"PLACE_ORDER"),[d]);return{poId:c,status:t,availableActions:n,alertType:i,loading:g,poDataLoading:r,isDismissed:_,alertMessage:o,handleOnDismiss:T,handleApprove:M,handleReject:L,handleCancel:p,handlePlaceOrder:R}},pe=({touched:r=!1,error:a,className:s="error-message"})=>!r||!a?null:e("span",{className:s,children:e(y,{id:a})}),Rr=({availableRequiresApprovalFrom:r,conditionOperators:a,availableAppliesTo:s,appliesToOptions:c,ruleTypeOptions:t,currencies:n,formValues:i,errors:l,touched:o,isLoading:f,permissions:g,handleSubmit:E,handleFieldTouch:_,handleSetFormValues:O,routeApprovalRulesList:T,t:P})=>{var M,L;const d=f||!((M=g==null?void 0:g.permissions)!=null&&M.viewApprovalRules);return u("form",{"data-testid":"approval-rule-form",children:[e(We,{"data-testid":"status-toggle",className:"b2b-purchase-order-approval-rule-form__toggle",disabled:d,name:"status",label:P.formEnabled,checked:i.status==="ENABLED",onChange:p=>{const R=p.target.checked;O("status",R)}}),u("div",{"data-testid":"name-input-container",children:[e(Ce,{"data-testid":"name-input",className:"b2b-purchase-order-approval-rule-form__name-input",disabled:d,name:"name",floatingLabel:P.inputRuleNameFloatingLabel,placeholder:P.inputRuleNamePlaceholder,value:i.name,error:!!(o.name&&l.name),onChange:p=>{const R=p.target.value;O("name",R)},onBlur:()=>_("name")}),e(pe,{touched:o.name,error:l.name})]}),e(Ie,{"data-testid":"description-textarea",className:"b2b-purchase-order-approval-rule-form__description",disabled:d,name:"description",label:P.textAreaDescriptionLabel,value:i.description,onChange:p=>{const R=p.target.value;O("description",R)}}),u("div",{"data-testid":"applies-to-section",className:"b2b-purchase-order-approval-rule-form__applies-to",children:[e("span",{className:"b2b-purchase-order-approval-rule-form__applies-to-title",children:P.titleAppliesTo}),c.map((p,R)=>e(Qe,{"data-testid":`applies-to-radio-${R}`,disabled:d,name:"radio-group",value:p.value,label:p.text,checked:i.roleType===p.value,onChange:V=>{const A=V.target.value;O("roleType",A)}},p.value)),i.roleType==="specific_roles"?u("div",{"data-testid":"applies-to-multiselect-container",className:"b2b-purchase-order-approval-rule-form__applies-to-multiselect",children:[e(Ae,{"data-testid":"applies-to-multiselect",disabled:d,name:"appliesTo",value:[...i.appliesTo],options:s.map(p=>({value:p.id,label:p.name})),error:!!(o.appliesTo&&l.appliesTo),onChange:p=>{O("appliesTo",p),o.appliesTo||_("appliesTo")}}),e(pe,{touched:o.appliesTo,error:l.appliesTo})]}):null]}),u("div",{"data-testid":"rule-type-section",className:"b2b-purchase-order-approval-rule-form__rule-type",children:[e("span",{className:"b2b-purchase-order-approval-rule-form__rule-type-title",children:P.titleRuleType}),e(he,{"data-testid":"rule-type-picker",className:"b2b-purchase-order-approval-rule-form__rule-type-picker",disabled:d,name:"ruleType",value:i.condition.attribute,options:t,handleSelect:p=>{const R=p.target.value;O("ruleType",R)}})]}),u("div",{"data-testid":"rule-condition-section",className:"b2b-purchase-order-approval-rule-form__rule-condition",children:[e("span",{className:"b2b-purchase-order-approval-rule-form__rule-condition-title",children:(L=t.find(p=>p.value===i.condition.attribute))==null?void 0:L.text}),u("div",{className:x(["b2b-purchase-order-approval-rule-form__rule-condition-container",["b2b-purchase-order-approval-rule-form__rule-condition-container--error",!!l.ruleValue&&o.ruleValue]]),children:[e(he,{"data-testid":"rule-condition-picker",className:"b2b-purchase-order-approval-rule-form__rule-condition-picker",disabled:d,name:"ruleCondition",value:i.condition.operator,options:a,handleSelect:p=>{const R=p.target.value;O("ruleCondition",R)}}),u("div",{"data-testid":"rule-value-container",children:[e(Ce,{"data-testid":"rule-value-input",className:"b2b-purchase-order-approval-rule-form__rule-value-input",disabled:d,name:"ruleValue",floatingLabel:i.condition.attribute==="NUMBER_OF_SKUS"?P.inputQuantityFloatingLabel:P.inputAmountFloatingLabel,placeholder:i.condition.attribute==="NUMBER_OF_SKUS"?P.inputQuantityPlaceholder:P.inputAmountPlaceholder,value:i.condition.attribute==="NUMBER_OF_SKUS"?i.condition.quantity:i.condition.amount.value,error:!!(o.ruleValue&&l.ruleValue),onChange:p=>{const R=p.target.value;O("ruleValue",R)},onBlur:()=>_("ruleValue")}),e(pe,{touched:o.ruleValue,error:l.ruleValue})]}),i.condition.attribute!=="NUMBER_OF_SKUS"?e(he,{"data-testid":"rule-condition-currency-picker",className:"b2b-purchase-order-approval-rule-form__rule-condition-currency-picker",disabled:d,name:"ruleConditionCurrency",value:i.condition.amount.currency,options:n,handleSelect:p=>{const R=p.target.value;O("ruleConditionCurrency",R)}}):null]})]}),u("div",{"data-testid":"approval-role-section",className:"b2b-purchase-order-approval-rule-form__approval-role",children:[e("span",{className:"b2b-purchase-order-approval-rule-form__approval-role-title",children:P.titleRequiresApprovalRole}),u("div",{className:"b2b-purchase-order-approval-rule-form__approval-role-multiselect",children:[e(Ae,{"data-testid":"approvers-multiselect",disabled:d,name:"approvers",value:[...i.approvers],options:r.map(p=>({value:p.id,label:p.name})),error:!!(o.approvers&&l.approvers),onChange:p=>{O("approvers",p),o.approvers||_("approvers")}}),e(pe,{touched:o.approvers,error:l.approvers})]})]}),u("div",{"data-testid":"form-buttons",className:"b2b-purchase-order-approval-rule-form__buttons",children:[e(H,{"data-testid":"save-button",type:"button",disabled:d,onClick:E,children:P.buttonSave}),e(H,{"data-testid":"cancel-button",disabled:f,variant:"secondary",type:"button",onClick:()=>{window.location.href=(T==null?void 0:T())??""},children:P.buttonCancel})]})]})},zr=({className:r,approvalRuleID:a,withHeader:s,withWrapper:c,routeApprovalRulesList:t,onSubmit:n,onChange:i})=>{const l=ae({headerText:"PurchaseOrders.approvalRuleForm.headerText",titleAppliesTo:"PurchaseOrders.approvalRuleForm.titleAppliesTo",titleRuleType:"PurchaseOrders.approvalRuleForm.titleRuleType",titleRequiresApprovalRole:"PurchaseOrders.approvalRuleForm.titleRequiresApprovalRole",formEnabled:"PurchaseOrders.approvalRuleForm.fields.enabled",formDisabled:"PurchaseOrders.approvalRuleForm.fields.disabled",inputRuleNameFloatingLabel:"PurchaseOrders.approvalRuleForm.fields.inputRuleName.floatingLabel",inputRuleNamePlaceholder:"PurchaseOrders.approvalRuleForm.fields.inputRuleName.placeholder",textAreaDescriptionLabel:"PurchaseOrders.approvalRuleForm.fields.textAreaDescription.label",appliesToAllUsers:"PurchaseOrders.approvalRuleForm.fields.appliesTo.allUsers",appliesToSpecificRoles:"PurchaseOrders.approvalRuleForm.fields.appliesTo.specificRoles",ruleTypeGrandTotal:"PurchaseOrders.approvalRuleForm.fields.ruleTypeOptions.grandTotal",ruleTypeShippingInclTax:"PurchaseOrders.approvalRuleForm.fields.ruleTypeOptions.shippingInclTax",ruleTypeNumberOfSkus:"PurchaseOrders.approvalRuleForm.fields.ruleTypeOptions.numberOfSkus",conditionOperatorMoreThan:"PurchaseOrders.approvalRuleForm.fields.conditionOperators.moreThan",conditionOperatorLessThan:"PurchaseOrders.approvalRuleForm.fields.conditionOperators.lessThan",conditionOperatorMoreThanOrEqualTo:"PurchaseOrders.approvalRuleForm.fields.conditionOperators.moreThanOrEqualTo",conditionOperatorLessThanOrEqualTo:"PurchaseOrders.approvalRuleForm.fields.conditionOperators.lessThanOrEqualTo",inputQuantityFloatingLabel:"PurchaseOrders.approvalRuleForm.fields.inputQuantity.floatingLabel",inputQuantityPlaceholder:"PurchaseOrders.approvalRuleForm.fields.inputQuantity.placeholder",inputAmountFloatingLabel:"PurchaseOrders.approvalRuleForm.fields.inputAmount.floatingLabel",inputAmountPlaceholder:"PurchaseOrders.approvalRuleForm.fields.inputAmount.placeholder",buttonCancel:"PurchaseOrders.approvalRuleForm.fields.buttons.cancel",buttonSave:"PurchaseOrders.approvalRuleForm.fields.buttons.save"}),{permissions:o,loadingPermissions:f}=_r(),{availableRequiresApprovalFrom:g,conditionOperators:E,availableAppliesTo:_,appliesToOptions:O,ruleTypeOptions:T,currencies:P,formValues:d,errors:M,touched:L,isLoading:p,submitError:R,formLoading:V,handleSubmit:A,handleFieldTouch:I,handleSetFormValues:D}=Pr({t:l,approvalRuleID:a,loadingPermissions:f,permissions:o,routeApprovalRulesList:t,onSubmit:n,onChange:i});if(V)return e(wr,{testId:"b2b-purchase-order-approval-rule-form",className:x(["b2b-purchase-order-approval-rule-form",r])});const $=u(_e,{children:[!!R&&e(Le,{heading:"",description:R}),e(Rr,{availableRequiresApprovalFrom:g,conditionOperators:E,availableAppliesTo:_,appliesToOptions:O,ruleTypeOptions:T,currencies:P,formValues:d,errors:M,touched:L,isLoading:p,handleSubmit:A,handleFieldTouch:I,handleSetFormValues:D,permissions:o,routeApprovalRulesList:t,t:l})]});return u("div",{"data-testid":"b2b-purchase-order-approval-rule-form",className:x(["b2b-purchase-order-approval-rule-form",r]),children:[s?e(br,{headerText:l.headerText}):null,c?e(ke,{variant:"secondary",children:$}):$]})},qr=({className:r,purchaseOrderNumber:a,routePurchaseOrderDetails:s,...c})=>{const t=ae({title:"PurchaseOrders.purchaseOrderConfirmation.title",messagePrefix:"PurchaseOrders.purchaseOrderConfirmation.messagePrefix",messageSuffix:"PurchaseOrders.purchaseOrderConfirmation.messageSuffix"});return u("div",{...c,className:x(["purchase-orders-confirmation-content",r]),children:[e("h2",{className:"purchase-orders-confirmation-content__title",children:t.title}),u("p",{className:"purchase-orders-confirmation-content__message",children:[t.messagePrefix," ",u("a",{className:"purchase-orders-confirmation-content__link",href:s()??"",children:["#",a]}),". ",t.messageSuffix]})]})},Wr=({slots:r,t:a,loading:s,children:c,availableActions:t=[],handleApprove:n,handleReject:i,handleCancel:l,handlePlaceOrder:o})=>{const f=t.map(g=>{switch(g){case"APPROVE":return e(H,{variant:"secondary",disabled:s,type:"button",onClick:n,children:a.approveButtonText},g);case"PLACE_ORDER":return e(H,{variant:"secondary",disabled:s,type:"button",onClick:o,children:a.placeOrderButtonText},g);case"REJECT":return e(H,{variant:"secondary",disabled:s,type:"button",onClick:i,children:a.rejectButtonText},g);case"CANCEL":return e(H,{variant:"secondary",disabled:s,type:"button",onClick:l,children:a.cancelButtonText},g);default:return null}});return u("div",{className:x(["b2b-purchase-order-status-content"]),children:[e("div",{className:"b2b-purchase-order-status-content__message",children:a.statusMessageText}),c,e("div",{className:"b2b-purchase-order-status-content__actions",children:e(He,{"data-testid":"PurchaseOrderActions",name:"PurchaseOrderActions",slot:r==null?void 0:r.PurchaseOrderActions,context:{loading:s,availableActions:t,handleApprove:n,handleReject:i,handleCancel:l,handlePlaceOrder:o},children:f})})]})},Qr=({formValues:r})=>e("div",{className:x(["b2b-purchase-order-approval-rule-details-content"]),children:r.map((a,s)=>u("div",{className:x(["b2b-purchase-order-approval-rule-details-content__item"]),children:[e("span",{className:"b2b-purchase-order-approval-rule-details-content__label",children:a.label}),e("div",{className:"b2b-purchase-order-approval-rule-details-content__value",children:a.value})]},s))}),Ne=1,re=({className:r,fullWidth:a=!1,lines:s=Ne,size:c="small",variant:t="row",children:n=null,multilineGap:i="medium",...l})=>{const o=[[`dropin-skeleton-row__${t}`,t],[`dropin-skeleton-row__${t}-${c}`,t&&c]];if(!n&&t==="empty")return e("div",{className:x(["dropin-skeleton-row dropin-skeleton-row__empty",r])});if(n){const g=n.trim();return e("div",{...l,class:x(["dropin-skeleton-row",["dropin-skeleton-row--full",a],r]),dangerouslySetInnerHTML:{__html:g}})}return s>Ne===!1?e("div",{...l,class:x(["dropin-skeleton-row",["dropin-skeleton-row--full",a],"dropin-skeleton--row__content",...o,r])}):e("div",{...l,style:{"--multiline-gap-spacing":`var(--spacing-${i})`},class:x(["dropin-skeleton-row--multiline",["dropin-skeleton-row--full",a],r]),children:Array.from({length:s}).map((g,E)=>e("div",{class:x(["dropin-skeleton-row",["dropin-skeleton-row--full",a],"dropin-skeleton--row__content",...o])},E))})},Tr=({className:r,children:a,rowGap:s="medium",...c})=>e("div",{style:{"--row-gap-spacing":`var(--spacing-${s})`},...c,className:x(["dropin-skeleton",r]),role:"status","aria-label":"Loading...",children:a}),wr=({testId:r="",className:a=""})=>e("div",{"data-testid":r,className:x(["b2b-purchase-order-form-loader",a]),children:u(Tr,{rowGap:"medium","data-testid":"form-loader-root",children:[e(re,{size:"small",variant:"row",fullWidth:!0,lines:1,style:{maxWidth:300},"data-testid":"form-loader-status-toggle"}),e(re,{size:"medium",variant:"row",fullWidth:!0,lines:1,"data-testid":"form-loader-name"}),e(re,{size:"medium",variant:"row",fullWidth:!0,lines:4,"data-testid":"form-loader-description"}),u("div",{className:"approval-rule-form-loader__section","data-testid":"form-loader-approval-role-section",children:[e(re,{size:"small",variant:"row",fullWidth:!0,lines:1,"data-testid":"form-loader-approval-role-label"}),e(re,{size:"small",variant:"row",fullWidth:!0,lines:1,"data-testid":"form-loader-approval-role-input"})]}),u("div",{className:"approval-rule-form-loader__buttons","data-testid":"form-loader-buttons",children:[e(re,{size:"medium",variant:"row",fullWidth:!0,lines:1,style:{width:120},"data-testid":"form-loader-button-save"}),e(re,{size:"medium",variant:"row",fullWidth:!0,lines:1,style:{width:120},"data-testid":"form-loader-button-cancel"})]})]})}),Zr=({commentsList:r=[],visibleRecordsLimit:a=5})=>{const[s,c]=C(a),t=r.length>s,n=r.length<=a,i=ae({showMoreLabel:"PurchaseOrders.comments.view.ariaLabel.showMore",showLessLabel:"PurchaseOrders.comments.view.ariaLabel.showLess"});return r.length?u("div",{className:"b2b-purchase-order-comment-list-content",children:[e("ul",{className:"b2b-purchase-order-comment-list-content__list",children:r.slice(0,s).map((l,o)=>{var g,E;const f=Math.min(s,r.length);return u(Oe,{children:[u("li",{className:"b2b-purchase-order-comment-list-content__item",children:[u("div",{className:"b2b-purchase-order-comment-list-content__title",children:[be(l.createdAt),(g=l.author)!=null&&g.firstname&&((E=l.author)!=null&&E.lastname)?` (${l.author.firstname} ${l.author.lastname})`:""]}),e("div",{className:"b2b-purchase-order-comment-list-content__description",children:l.text})]}),o<f-1&&e("hr",{className:"b2b-purchase-order-comment-list-content__divider"})]},l.uid)})}),!n&&e("div",{className:"b2b-purchase-order-comment-list-content__actions",children:e(H,{variant:"secondary","aria-expanded":!t,"aria-label":t?i.showMoreLabel:i.showLessLabel,onClick:()=>{c(t?r.length:a)},children:e(y,{id:`PurchaseOrders.comments.view.buttons.${t?"viewMore":"viewLess"}`})})})]}):e("div",{className:"b2b-purchase-order-comment-list-content",children:e(y,{id:"PurchaseOrders.comments.view.emptyText"})})},Kr=({t:r,purchaseOrderData:a})=>{const[s,c]=C(!1),[t,n]=C(""),[i,l]=C(""),o=B(()=>!t.trim().length||!(a!=null&&a.uid)||s,[t,a,s]),f=k(E=>{const _=E.target.value;n(_),i&&l("")},[i]),g=k(()=>{const E=(a==null?void 0:a.uid)??"";!E||!t.trim().length||(c(!0),hr(E,t).then(_=>{_&&(a!=null&&a.uid)&&(z.emit("purchase-order/refresh",!0),n(""))}).catch(()=>{l(r.errorMessage||"Failed to add comment. Please try again.")}).finally(()=>{c(!1)}))},[a,t,r]);return u("div",{className:x(["b2b-purchase-order-comment-form-content"]),children:[e(Ie,{errorMessage:i,disabled:s,value:t,label:r.textAreaPlaceholder,onChange:f}),e(H,{variant:"primary",disabled:o,onClick:g,children:r.buttonText})]})},Cr=r=>K.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...r},K.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M0.75 12C0.75 5.78421 5.78421 0.75 12 0.75C18.2158 0.75 23.25 5.78421 23.25 12C23.25 18.2158 18.2158 23.25 12 23.25C5.78421 23.25 0.75 18.2158 0.75 12Z",stroke:"currentColor"}),K.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M6.75 12.762L10.2385 15.75L17.25 9",stroke:"currentColor"})),Ar=r=>K.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...r},K.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 12C0 5.37931 5.37931 0 12 0C18.6207 0 24 5.37931 24 12C24 18.6207 18.6207 24 12 24C5.37931 24 0 18.6207 0 12ZM11.8885 5.06101C11.1405 5.06101 10.5357 5.66579 10.5357 6.4138V6.57295C10.5835 7.27321 11.1882 7.81433 11.8885 7.76658H12.0795C12.7797 7.70292 13.289 7.09815 13.2413 6.4138C13.2413 5.66579 12.6365 5.06101 11.8885 5.06101ZM13.1935 16.8223H14.1007C14.2599 16.8223 14.4031 16.9655 14.4031 17.1247V17.7294C14.4031 17.9045 14.2599 18.0318 14.1007 18.0318H9.8832C9.70813 18.0318 9.58081 17.8886 9.58081 17.7294V17.1247C9.58081 16.9496 9.72405 16.8223 9.8832 16.8223H10.7904V10.7905H9.8832C9.70813 10.7905 9.58081 10.6472 9.58081 10.4881V9.88329C9.58081 9.70823 9.72405 9.58091 9.8832 9.58091H12.5888C12.923 9.58091 13.1935 9.85146 13.1935 10.1857V16.8223Z",fill:"currentColor"})),Sr=r=>K.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...r},K.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M0.75 12C0.75 5.78421 5.78421 0.75 12 0.75C18.2158 0.75 23.25 5.78421 23.25 12C23.25 18.2158 18.2158 23.25 12 23.25C5.78421 23.25 0.75 18.2158 0.75 12Z",stroke:"currentColor"}),K.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M11.75 5.88423V4.75H12.25V5.88423L12.0485 13.0713H11.9515L11.75 5.88423ZM11.7994 18.25V16.9868H12.2253V18.25H11.7994Z",stroke:"currentColor"})),Jr=({approvalFlow:r=[]})=>{const a=ae({pending:"PurchaseOrders.approvalFlow.ariaLabels.icons.pending",approved:"PurchaseOrders.approvalFlow.ariaLabels.icons.approved",rejected:"PurchaseOrders.approvalFlow.ariaLabels.icons.rejected"});if(!(r!=null&&r.length))return e("div",{className:"b2b-purchase-order-approval-flow-content",children:e(y,{id:"PurchaseOrders.approvalFlow.emptyText"})});const s=c=>{switch(c){case"PENDING":return e(Ar,{className:"b2b-purchase-order-approval-flow-content__icon--pending","aria-label":a.pending,role:"img"});case"APPROVED":return e(Cr,{className:"b2b-purchase-order-approval-flow-content__icon--approved","aria-label":a.approved,role:"img"});case"REJECTED":return e(Sr,{className:"b2b-purchase-order-approval-flow-content__icon--rejected","aria-label":a.rejected,role:"img"});default:return null}};return e("div",{className:x(["b2b-purchase-order-approval-flow-content"]),children:e("ul",{className:"b2b-purchase-order-approval-flow-content__list",children:r.map((c,t)=>u(Oe,{children:[u("li",{className:"b2b-purchase-order-approval-flow-content__item",children:[e("div",{className:"b2b-purchase-order-approval-flow-content__title",children:c.ruleName}),c.events.map((n,i)=>u("div",{className:"b2b-purchase-order-approval-flow-content__description",children:[s(n.status),n.message]},i))]}),t<r.length-1&&e("hr",{className:"b2b-purchase-order-approval-flow-content__divider"})]},t))})})},Yr=({historyLogRecords:r=[],visibleRecordsLimit:a})=>{const[s,c]=C(a),t=r.length>s,n=r.length<=a,i=ae({showMoreLabel:"PurchaseOrders.historyLog.ariaLabel.showMore",showLessLabel:"PurchaseOrders.historyLog.ariaLabel.showLess"});return r.length?u("div",{className:"b2b-purchase-order-history-log-content",children:[e("ul",{className:"b2b-purchase-order-history-log-content__list",role:"list",children:r.slice(0,s).map((l,o)=>{const f=Math.min(s,r.length);return u(Oe,{children:[u("li",{className:"b2b-purchase-order-history-log-content__item",children:[e("div",{className:"b2b-purchase-order-history-log-content__title",children:e(y,{id:`PurchaseOrders.historyLog.status.${l.activity}`,fields:{date:be(l.createdAt)}})}),e("div",{className:"b2b-purchase-order-history-log-content__description",children:l.message})]}),o<f-1&&e("hr",{className:"b2b-purchase-order-history-log-content__divider"})]},l.uid)})}),!n&&e("div",{className:"b2b-purchase-order-history-log-content__actions",children:e(H,{variant:"secondary","aria-expanded":!t,"aria-label":t?i.showMoreLabel:i.showLessLabel,onClick:()=>{c(t?r.length:a)},children:e(y,{id:`PurchaseOrders.historyLog.buttons.${t?"viewMore":"viewLess"}`})})})]}):e("div",{className:"b2b-purchase-order-history-log-content",children:e(y,{id:"PurchaseOrders.historyLog.emptyText"})})};export{zr as A,ge as E,wr as F,br as P,Hr as a,Dr as b,Ur as c,Br as d,Gr as e,Wr as f,Er as g,Yr as h,qr as i,Zr as j,Kr as k,Jr as l,jr as m,$r as n,Qr as o,_r as u};
3
+ import{classes as x,Slot as $e}from"@dropins/tools/lib.js";import{useText as ae,Text as y}from"@dropins/tools/i18n.js";import{jsxs as u,Fragment as Oe,jsx as e}from"@dropins/tools/preact-jsx-runtime.js";import{InLineAlert as ke,Table as je,Pagination as Ge,Picker as me,Card as Me,Header as ze,Button as H,Tag as Ie,Price as qe,ActionButton as ne,PriceRange as We,Checkbox as Qe,Input as we,TextArea as Fe,RadioButton as Ze,MultiSelect as Se}from"@dropins/tools/components.js";import{events as z}from"@dropins/tools/event-bus.js";import{g as Ke,getPurchaseOrders as Je,i as xe,rejectPurchaseOrders as Ve,approvePurchaseOrders as De,a as Ue,f as ve,n as ce,PO_PERMISSIONS as Z,I as Ye,c as Xe,b as er,d as rr,currencyInfo as ar,getPurchaseOrderApprovalRuleMetadata as sr,getPurchaseOrderApprovalRule as Be,t as tr,V as fe,R as lr,v as be,e as or,updatePurchaseOrderApprovalRule as nr,createPurchaseOrderApprovalRule as cr,u as ge,h as ir,getPurchaseOrderApprovalRules as dr,deletePurchaseOrderApprovalRule as ur,cancelPurchaseOrders as pr,placeOrderForPurchaseOrder as hr,addPurchaseOrderComment as mr}from"../api.js";import{useState as A,useEffect as q,useCallback as k,useMemo as B,useReducer as br}from"@dropins/tools/preact-hooks.js";import{Fragment as Pe}from"@dropins/tools/preact.js";import*as K from"@dropins/tools/preact-compat.js";const Ur=({pageSizeConfig:r,totalCount:a=0,columns:s=[],rows:c=[],paginationConfig:t,alertMessageConfig:n={heading:"",description:"",type:"success"},loading:i=!1,className:l="",variant:o="secondary",skeletonRowCount:v=10,emptyTitle:g,header:E,footer:_,withWrapper:O,expandedRows:T})=>{var f;const P=ae({title:"PurchaseOrders.purchaseOrdersTable.noPurchaseOrders.default"}),{heading:d,description:M,type:L}=n,{currentPage:p,totalPages:R,handlePageChange:V}=t,{pageSizeOptionsList:w,onChange:I}=r,D=w==null?void 0:w.find(F=>F.selected),$=D&&D.value!==void 0?Number(D.value):10,{from:W,to:Q,total:ie}=Ke(p,$,a),j=!i&&c.length===0,se=u(Oe,{children:[d||M?e(ke,{heading:d,description:M,type:L}):null,E?e("div",{className:"purchase-orders-table__header",children:E}):null,e(je,{className:"purchase-orders-table__table-wrapper",mobileLayout:"stacked",columns:s,rowData:c,expandedRows:T,loading:i,skeletonRowCount:+v}),j&&e("div",{className:"purchase-orders-table__empty-state",role:"status","aria-live":"polite",children:e("p",{children:g||P.title})}),a>0?u("div",{className:"purchase-orders-table__pagination-wrapper",children:[e("div",{className:"purchase-orders-table__pagination-counter",children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.pagination.status",fields:{from:W,to:Q,total:ie}})}),R>1&&e(Ge,{className:x(["purchase-orders-table__pagination",["purchase-orders-table__pagination--loading",i]]),currentPage:p,totalPages:R,onChange:V}),a>0&&w.length?u("div",{className:"purchase-orders-table__pagination-page-size",children:[e(y,{id:"PurchaseOrders.purchaseOrdersTable.pagination.pageSizeLabel.start"}),e(me,{disabled:i,handleSelect:I,options:w,value:((f=w==null?void 0:w.find(F=>F.selected))==null?void 0:f.value)||""})]}):null]}):null,_?e("div",{className:"purchase-orders-table__footer",children:_}):null]});return O?e(Me,{variant:o,"data-testid":"purchaseOrdersTable",className:x(["b2b-purchase-order-purchase-orders-table",["b2b-purchase-order-purchase-orders-table--empty-state",j],l]),children:se}):e("div",{"data-testid":"purchaseOrdersTable",className:x(["b2b-purchase-order-purchase-orders-table",["b2b-purchase-order-purchase-orders-table--empty-state",j],l]),children:se})},vr=({headerText:r,divider:a=!1})=>e(ze,{title:r,divider:a,className:x(["purchase-orders-header",["purchase-orders-header--with-divider",a]]),"data-testid":"purchase-orders-header"}),Br=({loading:r,selectedCount:a,className:s,handleRejectSelected:c,handleApproveSelected:t})=>u("div",{className:x(["b2b-purchase-order-purchase-orders-table-actions",s]),children:[u("div",{children:["Selected ",a]}),u("div",{className:"b2b-purchase-order-purchase-orders-table-actions__buttons",children:[e(H,{variant:"secondary",onClick:c,disabled:r||a===0,children:"Reject selected"}),e(H,{variant:"primary",onClick:t,disabled:r||a===0,children:"Approve selected"})]})]});var _e=(r=>(r.CUSTOMER_PURCHASE_ORDERS="customerPurchaseOrders",r.COMPANY_PURCHASE_ORDERS="companyPurchaseOrders",r.CUSTOMER_APPROVAL_PURCHASE_ORDERS="customerApprovalPurchaseOrders",r))(_e||{});const Hr=[{text:"10",value:"10",selected:!1},{text:"20",value:"20",selected:!0},{text:"30",value:"30",selected:!1},{text:"50",value:"50",selected:!1}],He=[{key:"poNumber",label:"PO #"},{key:"status",label:"Status"},{key:"createdBy",label:"Created By"},{key:"action",label:"Actions"}],Ne=[{key:"ruleName",label:"Rule Name"},{key:"status",label:"Status"},{key:"createdBy",label:"Created By"},{key:"action",label:"Actions"}],fr=[{key:"checkboxView",label:""},...He],gr=20,$r=({view:r,initialPageSize:a,routePurchaseOrderDetails:s,setColumns:c,setRowsData:t,t:n,permissions:i,loadingPermissions:l})=>{const o=r===_e.COMPANY_PURCHASE_ORDERS,v=r===_e.CUSTOMER_APPROVAL_PURCHASE_ORDERS,[g,E]=A(!0),[_,O]=A([]),[T,P]=A([]),[d,M]=A(a),[L,p]=A(!0),[R,V]=A({currentPage:1,totalPages:1,totalCount:0}),[w,I]=A({heading:"",description:"",type:"success"}),[D,$]=A(new Set);q(()=>{const b=z.on("purchase-order/refresh",()=>{E(!0)},{eager:!0});return()=>{b==null||b.off()}},[]),q(()=>{if(w.heading||w.description){const b=setTimeout(()=>{I({heading:"",description:"",type:"success"})},7e3);return()=>clearTimeout(b)}},[w.heading,w.description]);const{currentPage:W,totalPages:Q,totalCount:ie}=R,j=k(b=>{V(S=>({...S,currentPage:b})),$(new Set),E(!0)},[]),se=k(b=>{const S=b.target.value;M(m=>m.map(C=>({...C,selected:C.value===S}))),j(1),$(new Set),E(!0)},[j]),f=(i==null?void 0:i.isAdmin)??!1,F=B(()=>{let b={};return o&&(b={companyPurchaseOrders:!0}),v&&(b={myApprovals:!0}),b},[o,v]);q(()=>{var m;if(!g||l)return;p(!0);const b=(m=d==null?void 0:d.find(C=>C.selected))==null?void 0:m.value,S=parseInt(b??gr.toString(),10);Je(F,S,W).then(C=>{var ue,pe;const G=(C==null?void 0:C.purchaseOrderItems)??[],X=(ue=C==null?void 0:C.pageInfo)==null?void 0:ue.currentPage,U=(pe=C==null?void 0:C.pageInfo)==null?void 0:pe.totalPages,ee=C==null?void 0:C.totalCount;V({currentPage:X>U?U||1:X,totalPages:U,totalCount:ee}),P(G)}).catch(C=>{console.error("Failed to fetch purchase orders:",C),P([])}).finally(()=>{p(!1),E(!1)})},[g,W,d,F,l]);const h=k(b=>{const S=s==null?void 0:s(b);return xe(S??"")?S:"#"},[s]),N=k(b=>{$(S=>{const m=new Set(S);return m.has(b)?m.delete(b):m.add(b),m})},[]),te=k(b=>{const S=b.target.value,m=b.target.checked;O(C=>m?[...C,S]:C.filter(G=>G!==S))},[]),J=k(b=>{const S=b.target.checked;O(()=>S?T.filter(m=>["PENDING","APPROVAL_REQUIRED"].includes(m.status)).map(m=>m.uid??""):[])},[T]),Y=k(()=>{p(!0),Ve(_).then(()=>{I({heading:n.alertHeaderReject,description:n.alertDescriptionReject,type:"success"}),O([]),z.emit("purchase-order/refresh",!0)}).catch(b=>{I({heading:n.alertHeaderError,description:n.alertDescriptionError,type:"error"}),console.error(b)}).finally(()=>{p(!1)})},[_,n]),de=k(()=>{p(!0),De(_).then(()=>{I({heading:n.alertHeaderApprove,description:n.alertDescriptionApprove,type:"success"}),O([]),z.emit("purchase-order/refresh",!0)}).catch(b=>{I({heading:n.alertHeaderError,description:n.alertDescriptionError,type:"error"}),console.error(b)}).finally(()=>{p(!1)})},[_,n]),le=B(()=>{const b=o||v?fr:He;return(c==null?void 0:c(b))??b.map(S=>S.key==="checkboxView"&&(f||v)?{key:S.key,label:e("input",{type:"checkbox",name:"selectAll",disabled:T.every(m=>!["PENDING","APPROVAL_REQUIRED"].includes(m.status)),onChange:J}),ariaLabel:n.selectAllAriaLabel}:{...S,label:n[S.key]||S.label})},[n,f,o,v,c,T,J]),oe=B(()=>{const b=T.map((m,C)=>{var ye,Ee,Re,Te,Ce,Ae;const G=m.number??"",X=D.has(C),U=`${((ye=m.createdBy)==null?void 0:ye.firstname)??""} ${((Ee=m.createdBy)==null?void 0:Ee.lastname)??""}`.trim(),ee=e(ne,{type:"button",onClick:()=>N(C),children:e(y,{id:`PurchaseOrders.purchaseOrdersTable.buttons.${X?"expandedHidden":"expandedShow"}`})}),ue=e(Ie,{className:`b2b-purchase-order-purchase-orders-table__status b2b-purchase-order-purchase-orders-table__status--${Ue(m.status)}`,children:e(y,{id:`PurchaseOrders.purchaseOrdersTable.statusOrder.${m.status.toLowerCase()}`})}),pe=u("div",{className:"b2b-purchase-order-purchase-orders-table__row-details",children:[u("div",{className:"b2b-purchase-order-purchase-orders-table__row-details-content",children:[u("p",{children:[e("span",{children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.orderNumber"})})," ",m.order.orderNumber]}),u("p",{children:[e("span",{children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.createdDate"})})," ",ve(m.createdAt)]}),u("p",{children:[e("span",{children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.updatedDate"})})," ",ve(m.updatedAt)]}),u("p",{children:[e("span",{children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.total"})})," ",e(qe,{amount:(Te=(Re=m==null?void 0:m.quote)==null?void 0:Re.grandTotal)==null?void 0:Te.value,currency:(Ae=(Ce=m==null?void 0:m.quote)==null?void 0:Ce.grandTotal)==null?void 0:Ae.currency,weight:"normal"})]})]}),e("div",{className:"b2b-purchase-order-purchase-orders-table__row-details-action",children:e(ne,{onClick:()=>{ce(h(m.uid??""))},"aria-label":`View purchase order ${G}`,children:n.actionView})})]});return{...f||v?{checkboxView:e("input",{type:"checkbox",name:G,value:m.uid,checked:_.includes(m.uid),onChange:te,disabled:!["PENDING","APPROVAL_REQUIRED"].includes(m.status)})}:{},poNumber:G,status:ue,createdBy:U,action:ee,_rowDetails:pe}});let S=b;if(t){const m=t(b);m!==void 0&&Array.isArray(m)&&(S=m)}return S},[T,t,f,v,_,te,h,n.actionView,D,N]);return{tableConfig:{columns:le,rows:oe,expandedRows:D},paginationConfig:{currentPage:W,totalPages:Q,handlePageChange:j},pageSizeConfig:{pageSizeOptionsList:d,onChange:se},totalCount:ie,loading:L,selectedOrderIds:_,handleRejectSelected:Y,handleApproveSelected:de,isAdmin:f,isRequireApprovalPOsView:v,alertMessageConfig:w}},_r=r=>{if(!r)return{isAdmin:!1,purchaseOrderEnabled:!1,role:{id:"",name:""},permissions:{purchaseOrderAll:!1,viewPurchaseOrders:!1,viewPurchaseOrdersForSubordinates:!1,viewPurchaseOrdersForCompany:!1,autoApprovePurchaseOrder:!1,superApprovePurchaseOrder:!1,viewApprovalRules:!1,manageApprovalRules:!1}};const a=r.admin===!0,s=i=>{const l=r[i];return l===!1?!1:l===!0?!0:a},c={purchaseOrderAll:s(Z.PO_ALL),viewPurchaseOrders:s(Z.VIEW_CUSTOMER),viewPurchaseOrdersForSubordinates:s(Z.VIEW_SUBORDINATES),viewPurchaseOrdersForCompany:s(Z.VIEW_COMPANY),autoApprovePurchaseOrder:s(Z.AUTO_APPROVE),superApprovePurchaseOrder:s(Z.SUPER_APPROVE),viewApprovalRules:s(Z.VIEW_RULES),manageApprovalRules:s(Z.MANAGE_RULES)},n=Object.values(r).some(i=>i===!1)?!1:Object.values(c).some(i=>i===!0);return{isAdmin:a,purchaseOrderEnabled:n,role:{id:"",name:a?"Company Administrator":""},permissions:c}},Or=()=>{const r=z.lastPayload("auth/permissions"),[a,s]=A(r);q(()=>{const n=z.on("auth/permissions",i=>{s(i)},{eager:!0});return()=>{n==null||n.off()}},[]);const c=!a;return{permissions:B(()=>_r(a),[a]),loadingPermissions:c}};function Pr(r,a){switch(a.type){case"SET_LOADING":return{...r,isLoading:a.payload};case"SET_SUBMIT_ERROR":return{...r,submitError:a.payload};case"SET_FORM_VALUES":return{...r,formValues:a.payload};case"SET_AVAILABLE_APPLIES_TO":return{...r,availableAppliesTo:a.payload};case"SET_AVAILABLE_APPROVERS":return{...r,availableRequiresApprovalFrom:a.payload};case"SET_ERRORS":return{...r,errors:a.payload};case"SET_TOUCHED":return{...r,touched:a.payload};case"SET_CURRENCIES":return{...r,currencyCodesList:a.payload};case"UPDATE_FIELD":{const{key:s,value:c}=a.payload,t=ir(r.formValues,s,c),n={...r.touched,[s]:!0};s==="roleType"&&c==="specific_roles"&&(n.appliesTo=!0);const i=be(t),l=ge(i,r.errors,n);return{...r,formValues:t,touched:n,errors:l}}case"TOUCH_FIELD":{const s=a.payload,c={...r.touched,[s]:!0},t=be(r.formValues),n=ge(t,r.errors,c);return{...r,touched:c,errors:n}}case"MARK_FIELDS_TOUCHED":{const s={...r.touched,...a.payload},c=be(r.formValues),t=ge(c,r.errors,s);return{...r,touched:s,errors:t}}default:return r}}const yr=({t:r,approvalRuleID:a,routeApprovalRulesList:s,onSubmit:c,onChange:t,permissions:n,loadingPermissions:i})=>{const[l,o]=br(Pr,Ye),v=B(()=>Xe(r),[r]),g=B(()=>er(r),[r]),E=B(()=>rr(r),[r]);q(()=>{o({type:"SET_LOADING",payload:!0}),ar().then(d=>{o({type:"SET_CURRENCIES",payload:d.availableCurrencyCodes})}).catch(d=>{console.error("Failed to fetch currencies:",d)}),sr().then(d=>{const{availableAppliesTo:M,availableRequiresApprovalFrom:L}=d;return o({type:"SET_AVAILABLE_APPLIES_TO",payload:M}),o({type:"SET_AVAILABLE_APPROVERS",payload:L}),a?Be(a):null}).then(d=>{d&&o({type:"SET_FORM_VALUES",payload:tr(d)}),o({type:"SET_SUBMIT_ERROR",payload:null})}).catch(d=>{console.error("Failed to fetch data:",d),o({type:"SET_SUBMIT_ERROR",payload:(d==null?void 0:d.message)||fe.FAILED_TO_LOAD})}).finally(()=>{o({type:"SET_LOADING",payload:!1})})},[a]);const _=k((d,M)=>{o({type:"UPDATE_FIELD",payload:{key:d,value:M}}),t&&t({...l.formValues,[d]:M})},[t,l.formValues]),O=k(d=>{o({type:"TOUCH_FIELD",payload:d}),t&&t(l.formValues)},[t,l.formValues]),T=k(async()=>{o({type:"SET_LOADING",payload:!0}),o({type:"SET_SUBMIT_ERROR",payload:null}),o({type:"MARK_FIELDS_TOUCHED",payload:lr});const d=be(l.formValues);if(Object.keys(d).length>0){o({type:"SET_ERRORS",payload:d}),o({type:"SET_LOADING",payload:!1});return}const M=or(l.formValues);try{let L;if(a?L=await nr({uid:a,...M}):L=await cr(M),!L.uid){o({type:"SET_SUBMIT_ERROR",payload:fe.FAILED_TO_CREATE}),o({type:"SET_LOADING",payload:!1});return}c&&c(l.formValues),s?ce(s()):o({type:"SET_LOADING",payload:!1})}catch(L){console.error("Failed to save approval rule:",L),o({type:"SET_SUBMIT_ERROR",payload:(L==null?void 0:L.message)||fe.FAILED_TO_CREATE}),o({type:"SET_LOADING",payload:!1})}},[l.formValues,s,a,c]),P=B(()=>!!(l.isLoading||i||!(n!=null&&n.permissions.viewApprovalRules)&&!(n!=null&&n.permissions.manageApprovalRules)),[l.isLoading,i,n]);return{availableAppliesTo:l.availableAppliesTo,availableRequiresApprovalFrom:l.availableRequiresApprovalFrom,formValues:l.formValues,ruleTypeOptions:v,conditionOperators:g,currencies:l.currencyCodesList,appliesToOptions:E,handleSetFormValues:_,handleSubmit:T,handleFieldTouch:O,errors:l.errors,touched:l.touched,isLoading:l.isLoading,formLoading:P,submitError:l.submitError}},jr=({approvalRuleID:r,routeApprovalRulesList:a})=>{const[s,c]=A(!0),[t,n]=A(null);q(()=>{r&&(c(!0),Be(r).then(o=>{o.uid&&n(o)}).catch(()=>{n(null)}).finally(()=>{c(!1)}))},[r]);const i=B(()=>{if(!t||s)return[];const{name:o,status:v,description:g,appliesToRoles:E,approverRoles:_,condition:O}=t;return[{label:e(y,{id:"PurchaseOrders.approvalRuleDetails.fields.ruleName"}),value:o},{label:e(y,{id:"PurchaseOrders.approvalRuleDetails.fields.status"}),value:e(y,{id:`PurchaseOrders.approvalRuleDetails.fields.statusView.${v.toLocaleLowerCase()}`})},{label:e(y,{id:"PurchaseOrders.approvalRuleDetails.fields.description"}),value:g},{label:e(y,{id:"PurchaseOrders.approvalRuleDetails.fields.appliesTo"}),value:e("ul",{children:E.map(T=>e("li",{children:T.name},T.id))})},{label:e(y,{id:"PurchaseOrders.approvalRuleDetails.fields.ruleType"}),value:e(y,{id:`PurchaseOrders.approvalRuleDetails.fields.condition.attribute.${O.attribute.toLocaleLowerCase()}`})},{label:u(Oe,{children:[e(y,{id:`PurchaseOrders.approvalRuleDetails.fields.condition.attribute.${O.attribute.toLocaleLowerCase()}`}),":"]}),value:u("div",{children:[e(y,{id:`PurchaseOrders.approvalRuleDetails.fields.condition.operator.${O.operator.toLocaleLowerCase()}`}),e(y,{id:"PurchaseOrders.approvalRuleDetails.fields.amount.label"}),e(We,{amount:O.amount.value,currency:O.amount.currency})]})},{label:e(y,{id:"PurchaseOrders.approvalRuleDetails.fields.requiresApprovalFrom"}),value:e("ul",{children:_.map(T=>e("li",{children:T.name},T.id))})}]},[t,s]);return{handleRedirectToList:()=>{ce((a==null?void 0:a())??"")},loading:s,formValues:i}},Er=20,Gr=({routeApprovalRuleDetails:r,routeCreateApprovalRule:a,routeEditApprovalRule:s,setColumns:c,setRowsData:t,initialPageSize:n,permissions:i,loadingPermissions:l,t:o})=>{const[v,g]=A([]),[E,_]=A(!0),[O,T]=A(!0),[P,d]=A(n),[M,L]=A({currentPage:1,totalPages:1,totalCount:0}),[p,R]=A(new Set);q(()=>{const f=z.on("purchase-order/refresh",()=>{_(!0)},{eager:!0});return()=>{f==null||f.off()}},[]);const{currentPage:V,totalPages:w,totalCount:I}=M,D=k(f=>{L(F=>({...F,currentPage:f})),R(new Set),_(!0)},[]),$=k(f=>{const F=f.target.value;d(h=>h.map(N=>({...N,selected:N.value===F}))),D(1),R(new Set),_(!0)},[D]),W=k(f=>{R(F=>{const h=new Set(F);return h.has(f)?h.delete(f):h.add(f),h})},[]);q(()=>{var h;if(!E||l)return;T(!0);const f=(h=P==null?void 0:P.find(N=>N.selected))==null?void 0:h.value,F=parseInt(f??Er.toString(),10);dr(V,F).then(N=>{var le,oe;const te=(N==null?void 0:N.items)??[],J=(le=N==null?void 0:N.pageInfo)==null?void 0:le.currentPage,Y=(oe=N==null?void 0:N.pageInfo)==null?void 0:oe.totalPages,de=N==null?void 0:N.totalCount;L({currentPage:J>Y?Y||1:J,totalPages:Y,totalCount:de}),g(te)}).catch(N=>{console.error("Error fetching approval rules:",N),g([])}).finally(()=>{T(!1),_(!1)})},[E,V,P,w,l]);const Q=k((f,F)=>{let h="";switch(F){case"new":{h=a==null?void 0:a(f);break}case"edit":{h=s==null?void 0:s(f);break}case"view":{h=r==null?void 0:r(f);break}}return xe(h??"")?h:"#"},[a,s,r]),ie=B(()=>(c==null?void 0:c(Ne))??Ne.map(f=>({...f,label:o[f.key]||f.label})),[c,o]),j=k((f,F)=>{f.preventDefault(),T(!0),ur(F).then(()=>{z.emit("purchase-order/refresh",!0)}).finally(()=>{R(new Set)})},[]),se=B(()=>{const f=v==null?void 0:v.map((h,N)=>{var b,S,m,C,G,X;const{isAdmin:te,permissions:{manageApprovalRules:J}}=i,Y=p.has(N),de=te||J,le=e(ne,{onClick:()=>W(N),children:e(y,{id:`PurchaseOrders.purchaseOrdersTable.buttons.${Y?"expandedHidden":"expandedShow"}`})}),oe=u("div",{className:"b2b-purchase-order-purchase-orders-table__row-details",children:[u("div",{className:"b2b-purchase-order-purchase-orders-table__row-details-content",children:[u("p",{children:[e("span",{children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.ruleType"})})," ",e(y,{id:`PurchaseOrders.purchaseOrdersTable.ruleTypes.${(S=(b=h.condition)==null?void 0:b.attribute)==null?void 0:S.toLocaleLowerCase()}`})]}),e("p",{children:e("span",{children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.appliesTo"})})}),e("ul",{children:((m=h==null?void 0:h.appliesToRoles)==null?void 0:m.length)<=0?e("li",{children:o.appliesToAll}):(C=h==null?void 0:h.appliesToRoles)==null?void 0:C.map((U,ee)=>e("li",{children:U.name},ee))}),e("p",{children:e("span",{children:e(y,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.approver"})})}),e("ul",{children:(G=h==null?void 0:h.approverRoles)==null?void 0:G.map((U,ee)=>e("li",{children:U==null?void 0:U.name},ee))})]}),de?e("div",{className:"b2b-purchase-order-purchase-orders-table__row-details-action",children:u("div",{className:"b2b-purchase-order-purchase-orders-table__row-details-action-inner-wrapper",children:[e(ne,{onClick:()=>{ce(Q(h.uid,"edit"))},"aria-label":o.ariaLabelEditRule.replace("{{ruleName}}",h.name),"data-testid":`edit-approval-rule-${h.uid}`,children:o.actionEdit}),e(ne,{onClick:U=>j(U,h.uid),"aria-label":o.ariaLabelDeleteRule.replace("{{ruleName}}",h.name),"data-testid":`delete-approval-rule-${h.uid}`,children:o.actionDelete})]})}):e("div",{className:"b2b-purchase-order-purchase-orders-table__row-details-action",children:e(ne,{onClick:()=>{ce(Q(h.uid,"view"))},"aria-label":o.ariaLabelViewRule.replace("{{ruleName}}",h.name),"data-testid":`view-approval-rule-${h.uid}`,children:o.actionView})})]});return{ruleName:h.name,status:e(Ie,{className:`b2b-purchase-order-purchase-orders-table__status b2b-purchase-order-purchase-orders-table__status--${Ue(h.status)}`,children:e(y,{id:`PurchaseOrders.purchaseOrdersTable.rulesStatus.${(X=h.status)==null?void 0:X.toLocaleLowerCase()}`})}),createdBy:h.createdBy,action:le,_rowDetails:oe}});let F=f;if(t){const h=t(f);h!==void 0&&Array.isArray(h)&&(F=h)}return F},[v,p,i,t,o,Q,j,W]);return{tableConfig:{columns:ie,rows:se,expandedRows:p},paginationConfig:{currentPage:V,totalPages:w,handlePageChange:D},pageSizeConfig:{pageSizeOptionsList:P,onChange:$},totalCount:I,loading:O,handleCreateUrl:Q}},Rr=()=>{const[r,a]=A(!0),[s,c]=A(null);return q(()=>{const t=z.on("purchase-order/data",n=>{n!=null&&n.uid&&c(n),a(!1)},{eager:!0});return()=>{t==null||t.off()}},[]),{poDataLoading:r,purchaseOrderData:s}},zr=()=>{const{poDataLoading:r,purchaseOrderData:a}=Rr(),s=ae({approvalSuccessMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.success.approval",rejectSuccessMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.success.reject",cancelSuccessMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.success.cancel",placeOrderSuccessMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.success.placeOrder",approvalErrorMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.errors.approval",rejectErrorMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.errors.reject",cancelErrorMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.errors.cancel",placeOrderErrorMessage:"PurchaseOrders.purchaseOrderStatus.alertMessages.errors.placeOrder"}),c=(a==null?void 0:a.uid)??null,t=(a==null?void 0:a.status)??"PENDING",n=(a==null?void 0:a.availableActions)??[],[i,l]=A("success"),[o,v]=A(""),[g,E]=A(!1),[_,O]=A(!0),T=()=>{O(!0)},P=k((V,w)=>{let I="";if(V){switch(w){case"APPROVE":I=s.approvalSuccessMessage;break;case"REJECT":I=s.rejectSuccessMessage;break;case"CANCEL":I=s.cancelSuccessMessage;break;case"PLACE_ORDER":I=s.placeOrderSuccessMessage;break}l("success")}else{switch(w){case"APPROVE":I=s.approvalErrorMessage;break;case"REJECT":I=s.rejectErrorMessage;break;case"CANCEL":I=s.cancelErrorMessage;break;case"PLACE_ORDER":I=s.placeOrderErrorMessage;break}l("error")}v(I),O(!1)},[s]),d=k(async(V,w)=>{if(c){E(!0);try{await V(c),P(!0,w)}catch{P(!1,w)}finally{E(!1),z.emit("purchase-order/refresh",!0)}}},[c,P]),M=k(()=>d(De,"APPROVE"),[d]),L=k(()=>d(Ve,"REJECT"),[d]),p=k(()=>d(pr,"CANCEL"),[d]),R=k(()=>d(hr,"PLACE_ORDER"),[d]);return{poId:c,status:t,availableActions:n,alertType:i,loading:g,poDataLoading:r,isDismissed:_,alertMessage:o,handleOnDismiss:T,handleApprove:M,handleReject:L,handleCancel:p,handlePlaceOrder:R}},he=({touched:r=!1,error:a,className:s="error-message"})=>!r||!a?null:e("span",{className:s,children:e(y,{id:a})}),Tr=({availableRequiresApprovalFrom:r,conditionOperators:a,availableAppliesTo:s,appliesToOptions:c,ruleTypeOptions:t,currencies:n,formValues:i,errors:l,touched:o,isLoading:v,permissions:g,handleSubmit:E,handleFieldTouch:_,handleSetFormValues:O,routeApprovalRulesList:T,t:P})=>{var M,L;const d=v||!((M=g==null?void 0:g.permissions)!=null&&M.viewApprovalRules);return u("form",{"data-testid":"approval-rule-form",children:[e(Qe,{"data-testid":"status-toggle",className:"b2b-purchase-order-approval-rule-form__toggle",disabled:d,name:"status",label:P.formEnabled,checked:i.status==="ENABLED",onChange:p=>{const R=p.target.checked;O("status",R)}}),u("div",{"data-testid":"name-input-container",children:[e(we,{"data-testid":"name-input",className:"b2b-purchase-order-approval-rule-form__name-input",disabled:d,name:"name",floatingLabel:P.inputRuleNameFloatingLabel,placeholder:P.inputRuleNamePlaceholder,value:i.name,error:!!(o.name&&l.name),onChange:p=>{const R=p.target.value;O("name",R)},onBlur:()=>_("name")}),e(he,{touched:o.name,error:l.name})]}),e(Fe,{"data-testid":"description-textarea",className:"b2b-purchase-order-approval-rule-form__description",disabled:d,name:"description",label:P.textAreaDescriptionLabel,value:i.description,onChange:p=>{const R=p.target.value;O("description",R)}}),u("div",{"data-testid":"applies-to-section",className:"b2b-purchase-order-approval-rule-form__applies-to",children:[e("span",{className:"b2b-purchase-order-approval-rule-form__applies-to-title",children:P.titleAppliesTo}),c.map((p,R)=>e(Ze,{"data-testid":`applies-to-radio-${R}`,disabled:d,name:"radio-group",value:p.value,label:p.text,checked:i.roleType===p.value,onChange:V=>{const w=V.target.value;O("roleType",w)}},p.value)),i.roleType==="specific_roles"?u("div",{"data-testid":"applies-to-multiselect-container",className:"b2b-purchase-order-approval-rule-form__applies-to-multiselect",children:[e(Se,{"data-testid":"applies-to-multiselect",disabled:d,name:"appliesTo",value:[...i.appliesTo],options:s.map(p=>({value:p.id,label:p.name})),error:!!(o.appliesTo&&l.appliesTo),onChange:p=>{O("appliesTo",p),o.appliesTo||_("appliesTo")}}),e(he,{touched:o.appliesTo,error:l.appliesTo})]}):null]}),u("div",{"data-testid":"rule-type-section",className:"b2b-purchase-order-approval-rule-form__rule-type",children:[e("span",{className:"b2b-purchase-order-approval-rule-form__rule-type-title",children:P.titleRuleType}),e(me,{"data-testid":"rule-type-picker",className:"b2b-purchase-order-approval-rule-form__rule-type-picker",disabled:d,name:"ruleType",value:i.condition.attribute,options:t,handleSelect:p=>{const R=p.target.value;O("ruleType",R)}})]}),u("div",{"data-testid":"rule-condition-section",className:"b2b-purchase-order-approval-rule-form__rule-condition",children:[e("span",{className:"b2b-purchase-order-approval-rule-form__rule-condition-title",children:(L=t.find(p=>p.value===i.condition.attribute))==null?void 0:L.text}),u("div",{className:x(["b2b-purchase-order-approval-rule-form__rule-condition-container",["b2b-purchase-order-approval-rule-form__rule-condition-container--error",!!l.ruleValue&&o.ruleValue]]),children:[e(me,{"data-testid":"rule-condition-picker",className:"b2b-purchase-order-approval-rule-form__rule-condition-picker",disabled:d,name:"ruleCondition",value:i.condition.operator,options:a,handleSelect:p=>{const R=p.target.value;O("ruleCondition",R)}}),u("div",{"data-testid":"rule-value-container",children:[e(we,{"data-testid":"rule-value-input",className:"b2b-purchase-order-approval-rule-form__rule-value-input",disabled:d,name:"ruleValue",floatingLabel:i.condition.attribute==="NUMBER_OF_SKUS"?P.inputQuantityFloatingLabel:P.inputAmountFloatingLabel,placeholder:i.condition.attribute==="NUMBER_OF_SKUS"?P.inputQuantityPlaceholder:P.inputAmountPlaceholder,value:i.condition.attribute==="NUMBER_OF_SKUS"?i.condition.quantity:i.condition.amount.value,error:!!(o.ruleValue&&l.ruleValue),onChange:p=>{const R=p.target.value;O("ruleValue",R)},onBlur:()=>_("ruleValue")}),e(he,{touched:o.ruleValue,error:l.ruleValue})]}),i.condition.attribute!=="NUMBER_OF_SKUS"?e(me,{"data-testid":"rule-condition-currency-picker",className:"b2b-purchase-order-approval-rule-form__rule-condition-currency-picker",disabled:d,name:"ruleConditionCurrency",value:i.condition.amount.currency,options:n,handleSelect:p=>{const R=p.target.value;O("ruleConditionCurrency",R)}}):null]})]}),u("div",{"data-testid":"approval-role-section",className:"b2b-purchase-order-approval-rule-form__approval-role",children:[e("span",{className:"b2b-purchase-order-approval-rule-form__approval-role-title",children:P.titleRequiresApprovalRole}),u("div",{className:"b2b-purchase-order-approval-rule-form__approval-role-multiselect",children:[e(Se,{"data-testid":"approvers-multiselect",disabled:d,name:"approvers",value:[...i.approvers],options:r.map(p=>({value:p.id,label:p.name})),error:!!(o.approvers&&l.approvers),onChange:p=>{O("approvers",p),o.approvers||_("approvers")}}),e(he,{touched:o.approvers,error:l.approvers})]})]}),u("div",{"data-testid":"form-buttons",className:"b2b-purchase-order-approval-rule-form__buttons",children:[e(H,{"data-testid":"save-button",type:"button",disabled:d,onClick:E,children:P.buttonSave}),e(H,{"data-testid":"cancel-button",disabled:v,variant:"secondary",type:"button",onClick:()=>{ce((T==null?void 0:T())??"")},children:P.buttonCancel})]})]})},qr=({className:r,approvalRuleID:a,withHeader:s,withWrapper:c,routeApprovalRulesList:t,onSubmit:n,onChange:i})=>{const l=ae({headerText:"PurchaseOrders.approvalRuleForm.headerText",titleAppliesTo:"PurchaseOrders.approvalRuleForm.titleAppliesTo",titleRuleType:"PurchaseOrders.approvalRuleForm.titleRuleType",titleRequiresApprovalRole:"PurchaseOrders.approvalRuleForm.titleRequiresApprovalRole",formEnabled:"PurchaseOrders.approvalRuleForm.fields.enabled",formDisabled:"PurchaseOrders.approvalRuleForm.fields.disabled",inputRuleNameFloatingLabel:"PurchaseOrders.approvalRuleForm.fields.inputRuleName.floatingLabel",inputRuleNamePlaceholder:"PurchaseOrders.approvalRuleForm.fields.inputRuleName.placeholder",textAreaDescriptionLabel:"PurchaseOrders.approvalRuleForm.fields.textAreaDescription.label",appliesToAllUsers:"PurchaseOrders.approvalRuleForm.fields.appliesTo.allUsers",appliesToSpecificRoles:"PurchaseOrders.approvalRuleForm.fields.appliesTo.specificRoles",ruleTypeGrandTotal:"PurchaseOrders.approvalRuleForm.fields.ruleTypeOptions.grandTotal",ruleTypeShippingInclTax:"PurchaseOrders.approvalRuleForm.fields.ruleTypeOptions.shippingInclTax",ruleTypeNumberOfSkus:"PurchaseOrders.approvalRuleForm.fields.ruleTypeOptions.numberOfSkus",conditionOperatorMoreThan:"PurchaseOrders.approvalRuleForm.fields.conditionOperators.moreThan",conditionOperatorLessThan:"PurchaseOrders.approvalRuleForm.fields.conditionOperators.lessThan",conditionOperatorMoreThanOrEqualTo:"PurchaseOrders.approvalRuleForm.fields.conditionOperators.moreThanOrEqualTo",conditionOperatorLessThanOrEqualTo:"PurchaseOrders.approvalRuleForm.fields.conditionOperators.lessThanOrEqualTo",inputQuantityFloatingLabel:"PurchaseOrders.approvalRuleForm.fields.inputQuantity.floatingLabel",inputQuantityPlaceholder:"PurchaseOrders.approvalRuleForm.fields.inputQuantity.placeholder",inputAmountFloatingLabel:"PurchaseOrders.approvalRuleForm.fields.inputAmount.floatingLabel",inputAmountPlaceholder:"PurchaseOrders.approvalRuleForm.fields.inputAmount.placeholder",buttonCancel:"PurchaseOrders.approvalRuleForm.fields.buttons.cancel",buttonSave:"PurchaseOrders.approvalRuleForm.fields.buttons.save"}),{permissions:o,loadingPermissions:v}=Or(),{availableRequiresApprovalFrom:g,conditionOperators:E,availableAppliesTo:_,appliesToOptions:O,ruleTypeOptions:T,currencies:P,formValues:d,errors:M,touched:L,isLoading:p,submitError:R,formLoading:V,handleSubmit:w,handleFieldTouch:I,handleSetFormValues:D}=yr({t:l,approvalRuleID:a,loadingPermissions:v,permissions:o,routeApprovalRulesList:t,onSubmit:n,onChange:i});if(V)return e(Ar,{testId:"b2b-purchase-order-approval-rule-form",className:x(["b2b-purchase-order-approval-rule-form",r])});const $=u(Oe,{children:[!!R&&e(ke,{heading:"",description:R}),e(Tr,{availableRequiresApprovalFrom:g,conditionOperators:E,availableAppliesTo:_,appliesToOptions:O,ruleTypeOptions:T,currencies:P,formValues:d,errors:M,touched:L,isLoading:p,handleSubmit:w,handleFieldTouch:I,handleSetFormValues:D,permissions:o,routeApprovalRulesList:t,t:l})]});return u("div",{"data-testid":"b2b-purchase-order-approval-rule-form",className:x(["b2b-purchase-order-approval-rule-form",r]),children:[s?e(vr,{headerText:l.headerText}):null,c?e(Me,{variant:"secondary",children:$}):$]})},Wr=({className:r,purchaseOrderNumber:a,routePurchaseOrderDetails:s,...c})=>{const t=ae({title:"PurchaseOrders.purchaseOrderConfirmation.title",messagePrefix:"PurchaseOrders.purchaseOrderConfirmation.messagePrefix",messageSuffix:"PurchaseOrders.purchaseOrderConfirmation.messageSuffix"});return u("div",{...c,className:x(["purchase-orders-confirmation-content",r]),children:[e("h2",{className:"purchase-orders-confirmation-content__title",children:t.title}),u("p",{className:"purchase-orders-confirmation-content__message",children:[t.messagePrefix," ",u("a",{className:"purchase-orders-confirmation-content__link",href:s()??"",children:["#",a]}),". ",t.messageSuffix]})]})},Qr=({slots:r,t:a,loading:s,children:c,availableActions:t=[],handleApprove:n,handleReject:i,handleCancel:l,handlePlaceOrder:o})=>{const v=t.map(g=>{switch(g){case"APPROVE":return e(H,{variant:"secondary",disabled:s,type:"button",onClick:n,children:a.approveButtonText},g);case"PLACE_ORDER":return e(H,{variant:"secondary",disabled:s,type:"button",onClick:o,children:a.placeOrderButtonText},g);case"REJECT":return e(H,{variant:"secondary",disabled:s,type:"button",onClick:i,children:a.rejectButtonText},g);case"CANCEL":return e(H,{variant:"secondary",disabled:s,type:"button",onClick:l,children:a.cancelButtonText},g);default:return null}});return u("div",{className:x(["b2b-purchase-order-status-content"]),children:[e("div",{className:"b2b-purchase-order-status-content__message",children:a.statusMessageText}),c,e("div",{className:"b2b-purchase-order-status-content__actions",children:e($e,{"data-testid":"PurchaseOrderActions",name:"PurchaseOrderActions",slot:r==null?void 0:r.PurchaseOrderActions,context:{loading:s,availableActions:t,handleApprove:n,handleReject:i,handleCancel:l,handlePlaceOrder:o},children:v})})]})},Zr=({formValues:r})=>e("div",{className:x(["b2b-purchase-order-approval-rule-details-content"]),children:r.map((a,s)=>u("div",{className:x(["b2b-purchase-order-approval-rule-details-content__item"]),children:[e("span",{className:"b2b-purchase-order-approval-rule-details-content__label",children:a.label}),e("div",{className:"b2b-purchase-order-approval-rule-details-content__value",children:a.value})]},s))}),Le=1,re=({className:r,fullWidth:a=!1,lines:s=Le,size:c="small",variant:t="row",children:n=null,multilineGap:i="medium",...l})=>{const o=[[`dropin-skeleton-row__${t}`,t],[`dropin-skeleton-row__${t}-${c}`,t&&c]];if(!n&&t==="empty")return e("div",{className:x(["dropin-skeleton-row dropin-skeleton-row__empty",r])});if(n){const g=n.trim();return e("div",{...l,class:x(["dropin-skeleton-row",["dropin-skeleton-row--full",a],r]),dangerouslySetInnerHTML:{__html:g}})}return s>Le===!1?e("div",{...l,class:x(["dropin-skeleton-row",["dropin-skeleton-row--full",a],"dropin-skeleton--row__content",...o,r])}):e("div",{...l,style:{"--multiline-gap-spacing":`var(--spacing-${i})`},class:x(["dropin-skeleton-row--multiline",["dropin-skeleton-row--full",a],r]),children:Array.from({length:s}).map((g,E)=>e("div",{class:x(["dropin-skeleton-row",["dropin-skeleton-row--full",a],"dropin-skeleton--row__content",...o])},E))})},Cr=({className:r,children:a,rowGap:s="medium",...c})=>e("div",{style:{"--row-gap-spacing":`var(--spacing-${s})`},...c,className:x(["dropin-skeleton",r]),role:"status","aria-label":"Loading...",children:a}),Ar=({testId:r="",className:a=""})=>e("div",{"data-testid":r,className:x(["b2b-purchase-order-form-loader",a]),children:u(Cr,{rowGap:"medium","data-testid":"form-loader-root",children:[e(re,{size:"small",variant:"row",fullWidth:!0,lines:1,style:{maxWidth:300},"data-testid":"form-loader-status-toggle"}),e(re,{size:"medium",variant:"row",fullWidth:!0,lines:1,"data-testid":"form-loader-name"}),e(re,{size:"medium",variant:"row",fullWidth:!0,lines:4,"data-testid":"form-loader-description"}),u("div",{className:"approval-rule-form-loader__section","data-testid":"form-loader-approval-role-section",children:[e(re,{size:"small",variant:"row",fullWidth:!0,lines:1,"data-testid":"form-loader-approval-role-label"}),e(re,{size:"small",variant:"row",fullWidth:!0,lines:1,"data-testid":"form-loader-approval-role-input"})]}),u("div",{className:"approval-rule-form-loader__buttons","data-testid":"form-loader-buttons",children:[e(re,{size:"medium",variant:"row",fullWidth:!0,lines:1,style:{width:120},"data-testid":"form-loader-button-save"}),e(re,{size:"medium",variant:"row",fullWidth:!0,lines:1,style:{width:120},"data-testid":"form-loader-button-cancel"})]})]})}),Kr=({commentsList:r=[],visibleRecordsLimit:a=5})=>{const[s,c]=A(a),t=r.length>s,n=r.length<=a,i=ae({showMoreLabel:"PurchaseOrders.comments.view.ariaLabel.showMore",showLessLabel:"PurchaseOrders.comments.view.ariaLabel.showLess"});return r.length?u("div",{className:"b2b-purchase-order-comment-list-content",children:[e("ul",{className:"b2b-purchase-order-comment-list-content__list",children:r.slice(0,s).map((l,o)=>{var g,E;const v=Math.min(s,r.length);return u(Pe,{children:[u("li",{className:"b2b-purchase-order-comment-list-content__item",children:[u("div",{className:"b2b-purchase-order-comment-list-content__title",children:[ve(l.createdAt),(g=l.author)!=null&&g.firstname&&((E=l.author)!=null&&E.lastname)?` (${l.author.firstname} ${l.author.lastname})`:""]}),e("div",{className:"b2b-purchase-order-comment-list-content__description",children:l.text})]}),o<v-1&&e("hr",{className:"b2b-purchase-order-comment-list-content__divider"})]},l.uid)})}),!n&&e("div",{className:"b2b-purchase-order-comment-list-content__actions",children:e(H,{variant:"secondary","aria-expanded":!t,"aria-label":t?i.showMoreLabel:i.showLessLabel,onClick:()=>{c(t?r.length:a)},children:e(y,{id:`PurchaseOrders.comments.view.buttons.${t?"viewMore":"viewLess"}`})})})]}):e("div",{className:"b2b-purchase-order-comment-list-content",children:e(y,{id:"PurchaseOrders.comments.view.emptyText"})})},Jr=({t:r,purchaseOrderData:a})=>{const[s,c]=A(!1),[t,n]=A(""),[i,l]=A(""),o=B(()=>!t.trim().length||!(a!=null&&a.uid)||s,[t,a,s]),v=k(E=>{const _=E.target.value;n(_),i&&l("")},[i]),g=k(()=>{const E=(a==null?void 0:a.uid)??"";!E||!t.trim().length||(c(!0),mr(E,t).then(_=>{_&&(a!=null&&a.uid)&&(z.emit("purchase-order/refresh",!0),n(""))}).catch(()=>{l(r.errorMessage||"Failed to add comment. Please try again.")}).finally(()=>{c(!1)}))},[a,t,r]);return u("div",{className:x(["b2b-purchase-order-comment-form-content"]),children:[e(Fe,{errorMessage:i,disabled:s,value:t,label:r.textAreaPlaceholder,onChange:v}),e(H,{variant:"primary",disabled:o,onClick:g,children:r.buttonText})]})},wr=r=>K.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...r},K.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M0.75 12C0.75 5.78421 5.78421 0.75 12 0.75C18.2158 0.75 23.25 5.78421 23.25 12C23.25 18.2158 18.2158 23.25 12 23.25C5.78421 23.25 0.75 18.2158 0.75 12Z",stroke:"currentColor"}),K.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M6.75 12.762L10.2385 15.75L17.25 9",stroke:"currentColor"})),Sr=r=>K.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...r},K.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 12C0 5.37931 5.37931 0 12 0C18.6207 0 24 5.37931 24 12C24 18.6207 18.6207 24 12 24C5.37931 24 0 18.6207 0 12ZM11.8885 5.06101C11.1405 5.06101 10.5357 5.66579 10.5357 6.4138V6.57295C10.5835 7.27321 11.1882 7.81433 11.8885 7.76658H12.0795C12.7797 7.70292 13.289 7.09815 13.2413 6.4138C13.2413 5.66579 12.6365 5.06101 11.8885 5.06101ZM13.1935 16.8223H14.1007C14.2599 16.8223 14.4031 16.9655 14.4031 17.1247V17.7294C14.4031 17.9045 14.2599 18.0318 14.1007 18.0318H9.8832C9.70813 18.0318 9.58081 17.8886 9.58081 17.7294V17.1247C9.58081 16.9496 9.72405 16.8223 9.8832 16.8223H10.7904V10.7905H9.8832C9.70813 10.7905 9.58081 10.6472 9.58081 10.4881V9.88329C9.58081 9.70823 9.72405 9.58091 9.8832 9.58091H12.5888C12.923 9.58091 13.1935 9.85146 13.1935 10.1857V16.8223Z",fill:"currentColor"})),Nr=r=>K.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...r},K.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M0.75 12C0.75 5.78421 5.78421 0.75 12 0.75C18.2158 0.75 23.25 5.78421 23.25 12C23.25 18.2158 18.2158 23.25 12 23.25C5.78421 23.25 0.75 18.2158 0.75 12Z",stroke:"currentColor"}),K.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M11.75 5.88423V4.75H12.25V5.88423L12.0485 13.0713H11.9515L11.75 5.88423ZM11.7994 18.25V16.9868H12.2253V18.25H11.7994Z",stroke:"currentColor"})),Yr=({approvalFlow:r=[]})=>{const a=ae({pending:"PurchaseOrders.approvalFlow.ariaLabels.icons.pending",approved:"PurchaseOrders.approvalFlow.ariaLabels.icons.approved",rejected:"PurchaseOrders.approvalFlow.ariaLabels.icons.rejected"});if(!(r!=null&&r.length))return e("div",{className:"b2b-purchase-order-approval-flow-content",children:e(y,{id:"PurchaseOrders.approvalFlow.emptyText"})});const s=c=>{switch(c){case"PENDING":return e(Sr,{className:"b2b-purchase-order-approval-flow-content__icon--pending","aria-label":a.pending,role:"img"});case"APPROVED":return e(wr,{className:"b2b-purchase-order-approval-flow-content__icon--approved","aria-label":a.approved,role:"img"});case"REJECTED":return e(Nr,{className:"b2b-purchase-order-approval-flow-content__icon--rejected","aria-label":a.rejected,role:"img"});default:return null}};return e("div",{className:x(["b2b-purchase-order-approval-flow-content"]),children:e("ul",{className:"b2b-purchase-order-approval-flow-content__list",children:r.map((c,t)=>u(Pe,{children:[u("li",{className:"b2b-purchase-order-approval-flow-content__item",children:[e("div",{className:"b2b-purchase-order-approval-flow-content__title",children:c.ruleName}),c.events.map((n,i)=>u("div",{className:"b2b-purchase-order-approval-flow-content__description",children:[s(n.status),n.message]},i))]}),t<r.length-1&&e("hr",{className:"b2b-purchase-order-approval-flow-content__divider"})]},t))})})},Xr=({historyLogRecords:r=[],visibleRecordsLimit:a})=>{const[s,c]=A(a),t=r.length>s,n=r.length<=a,i=ae({showMoreLabel:"PurchaseOrders.historyLog.ariaLabel.showMore",showLessLabel:"PurchaseOrders.historyLog.ariaLabel.showLess"});return r.length?u("div",{className:"b2b-purchase-order-history-log-content",children:[e("ul",{className:"b2b-purchase-order-history-log-content__list",role:"list",children:r.slice(0,s).map((l,o)=>{const v=Math.min(s,r.length);return u(Pe,{children:[u("li",{className:"b2b-purchase-order-history-log-content__item",children:[e("div",{className:"b2b-purchase-order-history-log-content__title",children:e(y,{id:`PurchaseOrders.historyLog.status.${l.activity}`,fields:{date:ve(l.createdAt)}})}),e("div",{className:"b2b-purchase-order-history-log-content__description",children:l.message})]}),o<v-1&&e("hr",{className:"b2b-purchase-order-history-log-content__divider"})]},l.uid)})}),!n&&e("div",{className:"b2b-purchase-order-history-log-content__actions",children:e(H,{variant:"secondary","aria-expanded":!t,"aria-label":t?i.showMoreLabel:i.showLessLabel,onClick:()=>{c(t?r.length:a)},children:e(y,{id:`PurchaseOrders.historyLog.buttons.${t?"viewMore":"viewLess"}`})})})]}):e("div",{className:"b2b-purchase-order-history-log-content",children:e(y,{id:"PurchaseOrders.historyLog.emptyText"})})};export{qr as A,_e as E,Ar as F,vr as P,$r as a,Ur as b,Br as c,Hr as d,zr as e,Qr as f,Rr as g,Xr as h,Wr as i,Kr as j,Jr as k,Yr as l,Gr as m,jr as n,Zr as o,Or as u};
4
4
  //# sourceMappingURL=components.js.map