@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.
- package/CHANGELOG.md +6 -0
- package/api.js +784 -6
- package/api.js.map +1 -1
- package/chunks/components.js +4 -0
- package/chunks/components.js.map +1 -0
- package/containers/ApprovalRuleDetails.js +1 -1
- package/containers/ApprovalRuleDetails.js.map +1 -1
- package/containers/ApprovalRuleForm.js +1 -1
- package/containers/ApprovalRuleForm.js.map +1 -1
- package/containers/ApprovalRulesList.js +1 -1
- package/containers/ApprovalRulesList.js.map +1 -1
- package/containers/CompanyPurchaseOrders.js +1 -1
- package/containers/CompanyPurchaseOrders.js.map +1 -1
- package/containers/CustomerPurchaseOrders.js +1 -1
- package/containers/CustomerPurchaseOrders.js.map +1 -1
- package/containers/PurchaseOrderApprovalFlow.js +1 -1
- package/containers/PurchaseOrderApprovalFlow.js.map +1 -1
- package/containers/PurchaseOrderCommentForm.js +1 -1
- package/containers/PurchaseOrderCommentForm.js.map +1 -1
- package/containers/PurchaseOrderCommentsList.js +1 -1
- package/containers/PurchaseOrderCommentsList.js.map +1 -1
- package/containers/PurchaseOrderConfirmation.js +1 -1
- package/containers/PurchaseOrderConfirmation.js.map +1 -1
- package/containers/PurchaseOrderHistoryLog.js +1 -1
- package/containers/PurchaseOrderHistoryLog.js.map +1 -1
- package/containers/PurchaseOrderStatus.js +1 -1
- package/containers/PurchaseOrderStatus.js.map +1 -1
- package/containers/RequireApprovalPurchaseOrders.js +1 -1
- package/containers/RequireApprovalPurchaseOrders.js.map +1 -1
- package/package.json +1 -1
- package/render.js +2 -3
- package/render.js.map +1 -1
- package/chunks/FormLoader.js +0 -4
- package/chunks/FormLoader.js.map +0 -1
- package/chunks/PurchaseOrderHistoryLogContent.js +0 -4
- package/chunks/PurchaseOrderHistoryLogContent.js.map +0 -1
- package/chunks/PurchaseOrdersHeader.js +0 -4
- package/chunks/PurchaseOrdersHeader.js.map +0 -1
- package/chunks/PurchaseOrdersTableActions.js +0 -4
- package/chunks/PurchaseOrdersTableActions.js.map +0 -1
- package/chunks/addPurchaseOrderComment.js +0 -36
- package/chunks/addPurchaseOrderComment.js.map +0 -1
- package/chunks/case-converter.js +0 -4
- package/chunks/case-converter.js.map +0 -1
- package/chunks/currencyInfo.js +0 -124
- package/chunks/currencyInfo.js.map +0 -1
- package/chunks/fetch-error.js +0 -4
- package/chunks/fetch-error.js.map +0 -1
- package/chunks/formatDate.js +0 -4
- package/chunks/formatDate.js.map +0 -1
- package/chunks/getPurchaseOrderApprovalRule.js +0 -45
- package/chunks/getPurchaseOrderApprovalRule.js.map +0 -1
- package/chunks/getPurchaseOrderApprovalRules.js +0 -75
- package/chunks/getPurchaseOrderApprovalRules.js.map +0 -1
- package/chunks/getPurchaseOrders.js +0 -29
- package/chunks/getPurchaseOrders.js.map +0 -1
- package/chunks/initialize.js +0 -13
- package/chunks/initialize.js.map +0 -1
- package/chunks/pageSize.config.js +0 -4
- package/chunks/pageSize.config.js.map +0 -1
- package/chunks/permissions.js +0 -4
- package/chunks/permissions.js.map +0 -1
- package/chunks/placeOrderForPurchaseOrder.js +0 -39
- package/chunks/placeOrderForPurchaseOrder.js.map +0 -1
- package/chunks/rejectPurchaseOrders.js +0 -30
- package/chunks/rejectPurchaseOrders.js.map +0 -1
- package/chunks/transform-purchase-order-approval-rule.js +0 -4
- package/chunks/transform-purchase-order-approval-rule.js.map +0 -1
- package/chunks/transform-purchase-order.js +0 -423
- package/chunks/transform-purchase-order.js.map +0 -1
- package/chunks/useCustomerRolePermissions.js +0 -4
- package/chunks/useCustomerRolePermissions.js.map +0 -1
- package/chunks/usePurchaseOrderData.js +0 -4
- package/chunks/usePurchaseOrderData.js.map +0 -1
- package/chunks/usePurchaseOrders.js +0 -4
- 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;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,ECF9CC,GAAyC;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,IA+ClDD,EAA6B;AAAA,EC/CpBE,GACXC,GACuB,CFAlB,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EEoDL,MAnDc,CACZ,UAAUR,GAAA,YAAAA,EAAe,aAAc,GACvC,KAAKA,GAAA,YAAAA,EAAe,MAAO,GAC3B,QAAQA,GAAA,YAAAA,EAAe,SAAU,GACjC,QAAQA,GAAA,YAAAA,EAAe,SAAU,GACjC,kBAAkBA,GAAA,YAAAA,EAAe,oBAAqB,CAAA,EACtD,cAAcC,EAAAD,GAAA,YAAAA,EAAe,gBAAf,MAAAC,EAA8B,OACxCD,EAAc,cAAc,IAAKS,GAAA,CFRlC,IAAAR,EEQiD,OAC9C,UAAUQ,GAAA,YAAAA,EAAM,YAAa,GAC7B,SACER,EAAAQ,GAAA,YAAAA,EAAM,SAAN,YAAAR,EAAc,IAAKS,IAAgB,CACjC,SAASA,GAAA,YAAAA,EAAO,UAAW,GAC3B,MAAMA,GAAA,YAAAA,EAAO,OAAQ,GACrB,MAAMA,GAAA,YAAAA,EAAO,OAAQ,GACrB,QAAQA,GAAA,YAAAA,EAAO,SAAU,GACzB,WAAWA,GAAA,YAAAA,EAAO,aAAc,EAAA,MAC3B,CAAA,CAAC,EACV,EACF,CAAA,EACJ,WACER,EAAAF,GAAA,YAAAA,EAAe,WAAf,YAAAE,EAAyB,IAAKS,GAAA,CFrB7B,IAAAV,EAAAC,EAAAC,EEqB+C,OAC9C,KAAKQ,GAAA,YAAAA,EAAS,MAAO,GACrB,WAAWA,GAAA,YAAAA,EAAS,aAAc,GAClC,OAAQ,CACN,YAAWV,EAAAU,GAAA,YAAAA,EAAS,SAAT,YAAAV,EAAiB,YAAa,GACzC,WAAUC,EAAAS,GAAA,YAAAA,EAAS,SAAT,YAAAT,EAAiB,WAAY,GACvC,QAAOC,EAAAQ,GAAA,YAAAA,EAAS,SAAT,YAAAR,EAAiB,QAAS,EAAA,EAEnC,MAAMQ,GAAA,YAAAA,EAAS,OAAQ,EAAA,MAClB,CAAA,EACT,WAAWX,GAAA,YAAAA,EAAe,aAAc,GACxC,WAAWA,GAAA,YAAAA,EAAe,aAAc,GACxC,UAAW,CACT,YAAWG,EAAAH,GAAA,YAAAA,EAAe,aAAf,YAAAG,EAA2B,YAAa,GACnD,WAAUC,EAAAJ,GAAA,YAAAA,EAAe,aAAf,YAAAI,EAA2B,WAAY,GACjD,QAAOC,EAAAL,GAAA,YAAAA,EAAe,aAAf,YAAAK,EAA2B,QAAS,EAAA,EAE7C,aACEC,EAAAN,GAAA,YAAAA,EAAe,cAAf,YAAAM,EAA4B,IAAKM,IAAc,CAC7C,UAAUA,GAAA,YAAAA,EAAK,WAAY,GAC3B,WAAWA,GAAA,YAAAA,EAAK,aAAc,GAC9B,SAASA,GAAA,YAAAA,EAAK,UAAW,GACzB,KAAKA,GAAA,YAAAA,EAAK,MAAO,EAAA,MACZ,CAAA,EACT,MAAOC,GAAsBb,GAAA,YAAAA,EAAe,KAAK,EACjD,MAAO,CACL,KAAIO,EAAAP,GAAA,YAAAA,EAAe,QAAf,YAAAO,EAAsB,KAAM,GAChC,cAAaC,EAAAR,GAAA,YAAAA,EAAe,QAAf,YAAAQ,EAAsB,SAAU,EAAA,CAC/C,CAIJ,EAEA,SAASK,GAAsBC,EAAY,CFvDpC,IAAAb,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAO,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EEwDL,GAAI,CAACP,EAAO,OAAO,KAGnB,MAAMQ,EAAeC,GACZA,GAAS,EAGZC,EAA4BC,IACzB,CACL,WAAWA,GAAA,YAAAA,EAAM,YAAa,GAC9B,UAAUA,GAAA,YAAAA,EAAM,WAAY,GAC5B,YAAYA,GAAA,YAAAA,EAAM,aAAc,EAAA,GAI9BC,EAAoBC,GAAiB,CFvEtC,IAAA1B,EAAAC,EAAAC,EAAAC,EEwEH,KAAM,CAAE,UAAAwB,EAAW,SAAAC,EAAU,WAAAC,CAAA,EAC3BN,EAAyBG,CAAO,EAElC,MAAO,CACL,UAAAC,EACA,SAAAC,EACA,WAAAC,EACA,MAAMH,GAAA,YAAAA,EAAS,OAAQ,GACvB,SAASA,GAAA,YAAAA,EAAS,UAAW,GAC7B,UAAS1B,EAAA0B,GAAA,YAAAA,EAAS,UAAT,YAAA1B,EAAkB,QAAS,GACpC,cAAaC,EAAAyB,GAAA,YAAAA,EAAS,UAAT,YAAAzB,EAAkB,OAAQ,GACvC,KAAKyB,GAAA,YAAAA,EAAS,MAAO,GACrB,UAAUA,GAAA,YAAAA,EAAS,WAAY,GAC/B,QAAQA,GAAA,YAAAA,EAAS,SAAU,GAC3B,SAAQxB,EAAAwB,GAAA,YAAAA,EAAS,SAAT,YAAAxB,EAAiB,QAAS,GAClC,WAAUC,EAAAuB,GAAA,YAAAA,EAAS,SAAT,YAAAvB,EAAiB,OAAQ,GACnC,QAAQuB,GAAA,YAAAA,EAAS,SAAU,CAAA,EAC3B,QAAQA,GAAA,YAAAA,EAAS,SAAU,GAC3B,WAAWA,GAAA,YAAAA,EAAS,YAAa,GACjC,OAAOA,GAAA,YAAAA,EAAS,SAAU,GAC1B,kBAAkBA,GAAA,YAAAA,EAAS,oBAAqB,CAAA,CAAC,CAErD,EAEMI,EAAoBC,GAAiB,CFhGtC,IAAA/B,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAO,EAAAC,EEiGH,MAAO,CACL,YAAYgB,GAAA,YAAAA,EAAS,aAAc,GACnC,KAAKA,GAAA,YAAAA,EAAS,MAAO,GACrB,kBAAkBA,GAAA,YAAAA,EAAS,uBAAwB,EACnD,aAAaA,GAAA,YAAAA,EAAS,eAAgB,GACtC,WAAY,CACV,aAAc,CACZ,aAAc,CACZ,WACE7B,GAAAD,GAAAD,EAAA+B,GAAA,YAAAA,EAAS,cAAT,YAAA/B,EAAsB,gBAAtB,YAAAC,EAAqC,gBAArC,YAAAC,EAAoD,WACpD,GACF,QACEG,GAAAD,GAAAD,EAAA4B,GAAA,YAAAA,EAAS,cAAT,YAAA5B,EAAsB,gBAAtB,YAAAC,EAAqC,gBAArC,YAAAC,EAAoD,QAAS,CAAA,CACjE,CACF,EAEF,cAAc0B,GAAA,YAAAA,EAAS,gBAAiB,GACxC,QAAQA,GAAA,YAAAA,EAAS,UAAW,GAC5B,IAAIA,GAAA,YAAAA,EAAS,MAAO,GACpB,MAAMA,GAAA,YAAAA,EAAS,OAAQ,GACvB,KAAKA,GAAA,YAAAA,EAAS,MAAO,GACrB,QAAOzB,EAAAyB,GAAA,YAAAA,EAAS,QAAT,YAAAzB,EAAgB,MAAO,GAC9B,WAAUC,EAAAwB,GAAA,YAAAA,EAAS,QAAT,YAAAxB,EAAgB,QAAS,GACnC,aAAawB,GAAA,YAAAA,EAAS,aAAc,GACpC,UAAW,CACT,QAAOjB,EAAAiB,GAAA,YAAAA,EAAS,YAAT,YAAAjB,EAAoB,QAAS,GACpC,MAAKC,EAAAgB,GAAA,YAAAA,EAAS,YAAT,YAAAhB,EAAoB,MAAO,EAAA,CAClC,CAEJ,EAEMiB,EAAgCC,GAAc,CAIlD,GAHI,CAACA,GAGD,EAAE,yBAA0BA,GAAO,OAEvC,MAAMC,EAA8C,CAAA,EAEpD,UAAWC,KAAUF,EAAK,qBAExBC,EAAoBC,EAAQ,YAAY,EAAIA,EAAQ,YAGtD,OAAOD,CACT,EACME,EAA0BC,GAAc,CAC5C,MAAMC,EAASD,GAAA,YAAAA,EAAM,IAAKF,IAAiB,CACzC,IAAKA,EAAO,IACZ,MAAOA,EAAO,MACd,OAAQA,EAAO,OAAO,IAAKb,GAAeA,EAAM,YAAY,EAAE,KAAK,IAAI,CAAA,IAGnEiB,EAAwC,CAAA,EAE9C,OAAAD,GAAA,MAAAA,EAAQ,QAASH,GAAgB,CAC/BI,EAAcJ,EAAO,KAAK,EAAIA,EAAO,MACvC,GAEO,OAAO,KAAKI,CAAa,EAAE,OAAS,EAAIA,EAAgB,IACjE,EAEMC,EAAkBC,IACfA,GAAA,YAAAA,EAAO,QAAS,EACnB,CACE,MAAOA,EAAM,OACb,OAAQA,EAAM,IAAKC,GAAcA,EAAK,KAAK,EAAE,KAAK,IAAI,CAAA,EAExD,KAGAC,EAAqBV,GAAc,CFxKpC,IAAAjC,EAAAC,EAAAC,EAAAC,EAAAC,EEyKH,MAAO,CACL,aAAYJ,EAAAiC,GAAA,YAAAA,EAAM,YAAN,YAAAjC,EAAiB,cAAe,GAC5C,cAAaC,EAAAgC,GAAA,YAAAA,EAAM,YAAN,YAAAhC,EAAiB,eAAgB,GAC9C,iBAAgBC,EAAA+B,GAAA,YAAAA,EAAM,YAAN,YAAA/B,EAAiB,kBAAmB,GACpD,gBAAeC,EAAA8B,GAAA,YAAAA,EAAM,YAAN,YAAA9B,EAAiB,iBAAkB,GAClD,UAASC,EAAA6B,GAAA,YAAAA,EAAM,YAAN,YAAA7B,EAAiB,UAAW,EAAA,CAEzC,EAEMwC,EAAwBP,GAAc,CFlLvC,IAAArC,EAAAC,EAAAC,EEmLH,MAAO,CACL,aAAYF,EAAAqC,GAAA,YAAAA,EAAM,eAAN,YAAArC,EAAoB,OAAQ,GACxC,gBAAeC,EAAAoC,GAAA,YAAAA,EAAM,eAAN,YAAApC,EAAoB,KAAM,GACzC,UAASC,EAAAmC,GAAA,YAAAA,EAAM,eAAN,YAAAnC,EAAoB,UAAW,EAAA,CAE5C,EAEM2C,EAAyBR,GAAc,CF1LxC,IAAArC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAO,EAAAC,EAAAC,EE2LH,MAAO,CACL,SAAQhB,EAAAqC,GAAA,YAAAA,EAAM,gBAAN,YAAArC,EAAqB,SAAU,GACvC,MAAKC,EAAAoC,GAAA,YAAAA,EAAM,gBAAN,YAAApC,EAAqB,MAAO,GACjC,SAAU,IAAQC,EAAAmC,GAAA,YAAAA,EAAM,gBAAN,MAAAnC,EAAqB,KACvC,MAAO,CACL,MAAKE,GAAAD,EAAAkC,GAAA,YAAAA,EAAM,gBAAN,YAAAlC,EAAqB,QAArB,YAAAC,EAA4B,MAAO,GACxC,QAAOE,GAAAD,EAAAgC,GAAA,YAAAA,EAAM,gBAAN,YAAAhC,EAAqB,QAArB,YAAAC,EAA4B,QAAS,EAAA,EAE9C,MAAO,CACL,WAAUQ,GAAAP,EAAA8B,GAAA,YAAAA,EAAM,gBAAN,YAAA9B,EAAqB,QAArB,YAAAO,EAA4B,WAAY,MAClD,QAAOE,GAAAD,EAAAsB,GAAA,YAAAA,EAAM,gBAAN,YAAAtB,EAAqB,QAArB,YAAAC,EAA4B,QAAS,CAAA,CAC9C,CAEJ,EAEM8B,EAA0BT,IACvB,CACL,UAAUA,GAAA,YAAAA,EAAM,WAAY,MAC5B,OAAOA,GAAA,YAAAA,EAAM,QAAS,CAAA,GAIpBU,EAA2B,CAC/BC,EACAC,IACG,CACH,MAAMC,EAAQF,GAAA,YAAAA,EAAY,MACpBG,EAAoBH,GAAA,YAAAA,EAAY,kBAChCI,EAAgBJ,GAAA,YAAAA,EAAY,cAG5BK,EAAa,GACbC,EAAyBD,EAC3BD,GAAA,YAAAA,EAAe,MACfD,GAAA,YAAAA,EAAmB,MAEjBI,EAAuB,CAC3B,cAAAH,EACA,kBAAmB,CACjB,MAAOE,EACP,SAAUF,GAAA,YAAAA,EAAe,QAAA,EAE3B,oBAAqB,CACnB,MAAOD,GAAA,YAAAA,EAAmB,MAC1B,SAAUA,GAAA,YAAAA,EAAmB,QAAA,EAE/B,iBAAkB,CAChB,MAAOD,GAAA,YAAAA,EAAO,MACd,SAAUA,GAAA,YAAAA,EAAO,QAAA,CACnB,EAGIM,EAAa,CACjB,cAAAJ,EACA,kBAAmB,CACjB,MAAOA,GAAA,YAAAA,EAAe,MACtB,SAAUD,GAAA,YAAAA,EAAmB,QAAA,EAE/B,oBAAqB,CACnB,MAAOF,GAAA,YAAAA,EAAc,MACrB,SAAUC,GAAA,YAAAA,EAAO,QAAA,EAEnB,iBAAkB,CAChB,MAAOA,GAAA,YAAAA,EAAO,MACd,SAAUA,GAAA,YAAAA,EAAO,QAAA,CACnB,EAGIO,EAAa,CACjB,gBAAiB,CACf,MAAOJ,EAAaD,EAAc,MAAQD,EAAkB,MAC5D,SAAUA,EAAkB,QAAA,EAE9B,kBAAmB,CACjB,MAAOG,EACP,SAAUH,EAAkB,QAAA,EAE9B,oBAAqB,CACnB,MAAOA,EAAkB,MACzB,SAAUA,EAAkB,QAAA,CAC9B,EAGF,MAAO,CACL,qBAAAI,EACA,WAAAC,EACA,WAAAC,CAAA,CAEJ,EAEMC,EAAsBzB,GAAc,CFrRrC,IAAAjC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAO,EAAAC,EAAAC,GEsRH,MAAMe,EAAUE,GAAA,YAAAA,EAAM,QAChB0B,EAAS1B,GAAA,YAAAA,EAAM,OACf2B,EAAWvC,EAAYY,GAAA,YAAAA,EAAM,QAAQ,EAErCe,EAAa,CACjB,OAAOW,GAAAA,YAAAA,EAAQ,QAAS,CAAE,MAAO,EAAG,SAAU,KAAA,EAC9C,mBAAmBA,GAAAA,YAAAA,EAAQ,sBAAuB,CAChD,MAAO,EACP,SAAU,KAAA,EAEZ,eAAeA,GAAAA,YAAAA,EAAQ,sBAAuB,CAC5C,MAAO,EACP,SAAU,KAAA,EAEZ,2BAA2BA,GAAAA,YAAAA,EAAQ,sBAAuB,CACxD,MAAO,EACP,SAAU,KAAA,EAEZ,WAAWA,GAAAA,YAAAA,EAAQ,YAAa,CAAA,CAAC,EAG7BN,KACHM,EAAAA,GAAAA,YAAAA,EAAQ,sBAARA,YAAAA,EAA6B,QAAS,MAAMA,EAAAA,GAAAA,YAAAA,EAAQ,QAARA,YAAAA,EAAe,QAAS,GAEjET,GAAQS,GAAAA,YAAAA,EAAQ,QAAS,CAAE,MAAO,EAAG,SAAU,KAAA,EAErD,MAAO,CACL,YAAaf,EAAqBX,CAAI,EACtC,kBAAmBa,GAAuB5C,EAAA+B,GAAA,YAAAA,EAAM,gBAAN,YAAA/B,EAAqB,KAAK,EACpE,oBAAqB,CAAC2C,EAAsBZ,CAAI,CAAC,EACjD,gBAAiBc,EAAyBC,EAAYE,CAAK,EAC3D,iBAAkBA,EAClB,OAAQjB,GAAA,MAAAA,EAAM,aAAe,YAAc,cAC3C,2BAA4B,EAC5B,kBAAmB,GACnB,YAAYF,GAAA,YAAAA,EAAS,MAAO,GAC5B,MAAMA,GAAA,YAAAA,EAAS,aAAc,GAC7B,WAAAsB,EACA,IAAIpB,GAAA,YAAAA,EAAM,MAAO,GACjB,aAAaF,GAAA,YAAAA,EAAS,OAAQ,GAC9B,eAAeA,GAAA,YAAAA,EAAS,UAAW,GACnC,aAAc,CACZ,QAAO1B,GAAAD,GAAAD,EAAA4B,GAAA,YAAAA,EAAS,cAAT,YAAA5B,EAAsB,gBAAtB,YAAAC,EAAqC,gBAArC,YAAAC,EAAoD,QAAS,EACpE,WACES,GAAAP,GAAAD,EAAAyB,GAAA,YAAAA,EAAS,cAAT,YAAAzB,EAAsB,gBAAtB,YAAAC,EAAqC,gBAArC,YAAAO,EAAoD,WAAY,KAAA,EAEpE,MAAAoC,EACA,QAASpB,EAAiBC,CAAO,EACjC,iBAAiBE,GAAA,YAAAA,EAAM,uBAAwB,CAAA,EAC/C,UAAW,CACT,QAAOlB,EAAAgB,GAAA,YAAAA,EAAS,YAAT,YAAAhB,EAAoB,QAAS,GACpC,MAAKC,GAAAe,GAAA,YAAAA,EAAS,YAAT,YAAAf,GAAoB,MAAO,EAAA,EAElC,mBACEe,GAAA,YAAAA,EAAS,cAAe,wBACxBE,GAAA,MAAAA,EAAM,oBACFO,EAAeP,EAAK,kBAAkB,EACtC,KACN,OAAQe,EACR,WAAAA,EACA,eACEjB,GAAA,YAAAA,EAAS,cAAe,kBAAmBE,GAAA,MAAAA,EAAM,gBAC7CG,EAAuBH,EAAK,cAAc,EAC1C,KACN,cAAc0B,GAAAA,YAAAA,EAAQ,0BAA2B,CAC/C,MAAO,EACP,SAAU,KAAA,EAEZ,cAAcA,GAAAA,YAAAA,EAAQ,sBAAuB,CAC3C,MAAO,EACP,SAAU,KAAA,EAEZ,OAAOA,GAAAA,YAAAA,EAAQ,YAAa,CAAE,MAAO,EAAG,SAAU,KAAA,EAClD,qBACE5B,GAAA,YAAAA,EAAS,cAAe,sBACpBC,EAA6BC,CAAI,EACjC,OACN,UACEF,GAAA,YAAAA,EAAS,cAAe,kBACpBY,EAAkBV,CAAI,EACtB,OACN,iBAAkB,EAClB,iBAAkB,EAClB,gBAAiB2B,EACjB,iBAAkB,EAClB,iBAAkB,EAClB,gBAAiB,EACjB,gBAAiB,EACjB,cAAeA,EACf,mBAAoB,EACpB,wBAAyB,CAAA,CAE7B,EAEMC,GAAwBC,IACrB,CACL,sBAAsBA,GAAA,YAAAA,EAAa,0BAA2B,CAC5D,MAAO,EACP,SAAU,KAAA,EAEZ,6BACEA,GAAA,YAAAA,EAAa,mCAAoC,CAC/C,MAAO,EACP,SAAU,KAAA,EAEd,sBAAsBA,GAAA,YAAAA,EAAa,0BAA2B,CAC5D,MAAO,EACP,SAAU,KAAA,EAEZ,6BACEA,GAAA,YAAAA,EAAa,mCAAoC,CAC/C,MAAO,EACP,SAAU,KAAA,EAEd,aAAaA,GAAA,YAAAA,EAAa,eAAgB,CACxC,MAAO,EACP,SAAU,KAAA,EAEZ,oBAAoBA,GAAA,YAAAA,EAAa,wBAAyB,CACxD,MAAO,EACP,SAAU,KAAA,CACZ,GAIEC,GAA4B,CAACC,EAA0B,KACvD,CAACA,GAAoBA,EAAiB,SAAW,EAAU,CAAA,EAExDA,EAAiB,IAAKC,GAAA,CFtZ1B,IAAAjE,EAAAC,EEsZ6C,OAC9C,MAAMgE,GAAA,YAAAA,EAAU,OAAQ,GACxB,eAAgB,CACd,QAAOjE,EAAAiE,GAAA,YAAAA,EAAU,kBAAV,YAAAjE,EAA2B,QAAS,EAC3C,WAAUC,EAAAgE,GAAA,YAAAA,EAAU,kBAAV,YAAAhE,EAA2B,WAAY,KAAA,CACnD,EACA,EAGEiE,GAAiB,CAACC,EAAsB,KACxC,CAACA,GAAgBA,EAAa,SAAW,EAAU,CAAA,EAEhDA,EAAa,IAAKC,GAAA,CFlatB,IAAApE,EAAAC,EEkaoC,OACrC,OAAQ,CACN,QAAOD,EAAAoE,GAAA,YAAAA,EAAK,SAAL,YAAApE,EAAa,QAAS,EAC7B,WAAUC,EAAAmE,GAAA,YAAAA,EAAK,SAAL,YAAAnE,EAAa,WAAY,KAAA,EAErC,MAAMmE,GAAA,YAAAA,EAAK,OAAQ,EACnB,OAAOA,GAAA,YAAAA,EAAK,SAASA,GAAA,YAAAA,EAAK,QAAS,EAAA,EACnC,EAIEC,GAAsBrE,EAAAa,GAAA,YAAAA,EAAO,qBAAP,YAAAb,EAA4B,GAClDsE,EAAqBzD,GAAA,YAAAA,EAAO,gBAC5B0D,EAAyBF,GAAA,YAAAA,EAAqB,yBAC9CG,EAAwB3D,GAAA,YAAAA,EAAO,wBAC/B8C,EAAS9C,GAAA,YAAAA,EAAO,OAGhB4D,IAAQvE,GAAAD,EAAAY,GAAA,YAAAA,EAAO,UAAP,YAAAZ,EAAgB,QAAhB,YAAAC,EAAuB,IAAIwD,KAAuB,CAAA,EAG1DgB,GAAgBD,EAAM,OAC1B,CAACE,EAAe1C,IAAc0C,EAAQ1C,EAAK,cAC3C,CAAA,EAKI2C,EAAuBL,EACzB,GAAGA,EAAuB,eAAiB,EAAE,MAC3CA,EAAuB,cAAgB,EACzC,GAAG,KAAA,EACH,GAEEP,EAAmBD,GAA0BlD,GAAA,YAAAA,EAAO,kBAAkB,EAE5E,MAAO,CACL,qBAAqBA,GAAA,YAAAA,EAAO,wBAAyB,GACrD,qBAAqBA,GAAA,YAAAA,EAAO,wBAAyB,GACrD,kBAAmB,CACjB,MAAO,CACL,QAAOT,GAAAD,EAAAU,GAAA,YAAAA,EAAO,gBAAP,YAAAV,EAAsB,QAAtB,YAAAC,EAA6B,QAAS,EAC7C,WAAUE,GAAAD,EAAAQ,GAAA,YAAAA,EAAO,gBAAP,YAAAR,EAAsB,QAAtB,YAAAC,EAA6B,WAAY,KAAA,EAErD,MAAKC,EAAAM,GAAA,YAAAA,EAAO,gBAAP,YAAAN,EAAsB,MAAO,EAAA,EAEpC,iBAAkB,GAClB,aAAc,OACd,IAAIM,GAAA,YAAAA,EAAO,KAAM,GACjB,sBAAuB,OACvB,OAAQ,GACR,OAAOA,GAAA,YAAAA,EAAO,QAAS,GACvB,MAAO,OACP,OAAQ,UACR,WAAWA,GAAA,YAAAA,EAAO,aAAc,GAChC,cAAA6D,GACA,eAAgBE,EAChB,SAASL,GAAA,YAAAA,EAAwB,eAAgB,GACjD,UAAW,GACX,QAAS,CAAA,EACT,WAAWZ,GAAA,YAAAA,EAAQ,YAAa,CAAA,EAChC,SAAS9C,GAAA,YAAAA,EAAO,kBAAmB,CAAA,EACnC,SAAU,CACR,CACE,MAAM2D,GAAA,YAAAA,EAAuB,OAAQ,GACrC,MAAMA,GAAA,YAAAA,EAAuB,QAAS,EAAA,CACxC,EAEF,SAAU,CACR,KAAMI,EACN,SAAQ9D,EAAAyD,GAAA,YAAAA,EAAwB,SAAxB,YAAAzD,EAAgC,QAAS,EACjD,WAAUC,EAAAwD,GAAA,YAAAA,EAAwB,SAAxB,YAAAxD,EAAgC,WAAY,KAAA,EAExD,UAAW,CAAA,EACX,MAAA0D,EACA,cAAeT,EAAiB,OAC5BA,EAAiB,OACf,CAACa,EAAKC,IAAA,CF/eT,IAAA9E,EAAAC,EE+eiB,OACZ,MAAO4E,EAAI,SAAS7E,EAAA8E,GAAA,YAAAA,EAAI,iBAAJ,YAAA9E,EAAoB,QAAS,GACjD,WAAUC,EAAA6E,GAAA,YAAAA,EAAI,iBAAJ,YAAA7E,EAAoB,WAAY4E,EAAI,QAAA,GAEhD,CACE,MAAO,EACP,WAAU5D,GAAAD,EAAAgD,EAAiB,CAAC,IAAlB,YAAAhD,EAAqB,iBAArB,YAAAC,EAAqC,WAAY,KAAA,CAC7D,EAEF,CAAE,MAAO,EAAG,SAAU,KAAA,EAC1B,YAAY0C,GAAA,YAAAA,EAAQ,cAAe,CAAE,MAAO,EAAG,SAAU,KAAA,EACzD,mBAAmBA,GAAA,YAAAA,EAAQ,4BAA6B,CACtD,MAAO,EACP,SAAU,KAAA,EAEZ,eAAeY,GAAA,YAAAA,EAAwB,SAAU,CAC/C,MAAO,EACP,SAAU,KAAA,EAEZ,iBAAiBZ,GAAA,YAAAA,EAAQ,yBAA0B,CACjD,MAAO,EACP,SAAU,KAAA,EAEZ,iBAAiBA,GAAA,YAAAA,EAAQ,yBAA0B,CACjD,MAAO,EACP,SAAU,KAAA,EAEZ,SAAU,CACR,SACGzC,EAAAyC,GAAA,YAAAA,EAAQ,cAAR,YAAAzC,EAAqB,QAAS,MAC9BC,EAAAwC,GAAA,YAAAA,EAAQ,4BAAR,YAAAxC,EAAmC,QAAS,GAC/C,WAAUC,EAAAuC,GAAA,YAAAA,EAAQ,cAAR,YAAAvC,EAAqB,WAAY,KAAA,EAE7C,gBAAiBiD,EACb5C,EAAiB4C,CAAmB,EACpC,KACJ,iBAAkBR,GAAqBF,GAAA,YAAAA,EAAQ,YAAY,EAC3D,eAAgBW,EACZ7C,EAAiB6C,CAAkB,EACnC,KACJ,iBAAkB,CAAA,EAClB,MAAOJ,GAAeP,GAAA,YAAAA,EAAQ,aAAa,EAC3C,iBAAAK,CAAA,CAEJ"}
|
|
@@ -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
|