@dropins/storefront-purchase-order 0.0.5-alpha1 → 0.0.5-alpha11
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/api/fetch-graphql/fetch-graphql.d.ts +16 -0
- package/api/fetch-graphql/index.d.ts +16 -0
- package/api/getPurchaseOrder/graphql/getPurchaseOrder.graphql.d.ts +1 -1
- package/api/graphql/PurchaseOrderQuoteFragment.d.ts +22 -0
- package/api/graphql/PurchaseOrdersFragment.graphql.d.ts +1 -1
- package/api/index.d.ts +1 -0
- package/api/initialize/index.d.ts +16 -0
- package/api/initialize/initialize.d.ts +1 -0
- package/api/permissions.d.ts +27 -0
- package/api.js +12 -74
- package/api.js.map +1 -1
- package/chunks/FormLoader.js +1 -1
- package/chunks/FormLoader.js.map +1 -1
- package/chunks/PurchaseOrderHistoryLogContent.js +4 -0
- package/chunks/PurchaseOrderHistoryLogContent.js.map +1 -0
- package/chunks/PurchaseOrdersHeader.js +1 -1
- package/chunks/PurchaseOrdersHeader.js.map +1 -1
- package/chunks/PurchaseOrdersTableActions.js +1 -1
- package/chunks/PurchaseOrdersTableActions.js.map +1 -1
- package/chunks/fetch-graphql.js.map +1 -1
- package/chunks/formatDate.js +4 -0
- package/chunks/formatDate.js.map +1 -0
- package/chunks/getPurchaseOrders.js +3 -77
- package/chunks/getPurchaseOrders.js.map +1 -1
- package/chunks/pageSize.config.js +1 -1
- package/chunks/pageSize.config.js.map +1 -1
- package/chunks/permissions.js +4 -0
- package/chunks/permissions.js.map +1 -0
- package/chunks/placeOrderForPurchaseOrder.js +39 -0
- package/chunks/placeOrderForPurchaseOrder.js.map +1 -0
- package/chunks/rejectPurchaseOrders.js +439 -0
- package/chunks/rejectPurchaseOrders.js.map +1 -0
- package/chunks/transform-purchase-order-approval-rule.js.map +1 -1
- package/chunks/useCustomerRolePermissions.js +1 -1
- package/chunks/useCustomerRolePermissions.js.map +1 -1
- package/chunks/usePurchaseOrders.js +1 -1
- package/chunks/usePurchaseOrders.js.map +1 -1
- package/components/ApprovalRuleDetailsContent/index.d.ts +11 -3
- package/components/ApprovalRuleForm/index.d.ts +11 -3
- package/components/PurchaseOrderHistoryLogContent/PurchaseOrderHistoryLogContent.d.ts +5 -0
- package/components/PurchaseOrderHistoryLogContent/index.d.ts +19 -0
- package/components/PurchaseOrderStatusContent/PurchaseOrderStatusContent.d.ts +5 -0
- package/components/PurchaseOrderStatusContent/index.d.ts +19 -0
- package/components/index.d.ts +2 -0
- package/containers/ApprovalRuleDetails/index.d.ts +11 -3
- package/containers/ApprovalRuleDetails.js +1 -1
- package/containers/ApprovalRuleDetails.js.map +1 -1
- package/containers/ApprovalRuleForm/index.d.ts +11 -3
- 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/PurchaseOrderConfirmation.js +1 -1
- package/containers/PurchaseOrderConfirmation.js.map +1 -1
- package/containers/PurchaseOrderHistoryLog/PurchaseOrderHistoryLog.d.ts +5 -0
- package/containers/PurchaseOrderHistoryLog/index.d.ts +19 -0
- package/containers/PurchaseOrderHistoryLog.d.ts +3 -0
- package/containers/PurchaseOrderHistoryLog.js +4 -0
- package/containers/PurchaseOrderHistoryLog.js.map +1 -0
- package/containers/PurchaseOrderStatus/PurchaseOrderStatus.d.ts +5 -0
- package/containers/PurchaseOrderStatus/index.d.ts +19 -0
- package/containers/PurchaseOrderStatus.d.ts +3 -0
- package/containers/PurchaseOrderStatus.js +4 -0
- package/containers/PurchaseOrderStatus.js.map +1 -0
- package/containers/RequireApprovalPurchaseOrders.js +1 -1
- package/containers/RequireApprovalPurchaseOrders.js.map +1 -1
- package/containers/index.d.ts +2 -0
- package/data/models/customer-order-model.d.ts +0 -1
- package/data/models/purchase-order-model.d.ts +228 -14
- package/hooks/index.d.ts +2 -0
- package/hooks/usePurchaseOrderData.d.ts +7 -0
- package/hooks/usePurchaseOrderStatus.d.ts +4 -0
- package/i18n/en_US.json.d.ts +78 -0
- package/lib/cleanAndDeep.d.ts +16 -0
- package/lib/getRange.d.ts +16 -0
- package/lib/index.d.ts +16 -0
- package/lib/isValidUrl.d.ts +16 -0
- package/mocks/index.d.ts +16 -0
- package/mocks/storybook/events-data.d.ts +17 -5
- package/package.json +1 -1
- package/render/index.d.ts +16 -0
- package/render.js +2 -2
- package/render.js.map +1 -1
- package/types/api/api.enums.types.d.ts +16 -0
- package/types/api/index.d.ts +16 -0
- package/types/components/index.d.ts +18 -0
- package/types/components/purchaseOrderHistoryLogContent.types.d.ts +7 -0
- package/types/components/purchaseOrderStatusContent.types.d.ts +17 -0
- package/types/components/purchaseOrdersTableActions.d.ts +16 -0
- package/types/containers/approvalRuleDetailsProps.types.d.ts +16 -0
- package/types/containers/index.d.ts +18 -0
- package/types/containers/purchaseOrderHistoryLog.types.d.ts +23 -0
- package/types/containers/purchaseOrderStatus.types.d.ts +18 -0
- package/types/hooks/index.d.ts +17 -0
- package/types/hooks/useApprovalRuleDetails.types.d.ts +16 -0
- package/types/hooks/usePurchaseOrderStatus.types.d.ts +19 -0
- package/chunks/FormLoader2.js +0 -4
- package/chunks/FormLoader2.js.map +0 -1
|
@@ -0,0 +1,439 @@
|
|
|
1
|
+
/*! Copyright 2025 Adobe
|
|
2
|
+
All Rights Reserved. */
|
|
3
|
+
import{f as nn,h as ln}from"./fetch-graphql.js";import{h as an}from"./fetch-error.js";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
|
+
`,en=`
|
|
375
|
+
fragment PURCHASE_ORDERS_FRAGMENT on PurchaseOrder {
|
|
376
|
+
__typename
|
|
377
|
+
uid
|
|
378
|
+
number
|
|
379
|
+
status
|
|
380
|
+
available_actions
|
|
381
|
+
comments {
|
|
382
|
+
created_at
|
|
383
|
+
author {
|
|
384
|
+
firstname
|
|
385
|
+
lastname
|
|
386
|
+
email
|
|
387
|
+
}
|
|
388
|
+
text
|
|
389
|
+
}
|
|
390
|
+
created_at
|
|
391
|
+
updated_at
|
|
392
|
+
created_by {
|
|
393
|
+
firstname
|
|
394
|
+
lastname
|
|
395
|
+
email
|
|
396
|
+
}
|
|
397
|
+
history_log {
|
|
398
|
+
message
|
|
399
|
+
created_at
|
|
400
|
+
activity
|
|
401
|
+
__typename
|
|
402
|
+
uid
|
|
403
|
+
}
|
|
404
|
+
order {
|
|
405
|
+
number
|
|
406
|
+
}
|
|
407
|
+
quote {
|
|
408
|
+
...PURCHASE_ORDER_QUOTE_FRAGMENT
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
${un}
|
|
412
|
+
`,_n=l=>{var w,u,t,s,E,m,b,P,I,T;return{typename:(l==null?void 0:l.__typename)??"",uid:(l==null?void 0:l.uid)??"",number:(l==null?void 0:l.number)??"",status:(l==null?void 0:l.status)??"",availableActions:(l==null?void 0:l.available_actions)??[],approvalFlow:l!=null&&l.approval_flow?{ruleName:((w=l==null?void 0:l.approval_flow)==null?void 0:w.rule_name)??"",events:((t=(u=l==null?void 0:l.approval_flow)==null?void 0:u.events)==null?void 0:t.map(i=>({message:(i==null?void 0:i.message)??"",name:(i==null?void 0:i.name)??"",role:(i==null?void 0:i.role)??"",status:(i==null?void 0:i.status)??"",updatedAt:(i==null?void 0:i.updated_at)??""})))??[]}:null,comments:((s=l==null?void 0:l.comments)==null?void 0:s.map(i=>{var N,C,p;return{createdAt:(i==null?void 0:i.created_at)??"",author:{firstname:((N=i==null?void 0:i.author)==null?void 0:N.firstname)??"",lastname:((C=i==null?void 0:i.author)==null?void 0:C.lastname)??"",email:((p=i==null?void 0:i.author)==null?void 0:p.email)??""},text:(i==null?void 0:i.text)??""}}))??[],createdAt:(l==null?void 0:l.created_at)??"",updatedAt:(l==null?void 0:l.updated_at)??"",createdBy:{firstname:((E=l==null?void 0:l.created_by)==null?void 0:E.firstname)??"",lastname:((m=l==null?void 0:l.created_by)==null?void 0:m.lastname)??"",email:((b=l==null?void 0:l.created_by)==null?void 0:b.email)??""},historyLog:((P=l==null?void 0:l.history_log)==null?void 0:P.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:tn(l==null?void 0:l.quote),order:{id:((I=l==null?void 0:l.order)==null?void 0:I.id)??"",orderNumber:((T=l==null?void 0:l.order)==null?void 0:T.number)??""}}};function tn(l){var Q,H,W,$,j,B,V,z,L,J,K,M,X;if(!l)return null;const f=n=>n||0,w=n=>({firstName:(n==null?void 0:n.firstname)??"",lastName:(n==null?void 0:n.lastname)??"",middleName:(n==null?void 0:n.middlename)??""}),u=n=>{var r,y,g,v;const{firstName:a,lastName:e,middleName:_}=w(n);return{firstName:a,lastName:e,middleName:_,city:(n==null?void 0:n.city)??"",company:(n==null?void 0:n.company)??"",country:((r=n==null?void 0:n.country)==null?void 0:r.label)??"",countryCode:((y=n==null?void 0:n.country)==null?void 0:y.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:((v=n==null?void 0:n.region)==null?void 0:v.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)??[]}},t=n=>{var a,e,_,r,y,g,v,R,D,S;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=(a=n==null?void 0:n.price_range)==null?void 0:a.maximum_price)==null?void 0:e.regular_price)==null?void 0:_.currency)??"",value:((g=(y=(r=n==null?void 0:n.price_range)==null?void 0:r.maximum_price)==null?void 0:y.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:((v=n==null?void 0:n.image)==null?void 0:v.url)||"",imageAlt:((R=n==null?void 0:n.image)==null?void 0:R.label)||"",productType:(n==null?void 0:n.__typename)||"",thumbnail:{label:((D=n==null?void 0:n.thumbnail)==null?void 0:D.label)||"",url:((S=n==null?void 0:n.thumbnail)==null?void 0:S.url)||""}}},s=n=>{if(!n||!("configurable_options"in n))return;const a={};for(const e of n.configurable_options)a[e.option_label]=e.value_label;return a},E=n=>{const a=n==null?void 0:n.map(_=>({uid:_.uid,label:_.label,values:_.values.map(r=>r.product_name).join(", ")})),e={};return a==null||a.forEach(_=>{e[_.label]=_.values}),Object.keys(e).length>0?e:null},m=n=>(n==null?void 0:n.length)>0?{count:n.length,result:n.map(a=>a.title).join(", ")}:null,b=n=>{var a,e,_,r,y;return{senderName:((a=n==null?void 0:n.gift_card)==null?void 0:a.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:((r=n==null?void 0:n.gift_card)==null?void 0:r.recipient_name)||"",message:((y=n==null?void 0:n.gift_card)==null?void 0:y.message)||""}},P=n=>{var a,e,_;return{senderName:((a=n==null?void 0:n.gift_message)==null?void 0:a.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 a,e,_,r,y,g,v,R,D,S,A;return{design:((a=n==null?void 0:n.gift_wrapping)==null?void 0:a.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:((y=(r=n==null?void 0:n.gift_wrapping)==null?void 0:r.image)==null?void 0:y.url)??"",label:((v=(g=n==null?void 0:n.gift_wrapping)==null?void 0:g.image)==null?void 0:v.label)??""},price:{currency:((D=(R=n==null?void 0:n.gift_wrapping)==null?void 0:R.price)==null?void 0:D.currency)??"USD",value:((A=(S=n==null?void 0:n.gift_wrapping)==null?void 0:S.price)==null?void 0:A.value)??0}}},T=n=>({currency:(n==null?void 0:n.currency)??"USD",value:(n==null?void 0:n.value)??0}),i=(n,a)=>{const e=n==null?void 0:n.price,_=n==null?void 0:n.priceIncludingTax,r=n==null?void 0:n.originalPrice,y=!1,g=y?r==null?void 0:r.value:_==null?void 0:_.value,v={originalPrice:r,baseOriginalPrice:{value:g,currency:r==null?void 0:r.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}},R={originalPrice:r,baseOriginalPrice:{value:r==null?void 0:r.value,currency:_==null?void 0:_.currency},baseDiscountedPrice:{value:a==null?void 0:a.value,currency:e==null?void 0:e.currency},baseExcludingTax:{value:e==null?void 0:e.value,currency:e==null?void 0:e.currency}},D={singleItemPrice:{value:y?r.value:_.value,currency:_.currency},baseOriginalPrice:{value:g,currency:_.currency},baseDiscountedPrice:{value:_.value,currency:_.currency}};return{includeAndExcludeTax:v,excludeTax:R,includeTax:D}},N=n=>{var v,R,D,S,A,Y,Z,h,q,O,d;const a=n==null?void 0:n.product,e=n==null?void 0:n.prices,_=f(n==null?void 0:n.quantity),r={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)??[]},y=(((v=e==null?void 0:e.original_item_price)==null?void 0:v.value)??0)>(((R=e==null?void 0:e.price)==null?void 0:R.value)??0),g=(e==null?void 0:e.price)??{value:0,currency:"USD"};return{giftMessage:P(n),giftWrappingPrice:T((D=n==null?void 0:n.gift_wrapping)==null?void 0:D.price),productGiftWrapping:[I(n)],taxCalculations:i(r,g),productSalePrice:g,status:n!=null&&n.is_available?"available":"unavailable",currentReturnOrderQuantity:0,eligibleForReturn:!1,productSku:(a==null?void 0:a.sku)??"",type:(a==null?void 0:a.__typename)??"",discounted:y,id:(n==null?void 0:n.uid)??"",productName:(a==null?void 0:a.name)??"",productUrlKey:(a==null?void 0:a.url_key)??"",regularPrice:{value:((Y=(A=(S=a==null?void 0:a.price_range)==null?void 0:S.maximum_price)==null?void 0:A.regular_price)==null?void 0:Y.value)??0,currency:((q=(h=(Z=a==null?void 0:a.price_range)==null?void 0:Z.maximum_price)==null?void 0:h.regular_price)==null?void 0:q.currency)??"USD"},price:g,product:t(a),selectedOptions:(n==null?void 0:n.customizable_options)??[],thumbnail:{label:((O=a==null?void 0:a.thumbnail)==null?void 0:O.label)||"",url:((d=a==null?void 0:a.thumbnail)==null?void 0:d.url)||""},downloadableLinks:(a==null?void 0:a.__typename)==="DownloadableProduct"&&(n!=null&&n.downloadable_links)?m(n.downloadable_links):null,prices:r,itemPrices:r,bundleOptions:(a==null?void 0:a.__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:(a==null?void 0:a.__typename)==="ConfigurableProduct"?s(n):void 0,giftCard:(a==null?void 0:a.__typename)==="GiftCardProduct"?b(n):void 0,quantityCanceled:0,quantityInvoiced:0,quantityOrdered:_,quantityRefunded:0,quantityReturned:0,quantityShipped:0,requestQuantity:0,totalQuantity:_,returnableQuantity:0,quantityReturnRequested:0}},C=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"}}),p=(n=[])=>!n||n.length===0?[]:n.map(a=>{var e,_;return{code:(a==null?void 0:a.code)??"",appliedBalance:{value:((e=a==null?void 0:a.applied_balance)==null?void 0:e.value)??0,currency:((_=a==null?void 0:a.applied_balance)==null?void 0:_.currency)??"USD"}}}),rn=(n=[])=>!n||n.length===0?[]:n.map(a=>{var e,_;return{amount:{value:((e=a==null?void 0:a.amount)==null?void 0:e.value)??0,currency:((_=a==null?void 0:a.amount)==null?void 0:_.currency)??"USD"},rate:(a==null?void 0:a.rate)??0,title:(a==null?void 0:a.title)??(a==null?void 0:a.label)??""}}),x=(Q=l==null?void 0:l.shipping_addresses)==null?void 0:Q[0],G=l==null?void 0:l.billing_address,o=x==null?void 0:x.selected_shipping_method,U=l==null?void 0:l.selected_payment_method,c=l==null?void 0:l.prices,k=((W=(H=l==null?void 0:l.itemsV2)==null?void 0:H.items)==null?void 0:W.map(N))??[],cn=k.reduce((n,a)=>n+a.totalQuantity,0),F=o?`${o.carrier_title??""} - ${o.method_title??""}`.trim():"";return{giftReceiptIncluded:(l==null?void 0:l.gift_receipt_included)??!1,printedCardIncluded:(l==null?void 0:l.printed_card_included)??!1,giftWrappingOrder:{price:{value:((j=($=l==null?void 0:l.gift_wrapping)==null?void 0:$.price)==null?void 0:j.value)??0,currency:((V=(B=l==null?void 0:l.gift_wrapping)==null?void 0:B.price)==null?void 0:V.currency)??"USD"},uid:((z=l==null?void 0:l.gift_wrapping)==null?void 0:z.uid)??""},placeholderImage:"",returnNumber:void 0,id:(l==null?void 0:l.id)??"",orderStatusChangeDate:void 0,number:"",email:(l==null?void 0:l.email)??"",token:void 0,status:"pending",isVirtual:(l==null?void 0:l.is_virtual)??!1,totalQuantity:cn,shippingMethod:F,carrier:(o==null?void 0:o.carrier_code)??"",orderDate:"",returns:[],discounts:(c==null?void 0:c.discounts)??[],coupons:(l==null?void 0:l.applied_coupons)??[],payments:[{code:(U==null?void 0:U.code)??"",name:(U==null?void 0:U.title)??""}],shipping:{code:F,amount:((L=o==null?void 0:o.amount)==null?void 0:L.value)??0,currency:((J=o==null?void 0:o.amount)==null?void 0:J.currency)??"USD"},shipments:[],items:k,totalGiftCard:{value:0,currency:"USD"},grandTotal:(c==null?void 0:c.grand_total)??{value:0,currency:"USD"},totalShipping:(o==null?void 0:o.amount)??{value:0,currency:"USD"},subtotalExclTax:(c==null?void 0:c.subtotal_excluding_tax)??{value:0,currency:"USD"},subtotalInclTax:(c==null?void 0:c.subtotal_including_tax)??{value:0,currency:"USD"},totalTax:{value:(((K=c==null?void 0:c.grand_total)==null?void 0:K.value)??0)-(((M=c==null?void 0:c.grand_total_excluding_tax)==null?void 0:M.value)??0),currency:((X=c==null?void 0:c.grand_total)==null?void 0:X.currency)??"USD"},shippingAddress:x?u(x):null,totalGiftOptions:C(c==null?void 0:c.gift_options),billingAddress:G?u(G):null,availableActions:[],taxes:rn(c==null?void 0:c.applied_taxes),appliedGiftCards:p(l==null?void 0:l.applied_gift_cards)}}const yn=`
|
|
413
|
+
mutation APPROVE_PURCHASE_ORDERS($input: PurchaseOrdersActionInput!) {
|
|
414
|
+
approvePurchaseOrders(input: $input) {
|
|
415
|
+
purchase_orders {
|
|
416
|
+
...PURCHASE_ORDERS_FRAGMENT
|
|
417
|
+
}
|
|
418
|
+
errors {
|
|
419
|
+
message
|
|
420
|
+
type
|
|
421
|
+
}
|
|
422
|
+
}
|
|
423
|
+
}
|
|
424
|
+
${en}
|
|
425
|
+
`,bn=async l=>{const f=Array.isArray(l)?l:[l];if(!f||f.length===0)throw new Error("Purchase Order UID(s) are required");if(f.some(u=>!u||u.trim()===""))throw new Error("All Purchase Order UIDs must be valid");return nn(yn,{variables:{input:{purchase_order_uids:f}}}).then(u=>{var s,E,m;(s=u.errors)!=null&&s.length&&an(u.errors);const t=(E=u.data)==null?void 0:E.approvePurchaseOrders;if(!t)throw new Error("Failed to approve purchase orders");return{errors:((t==null?void 0:t.errors)??[]).map(b=>({message:(b==null?void 0:b.message)??"",type:(b==null?void 0:b.type)??""})),purchaseOrders:((m=t==null?void 0:t.purchase_orders)==null?void 0:m.map(b=>_n(b)))??[]}}).catch(ln)},on=`
|
|
426
|
+
mutation REJECT_PURCHASE_ORDERS($input: PurchaseOrdersActionInput!) {
|
|
427
|
+
rejectPurchaseOrders(input: $input) {
|
|
428
|
+
purchase_orders {
|
|
429
|
+
...PURCHASE_ORDERS_FRAGMENT
|
|
430
|
+
}
|
|
431
|
+
errors {
|
|
432
|
+
message
|
|
433
|
+
type
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
${en}
|
|
438
|
+
`,vn=async l=>{const f=Array.isArray(l)?l:[l];if(!f||f.length===0)throw new Error("Purchase Order UID(s) are required");if(f.some(u=>!u||u.trim()===""))throw new Error("All Purchase Order UIDs must be valid");return nn(on,{variables:{input:{purchase_order_uids:f}}}).then(u=>{var s,E;(s=u.errors)!=null&&s.length&&an(u.errors);const t=(E=u.data)==null?void 0:E.rejectPurchaseOrders;return{errors:((t==null?void 0:t.errors)??[]).map(m=>({message:(m==null?void 0:m.message)??"",type:(m==null?void 0:m.type)??""})),purchaseOrders:((t==null?void 0:t.purchase_orders)??[]).map(_n)}}).catch(ln)};export{en as P,bn as a,vn as r,_n as t};
|
|
439
|
+
//# sourceMappingURL=rejectPurchaseOrders.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rejectPurchaseOrders.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","/@dropins/storefront-purchase-order/src/api/approvePurchaseOrders/graphql/approvePurchaseOrders.graphql.ts","/@dropins/storefront-purchase-order/src/api/approvePurchaseOrders/approvePurchaseOrders.ts","/@dropins/storefront-purchase-order/src/api/rejectPurchaseOrders/graphql/rejectPurchaseOrders.graphql.ts","/@dropins/storefront-purchase-order/src/api/rejectPurchaseOrders/rejectPurchaseOrders.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\n// TODO - Add approval_flow after backend functionality will be adjusted\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 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\n ? {\n ruleName: purchaseOrder?.approval_flow?.rule_name ?? '',\n events:\n purchaseOrder?.approval_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 : null,\n comments:\n purchaseOrder?.comments?.map((comment: any) => ({\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 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: {\n value: 0,\n currency: 'USD',\n },\n grandTotal: prices?.grand_total ?? { value: 0, currency: 'USD' },\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: transformAppliedGiftCards(quote?.applied_gift_cards),\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_ORDERS_FRAGMENT } from '@/b2b-purchase-order/api/graphql/PurchaseOrdersFragment.graphql';\n\nexport const APPROVE_PURCHASE_ORDERS = /* GraphQL */ `\n mutation APPROVE_PURCHASE_ORDERS($input: PurchaseOrdersActionInput!) {\n approvePurchaseOrders(input: $input) {\n purchase_orders {\n ...PURCHASE_ORDERS_FRAGMENT\n }\n errors {\n message\n type\n }\n }\n }\n ${PURCHASE_ORDERS_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 *******************************************************************/\nimport { fetchGraphQl } from '@/b2b-purchase-order/api/fetch-graphql';\nimport { handleNetworkError } from '@/b2b-purchase-order/lib/network-error';\nimport { handleFetchError } from '@/b2b-purchase-order/lib/fetch-error';\nimport { APPROVE_PURCHASE_ORDERS } from '@/b2b-purchase-order/api/approvePurchaseOrders/graphql/approvePurchaseOrders.graphql';\nimport { transformPurchaseOrder } from '@/b2b-purchase-order/data/transforms/transform-purchase-order';\nimport { PurchaseOrderModel } from '@/b2b-purchase-order/data/models';\n\nexport const approvePurchaseOrders = async (\n uids: string | string[]\n): Promise<{\n errors: { message: string; type: string }[];\n purchaseOrders: PurchaseOrderModel[];\n}> => {\n const uidArray = Array.isArray(uids) ? uids : [uids];\n\n if (!uidArray || uidArray.length === 0) {\n throw new Error('Purchase Order UID(s) are required');\n }\n\n if (uidArray.some((uid) => !uid || uid.trim() === '')) {\n throw new Error('All Purchase Order UIDs must be valid');\n }\n\n const input = {\n purchase_order_uids: uidArray,\n };\n\n return fetchGraphQl(APPROVE_PURCHASE_ORDERS, {\n variables: { input },\n })\n .then((response: any) => {\n if (response.errors?.length) {\n handleFetchError(response.errors);\n }\n\n const data = response.data?.approvePurchaseOrders;\n if (!data) {\n throw new Error('Failed to approve purchase orders');\n }\n\n return {\n errors: (data?.errors ?? []).map((error: any) => ({\n message: error?.message ?? '',\n type: error?.type ?? '',\n })),\n purchaseOrders:\n data?.purchase_orders?.map((order: any) =>\n transformPurchaseOrder(order)\n ) ?? [],\n };\n })\n .catch(handleNetworkError);\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_ORDERS_FRAGMENT } from '@/b2b-purchase-order/api/graphql/PurchaseOrdersFragment.graphql';\n\nexport const REJECT_PURCHASE_ORDERS = /* GraphQL */ `\n mutation REJECT_PURCHASE_ORDERS($input: PurchaseOrdersActionInput!) {\n rejectPurchaseOrders(input: $input) {\n purchase_orders {\n ...PURCHASE_ORDERS_FRAGMENT\n }\n errors {\n message\n type\n }\n }\n }\n ${PURCHASE_ORDERS_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 *******************************************************************/\nimport { fetchGraphQl } from '@/b2b-purchase-order/api/fetch-graphql';\nimport { handleNetworkError } from '@/b2b-purchase-order/lib/network-error';\nimport { handleFetchError } from '@/b2b-purchase-order/lib/fetch-error';\nimport { REJECT_PURCHASE_ORDERS } from '@/b2b-purchase-order/api/rejectPurchaseOrders/graphql/rejectPurchaseOrders.graphql';\nimport { transformPurchaseOrder } from '@/b2b-purchase-order/data/transforms/transform-purchase-order';\nimport { PurchaseOrderModel } from '@/b2b-purchase-order/data/models';\n\nexport const rejectPurchaseOrders = async (\n uids: string | string[]\n): Promise<{\n errors: { message: string; type: string }[];\n purchaseOrders: PurchaseOrderModel[];\n}> => {\n const uidArray = Array.isArray(uids) ? uids : [uids];\n\n if (!uidArray || uidArray.length === 0) {\n throw new Error('Purchase Order UID(s) are required');\n }\n\n if (uidArray.some((uid) => !uid || uid.trim() === '')) {\n throw new Error('All Purchase Order UIDs must be valid');\n }\n\n const input = {\n purchase_order_uids: uidArray,\n };\n\n return fetchGraphQl(REJECT_PURCHASE_ORDERS, {\n variables: { input },\n })\n .then((response: any) => {\n if (response.errors?.length) {\n handleFetchError(response.errors);\n }\n\n const data = response.data?.rejectPurchaseOrders;\n\n return {\n errors: (data?.errors ?? []).map((error: any) => ({\n message: error?.message ?? '',\n type: error?.type ?? '',\n })),\n purchaseOrders: (data?.purchase_orders ?? []).map(\n transformPurchaseOrder\n ),\n };\n })\n .catch(handleNetworkError);\n};\n"],"names":["PURCHASE_ORDER_QUOTE_FRAGMENT","PURCHASE_ORDERS_FRAGMENT","transformPurchaseOrder","purchaseOrder","_a","_c","_b","event","_d","comment","_e","_f","_g","_h","log","transformQuoteToOrder","_i","_j","quote","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","_k","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","_l","_m","APPROVE_PURCHASE_ORDERS","approvePurchaseOrders","uids","uidArray","uid","fetchGraphQl","response","handleFetchError","error","order","handleNetworkError","REJECT_PURCHASE_ORDERS","rejectPurchaseOrders"],"mappings":"sFAqBO,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;A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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transform-purchase-order-approval-rule.js","sources":["/@dropins/storefront-purchase-order/src/data/transforms/transform-purchase-order-approval-rule.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"transform-purchase-order-approval-rule.js","sources":["/@dropins/storefront-purchase-order/src/data/transforms/transform-purchase-order-approval-rule.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\nimport { PurchaseOrderApprovalRuleModel } from '../models/purchase-order-approval-rule-model';\n\nexport const transformPurchaseOrderApprovalRule = (\n approvalRule: any\n): PurchaseOrderApprovalRuleModel => {\n // Transform company role helper function\n const transformCompanyRole = (role: any) => ({\n id: role?.id || '',\n name: role?.name || '',\n usersCount: role?.users_count || 0,\n permissions: (role?.permissions || []).map((permission: any) => ({\n id: permission?.id || '',\n sortOrder: permission?.sort_order || 0,\n text: permission?.text || '',\n })),\n });\n\n // Transform condition helper function\n const transformCondition = (condition: any) => ({\n attribute: condition?.attribute,\n operator: condition?.operator,\n quantity: condition?.quantity || 0,\n amount: {\n currency: condition?.amount?.currency || 'USD',\n value: condition?.amount?.value || 0,\n },\n });\n\n return {\n uid: approvalRule?.uid || '',\n name: approvalRule?.name || '',\n description: approvalRule?.description || '',\n status: approvalRule?.status,\n createdAt: approvalRule?.created_at || '',\n updatedAt: approvalRule?.updated_at || '',\n createdBy: approvalRule?.created_by,\n appliesToRoles: (approvalRule?.applies_to_roles || []).map(\n transformCompanyRole\n ),\n approverRoles: (approvalRule?.approver_roles || []).map(\n transformCompanyRole\n ),\n condition: transformCondition(approvalRule?.condition || {}),\n };\n};\n"],"names":["transformPurchaseOrderApprovalRule","approvalRule","transformCompanyRole","role","permission","transformCondition","condition","_a","_b"],"mappings":"AAmBO,MAAMA,EACXC,GACmC,CAEnC,MAAMC,EAAwBC,IAAe,CAC3C,IAAIA,GAAA,YAAAA,EAAM,KAAM,GAChB,MAAMA,GAAA,YAAAA,EAAM,OAAQ,GACpB,YAAYA,GAAA,YAAAA,EAAM,cAAe,EACjC,cAAcA,GAAA,YAAAA,EAAM,cAAe,CAAA,GAAI,IAAKC,IAAqB,CAC/D,IAAIA,GAAA,YAAAA,EAAY,KAAM,GACtB,WAAWA,GAAA,YAAAA,EAAY,aAAc,EACrC,MAAMA,GAAA,YAAAA,EAAY,OAAQ,EAAA,EAC1B,CAAA,GAIEC,EAAsBC,GAAA,CAhBvB,IAAAC,EAAAC,EAgB2C,OAC9C,UAAWF,GAAA,YAAAA,EAAW,UACtB,SAAUA,GAAA,YAAAA,EAAW,SACrB,UAAUA,GAAA,YAAAA,EAAW,WAAY,EACjC,OAAQ,CACN,WAAUC,EAAAD,GAAA,YAAAA,EAAW,SAAX,YAAAC,EAAmB,WAAY,MACzC,QAAOC,EAAAF,GAAA,YAAAA,EAAW,SAAX,YAAAE,EAAmB,QAAS,CAAA,CACrC,GAGF,MAAO,CACL,KAAKP,GAAA,YAAAA,EAAc,MAAO,GAC1B,MAAMA,GAAA,YAAAA,EAAc,OAAQ,GAC5B,aAAaA,GAAA,YAAAA,EAAc,cAAe,GAC1C,OAAQA,GAAA,YAAAA,EAAc,OACtB,WAAWA,GAAA,YAAAA,EAAc,aAAc,GACvC,WAAWA,GAAA,YAAAA,EAAc,aAAc,GACvC,UAAWA,GAAA,YAAAA,EAAc,WACzB,iBAAiBA,GAAA,YAAAA,EAAc,mBAAoB,CAAA,GAAI,IACrDC,CAAA,EAEF,gBAAgBD,GAAA,YAAAA,EAAc,iBAAkB,CAAA,GAAI,IAClDC,CAAA,EAEF,UAAWG,GAAmBJ,GAAA,YAAAA,EAAc,YAAa,CAAA,CAAE,CAAA,CAE/D"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*! Copyright 2025 Adobe
|
|
2
2
|
All Rights Reserved. */
|
|
3
|
-
import{useState as
|
|
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
4
|
//# sourceMappingURL=useCustomerRolePermissions.js.map
|
|
@@ -1 +1 @@
|
|
|
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';\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(
|
|
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"}
|