@dropins/storefront-purchase-order 1.1.1 → 1.2.0-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 (76) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/api.js +784 -6
  3. package/api.js.map +1 -1
  4. package/chunks/components.js +4 -0
  5. package/chunks/components.js.map +1 -0
  6. package/containers/ApprovalRuleDetails.js +1 -1
  7. package/containers/ApprovalRuleDetails.js.map +1 -1
  8. package/containers/ApprovalRuleForm.js +1 -1
  9. package/containers/ApprovalRuleForm.js.map +1 -1
  10. package/containers/ApprovalRulesList.js +1 -1
  11. package/containers/ApprovalRulesList.js.map +1 -1
  12. package/containers/CompanyPurchaseOrders.js +1 -1
  13. package/containers/CompanyPurchaseOrders.js.map +1 -1
  14. package/containers/CustomerPurchaseOrders.js +1 -1
  15. package/containers/CustomerPurchaseOrders.js.map +1 -1
  16. package/containers/PurchaseOrderApprovalFlow.js +1 -1
  17. package/containers/PurchaseOrderApprovalFlow.js.map +1 -1
  18. package/containers/PurchaseOrderCommentForm.js +1 -1
  19. package/containers/PurchaseOrderCommentForm.js.map +1 -1
  20. package/containers/PurchaseOrderCommentsList.js +1 -1
  21. package/containers/PurchaseOrderCommentsList.js.map +1 -1
  22. package/containers/PurchaseOrderConfirmation.js +1 -1
  23. package/containers/PurchaseOrderConfirmation.js.map +1 -1
  24. package/containers/PurchaseOrderHistoryLog.js +1 -1
  25. package/containers/PurchaseOrderHistoryLog.js.map +1 -1
  26. package/containers/PurchaseOrderStatus.js +1 -1
  27. package/containers/PurchaseOrderStatus.js.map +1 -1
  28. package/containers/RequireApprovalPurchaseOrders.js +1 -1
  29. package/containers/RequireApprovalPurchaseOrders.js.map +1 -1
  30. package/package.json +1 -1
  31. package/render.js +2 -3
  32. package/render.js.map +1 -1
  33. package/chunks/FormLoader.js +0 -4
  34. package/chunks/FormLoader.js.map +0 -1
  35. package/chunks/PurchaseOrderHistoryLogContent.js +0 -4
  36. package/chunks/PurchaseOrderHistoryLogContent.js.map +0 -1
  37. package/chunks/PurchaseOrdersHeader.js +0 -4
  38. package/chunks/PurchaseOrdersHeader.js.map +0 -1
  39. package/chunks/PurchaseOrdersTableActions.js +0 -4
  40. package/chunks/PurchaseOrdersTableActions.js.map +0 -1
  41. package/chunks/addPurchaseOrderComment.js +0 -36
  42. package/chunks/addPurchaseOrderComment.js.map +0 -1
  43. package/chunks/case-converter.js +0 -4
  44. package/chunks/case-converter.js.map +0 -1
  45. package/chunks/currencyInfo.js +0 -124
  46. package/chunks/currencyInfo.js.map +0 -1
  47. package/chunks/fetch-error.js +0 -4
  48. package/chunks/fetch-error.js.map +0 -1
  49. package/chunks/formatDate.js +0 -4
  50. package/chunks/formatDate.js.map +0 -1
  51. package/chunks/getPurchaseOrderApprovalRule.js +0 -45
  52. package/chunks/getPurchaseOrderApprovalRule.js.map +0 -1
  53. package/chunks/getPurchaseOrderApprovalRules.js +0 -75
  54. package/chunks/getPurchaseOrderApprovalRules.js.map +0 -1
  55. package/chunks/getPurchaseOrders.js +0 -29
  56. package/chunks/getPurchaseOrders.js.map +0 -1
  57. package/chunks/initialize.js +0 -13
  58. package/chunks/initialize.js.map +0 -1
  59. package/chunks/pageSize.config.js +0 -4
  60. package/chunks/pageSize.config.js.map +0 -1
  61. package/chunks/permissions.js +0 -4
  62. package/chunks/permissions.js.map +0 -1
  63. package/chunks/placeOrderForPurchaseOrder.js +0 -39
  64. package/chunks/placeOrderForPurchaseOrder.js.map +0 -1
  65. package/chunks/rejectPurchaseOrders.js +0 -30
  66. package/chunks/rejectPurchaseOrders.js.map +0 -1
  67. package/chunks/transform-purchase-order-approval-rule.js +0 -4
  68. package/chunks/transform-purchase-order-approval-rule.js.map +0 -1
  69. package/chunks/transform-purchase-order.js +0 -423
  70. package/chunks/transform-purchase-order.js.map +0 -1
  71. package/chunks/useCustomerRolePermissions.js +0 -4
  72. package/chunks/useCustomerRolePermissions.js.map +0 -1
  73. package/chunks/usePurchaseOrderData.js +0 -4
  74. package/chunks/usePurchaseOrderData.js.map +0 -1
  75. package/chunks/usePurchaseOrders.js +0 -4
  76. package/chunks/usePurchaseOrders.js.map +0 -1
@@ -1,423 +0,0 @@
1
- /*! Copyright 2026 Adobe
2
- All Rights Reserved. */
3
- const un=`
4
- fragment PURCHASE_ORDER_QUOTE_FRAGMENT on Cart {
5
- __typename
6
- id
7
- email
8
- is_virtual
9
- total_quantity
10
- applied_coupons {
11
- code
12
- }
13
- applied_gift_cards {
14
- code
15
- applied_balance {
16
- value
17
- currency
18
- }
19
- current_balance {
20
- value
21
- currency
22
- }
23
- expiration_date
24
- }
25
- applied_reward_points {
26
- money {
27
- value
28
- currency
29
- }
30
- points
31
- }
32
- applied_store_credit {
33
- applied_balance {
34
- value
35
- currency
36
- }
37
- current_balance {
38
- value
39
- currency
40
- }
41
- }
42
- available_gift_wrappings {
43
- uid
44
- design
45
- price {
46
- value
47
- currency
48
- }
49
- image {
50
- url
51
- label
52
- }
53
- }
54
- gift_message {
55
- from
56
- to
57
- message
58
- }
59
- gift_receipt_included
60
- gift_wrapping {
61
- uid
62
- design
63
- price {
64
- value
65
- currency
66
- }
67
- image {
68
- url
69
- label
70
- }
71
- }
72
- printed_card_included
73
- available_payment_methods {
74
- code
75
- title
76
- is_deferred
77
- }
78
- selected_payment_method {
79
- code
80
- title
81
- }
82
- billing_address {
83
- city
84
- company
85
- country {
86
- code
87
- label
88
- }
89
- firstname
90
- lastname
91
- postcode
92
- region {
93
- code
94
- label
95
- }
96
- street
97
- telephone
98
- custom_attributes {
99
- code
100
- }
101
- fax
102
- id
103
- middlename
104
- prefix
105
- suffix
106
- uid
107
- vat_id
108
- }
109
- shipping_addresses {
110
- city
111
- company
112
- country {
113
- code
114
- label
115
- }
116
- firstname
117
- lastname
118
- postcode
119
- region {
120
- code
121
- label
122
- }
123
- street
124
- telephone
125
- custom_attributes {
126
- code
127
- }
128
- fax
129
- id
130
- middlename
131
- prefix
132
- suffix
133
- uid
134
- vat_id
135
- available_shipping_methods {
136
- amount {
137
- value
138
- currency
139
- }
140
- carrier_code
141
- carrier_title
142
- method_code
143
- method_title
144
- }
145
- selected_shipping_method {
146
- amount {
147
- value
148
- currency
149
- }
150
- carrier_code
151
- carrier_title
152
- method_code
153
- method_title
154
- }
155
- }
156
- rules {
157
- uid
158
- }
159
- itemsV2(pageSize: 100, currentPage: 1) {
160
- items {
161
- uid
162
- quantity
163
- product {
164
- __typename
165
- uid
166
- name
167
- sku
168
- url_key
169
- canonical_url
170
- stock_status
171
- only_x_left_in_stock
172
- image {
173
- url
174
- label
175
- }
176
- small_image {
177
- url
178
- label
179
- }
180
- thumbnail {
181
- url
182
- label
183
- }
184
- price_range {
185
- maximum_price {
186
- regular_price {
187
- value
188
- currency
189
- }
190
- final_price {
191
- value
192
- currency
193
- }
194
- }
195
- }
196
- }
197
- prices {
198
- price {
199
- value
200
- currency
201
- }
202
- price_including_tax {
203
- value
204
- currency
205
- }
206
- original_item_price {
207
- value
208
- currency
209
- }
210
- original_row_total {
211
- value
212
- currency
213
- }
214
- row_total {
215
- value
216
- currency
217
- }
218
- row_total_including_tax {
219
- value
220
- currency
221
- }
222
- total_item_discount {
223
- value
224
- currency
225
- }
226
- discounts {
227
- label
228
- amount {
229
- value
230
- currency
231
- }
232
- }
233
- fixed_product_taxes {
234
- label
235
- amount {
236
- value
237
- currency
238
- }
239
- }
240
- }
241
- ... on SimpleCartItem {
242
- customizable_options {
243
- label
244
- values {
245
- label
246
- value
247
- }
248
- }
249
- }
250
- ... on ConfigurableCartItem {
251
- configurable_options {
252
- option_label
253
- value_label
254
- }
255
- }
256
- ... on BundleCartItem {
257
- bundle_options {
258
- uid
259
- label
260
- type
261
- values {
262
- uid
263
- label
264
- quantity
265
- }
266
- }
267
- }
268
- ... on DownloadableCartItem {
269
- links {
270
- uid
271
- title
272
- }
273
- }
274
- ... on GiftCardCartItem {
275
- sender_name
276
- sender_email
277
- recipient_name
278
- recipient_email
279
- message
280
- amount {
281
- value
282
- currency
283
- }
284
- }
285
- errors {
286
- code
287
- message
288
- }
289
- is_available
290
- max_qty
291
- min_qty
292
- not_available_message
293
- note_from_buyer {
294
- note_uid
295
- note
296
- created_at
297
- }
298
- note_from_seller {
299
- note_uid
300
- note
301
- created_at
302
- }
303
- }
304
- page_info {
305
- current_page
306
- page_size
307
- total_pages
308
- }
309
- total_count
310
- }
311
- prices {
312
- grand_total {
313
- value
314
- currency
315
- }
316
- grand_total_excluding_tax {
317
- value
318
- currency
319
- }
320
- subtotal_excluding_tax {
321
- value
322
- currency
323
- }
324
- subtotal_including_tax {
325
- value
326
- currency
327
- }
328
- subtotal_with_discount_excluding_tax {
329
- value
330
- currency
331
- }
332
- applied_taxes {
333
- label
334
- amount {
335
- value
336
- currency
337
- }
338
- }
339
- discounts {
340
- label
341
- amount {
342
- value
343
- currency
344
- }
345
- }
346
- gift_options {
347
- gift_wrapping_for_items {
348
- value
349
- currency
350
- }
351
- gift_wrapping_for_items_incl_tax {
352
- value
353
- currency
354
- }
355
- gift_wrapping_for_order {
356
- value
357
- currency
358
- }
359
- gift_wrapping_for_order_incl_tax {
360
- value
361
- currency
362
- }
363
- printed_card {
364
- value
365
- currency
366
- }
367
- printed_card_incl_tax {
368
- value
369
- currency
370
- }
371
- }
372
- }
373
- }
374
- `,rn=`
375
- fragment PURCHASE_ORDERS_FRAGMENT on PurchaseOrder {
376
- __typename
377
- uid
378
- number
379
- status
380
- available_actions
381
- approval_flow {
382
- events {
383
- name
384
- role
385
- message
386
- status
387
- updated_at
388
- }
389
- rule_name
390
- }
391
- comments {
392
- created_at
393
- author {
394
- firstname
395
- lastname
396
- email
397
- }
398
- text
399
- }
400
- created_at
401
- updated_at
402
- created_by {
403
- firstname
404
- lastname
405
- email
406
- }
407
- history_log {
408
- message
409
- created_at
410
- activity
411
- __typename
412
- uid
413
- }
414
- order {
415
- number
416
- }
417
- quote {
418
- ...PURCHASE_ORDER_QUOTE_FRAGMENT
419
- }
420
- }
421
- ${un}
422
- `,tn=a=>{var s,D,w,R,E,A,T,N;return{typename:(a==null?void 0:a.__typename)??"",uid:(a==null?void 0:a.uid)??"",number:(a==null?void 0:a.number)??"",status:(a==null?void 0:a.status)??"",availableActions:(a==null?void 0:a.available_actions)??[],approvalFlow:(s=a==null?void 0:a.approval_flow)!=null&&s.length?a.approval_flow.map(i=>{var f;return{ruleName:(i==null?void 0:i.rule_name)??"",events:((f=i==null?void 0:i.events)==null?void 0:f.map(r=>({message:(r==null?void 0:r.message)??"",name:(r==null?void 0:r.name)??"",role:(r==null?void 0:r.role)??"",status:(r==null?void 0:r.status)??"",updatedAt:(r==null?void 0:r.updated_at)??""})))??[]}}):[],comments:((D=a==null?void 0:a.comments)==null?void 0:D.map(i=>{var f,r,I;return{uid:(i==null?void 0:i.uid)??"",createdAt:(i==null?void 0:i.created_at)??"",author:{firstname:((f=i==null?void 0:i.author)==null?void 0:f.firstname)??"",lastname:((r=i==null?void 0:i.author)==null?void 0:r.lastname)??"",email:((I=i==null?void 0:i.author)==null?void 0:I.email)??""},text:(i==null?void 0:i.text)??""}}))??[],createdAt:(a==null?void 0:a.created_at)??"",updatedAt:(a==null?void 0:a.updated_at)??"",createdBy:{firstname:((w=a==null?void 0:a.created_by)==null?void 0:w.firstname)??"",lastname:((R=a==null?void 0:a.created_by)==null?void 0:R.lastname)??"",email:((E=a==null?void 0:a.created_by)==null?void 0:E.email)??""},historyLog:((A=a==null?void 0:a.history_log)==null?void 0:A.map(i=>({activity:(i==null?void 0:i.activity)??"",createdAt:(i==null?void 0:i.created_at)??"",message:(i==null?void 0:i.message)??"",uid:(i==null?void 0:i.uid)??""})))??[],quote:cn(a==null?void 0:a.quote),order:{id:((T=a==null?void 0:a.order)==null?void 0:T.id)??"",orderNumber:((N=a==null?void 0:a.order)==null?void 0:N.number)??""}}};function cn(a){var B,W,P,H,z,L,V,j,$,K,X,J,Y,Z,M;if(!a)return null;const C=n=>n||0,s=n=>({firstName:(n==null?void 0:n.firstname)??"",lastName:(n==null?void 0:n.lastname)??"",middleName:(n==null?void 0:n.middlename)??""}),D=n=>{var c,t,g,o;const{firstName:l,lastName:e,middleName:_}=s(n);return{firstName:l,lastName:e,middleName:_,city:(n==null?void 0:n.city)??"",company:(n==null?void 0:n.company)??"",country:((c=n==null?void 0:n.country)==null?void 0:c.label)??"",countryCode:((t=n==null?void 0:n.country)==null?void 0:t.code)??"",fax:(n==null?void 0:n.fax)??"",postCode:(n==null?void 0:n.postcode)??"",prefix:(n==null?void 0:n.prefix)??"",region:((g=n==null?void 0:n.region)==null?void 0:g.label)??"",regionId:((o=n==null?void 0:n.region)==null?void 0:o.code)??"",street:(n==null?void 0:n.street)??[],suffix:(n==null?void 0:n.suffix)??"",telephone:(n==null?void 0:n.telephone)??"",vatId:(n==null?void 0:n.vat_id)??"",customAttributes:(n==null?void 0:n.custom_attributes)??[]}},w=n=>{var l,e,_,c,t,g,o,b,v,m;return{__typename:(n==null?void 0:n.__typename)||"",uid:(n==null?void 0:n.uid)||"",onlyXLeftInStock:(n==null?void 0:n.only_x_left_in_stock)??0,stockStatus:(n==null?void 0:n.stock_status)??"",priceRange:{maximumPrice:{regularPrice:{currency:((_=(e=(l=n==null?void 0:n.price_range)==null?void 0:l.maximum_price)==null?void 0:e.regular_price)==null?void 0:_.currency)??"",value:((g=(t=(c=n==null?void 0:n.price_range)==null?void 0:c.maximum_price)==null?void 0:t.regular_price)==null?void 0:g.value)??0}}},canonicalUrl:(n==null?void 0:n.canonical_url)??"",urlKey:(n==null?void 0:n.url_key)||"",id:(n==null?void 0:n.uid)??"",name:(n==null?void 0:n.name)||"",sku:(n==null?void 0:n.sku)||"",image:((o=n==null?void 0:n.image)==null?void 0:o.url)||"",imageAlt:((b=n==null?void 0:n.image)==null?void 0:b.label)||"",productType:(n==null?void 0:n.__typename)||"",thumbnail:{label:((v=n==null?void 0:n.thumbnail)==null?void 0:v.label)||"",url:((m=n==null?void 0:n.thumbnail)==null?void 0:m.url)||""}}},R=n=>{if(!n||!("configurable_options"in n))return;const l={};for(const e of n.configurable_options)l[e.option_label]=e.value_label;return l},E=n=>{const l=n==null?void 0:n.map(_=>({uid:_.uid,label:_.label,values:_.values.map(c=>c.product_name).join(", ")})),e={};return l==null||l.forEach(_=>{e[_.label]=_.values}),Object.keys(e).length>0?e:null},A=n=>(n==null?void 0:n.length)>0?{count:n.length,result:n.map(l=>l.title).join(", ")}:null,T=n=>{var l,e,_,c,t;return{senderName:((l=n==null?void 0:n.gift_card)==null?void 0:l.sender_name)||"",senderEmail:((e=n==null?void 0:n.gift_card)==null?void 0:e.sender_email)||"",recipientEmail:((_=n==null?void 0:n.gift_card)==null?void 0:_.recipient_email)||"",recipientName:((c=n==null?void 0:n.gift_card)==null?void 0:c.recipient_name)||"",message:((t=n==null?void 0:n.gift_card)==null?void 0:t.message)||""}},N=n=>{var l,e,_;return{senderName:((l=n==null?void 0:n.gift_message)==null?void 0:l.from)??"",recipientName:((e=n==null?void 0:n.gift_message)==null?void 0:e.to)??"",message:((_=n==null?void 0:n.gift_message)==null?void 0:_.message)??""}},i=n=>{var l,e,_,c,t,g,o,b,v,m,S;return{design:((l=n==null?void 0:n.gift_wrapping)==null?void 0:l.design)??"",uid:((e=n==null?void 0:n.gift_wrapping)==null?void 0:e.uid)??"",selected:!!((_=n==null?void 0:n.gift_wrapping)!=null&&_.uid),image:{url:((t=(c=n==null?void 0:n.gift_wrapping)==null?void 0:c.image)==null?void 0:t.url)??"",label:((o=(g=n==null?void 0:n.gift_wrapping)==null?void 0:g.image)==null?void 0:o.label)??""},price:{currency:((v=(b=n==null?void 0:n.gift_wrapping)==null?void 0:b.price)==null?void 0:v.currency)??"USD",value:((S=(m=n==null?void 0:n.gift_wrapping)==null?void 0:m.price)==null?void 0:S.value)??0}}},f=n=>({currency:(n==null?void 0:n.currency)??"USD",value:(n==null?void 0:n.value)??0}),r=(n,l)=>{const e=n==null?void 0:n.price,_=n==null?void 0:n.priceIncludingTax,c=n==null?void 0:n.originalPrice,t=!1,g=t?c==null?void 0:c.value:_==null?void 0:_.value,o={originalPrice:c,baseOriginalPrice:{value:g,currency:c==null?void 0:c.currency},baseDiscountedPrice:{value:_==null?void 0:_.value,currency:_==null?void 0:_.currency},baseExcludingTax:{value:e==null?void 0:e.value,currency:e==null?void 0:e.currency}},b={originalPrice:c,baseOriginalPrice:{value:c==null?void 0:c.value,currency:_==null?void 0:_.currency},baseDiscountedPrice:{value:l==null?void 0:l.value,currency:e==null?void 0:e.currency},baseExcludingTax:{value:e==null?void 0:e.value,currency:e==null?void 0:e.currency}},v={singleItemPrice:{value:t?c.value:_.value,currency:_.currency},baseOriginalPrice:{value:g,currency:_.currency},baseDiscountedPrice:{value:_.value,currency:_.currency}};return{includeAndExcludeTax:o,excludeTax:b,includeTax:v}},I=n=>{var o,b,v,m,S,p,h,q,O,d,nn;const l=n==null?void 0:n.product,e=n==null?void 0:n.prices,_=C(n==null?void 0:n.quantity),c={price:(e==null?void 0:e.price)??{value:0,currency:"USD"},priceIncludingTax:(e==null?void 0:e.price_including_tax)??{value:0,currency:"USD"},originalPrice:(e==null?void 0:e.original_item_price)??{value:0,currency:"USD"},originalPriceIncludingTax:(e==null?void 0:e.original_item_price)??{value:0,currency:"USD"},discounts:(e==null?void 0:e.discounts)??[]},t=(((o=e==null?void 0:e.original_item_price)==null?void 0:o.value)??0)>(((b=e==null?void 0:e.price)==null?void 0:b.value)??0),g=(e==null?void 0:e.price)??{value:0,currency:"USD"};return{giftMessage:N(n),giftWrappingPrice:f((v=n==null?void 0:n.gift_wrapping)==null?void 0:v.price),productGiftWrapping:[i(n)],taxCalculations:r(c,g),productSalePrice:g,status:n!=null&&n.is_available?"available":"unavailable",currentReturnOrderQuantity:0,eligibleForReturn:!1,productSku:(l==null?void 0:l.sku)??"",type:(l==null?void 0:l.__typename)??"",discounted:t,id:(n==null?void 0:n.uid)??"",productName:(l==null?void 0:l.name)??"",productUrlKey:(l==null?void 0:l.url_key)??"",regularPrice:{value:((p=(S=(m=l==null?void 0:l.price_range)==null?void 0:m.maximum_price)==null?void 0:S.regular_price)==null?void 0:p.value)??0,currency:((O=(q=(h=l==null?void 0:l.price_range)==null?void 0:h.maximum_price)==null?void 0:q.regular_price)==null?void 0:O.currency)??"USD"},price:g,product:w(l),selectedOptions:(n==null?void 0:n.customizable_options)??[],thumbnail:{label:((d=l==null?void 0:l.thumbnail)==null?void 0:d.label)||"",url:((nn=l==null?void 0:l.thumbnail)==null?void 0:nn.url)||""},downloadableLinks:(l==null?void 0:l.__typename)==="DownloadableProduct"&&(n!=null&&n.downloadable_links)?A(n.downloadable_links):null,prices:c,itemPrices:c,bundleOptions:(l==null?void 0:l.__typename)==="BundleProduct"&&(n!=null&&n.bundle_options)?E(n.bundle_options):null,totalInclTax:(e==null?void 0:e.row_total_including_tax)??{value:0,currency:"USD"},priceInclTax:(e==null?void 0:e.price_including_tax)??{value:0,currency:"USD"},total:(e==null?void 0:e.row_total)??{value:0,currency:"USD"},configurableOptions:(l==null?void 0:l.__typename)==="ConfigurableProduct"?R(n):void 0,giftCard:(l==null?void 0:l.__typename)==="GiftCardProduct"?T(n):void 0,quantityCanceled:0,quantityInvoiced:0,quantityOrdered:_,quantityRefunded:0,quantityReturned:0,quantityShipped:0,requestQuantity:0,totalQuantity:_,returnableQuantity:0,quantityReturnRequested:0}},ln=n=>({giftWrappingForItems:(n==null?void 0:n.gift_wrapping_for_items)??{value:0,currency:"USD"},giftWrappingForItemsInclTax:(n==null?void 0:n.gift_wrapping_for_items_incl_tax)??{value:0,currency:"USD"},giftWrappingForOrder:(n==null?void 0:n.gift_wrapping_for_order)??{value:0,currency:"USD"},giftWrappingForOrderInclTax:(n==null?void 0:n.gift_wrapping_for_order_incl_tax)??{value:0,currency:"USD"},printedCard:(n==null?void 0:n.printed_card)??{value:0,currency:"USD"},printedCardInclTax:(n==null?void 0:n.printed_card_incl_tax)??{value:0,currency:"USD"}}),an=(n=[])=>!n||n.length===0?[]:n.map(l=>{var e,_;return{code:(l==null?void 0:l.code)??"",appliedBalance:{value:((e=l==null?void 0:l.applied_balance)==null?void 0:e.value)??0,currency:((_=l==null?void 0:l.applied_balance)==null?void 0:_.currency)??"USD"}}}),en=(n=[])=>!n||n.length===0?[]:n.map(l=>{var e,_;return{amount:{value:((e=l==null?void 0:l.amount)==null?void 0:e.value)??0,currency:((_=l==null?void 0:l.amount)==null?void 0:_.currency)??"USD"},rate:(l==null?void 0:l.rate)??0,title:(l==null?void 0:l.title)??(l==null?void 0:l.label)??""}}),U=(B=a==null?void 0:a.shipping_addresses)==null?void 0:B[0],G=a==null?void 0:a.billing_address,y=U==null?void 0:U.selected_shipping_method,x=a==null?void 0:a.selected_payment_method,u=a==null?void 0:a.prices,F=((P=(W=a==null?void 0:a.itemsV2)==null?void 0:W.items)==null?void 0:P.map(I))??[],_n=F.reduce((n,l)=>n+l.totalQuantity,0),Q=y?`${y.carrier_title??""} - ${y.method_title??""}`.trim():"",k=an(a==null?void 0:a.applied_gift_cards);return{giftReceiptIncluded:(a==null?void 0:a.gift_receipt_included)??!1,printedCardIncluded:(a==null?void 0:a.printed_card_included)??!1,giftWrappingOrder:{price:{value:((z=(H=a==null?void 0:a.gift_wrapping)==null?void 0:H.price)==null?void 0:z.value)??0,currency:((V=(L=a==null?void 0:a.gift_wrapping)==null?void 0:L.price)==null?void 0:V.currency)??"USD"},uid:((j=a==null?void 0:a.gift_wrapping)==null?void 0:j.uid)??""},placeholderImage:"",returnNumber:void 0,id:(a==null?void 0:a.id)??"",orderStatusChangeDate:void 0,number:"",email:(a==null?void 0:a.email)??"",token:void 0,status:"pending",isVirtual:(a==null?void 0:a.is_virtual)??!1,totalQuantity:_n,shippingMethod:Q,carrier:(y==null?void 0:y.carrier_code)??"",orderDate:"",returns:[],discounts:(u==null?void 0:u.discounts)??[],coupons:(a==null?void 0:a.applied_coupons)??[],payments:[{code:(x==null?void 0:x.code)??"",name:(x==null?void 0:x.title)??""}],shipping:{code:Q,amount:(($=y==null?void 0:y.amount)==null?void 0:$.value)??0,currency:((K=y==null?void 0:y.amount)==null?void 0:K.currency)??"USD"},shipments:[],items:F,totalGiftCard:k.length?k.reduce((n,l)=>{var e,_;return{value:n.value+(((e=l==null?void 0:l.appliedBalance)==null?void 0:e.value)??0),currency:((_=l==null?void 0:l.appliedBalance)==null?void 0:_.currency)??n.currency}},{value:0,currency:((J=(X=k[0])==null?void 0:X.appliedBalance)==null?void 0:J.currency)??"USD"}):{value:0,currency:"USD"},grandTotal:(u==null?void 0:u.grand_total)??{value:0,currency:"USD"},grandTotalExclTax:(u==null?void 0:u.grand_total_excluding_tax)??{value:0,currency:"USD"},totalShipping:(y==null?void 0:y.amount)??{value:0,currency:"USD"},subtotalExclTax:(u==null?void 0:u.subtotal_excluding_tax)??{value:0,currency:"USD"},subtotalInclTax:(u==null?void 0:u.subtotal_including_tax)??{value:0,currency:"USD"},totalTax:{value:(((Y=u==null?void 0:u.grand_total)==null?void 0:Y.value)??0)-(((Z=u==null?void 0:u.grand_total_excluding_tax)==null?void 0:Z.value)??0),currency:((M=u==null?void 0:u.grand_total)==null?void 0:M.currency)??"USD"},shippingAddress:U?D(U):null,totalGiftOptions:ln(u==null?void 0:u.gift_options),billingAddress:G?D(G):null,availableActions:[],taxes:en(u==null?void 0:u.applied_taxes),appliedGiftCards:k}}export{rn as P,tn as t};
423
- //# sourceMappingURL=transform-purchase-order.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transform-purchase-order.js","sources":["/@dropins/storefront-purchase-order/src/api/graphql/PurchaseOrderQuoteFragment.ts","/@dropins/storefront-purchase-order/src/api/graphql/PurchaseOrdersFragment.graphql.ts","/@dropins/storefront-purchase-order/src/data/transforms/transform-purchase-order.ts"],"sourcesContent":["/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\n/**\n * Limited Quote fragment for Purchase Order context\n * Some fields from full Cart type may not be available in purchase_order.quote\n */\nexport const PURCHASE_ORDER_QUOTE_FRAGMENT = /* GraphQL */ `\n fragment PURCHASE_ORDER_QUOTE_FRAGMENT on Cart {\n __typename\n id\n email\n is_virtual\n total_quantity\n applied_coupons {\n code\n }\n applied_gift_cards {\n code\n applied_balance {\n value\n currency\n }\n current_balance {\n value\n currency\n }\n expiration_date\n }\n applied_reward_points {\n money {\n value\n currency\n }\n points\n }\n applied_store_credit {\n applied_balance {\n value\n currency\n }\n current_balance {\n value\n currency\n }\n }\n available_gift_wrappings {\n uid\n design\n price {\n value\n currency\n }\n image {\n url\n label\n }\n }\n gift_message {\n from\n to\n message\n }\n gift_receipt_included\n gift_wrapping {\n uid\n design\n price {\n value\n currency\n }\n image {\n url\n label\n }\n }\n printed_card_included\n available_payment_methods {\n code\n title\n is_deferred\n }\n selected_payment_method {\n code\n title\n }\n billing_address {\n city\n company\n country {\n code\n label\n }\n firstname\n lastname\n postcode\n region {\n code\n label\n }\n street\n telephone\n custom_attributes {\n code\n }\n fax\n id\n middlename\n prefix\n suffix\n uid\n vat_id\n }\n shipping_addresses {\n city\n company\n country {\n code\n label\n }\n firstname\n lastname\n postcode\n region {\n code\n label\n }\n street\n telephone\n custom_attributes {\n code\n }\n fax\n id\n middlename\n prefix\n suffix\n uid\n vat_id\n available_shipping_methods {\n amount {\n value\n currency\n }\n carrier_code\n carrier_title\n method_code\n method_title\n }\n selected_shipping_method {\n amount {\n value\n currency\n }\n carrier_code\n carrier_title\n method_code\n method_title\n }\n }\n rules {\n uid\n }\n itemsV2(pageSize: 100, currentPage: 1) {\n items {\n uid\n quantity\n product {\n __typename\n uid\n name\n sku\n url_key\n canonical_url\n stock_status\n only_x_left_in_stock\n image {\n url\n label\n }\n small_image {\n url\n label\n }\n thumbnail {\n url\n label\n }\n price_range {\n maximum_price {\n regular_price {\n value\n currency\n }\n final_price {\n value\n currency\n }\n }\n }\n }\n prices {\n price {\n value\n currency\n }\n price_including_tax {\n value\n currency\n }\n original_item_price {\n value\n currency\n }\n original_row_total {\n value\n currency\n }\n row_total {\n value\n currency\n }\n row_total_including_tax {\n value\n currency\n }\n total_item_discount {\n value\n currency\n }\n discounts {\n label\n amount {\n value\n currency\n }\n }\n fixed_product_taxes {\n label\n amount {\n value\n currency\n }\n }\n }\n ... on SimpleCartItem {\n customizable_options {\n label\n values {\n label\n value\n }\n }\n }\n ... on ConfigurableCartItem {\n configurable_options {\n option_label\n value_label\n }\n }\n ... on BundleCartItem {\n bundle_options {\n uid\n label\n type\n values {\n uid\n label\n quantity\n }\n }\n }\n ... on DownloadableCartItem {\n links {\n uid\n title\n }\n }\n ... on GiftCardCartItem {\n sender_name\n sender_email\n recipient_name\n recipient_email\n message\n amount {\n value\n currency\n }\n }\n errors {\n code\n message\n }\n is_available\n max_qty\n min_qty\n not_available_message\n note_from_buyer {\n note_uid\n note\n created_at\n }\n note_from_seller {\n note_uid\n note\n created_at\n }\n }\n page_info {\n current_page\n page_size\n total_pages\n }\n total_count\n }\n prices {\n grand_total {\n value\n currency\n }\n grand_total_excluding_tax {\n value\n currency\n }\n subtotal_excluding_tax {\n value\n currency\n }\n subtotal_including_tax {\n value\n currency\n }\n subtotal_with_discount_excluding_tax {\n value\n currency\n }\n applied_taxes {\n label\n amount {\n value\n currency\n }\n }\n discounts {\n label\n amount {\n value\n currency\n }\n }\n gift_options {\n gift_wrapping_for_items {\n value\n currency\n }\n gift_wrapping_for_items_incl_tax {\n value\n currency\n }\n gift_wrapping_for_order {\n value\n currency\n }\n gift_wrapping_for_order_incl_tax {\n value\n currency\n }\n printed_card {\n value\n currency\n }\n printed_card_incl_tax {\n value\n currency\n }\n }\n }\n }\n`;\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { PURCHASE_ORDER_QUOTE_FRAGMENT } from './PurchaseOrderQuoteFragment';\n\nexport const PURCHASE_ORDERS_FRAGMENT = /* GraphQL */ `\n fragment PURCHASE_ORDERS_FRAGMENT on PurchaseOrder {\n __typename\n uid\n number\n status\n available_actions\n approval_flow {\n events {\n name\n role\n message\n status\n updated_at\n }\n rule_name\n }\n comments {\n created_at\n author {\n firstname\n lastname\n email\n }\n text\n }\n created_at\n updated_at\n created_by {\n firstname\n lastname\n email\n }\n history_log {\n message\n created_at\n activity\n __typename\n uid\n }\n order {\n number\n }\n quote {\n ...PURCHASE_ORDER_QUOTE_FRAGMENT\n }\n }\n ${PURCHASE_ORDER_QUOTE_FRAGMENT}\n`;\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { PurchaseOrderModel } from '@/b2b-purchase-order/data/models';\n\nexport const transformPurchaseOrder = (\n purchaseOrder: any\n): PurchaseOrderModel => {\n const order = {\n typename: purchaseOrder?.__typename ?? '',\n uid: purchaseOrder?.uid ?? '',\n number: purchaseOrder?.number ?? '',\n status: purchaseOrder?.status ?? '',\n availableActions: purchaseOrder?.available_actions ?? [],\n approvalFlow: purchaseOrder?.approval_flow?.length\n ? purchaseOrder.approval_flow.map((flow: any) => ({\n ruleName: flow?.rule_name ?? '',\n events:\n flow?.events?.map((event: any) => ({\n message: event?.message ?? '',\n name: event?.name ?? '',\n role: event?.role ?? '',\n status: event?.status ?? '',\n updatedAt: event?.updated_at ?? '',\n })) ?? [],\n }))\n : [],\n comments:\n purchaseOrder?.comments?.map((comment: any) => ({\n uid: comment?.uid ?? '',\n createdAt: comment?.created_at ?? '',\n author: {\n firstname: comment?.author?.firstname ?? '',\n lastname: comment?.author?.lastname ?? '',\n email: comment?.author?.email ?? '',\n },\n text: comment?.text ?? '',\n })) ?? [],\n createdAt: purchaseOrder?.created_at ?? '',\n updatedAt: purchaseOrder?.updated_at ?? '',\n createdBy: {\n firstname: purchaseOrder?.created_by?.firstname ?? '',\n lastname: purchaseOrder?.created_by?.lastname ?? '',\n email: purchaseOrder?.created_by?.email ?? '',\n },\n historyLog:\n purchaseOrder?.history_log?.map((log: any) => ({\n activity: log?.activity ?? '',\n createdAt: log?.created_at ?? '',\n message: log?.message ?? '',\n uid: log?.uid ?? '',\n })) ?? [],\n quote: transformQuoteToOrder(purchaseOrder?.quote),\n order: {\n id: purchaseOrder?.order?.id ?? '',\n orderNumber: purchaseOrder?.order?.number ?? '',\n },\n };\n\n return order;\n};\n\nfunction transformQuoteToOrder(quote: any) {\n if (!quote) return null;\n\n // Helper functions\n const parseNumber = (value: number | undefined | null) => {\n return value || 0;\n };\n\n const transformUserInformation = (user: any) => {\n return {\n firstName: user?.firstname ?? '',\n lastName: user?.lastname ?? '',\n middleName: user?.middlename ?? '',\n };\n };\n\n const transformAddress = (address: any) => {\n const { firstName, lastName, middleName } =\n transformUserInformation(address);\n\n return {\n firstName,\n lastName,\n middleName,\n city: address?.city ?? '',\n company: address?.company ?? '',\n country: address?.country?.label ?? '',\n countryCode: address?.country?.code ?? '',\n fax: address?.fax ?? '',\n postCode: address?.postcode ?? '',\n prefix: address?.prefix ?? '',\n region: address?.region?.label ?? '',\n regionId: address?.region?.code ?? '',\n street: address?.street ?? [],\n suffix: address?.suffix ?? '',\n telephone: address?.telephone ?? '',\n vatId: address?.vat_id ?? '',\n customAttributes: address?.custom_attributes ?? [],\n };\n };\n\n const transformProduct = (product: any) => {\n return {\n __typename: product?.__typename || '',\n uid: product?.uid || '',\n onlyXLeftInStock: product?.only_x_left_in_stock ?? 0,\n stockStatus: product?.stock_status ?? '',\n priceRange: {\n maximumPrice: {\n regularPrice: {\n currency:\n product?.price_range?.maximum_price?.regular_price?.currency ??\n '',\n value:\n product?.price_range?.maximum_price?.regular_price?.value ?? 0,\n },\n },\n },\n canonicalUrl: product?.canonical_url ?? '',\n urlKey: product?.url_key || '',\n id: product?.uid ?? '',\n name: product?.name || '',\n sku: product?.sku || '',\n image: product?.image?.url || '',\n imageAlt: product?.image?.label || '',\n productType: product?.__typename || '',\n thumbnail: {\n label: product?.thumbnail?.label || '',\n url: product?.thumbnail?.url || '',\n },\n };\n };\n\n const transformConfigurableOptions = (item: any) => {\n if (!item) return;\n\n // GraphQL returns configurable_options (not selected_options)\n if (!('configurable_options' in item)) return;\n\n const configurableOptions: Record<string, string> = {};\n\n for (const option of item.configurable_options!) {\n // GraphQL fields: option_label and value_label\n configurableOptions[option!.option_label] = option!.value_label;\n }\n\n return configurableOptions;\n };\n const transformBundleOptions = (data: any) => {\n const bundle = data?.map((option: any) => ({\n uid: option.uid,\n label: option.label,\n values: option.values.map((value: any) => value.product_name).join(', '),\n }));\n\n const bundleOptions: { [key: string]: any } = {};\n\n bundle?.forEach((option: any) => {\n bundleOptions[option.label] = option.values;\n });\n\n return Object.keys(bundleOptions).length > 0 ? bundleOptions : null;\n };\n\n const transformLinks = (links: { title: string }[]) => {\n return links?.length > 0\n ? {\n count: links.length,\n result: links.map((link: any) => link.title).join(', '),\n }\n : null;\n };\n\n const transformGiftCard = (item: any) => {\n return {\n senderName: item?.gift_card?.sender_name || '',\n senderEmail: item?.gift_card?.sender_email || '',\n recipientEmail: item?.gift_card?.recipient_email || '',\n recipientName: item?.gift_card?.recipient_name || '',\n message: item?.gift_card?.message || '',\n };\n };\n\n const transformGiftMessage = (data: any) => {\n return {\n senderName: data?.gift_message?.from ?? '',\n recipientName: data?.gift_message?.to ?? '',\n message: data?.gift_message?.message ?? '',\n };\n };\n\n const transformGiftWrapping = (data: any) => {\n return {\n design: data?.gift_wrapping?.design ?? '',\n uid: data?.gift_wrapping?.uid ?? '',\n selected: Boolean(data?.gift_wrapping?.uid),\n image: {\n url: data?.gift_wrapping?.image?.url ?? '',\n label: data?.gift_wrapping?.image?.label ?? '',\n },\n price: {\n currency: data?.gift_wrapping?.price?.currency ?? 'USD',\n value: data?.gift_wrapping?.price?.value ?? 0,\n },\n };\n };\n\n const transformWrappingPrice = (data: any) => {\n return {\n currency: data?.currency ?? 'USD',\n value: data?.value ?? 0,\n };\n };\n\n const transformTaxCalculations = (\n itemPrices: any,\n productPrice: { value: number; currency: string }\n ) => {\n const price = itemPrices?.price;\n const priceIncludingTax = itemPrices?.priceIncludingTax;\n const originalPrice = itemPrices?.originalPrice;\n\n // For quote, discounted is always false since there are no discounts yet\n const discounted = false;\n const baseOriginalPriceValue = discounted\n ? originalPrice?.value\n : priceIncludingTax?.value;\n\n const includeAndExcludeTax = {\n originalPrice,\n baseOriginalPrice: {\n value: baseOriginalPriceValue,\n currency: originalPrice?.currency,\n },\n baseDiscountedPrice: {\n value: priceIncludingTax?.value,\n currency: priceIncludingTax?.currency,\n },\n baseExcludingTax: {\n value: price?.value,\n currency: price?.currency,\n },\n };\n\n const excludeTax = {\n originalPrice,\n baseOriginalPrice: {\n value: originalPrice?.value,\n currency: priceIncludingTax?.currency,\n },\n baseDiscountedPrice: {\n value: productPrice?.value,\n currency: price?.currency,\n },\n baseExcludingTax: {\n value: price?.value,\n currency: price?.currency,\n },\n };\n\n const includeTax = {\n singleItemPrice: {\n value: discounted ? originalPrice.value : priceIncludingTax.value,\n currency: priceIncludingTax.currency,\n },\n baseOriginalPrice: {\n value: baseOriginalPriceValue,\n currency: priceIncludingTax.currency,\n },\n baseDiscountedPrice: {\n value: priceIncludingTax.value,\n currency: priceIncludingTax.currency,\n },\n };\n\n return {\n includeAndExcludeTax,\n excludeTax,\n includeTax,\n };\n };\n\n const transformQuoteItem = (item: any) => {\n const product = item?.product;\n const prices = item?.prices;\n const quantity = parseNumber(item?.quantity);\n\n const itemPrices = {\n price: prices?.price ?? { value: 0, currency: 'USD' },\n priceIncludingTax: prices?.price_including_tax ?? {\n value: 0,\n currency: 'USD',\n },\n originalPrice: prices?.original_item_price ?? {\n value: 0,\n currency: 'USD',\n },\n originalPriceIncludingTax: prices?.original_item_price ?? {\n value: 0,\n currency: 'USD',\n },\n discounts: prices?.discounts ?? [],\n };\n\n const discounted =\n (prices?.original_item_price?.value ?? 0) > (prices?.price?.value ?? 0);\n\n const price = prices?.price ?? { value: 0, currency: 'USD' };\n\n return {\n giftMessage: transformGiftMessage(item),\n giftWrappingPrice: transformWrappingPrice(item?.gift_wrapping?.price),\n productGiftWrapping: [transformGiftWrapping(item)],\n taxCalculations: transformTaxCalculations(itemPrices, price),\n productSalePrice: price,\n status: item?.is_available ? 'available' : 'unavailable',\n currentReturnOrderQuantity: 0,\n eligibleForReturn: false,\n productSku: product?.sku ?? '',\n type: product?.__typename ?? '',\n discounted,\n id: item?.uid ?? '',\n productName: product?.name ?? '',\n productUrlKey: product?.url_key ?? '',\n regularPrice: {\n value: product?.price_range?.maximum_price?.regular_price?.value ?? 0,\n currency:\n product?.price_range?.maximum_price?.regular_price?.currency ?? 'USD',\n },\n price,\n product: transformProduct(product),\n selectedOptions: item?.customizable_options ?? [],\n thumbnail: {\n label: product?.thumbnail?.label || '',\n url: product?.thumbnail?.url || '',\n },\n downloadableLinks:\n product?.__typename === 'DownloadableProduct' &&\n item?.downloadable_links\n ? transformLinks(item.downloadable_links)\n : null,\n prices: itemPrices,\n itemPrices,\n bundleOptions:\n product?.__typename === 'BundleProduct' && item?.bundle_options\n ? transformBundleOptions(item.bundle_options)\n : null,\n totalInclTax: prices?.row_total_including_tax ?? {\n value: 0,\n currency: 'USD',\n },\n priceInclTax: prices?.price_including_tax ?? {\n value: 0,\n currency: 'USD',\n },\n total: prices?.row_total ?? { value: 0, currency: 'USD' },\n configurableOptions:\n product?.__typename === 'ConfigurableProduct'\n ? transformConfigurableOptions(item)\n : undefined,\n giftCard:\n product?.__typename === 'GiftCardProduct'\n ? transformGiftCard(item)\n : undefined,\n quantityCanceled: 0,\n quantityInvoiced: 0,\n quantityOrdered: quantity,\n quantityRefunded: 0,\n quantityReturned: 0,\n quantityShipped: 0,\n requestQuantity: 0,\n totalQuantity: quantity,\n returnableQuantity: 0,\n quantityReturnRequested: 0,\n };\n };\n\n const transformGiftOptions = (giftOptions: any) => {\n return {\n giftWrappingForItems: giftOptions?.gift_wrapping_for_items ?? {\n value: 0,\n currency: 'USD',\n },\n giftWrappingForItemsInclTax:\n giftOptions?.gift_wrapping_for_items_incl_tax ?? {\n value: 0,\n currency: 'USD',\n },\n giftWrappingForOrder: giftOptions?.gift_wrapping_for_order ?? {\n value: 0,\n currency: 'USD',\n },\n giftWrappingForOrderInclTax:\n giftOptions?.gift_wrapping_for_order_incl_tax ?? {\n value: 0,\n currency: 'USD',\n },\n printedCard: giftOptions?.printed_card ?? {\n value: 0,\n currency: 'USD',\n },\n printedCardInclTax: giftOptions?.printed_card_incl_tax ?? {\n value: 0,\n currency: 'USD',\n },\n };\n };\n\n const transformAppliedGiftCards = (appliedGiftCards: any[] = []) => {\n if (!appliedGiftCards || appliedGiftCards.length === 0) return [];\n\n return appliedGiftCards.map((giftCard: any) => ({\n code: giftCard?.code ?? '',\n appliedBalance: {\n value: giftCard?.applied_balance?.value ?? 0,\n currency: giftCard?.applied_balance?.currency ?? 'USD',\n },\n }));\n };\n\n const transformTaxes = (appliedTaxes: any[] = []) => {\n if (!appliedTaxes || appliedTaxes.length === 0) return [];\n\n return appliedTaxes.map((tax: any) => ({\n amount: {\n value: tax?.amount?.value ?? 0,\n currency: tax?.amount?.currency ?? 'USD',\n },\n rate: tax?.rate ?? 0,\n title: tax?.title ?? tax?.label ?? '',\n }));\n };\n\n // Get shipping address (first one if multiple)\n const shippingAddressData = quote?.shipping_addresses?.[0];\n const billingAddressData = quote?.billing_address;\n const selectedShippingMethod = shippingAddressData?.selected_shipping_method;\n const selectedPaymentMethod = quote?.selected_payment_method;\n const prices = quote?.prices;\n\n // Transform items from quote\n const items = quote?.itemsV2?.items?.map(transformQuoteItem) ?? [];\n\n // Calculate total quantity\n const totalQuantity = items.reduce(\n (accum: number, item: any) => accum + item.totalQuantity,\n 0\n );\n\n // Build OrderDataModel structure from quote\n // Build shipping method string like in order: \"carrier_title - method_title\"\n const shippingMethodString = selectedShippingMethod\n ? `${selectedShippingMethod.carrier_title ?? ''} - ${\n selectedShippingMethod.method_title ?? ''\n }`.trim()\n : '';\n\n const appliedGiftCards = transformAppliedGiftCards(quote?.applied_gift_cards);\n\n return {\n giftReceiptIncluded: quote?.gift_receipt_included ?? false,\n printedCardIncluded: quote?.printed_card_included ?? false,\n giftWrappingOrder: {\n price: {\n value: quote?.gift_wrapping?.price?.value ?? 0,\n currency: quote?.gift_wrapping?.price?.currency ?? 'USD',\n },\n uid: quote?.gift_wrapping?.uid ?? '',\n },\n placeholderImage: '',\n returnNumber: undefined,\n id: quote?.id ?? '',\n orderStatusChangeDate: undefined,\n number: '', // Quotes don't have order numbers yet\n email: quote?.email ?? '',\n token: undefined,\n status: 'pending', // Quote status\n isVirtual: quote?.is_virtual ?? false,\n totalQuantity,\n shippingMethod: shippingMethodString,\n carrier: selectedShippingMethod?.carrier_code ?? '',\n orderDate: '', // Quotes don't have order date yet\n returns: [],\n discounts: prices?.discounts ?? [],\n coupons: quote?.applied_coupons ?? [],\n payments: [\n {\n code: selectedPaymentMethod?.code ?? '',\n name: selectedPaymentMethod?.title ?? '',\n },\n ],\n shipping: {\n code: shippingMethodString,\n amount: selectedShippingMethod?.amount?.value ?? 0,\n currency: selectedShippingMethod?.amount?.currency ?? 'USD',\n },\n shipments: [],\n items,\n totalGiftCard: appliedGiftCards.length\n ? appliedGiftCards.reduce(\n (acc, gc) => ({\n value: acc.value + (gc?.appliedBalance?.value ?? 0),\n currency: gc?.appliedBalance?.currency ?? acc.currency,\n }),\n {\n value: 0,\n currency: appliedGiftCards[0]?.appliedBalance?.currency ?? 'USD',\n }\n )\n : { value: 0, currency: 'USD' },\n grandTotal: prices?.grand_total ?? { value: 0, currency: 'USD' },\n grandTotalExclTax: prices?.grand_total_excluding_tax ?? {\n value: 0,\n currency: 'USD',\n },\n totalShipping: selectedShippingMethod?.amount ?? {\n value: 0,\n currency: 'USD',\n },\n subtotalExclTax: prices?.subtotal_excluding_tax ?? {\n value: 0,\n currency: 'USD',\n },\n subtotalInclTax: prices?.subtotal_including_tax ?? {\n value: 0,\n currency: 'USD',\n },\n totalTax: {\n value:\n (prices?.grand_total?.value ?? 0) -\n (prices?.grand_total_excluding_tax?.value ?? 0),\n currency: prices?.grand_total?.currency ?? 'USD',\n },\n shippingAddress: shippingAddressData\n ? transformAddress(shippingAddressData)\n : null,\n totalGiftOptions: transformGiftOptions(prices?.gift_options),\n billingAddress: billingAddressData\n ? transformAddress(billingAddressData)\n : null,\n availableActions: [],\n taxes: transformTaxes(prices?.applied_taxes),\n appliedGiftCards,\n };\n}\n"],"names":["PURCHASE_ORDER_QUOTE_FRAGMENT","PURCHASE_ORDERS_FRAGMENT","transformPurchaseOrder","purchaseOrder","_a","_b","_c","_d","_e","_f","_g","_h","flow","event","comment","log","transformQuoteToOrder","quote","_i","_j","_k","_l","_m","_n","_o","parseNumber","value","transformUserInformation","user","transformAddress","address","firstName","lastName","middleName","transformProduct","product","transformConfigurableOptions","item","configurableOptions","option","transformBundleOptions","data","bundle","bundleOptions","transformLinks","links","link","transformGiftCard","transformGiftMessage","transformGiftWrapping","transformWrappingPrice","transformTaxCalculations","itemPrices","productPrice","price","priceIncludingTax","originalPrice","discounted","baseOriginalPriceValue","includeAndExcludeTax","excludeTax","includeTax","transformQuoteItem","prices","quantity","transformGiftOptions","giftOptions","transformAppliedGiftCards","appliedGiftCards","giftCard","transformTaxes","appliedTaxes","tax","shippingAddressData","billingAddressData","selectedShippingMethod","selectedPaymentMethod","items","totalQuantity","accum","shippingMethodString","acc","gc"],"mappings":"AAqBO,MAAMA,GAA8C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA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"}
@@ -1,4 +0,0 @@
1
- /*! Copyright 2026 Adobe
2
- All Rights Reserved. */
3
- import{useState as m,useEffect as p,useMemo as c}from"@dropins/tools/preact-hooks.js";import{events as u}from"@dropins/tools/event-bus.js";import{P as s}from"./permissions.js";const P=o=>{if(!o)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 r=o.admin===!0,e=a=>{const t=o[a];return t===!1?!1:t===!0?!0:r},n={purchaseOrderAll:e(s.PO_ALL),viewPurchaseOrders:e(s.VIEW_CUSTOMER),viewPurchaseOrdersForSubordinates:e(s.VIEW_SUBORDINATES),viewPurchaseOrdersForCompany:e(s.VIEW_COMPANY),autoApprovePurchaseOrder:e(s.AUTO_APPROVE),superApprovePurchaseOrder:e(s.SUPER_APPROVE),viewApprovalRules:e(s.VIEW_RULES),manageApprovalRules:e(s.MANAGE_RULES)},i=Object.values(o).some(a=>a===!1)?!1:Object.values(n).some(a=>a===!0);return{isAdmin:r,purchaseOrderEnabled:i,role:{id:"",name:r?"Company Administrator":""},permissions:n}},A=()=>{const o=u.lastPayload("auth/permissions"),[r,e]=m(o);p(()=>{const i=u.on("auth/permissions",a=>{e(a)},{eager:!0});return()=>{i==null||i.off()}},[]);const n=!r;return{permissions:c(()=>P(r),[r]),loadingPermissions:n}};export{A as u};
4
- //# sourceMappingURL=useCustomerRolePermissions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useCustomerRolePermissions.js","sources":["/@dropins/storefront-purchase-order/src/data/transforms/transform-customer-role-permissions.ts","/@dropins/storefront-purchase-order/src/hooks/useCustomerRolePermissions.tsx"],"sourcesContent":["/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { CustomerRolePermissionsModel } from '@/b2b-purchase-order/data/models/customer-role-permissions-model';\nimport { PO_PERMISSIONS } from '@/b2b-purchase-order/api/permissions';\n\ntype PermissionsPayload = {\n admin?: boolean;\n [key: string]: boolean | undefined;\n};\n\n/**\n * Transforms flat permissions object from auth/permissions event into CustomerRolePermissionsModel\n *\n * Permission Logic:\n * - true: Permission granted\n * - false: Permission disabled (overrides admin privileges - indicates PO feature is disabled)\n * - Default: Admins get access, regular users don't\n *\n * @param permissionsData - Flat object with permission keys and admin flag\n * @returns CustomerRolePermissionsModel\n */\nexport const transformPermissions = (\n permissionsData: PermissionsPayload | null | undefined\n): CustomerRolePermissionsModel => {\n // Fallback for edge cases\n if (!permissionsData) {\n return {\n isAdmin: false,\n purchaseOrderEnabled: false,\n role: { id: '', name: '' },\n permissions: {\n purchaseOrderAll: false,\n viewPurchaseOrders: false,\n viewPurchaseOrdersForSubordinates: false,\n viewPurchaseOrdersForCompany: false,\n autoApprovePurchaseOrder: false,\n superApprovePurchaseOrder: false,\n viewApprovalRules: false,\n manageApprovalRules: false,\n },\n };\n }\n\n const isAdmin = permissionsData.admin === true;\n\n /**\n * Check if permission is granted\n * - false: Overrides admin (PO disabled)\n * - true: Permission granted\n * - Default: Use admin status\n */\n const hasPermission = (key: string): boolean => {\n const permissionValue = permissionsData[key];\n\n if (permissionValue === false) {\n return false;\n }\n\n if (permissionValue === true) {\n return true;\n }\n\n return isAdmin;\n };\n\n const permissions = {\n purchaseOrderAll: hasPermission(PO_PERMISSIONS.PO_ALL),\n viewPurchaseOrders: hasPermission(PO_PERMISSIONS.VIEW_CUSTOMER),\n viewPurchaseOrdersForSubordinates: hasPermission(\n PO_PERMISSIONS.VIEW_SUBORDINATES\n ),\n viewPurchaseOrdersForCompany: hasPermission(PO_PERMISSIONS.VIEW_COMPANY),\n autoApprovePurchaseOrder: hasPermission(PO_PERMISSIONS.AUTO_APPROVE),\n superApprovePurchaseOrder: hasPermission(PO_PERMISSIONS.SUPER_APPROVE),\n viewApprovalRules: hasPermission(PO_PERMISSIONS.VIEW_RULES),\n manageApprovalRules: hasPermission(PO_PERMISSIONS.MANAGE_RULES),\n };\n\n // Purchase orders are disabled if ANY permission in the payload is explicitly set to false\n // Otherwise enabled if user has at least one permission\n const hasExplicitlyDisabledPermission = Object.values(permissionsData).some(\n (value) => value === false\n );\n const purchaseOrderEnabled = hasExplicitlyDisabledPermission\n ? false\n : Object.values(permissions).some((permission) => permission === true);\n\n return {\n isAdmin,\n purchaseOrderEnabled,\n role: {\n id: '',\n name: isAdmin ? 'Company Administrator' : '',\n },\n permissions,\n };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { useMemo, useState, useEffect } from 'preact/hooks';\nimport { events } from '@adobe-commerce/event-bus';\nimport { transformPermissions } from '@/b2b-purchase-order/data/transforms/transform-customer-role-permissions';\nimport { CustomerRolePermissionsModel } from '@/b2b-purchase-order/data/models';\n\n/**\n * Hook to consume customer role permissions from the auth/permissions event\n *\n * Initializes with last payload and subscribes to real-time updates.\n * Transforms permissions data where:\n * - true: Permission granted\n * - false: Permission disabled (overrides admin - PO feature disabled)\n * - Default: Admins get access, regular users don't\n *\n * @returns {permissions: CustomerRolePermissionsModel, loadingPermissions: boolean}\n */\nexport const useCustomerRolePermissions = (): {\n permissions: CustomerRolePermissionsModel;\n loadingPermissions: boolean;\n} => {\n // Initialize with the last payload from the auth/permissions event\n const initialPermissionsData = events.lastPayload('auth/permissions');\n\n // State to hold permissions data, updated when event is triggered\n const [permissionsData, setPermissionsData] = useState(\n initialPermissionsData\n );\n\n // Subscribe to auth/permissions event for real-time updates\n useEffect(() => {\n const subscription = events.on(\n 'auth/permissions',\n (payload) => {\n setPermissionsData(payload);\n },\n { eager: true }\n );\n\n // Cleanup subscription on unmount\n return () => {\n subscription?.off();\n };\n }, []);\n\n // We're loading if we don't have permissions data from the event yet\n const loadingPermissions = !permissionsData;\n\n // Transform and memoize the permissions data\n const permissions = useMemo(() => {\n return transformPermissions(permissionsData);\n }, [permissionsData]);\n\n return {\n permissions,\n loadingPermissions,\n };\n};\n"],"names":["transformPermissions","permissionsData","isAdmin","hasPermission","key","permissionValue","permissions","PO_PERMISSIONS","purchaseOrderEnabled","value","permission","useCustomerRolePermissions","initialPermissionsData","events","setPermissionsData","useState","useEffect","subscription","payload","loadingPermissions","useMemo"],"mappings":"gLAoCO,MAAMA,EACXC,GACiC,CAEjC,GAAI,CAACA,EACH,MAAO,CACL,QAAS,GACT,qBAAsB,GACtB,KAAM,CAAE,GAAI,GAAI,KAAM,EAAA,EACtB,YAAa,CACX,iBAAkB,GAClB,mBAAoB,GACpB,kCAAmC,GACnC,6BAA8B,GAC9B,yBAA0B,GAC1B,0BAA2B,GAC3B,kBAAmB,GACnB,oBAAqB,EAAA,CACvB,EAIJ,MAAMC,EAAUD,EAAgB,QAAU,GAQpCE,EAAiBC,GAAyB,CAC9C,MAAMC,EAAkBJ,EAAgBG,CAAG,EAE3C,OAAIC,IAAoB,GACf,GAGLA,IAAoB,GACf,GAGFH,CACT,EAEMI,EAAc,CAClB,iBAAkBH,EAAcI,EAAe,MAAM,EACrD,mBAAoBJ,EAAcI,EAAe,aAAa,EAC9D,kCAAmCJ,EACjCI,EAAe,iBAAA,EAEjB,6BAA8BJ,EAAcI,EAAe,YAAY,EACvE,yBAA0BJ,EAAcI,EAAe,YAAY,EACnE,0BAA2BJ,EAAcI,EAAe,aAAa,EACrE,kBAAmBJ,EAAcI,EAAe,UAAU,EAC1D,oBAAqBJ,EAAcI,EAAe,YAAY,CAAA,EAQ1DC,EAHkC,OAAO,OAAOP,CAAe,EAAE,KACpEQ,GAAUA,IAAU,EAAA,EAGnB,GACA,OAAO,OAAOH,CAAW,EAAE,KAAMI,GAAeA,IAAe,EAAI,EAEvE,MAAO,CACL,QAAAR,EACA,qBAAAM,EACA,KAAM,CACJ,GAAI,GACJ,KAAMN,EAAU,wBAA0B,EAAA,EAE5C,YAAAI,CAAA,CAEJ,EC9EaK,EAA6B,IAGrC,CAEH,MAAMC,EAAyBC,EAAO,YAAY,kBAAkB,EAG9D,CAACZ,EAAiBa,CAAkB,EAAIC,EAC5CH,CAAA,EAIFI,EAAU,IAAM,CACd,MAAMC,EAAeJ,EAAO,GAC1B,mBACCK,GAAY,CACXJ,EAAmBI,CAAO,CAC5B,EACA,CAAE,MAAO,EAAA,CAAK,EAIhB,MAAO,IAAM,CACXD,GAAA,MAAAA,EAAc,KAChB,CACF,EAAG,CAAA,CAAE,EAGL,MAAME,EAAqB,CAAClB,EAO5B,MAAO,CACL,YALkBmB,EAAQ,IACnBpB,EAAqBC,CAAe,EAC1C,CAACA,CAAe,CAAC,EAIlB,mBAAAkB,CAAA,CAEJ"}
@@ -1,4 +0,0 @@
1
- /*! Copyright 2026 Adobe
2
- All Rights Reserved. */
3
- import{useState as a,useEffect as n}from"@dropins/tools/preact-hooks.js";import{events as c}from"@dropins/tools/event-bus.js";const i=()=>{const[t,s]=a(!0),[u,o]=a(null);return n(()=>{const e=c.on("purchase-order/data",r=>{r!=null&&r.uid&&o(r),s(!1)},{eager:!0});return()=>{e==null||e.off()}},[]),{poDataLoading:t,purchaseOrderData:u}};export{i as u};
4
- //# sourceMappingURL=usePurchaseOrderData.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usePurchaseOrderData.js","sources":["/@dropins/storefront-purchase-order/src/hooks/usePurchaseOrderData.tsx"],"sourcesContent":["/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { useEffect, useState } from 'preact/hooks';\nimport { PurchaseOrderModel } from '../data/models';\nimport { events } from '@adobe-commerce/event-bus';\n\nexport const usePurchaseOrderData = () => {\n const [poDataLoading, setPoDataLoading] = useState(true);\n const [purchaseOrderData, setPurchaseOrderData] =\n useState<PurchaseOrderModel | null>(null);\n\n useEffect(() => {\n const event = events.on(\n 'purchase-order/data',\n (po: PurchaseOrderModel) => {\n if (po?.uid) {\n setPurchaseOrderData(po);\n }\n\n setPoDataLoading(false);\n },\n { eager: true }\n );\n\n return () => {\n event?.off();\n };\n }, []);\n\n return { poDataLoading, purchaseOrderData };\n};\n"],"names":["usePurchaseOrderData","poDataLoading","setPoDataLoading","useState","purchaseOrderData","setPurchaseOrderData","useEffect","event","events","po"],"mappings":"8HAqBO,MAAMA,EAAuB,IAAM,CACxC,KAAM,CAACC,EAAeC,CAAgB,EAAIC,EAAS,EAAI,EACjD,CAACC,EAAmBC,CAAoB,EAC5CF,EAAoC,IAAI,EAE1C,OAAAG,EAAU,IAAM,CACd,MAAMC,EAAQC,EAAO,GACnB,sBACCC,GAA2B,CACtBA,GAAA,MAAAA,EAAI,KACNJ,EAAqBI,CAAE,EAGzBP,EAAiB,EAAK,CACxB,EACA,CAAE,MAAO,EAAA,CAAK,EAGhB,MAAO,IAAM,CACXK,GAAA,MAAAA,EAAO,KACT,CACF,EAAG,CAAA,CAAE,EAEE,CAAE,cAAAN,EAAe,kBAAAG,CAAA,CAC1B"}
@@ -1,4 +0,0 @@
1
- /*! Copyright 2026 Adobe
2
- All Rights Reserved. */
3
- import{jsx as a,jsxs as f}from"@dropins/tools/preact-jsx-runtime.js";import{useState as o,useEffect as U,useCallback as d,useMemo as V}from"@dropins/tools/preact-hooks.js";import{events as H}from"@dropins/tools/event-bus.js";import{i as fe,g as ge}from"./pageSize.config.js";import{f as re}from"./formatDate.js";import{Tag as me,Price as Pe,ActionButton as te}from"@dropins/tools/components.js";import{r as be,a as Re}from"./rejectPurchaseOrders.js";import{g as Oe}from"./getPurchaseOrders.js";import{d as Ae,a as Ce}from"./PurchaseOrderHistoryLogContent.js";import{Text as g}from"@dropins/tools/i18n.js";var M=(i=>(i.CUSTOMER_PURCHASE_ORDERS="customerPurchaseOrders",i.COMPANY_PURCHASE_ORDERS="companyPurchaseOrders",i.CUSTOMER_APPROVAL_PURCHASE_ORDERS="customerApprovalPurchaseOrders",i))(M||{});const Ee=20,Ie=({view:i,initialPageSize:se,routePurchaseOrderDetails:A,setColumns:C,setRowsData:k,t:n,permissions:v,loadingPermissions:j})=>{const E=i===M.COMPANY_PURCHASE_ORDERS,c=i===M.CUSTOMER_APPROVAL_PURCHASE_ORDERS,[$,S]=o(!0),[l,y]=o([]),[h,z]=o([]),[m,ae]=o(se),[ne,p]=o(!0),[ce,B]=o({currentPage:1,totalPages:1,totalCount:0}),[P,b]=o({heading:"",description:"",type:"success"}),[x,N]=o(new Set);U(()=>{const r=H.on("purchase-order/refresh",()=>{S(!0)},{eager:!0});return()=>{r==null||r.off()}},[]),U(()=>{if(P.heading||P.description){const r=setTimeout(()=>{b({heading:"",description:"",type:"success"})},7e3);return()=>clearTimeout(r)}},[P.heading,P.description]);const{currentPage:D,totalPages:oe,totalCount:de}=ce,I=d(r=>{B(s=>({...s,currentPage:r})),N(new Set),S(!0)},[]),ie=d(r=>{const s=r.target.value;ae(e=>e.map(t=>({...t,selected:t.value===s}))),I(1),N(new Set),S(!0)},[I]),R=(v==null?void 0:v.isAdmin)??!1,G=V(()=>{let r={};return E&&(r={companyPurchaseOrders:!0}),c&&(r={myApprovals:!0}),r},[E,c]);U(()=>{var e;if(!$||j)return;p(!0);const r=(e=m==null?void 0:m.find(t=>t.selected))==null?void 0:e.value,s=parseInt(r??Ee.toString(),10);Oe(G,s,D).then(t=>{var w,T;const u=(t==null?void 0:t.purchaseOrderItems)??[],_=(w=t==null?void 0:t.pageInfo)==null?void 0:w.currentPage,O=(T=t==null?void 0:t.pageInfo)==null?void 0:T.totalPages,L=t==null?void 0:t.totalCount;B({currentPage:_>O?O||1:_,totalPages:O,totalCount:L}),z(u)}).catch(t=>{console.error("Failed to fetch purchase orders:",t),z([])}).finally(()=>{p(!1),S(!1)})},[$,D,m,G,j]);const q=d(r=>{const s=A==null?void 0:A(r);return fe(s??"")?s:"#"},[A]),Q=d(r=>{N(s=>{const e=new Set(s);return e.has(r)?e.delete(r):e.add(r),e})},[]),F=d(r=>{const s=r.target.value,e=r.target.checked;y(t=>e?[...t,s]:t.filter(u=>u!==s))},[]),Y=d(r=>{const s=r.target.checked;y(()=>s?h.filter(e=>["PENDING","APPROVAL_REQUIRED"].includes(e.status)).map(e=>e.uid??""):[])},[h]),le=d(()=>{p(!0),be(l).then(()=>{b({heading:n.alertHeaderReject,description:n.alertDescriptionReject,type:"success"}),y([]),H.emit("purchase-order/refresh",!0)}).catch(r=>{b({heading:n.alertHeaderError,description:n.alertDescriptionError,type:"error"}),console.error(r)}).finally(()=>{p(!1)})},[l,n]),ue=d(()=>{p(!0),Re(l).then(()=>{b({heading:n.alertHeaderApprove,description:n.alertDescriptionApprove,type:"success"}),y([]),H.emit("purchase-order/refresh",!0)}).catch(r=>{b({heading:n.alertHeaderError,description:n.alertDescriptionError,type:"error"}),console.error(r)}).finally(()=>{p(!1)})},[l,n]),he=V(()=>{const r=E||c?Ae:Ce;return(C==null?void 0:C(r))??r.map(s=>s.key==="checkboxView"&&(R||c)?{key:s.key,label:a("input",{type:"checkbox",name:"selectAll",disabled:h.every(e=>!["PENDING","APPROVAL_REQUIRED"].includes(e.status)),onChange:Y}),ariaLabel:n.selectAllAriaLabel}:{...s,label:n[s.key]||s.label})},[n,R,E,c,C,h,Y]),pe=V(()=>{const r=h.map((e,t)=>{var Z,J,K,W,X,ee;const u=e.number??"",_=x.has(t),O=`${((Z=e.createdBy)==null?void 0:Z.firstname)??""} ${((J=e.createdBy)==null?void 0:J.lastname)??""}`.trim(),L=a(te,{type:"button",onClick:()=>Q(t),children:a(g,{id:`PurchaseOrders.purchaseOrdersTable.buttons.${_?"expandedHidden":"expandedShow"}`})}),w=a(me,{className:`b2b-purchase-order-purchase-orders-table__status b2b-purchase-order-purchase-orders-table__status--${ge(e.status)}`,children:a(g,{id:`PurchaseOrders.purchaseOrdersTable.statusOrder.${e.status.toLowerCase()}`})}),T=f("div",{className:"b2b-purchase-order-purchase-orders-table__row-details",children:[f("div",{className:"b2b-purchase-order-purchase-orders-table__row-details-content",children:[f("p",{children:[a("span",{children:a(g,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.orderNumber"})})," ",e.order.orderNumber]}),f("p",{children:[a("span",{children:a(g,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.createdDate"})})," ",re(e.createdAt)]}),f("p",{children:[a("span",{children:a(g,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.updatedDate"})})," ",re(e.updatedAt)]}),f("p",{children:[a("span",{children:a(g,{id:"PurchaseOrders.purchaseOrdersTable.expandedRowLabels.total"})})," ",a(Pe,{amount:(W=(K=e==null?void 0:e.quote)==null?void 0:K.grandTotal)==null?void 0:W.value,currency:(ee=(X=e==null?void 0:e.quote)==null?void 0:X.grandTotal)==null?void 0:ee.currency,weight:"normal"})]})]}),a("div",{className:"b2b-purchase-order-purchase-orders-table__row-details-action",children:a(te,{onClick:()=>{window.location.href=q(e.uid??"")},"aria-label":`View purchase order ${u}`,children:n.actionView})})]});return{...R||c?{checkboxView:a("input",{type:"checkbox",name:u,value:e.uid,checked:l.includes(e.uid),onChange:F,disabled:!["PENDING","APPROVAL_REQUIRED"].includes(e.status)})}:{},poNumber:u,status:w,createdBy:O,action:L,_rowDetails:T}});let s=r;if(k){const e=k(r);e!==void 0&&Array.isArray(e)&&(s=e)}return s},[h,k,R,c,l,F,q,n.actionView,x,Q]);return{tableConfig:{columns:he,rows:pe,expandedRows:x},paginationConfig:{currentPage:D,totalPages:oe,handlePageChange:I},pageSizeConfig:{pageSizeOptionsList:m,onChange:ie},totalCount:de,loading:ne,selectedOrderIds:l,handleRejectSelected:le,handleApproveSelected:ue,isAdmin:R,isRequireApprovalPOsView:c,alertMessageConfig:P}};export{M as E,Ie as u};
4
- //# sourceMappingURL=usePurchaseOrders.js.map