@dropins/storefront-quote-management 0.0.1-alpha20 → 0.0.1-alpha22
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/getStoreConfig/getStoreConfig.d.ts +4 -0
- package/api/getStoreConfig/graphql/StoreConfigQuery.d.ts +10 -0
- package/api/getStoreConfig/index.d.ts +10 -0
- package/api/index.d.ts +1 -0
- package/api.js +33 -19
- package/api.js.map +1 -1
- package/chunks/ChevronDown.js +4 -0
- package/chunks/ChevronDown.js.map +1 -0
- package/chunks/NegotiableQuoteFragment.js +129 -0
- package/chunks/NegotiableQuoteFragment.js.map +1 -1
- package/chunks/QuoteHistoryLog.js +1 -1
- package/chunks/QuoteHistoryLog.js.map +1 -1
- package/chunks/dateUtils.js +4 -0
- package/chunks/dateUtils.js.map +1 -0
- package/chunks/getQuoteTemplates.js +1 -1
- package/chunks/getQuoteTemplates.js.map +1 -1
- package/chunks/negotiableQuotes.js +1 -1
- package/chunks/negotiableQuotes.js.map +1 -1
- package/chunks/renameNegotiableQuote.js +1 -1
- package/chunks/renameNegotiableQuote.js.map +1 -1
- package/chunks/state.js +1 -1
- package/chunks/state.js.map +1 -1
- package/chunks/transform-quote.js +4 -0
- package/chunks/transform-quote.js.map +1 -0
- package/chunks/updateQuantities.js +1 -1
- package/chunks/updateQuantities.js.map +1 -1
- package/chunks/uploadFile.js +1 -1
- package/chunks/uploadFile.js.map +1 -1
- package/components/QuoteTemplatesListTable/QuoteTemplatesListTable.d.ts +0 -1
- package/containers/ItemsQuoted.js +1 -1
- package/containers/ManageNegotiableQuote.js +1 -1
- package/containers/ManageNegotiableQuote.js.map +1 -1
- package/containers/OrderSummary.js +1 -1
- package/containers/OrderSummary.js.map +1 -1
- package/containers/QuoteHistoryLog.js +1 -1
- package/containers/QuoteSummaryList/QuoteSummaryList.d.ts +51 -0
- package/containers/QuoteSummaryList/index.d.ts +11 -0
- package/containers/QuoteSummaryList.d.ts +3 -0
- package/containers/QuoteSummaryList.js +4 -0
- package/containers/QuoteSummaryList.js.map +1 -0
- package/containers/QuoteTemplatesListTable/QuoteTemplatesListTable.d.ts +0 -4
- package/containers/QuoteTemplatesListTable.js +1 -1
- package/containers/QuoteTemplatesListTable.js.map +1 -1
- package/containers/QuotesListTable.js +1 -1
- package/containers/QuotesListTable.js.map +1 -1
- package/containers/RequestNegotiableQuoteForm.js +1 -1
- package/containers/RequestNegotiableQuoteForm.js.map +1 -1
- package/containers/index.d.ts +1 -0
- package/data/models/__fixtures__/negotiableQuoteModel.d.ts +1 -0
- package/data/models/__fixtures__/storeConfigModel.d.ts +5 -0
- package/data/models/negotiable-quote-model.d.ts +33 -5
- package/data/models/store-config-model.d.ts +5 -2
- package/data/transforms/__fixtures__/negotiableQuoteData.d.ts +216 -0
- package/data/transforms/__fixtures__/storeConfigData.d.ts +31 -0
- package/data/transforms/index.d.ts +1 -0
- package/data/transforms/transform-store-config.d.ts +4 -0
- package/hooks/useQuoteSummaryData.d.ts +10 -0
- package/i18n/en_US.json.d.ts +13 -2
- package/lib/configurationTransformers.d.ts +27 -0
- package/lib/itemFormatters.d.ts +47 -0
- package/lib/priceCalculators.d.ts +41 -0
- package/package.json +1 -1
- package/render.js +1 -1
- package/render.js.map +1 -1
- package/utils/dateUtils.d.ts +6 -0
- package/chunks/fetch-graphql.js +0 -4
- package/chunks/fetch-graphql.js.map +0 -1
|
@@ -34,6 +34,10 @@ export declare const mockGraphQLResponse: {
|
|
|
34
34
|
};
|
|
35
35
|
};
|
|
36
36
|
};
|
|
37
|
+
thumbnail: {
|
|
38
|
+
url: string;
|
|
39
|
+
label: string;
|
|
40
|
+
};
|
|
37
41
|
};
|
|
38
42
|
quantity: number;
|
|
39
43
|
note_from_buyer: {
|
|
@@ -119,6 +123,7 @@ export declare const mockQuoteData: {
|
|
|
119
123
|
template_id: null;
|
|
120
124
|
template_name: null;
|
|
121
125
|
items: ({
|
|
126
|
+
__typename: string;
|
|
122
127
|
uid: string;
|
|
123
128
|
product: {
|
|
124
129
|
name: string;
|
|
@@ -126,19 +131,43 @@ export declare const mockQuoteData: {
|
|
|
126
131
|
uid: string;
|
|
127
132
|
stock_status: string;
|
|
128
133
|
quantity: null;
|
|
134
|
+
thumbnail: {
|
|
135
|
+
url: string;
|
|
136
|
+
label: string;
|
|
137
|
+
};
|
|
129
138
|
price_range: {
|
|
130
139
|
maximum_price: {
|
|
131
140
|
regular_price: {
|
|
141
|
+
currency: string;
|
|
132
142
|
value: number;
|
|
133
143
|
};
|
|
144
|
+
discount: {
|
|
145
|
+
amount_off: number;
|
|
146
|
+
percent_off: number;
|
|
147
|
+
};
|
|
134
148
|
};
|
|
135
149
|
};
|
|
150
|
+
price_tiers: {
|
|
151
|
+
quantity: number;
|
|
152
|
+
final_price: {
|
|
153
|
+
currency: string;
|
|
154
|
+
value: number;
|
|
155
|
+
};
|
|
156
|
+
discount: {
|
|
157
|
+
amount_off: number;
|
|
158
|
+
percent_off: number;
|
|
159
|
+
};
|
|
160
|
+
}[];
|
|
136
161
|
};
|
|
137
162
|
prices: {
|
|
138
163
|
price: {
|
|
139
164
|
currency: string;
|
|
140
165
|
value: number;
|
|
141
166
|
};
|
|
167
|
+
price_including_tax: {
|
|
168
|
+
currency: string;
|
|
169
|
+
value: number;
|
|
170
|
+
};
|
|
142
171
|
original_item_price: {
|
|
143
172
|
currency: string;
|
|
144
173
|
value: number;
|
|
@@ -151,6 +180,10 @@ export declare const mockQuoteData: {
|
|
|
151
180
|
currency: string;
|
|
152
181
|
value: number;
|
|
153
182
|
};
|
|
183
|
+
row_total_including_tax: {
|
|
184
|
+
currency: string;
|
|
185
|
+
value: number;
|
|
186
|
+
};
|
|
154
187
|
catalog_discount: {
|
|
155
188
|
amount_off: number;
|
|
156
189
|
percent_off: number;
|
|
@@ -181,9 +214,20 @@ export declare const mockQuoteData: {
|
|
|
181
214
|
note: string;
|
|
182
215
|
note_uid: string;
|
|
183
216
|
}[];
|
|
217
|
+
customizable_options: {
|
|
218
|
+
type: string;
|
|
219
|
+
label: string;
|
|
220
|
+
values: {
|
|
221
|
+
label: string;
|
|
222
|
+
value: string;
|
|
223
|
+
}[];
|
|
224
|
+
}[];
|
|
184
225
|
configurable_options?: undefined;
|
|
226
|
+
configured_variant?: undefined;
|
|
185
227
|
bundle_options?: undefined;
|
|
228
|
+
links?: undefined;
|
|
186
229
|
} | {
|
|
230
|
+
__typename: string;
|
|
187
231
|
uid: string;
|
|
188
232
|
product: {
|
|
189
233
|
name: string;
|
|
@@ -191,19 +235,30 @@ export declare const mockQuoteData: {
|
|
|
191
235
|
uid: string;
|
|
192
236
|
stock_status: string;
|
|
193
237
|
quantity: null;
|
|
238
|
+
thumbnail: {
|
|
239
|
+
url: string;
|
|
240
|
+
label: string;
|
|
241
|
+
};
|
|
194
242
|
price_range: {
|
|
195
243
|
maximum_price: {
|
|
196
244
|
regular_price: {
|
|
245
|
+
currency: string;
|
|
197
246
|
value: number;
|
|
198
247
|
};
|
|
248
|
+
discount?: undefined;
|
|
199
249
|
};
|
|
200
250
|
};
|
|
251
|
+
price_tiers?: undefined;
|
|
201
252
|
};
|
|
202
253
|
prices: {
|
|
203
254
|
price: {
|
|
204
255
|
currency: string;
|
|
205
256
|
value: number;
|
|
206
257
|
};
|
|
258
|
+
price_including_tax: {
|
|
259
|
+
currency: string;
|
|
260
|
+
value: number;
|
|
261
|
+
};
|
|
207
262
|
original_item_price: {
|
|
208
263
|
currency: string;
|
|
209
264
|
value: number;
|
|
@@ -216,6 +271,10 @@ export declare const mockQuoteData: {
|
|
|
216
271
|
currency: string;
|
|
217
272
|
value: number;
|
|
218
273
|
};
|
|
274
|
+
row_total_including_tax: {
|
|
275
|
+
currency: string;
|
|
276
|
+
value: number;
|
|
277
|
+
};
|
|
219
278
|
catalog_discount: {
|
|
220
279
|
amount_off: number;
|
|
221
280
|
percent_off: number;
|
|
@@ -236,8 +295,47 @@ export declare const mockQuoteData: {
|
|
|
236
295
|
note_uid: string;
|
|
237
296
|
}[];
|
|
238
297
|
note_from_seller: never[];
|
|
298
|
+
configured_variant: {
|
|
299
|
+
thumbnail: {
|
|
300
|
+
label: string;
|
|
301
|
+
url: string;
|
|
302
|
+
};
|
|
303
|
+
price_range: {
|
|
304
|
+
maximum_price: {
|
|
305
|
+
regular_price: {
|
|
306
|
+
currency: string;
|
|
307
|
+
value: number;
|
|
308
|
+
};
|
|
309
|
+
discount: {
|
|
310
|
+
amount_off: number;
|
|
311
|
+
percent_off: number;
|
|
312
|
+
};
|
|
313
|
+
};
|
|
314
|
+
};
|
|
315
|
+
price_tiers: {
|
|
316
|
+
quantity: number;
|
|
317
|
+
final_price: {
|
|
318
|
+
currency: string;
|
|
319
|
+
value: number;
|
|
320
|
+
};
|
|
321
|
+
discount: {
|
|
322
|
+
amount_off: number;
|
|
323
|
+
percent_off: number;
|
|
324
|
+
};
|
|
325
|
+
}[];
|
|
326
|
+
};
|
|
327
|
+
customizable_options: {
|
|
328
|
+
type: string;
|
|
329
|
+
label: string;
|
|
330
|
+
values: {
|
|
331
|
+
label: string;
|
|
332
|
+
value: string;
|
|
333
|
+
}[];
|
|
334
|
+
}[];
|
|
239
335
|
bundle_options?: undefined;
|
|
336
|
+
links?: undefined;
|
|
240
337
|
} | {
|
|
338
|
+
__typename: string;
|
|
241
339
|
uid: string;
|
|
242
340
|
product: {
|
|
243
341
|
name: string;
|
|
@@ -245,19 +343,33 @@ export declare const mockQuoteData: {
|
|
|
245
343
|
uid: string;
|
|
246
344
|
stock_status: string;
|
|
247
345
|
quantity: null;
|
|
346
|
+
thumbnail: {
|
|
347
|
+
url: string;
|
|
348
|
+
label: string;
|
|
349
|
+
};
|
|
248
350
|
price_range: {
|
|
249
351
|
maximum_price: {
|
|
250
352
|
regular_price: {
|
|
353
|
+
currency: string;
|
|
251
354
|
value: number;
|
|
252
355
|
};
|
|
356
|
+
discount: {
|
|
357
|
+
amount_off: number;
|
|
358
|
+
percent_off: number;
|
|
359
|
+
};
|
|
253
360
|
};
|
|
254
361
|
};
|
|
362
|
+
price_tiers?: undefined;
|
|
255
363
|
};
|
|
256
364
|
prices: {
|
|
257
365
|
price: {
|
|
258
366
|
currency: string;
|
|
259
367
|
value: number;
|
|
260
368
|
};
|
|
369
|
+
price_including_tax: {
|
|
370
|
+
currency: string;
|
|
371
|
+
value: number;
|
|
372
|
+
};
|
|
261
373
|
original_item_price: {
|
|
262
374
|
currency: string;
|
|
263
375
|
value: number;
|
|
@@ -270,6 +382,10 @@ export declare const mockQuoteData: {
|
|
|
270
382
|
currency: string;
|
|
271
383
|
value: number;
|
|
272
384
|
};
|
|
385
|
+
row_total_including_tax: {
|
|
386
|
+
currency: string;
|
|
387
|
+
value: number;
|
|
388
|
+
};
|
|
273
389
|
catalog_discount: {
|
|
274
390
|
amount_off: number;
|
|
275
391
|
percent_off: number;
|
|
@@ -315,7 +431,103 @@ export declare const mockQuoteData: {
|
|
|
315
431
|
note: string;
|
|
316
432
|
note_uid: string;
|
|
317
433
|
}[];
|
|
434
|
+
customizable_options?: undefined;
|
|
435
|
+
configurable_options?: undefined;
|
|
436
|
+
configured_variant?: undefined;
|
|
437
|
+
links?: undefined;
|
|
438
|
+
} | {
|
|
439
|
+
__typename: string;
|
|
440
|
+
uid: string;
|
|
441
|
+
product: {
|
|
442
|
+
name: string;
|
|
443
|
+
sku: string;
|
|
444
|
+
uid: string;
|
|
445
|
+
stock_status: string;
|
|
446
|
+
quantity: null;
|
|
447
|
+
thumbnail: {
|
|
448
|
+
url: string;
|
|
449
|
+
label: string;
|
|
450
|
+
};
|
|
451
|
+
price_range: {
|
|
452
|
+
maximum_price: {
|
|
453
|
+
regular_price: {
|
|
454
|
+
currency: string;
|
|
455
|
+
value: number;
|
|
456
|
+
};
|
|
457
|
+
discount: {
|
|
458
|
+
amount_off: number;
|
|
459
|
+
percent_off: number;
|
|
460
|
+
};
|
|
461
|
+
};
|
|
462
|
+
};
|
|
463
|
+
price_tiers: {
|
|
464
|
+
quantity: number;
|
|
465
|
+
final_price: {
|
|
466
|
+
currency: string;
|
|
467
|
+
value: number;
|
|
468
|
+
};
|
|
469
|
+
discount: {
|
|
470
|
+
amount_off: number;
|
|
471
|
+
percent_off: number;
|
|
472
|
+
};
|
|
473
|
+
}[];
|
|
474
|
+
};
|
|
475
|
+
prices: {
|
|
476
|
+
price: {
|
|
477
|
+
currency: string;
|
|
478
|
+
value: number;
|
|
479
|
+
};
|
|
480
|
+
price_including_tax: {
|
|
481
|
+
currency: string;
|
|
482
|
+
value: number;
|
|
483
|
+
};
|
|
484
|
+
original_item_price: {
|
|
485
|
+
currency: string;
|
|
486
|
+
value: number;
|
|
487
|
+
};
|
|
488
|
+
original_row_total: {
|
|
489
|
+
currency: string;
|
|
490
|
+
value: number;
|
|
491
|
+
};
|
|
492
|
+
row_total: {
|
|
493
|
+
currency: string;
|
|
494
|
+
value: number;
|
|
495
|
+
};
|
|
496
|
+
row_total_including_tax: {
|
|
497
|
+
currency: string;
|
|
498
|
+
value: number;
|
|
499
|
+
};
|
|
500
|
+
catalog_discount: {
|
|
501
|
+
amount_off: number;
|
|
502
|
+
percent_off: number;
|
|
503
|
+
};
|
|
504
|
+
discounts: {
|
|
505
|
+
label: string;
|
|
506
|
+
value: number;
|
|
507
|
+
amount: {
|
|
508
|
+
currency: string;
|
|
509
|
+
value: number;
|
|
510
|
+
};
|
|
511
|
+
}[];
|
|
512
|
+
};
|
|
513
|
+
quantity: number;
|
|
514
|
+
links: {
|
|
515
|
+
sort_order: number;
|
|
516
|
+
title: string;
|
|
517
|
+
}[];
|
|
518
|
+
customizable_options: {
|
|
519
|
+
type: string;
|
|
520
|
+
label: string;
|
|
521
|
+
values: {
|
|
522
|
+
label: string;
|
|
523
|
+
value: string;
|
|
524
|
+
}[];
|
|
525
|
+
}[];
|
|
526
|
+
note_from_buyer?: undefined;
|
|
527
|
+
note_from_seller?: undefined;
|
|
318
528
|
configurable_options?: undefined;
|
|
529
|
+
configured_variant?: undefined;
|
|
530
|
+
bundle_options?: undefined;
|
|
319
531
|
})[];
|
|
320
532
|
history: {
|
|
321
533
|
uid: string;
|
|
@@ -446,6 +658,10 @@ export declare const mockNegotiableQuotesResponse: {
|
|
|
446
658
|
};
|
|
447
659
|
};
|
|
448
660
|
};
|
|
661
|
+
thumbnail: {
|
|
662
|
+
url: string;
|
|
663
|
+
label: string;
|
|
664
|
+
};
|
|
449
665
|
};
|
|
450
666
|
quantity: number;
|
|
451
667
|
note_from_buyer: {
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/********************************************************************
|
|
2
|
+
* Copyright 2025 Adobe
|
|
3
|
+
* All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* NOTICE: Adobe permits you to use, modify, and distribute this
|
|
6
|
+
* file in accordance with the terms of the Adobe license agreement
|
|
7
|
+
* accompanying it.
|
|
8
|
+
*******************************************************************/
|
|
9
|
+
export declare const mockStoreConfigGraphQLResponse: {
|
|
10
|
+
cart_summary_display_quantity: number;
|
|
11
|
+
max_items_in_order_summary: number;
|
|
12
|
+
shopping_cart_display_zero_tax: boolean;
|
|
13
|
+
shopping_cart_display_subtotal: number;
|
|
14
|
+
shopping_cart_display_price: number;
|
|
15
|
+
shopping_cart_display_shipping: number;
|
|
16
|
+
shopping_cart_display_full_summary: boolean;
|
|
17
|
+
shopping_cart_display_grand_total: boolean;
|
|
18
|
+
configurable_thumbnail_source: string;
|
|
19
|
+
};
|
|
20
|
+
export declare const mockStoreConfigGraphQLResponseWithWrongValues: {
|
|
21
|
+
shopping_cart_display_subtotal: number;
|
|
22
|
+
shopping_cart_display_price: null;
|
|
23
|
+
shopping_cart_display_shipping: number;
|
|
24
|
+
cart_summary_display_quantity: number;
|
|
25
|
+
max_items_in_order_summary: number;
|
|
26
|
+
shopping_cart_display_zero_tax: boolean;
|
|
27
|
+
shopping_cart_display_full_summary: boolean;
|
|
28
|
+
shopping_cart_display_grand_total: boolean;
|
|
29
|
+
configurable_thumbnail_source: string;
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=storeConfigData.d.ts.map
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
* file in accordance with the terms of the Adobe license agreement
|
|
7
7
|
* accompanying it.
|
|
8
8
|
*******************************************************************/
|
|
9
|
+
export * from './transform-store-config';
|
|
9
10
|
export * from './transform-customer';
|
|
10
11
|
export * from './transform-quote';
|
|
11
12
|
export * from './transform-quote-template';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { NegotiableQuoteModel } from '../data/models';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Custom hook to manage quote summary data and loading state
|
|
5
|
+
*/
|
|
6
|
+
export declare const useQuoteSummaryData: () => {
|
|
7
|
+
quoteData: NegotiableQuoteModel | undefined;
|
|
8
|
+
loading: boolean;
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=useQuoteSummaryData.d.ts.map
|
package/i18n/en_US.json.d.ts
CHANGED
|
@@ -174,6 +174,18 @@ declare const _default: {
|
|
|
174
174
|
"withoutTax": "Total excluding taxes",
|
|
175
175
|
"saved": "Total saved"
|
|
176
176
|
}
|
|
177
|
+
},
|
|
178
|
+
"QuoteSummaryList": {
|
|
179
|
+
"discountedPrice": "Discounted Price",
|
|
180
|
+
"discountPercentage": "{discount}% off",
|
|
181
|
+
"editQuote": "Edit",
|
|
182
|
+
"file": "{count} file",
|
|
183
|
+
"files": "{count} files",
|
|
184
|
+
"heading": "Negotiable Quote ({count})",
|
|
185
|
+
"listOfQuoteItems": "List of Quote Items",
|
|
186
|
+
"regularPrice": "Regular Price",
|
|
187
|
+
"savingsAmount": "Savings",
|
|
188
|
+
"viewMore": "View more"
|
|
177
189
|
}
|
|
178
190
|
},
|
|
179
191
|
"historyLog": {
|
|
@@ -221,8 +233,7 @@ declare const _default: {
|
|
|
221
233
|
"actions": "Action"
|
|
222
234
|
},
|
|
223
235
|
"QuoteTemplatesListTable": {
|
|
224
|
-
"
|
|
225
|
-
"name": "Name",
|
|
236
|
+
"name": "Template Name",
|
|
226
237
|
"state": "State",
|
|
227
238
|
"status": "Status",
|
|
228
239
|
"validUntil": "Valid Until",
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/********************************************************************
|
|
2
|
+
* Copyright 2025 Adobe
|
|
3
|
+
* All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* NOTICE: Adobe permits you to use, modify, and distribute this
|
|
6
|
+
* file in accordance with the terms of the Adobe license agreement
|
|
7
|
+
* accompanying it.
|
|
8
|
+
*******************************************************************/
|
|
9
|
+
/**
|
|
10
|
+
* Helper function to transform bundle options data to be ready for a CartItem SDK component
|
|
11
|
+
*/
|
|
12
|
+
export declare const transformBundleOptions: (data: any) => {
|
|
13
|
+
[key: string]: any;
|
|
14
|
+
} | null;
|
|
15
|
+
/**
|
|
16
|
+
* Helper function to transform configurable options data to be ready for a CartItem SDK component
|
|
17
|
+
*/
|
|
18
|
+
export declare const transformConfigurableOptions: (data: any) => {
|
|
19
|
+
[key: string]: any;
|
|
20
|
+
} | null;
|
|
21
|
+
/**
|
|
22
|
+
* Helper function to transform customizable options data to be ready for a CartItem SDK component
|
|
23
|
+
*/
|
|
24
|
+
export declare const transformCustomizableOptions: (data: any) => {
|
|
25
|
+
[key: string]: any;
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=configurationTransformers.d.ts.map
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { ImageProps } from '@dropins/tools/types/elsie/src/components';
|
|
2
|
+
import { SlotProps } from '@dropins/tools/types/elsie/src/lib';
|
|
3
|
+
import { NegotiableQuoteCartItem as NegotiableQuoteItemModel, StoreConfigModel } from '../data/models';
|
|
4
|
+
import { SwitchableAttributes } from '../containers/QuoteSummaryList/QuoteSummaryList';
|
|
5
|
+
|
|
6
|
+
export interface ItemFormatterOptions {
|
|
7
|
+
attributesToHide: SwitchableAttributes[];
|
|
8
|
+
routeProduct?: (item: NegotiableQuoteItemModel) => string;
|
|
9
|
+
slots?: {
|
|
10
|
+
Thumbnail?: SlotProps<{
|
|
11
|
+
item: NegotiableQuoteItemModel;
|
|
12
|
+
defaultImageProps: ImageProps;
|
|
13
|
+
}>;
|
|
14
|
+
ProductAttributes?: SlotProps<{
|
|
15
|
+
item: NegotiableQuoteItemModel;
|
|
16
|
+
}>;
|
|
17
|
+
};
|
|
18
|
+
dictionary: Record<string, string>;
|
|
19
|
+
quoteDisplaySettings?: StoreConfigModel['quoteDisplaySettings'];
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Get image component for an item
|
|
23
|
+
*/
|
|
24
|
+
export declare const getImage: (item: NegotiableQuoteItemModel, index: number, options: ItemFormatterOptions) => import("preact").JSX.Element | undefined;
|
|
25
|
+
/**
|
|
26
|
+
* Get title component for an item
|
|
27
|
+
*/
|
|
28
|
+
export declare const getTitle: (item: NegotiableQuoteItemModel, options: ItemFormatterOptions) => import("preact").JSX.Element | undefined;
|
|
29
|
+
/**
|
|
30
|
+
* Get SKU component for an item
|
|
31
|
+
*/
|
|
32
|
+
export declare const getSku: (item: NegotiableQuoteItemModel) => import("preact").JSX.Element;
|
|
33
|
+
/**
|
|
34
|
+
* Get product attributes slot for an item
|
|
35
|
+
*/
|
|
36
|
+
export declare const getProductAttributes: (item: NegotiableQuoteItemModel, options: ItemFormatterOptions) => import("preact").JSX.Element;
|
|
37
|
+
/**
|
|
38
|
+
* Get configurations for an item (bundle, configurable, customizable options)
|
|
39
|
+
*/
|
|
40
|
+
export declare const getConfigurations: (item: NegotiableQuoteItemModel, options: ItemFormatterOptions) => {
|
|
41
|
+
[x: string]: any;
|
|
42
|
+
} | undefined;
|
|
43
|
+
/**
|
|
44
|
+
* Get total excluding tax component for an item
|
|
45
|
+
*/
|
|
46
|
+
export declare const getTotalExcludingTax: (item: NegotiableQuoteItemModel, options: ItemFormatterOptions) => import("preact").JSX.Element | undefined;
|
|
47
|
+
//# sourceMappingURL=itemFormatters.d.ts.map
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { PriceProps } from '@dropins/tools/types/elsie/src/components';
|
|
2
|
+
import { NegotiableQuoteCartItem as NegotiableQuoteItemModel, StoreConfigModel } from '../data/models';
|
|
3
|
+
|
|
4
|
+
export interface PriceCalculatorOptions {
|
|
5
|
+
dictionary: Record<string, string>;
|
|
6
|
+
quoteDisplaySettings?: StoreConfigModel['quoteDisplaySettings'];
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Get price props for an item
|
|
10
|
+
*/
|
|
11
|
+
export declare const getPriceProps: (item: NegotiableQuoteItemModel, options: PriceCalculatorOptions) => {
|
|
12
|
+
amount: number;
|
|
13
|
+
currency: string;
|
|
14
|
+
style: {
|
|
15
|
+
font: string;
|
|
16
|
+
};
|
|
17
|
+
'data-testid': string;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Get savings amount props for an item
|
|
21
|
+
*/
|
|
22
|
+
export declare const getSavingsAmount: (item: NegotiableQuoteItemModel) => {
|
|
23
|
+
amount: number | undefined;
|
|
24
|
+
currency: string | undefined;
|
|
25
|
+
style: {
|
|
26
|
+
font: string;
|
|
27
|
+
};
|
|
28
|
+
'data-testid': string;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Calculate total price props and discount props for an item
|
|
32
|
+
*/
|
|
33
|
+
export declare const getTotalPriceProps: (item: NegotiableQuoteItemModel, options: PriceCalculatorOptions) => {
|
|
34
|
+
totalProps: PriceProps & {
|
|
35
|
+
'data-testid'?: string | undefined;
|
|
36
|
+
};
|
|
37
|
+
discountProps: (PriceProps & {
|
|
38
|
+
'data-testid'?: string | undefined;
|
|
39
|
+
}) | null;
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=priceCalculators.d.ts.map
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name": "@dropins/storefront-quote-management", "version": "0.0.1-
|
|
1
|
+
{"name": "@dropins/storefront-quote-management", "version": "0.0.1-alpha22", "@dropins/tools": "1.6.0-beta2", "license": "SEE LICENSE IN LICENSE.md"}
|
package/render.js
CHANGED
|
@@ -6,5 +6,5 @@ All Rights Reserved. */
|
|
|
6
6
|
.quote-management-shipping-address-display{display:flex;flex-direction:column;gap:var(--spacing-xsmall);font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-800)}.quote-management-shipping-address-display__field{margin:0;word-wrap:break-word;overflow-wrap:break-word}.quote-management-shipping-address-display__name{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing)}.quote-management-shipping-address-display--empty{padding:var(--spacing-medium);background-color:var(--color-neutral-50)}.quote-management-shipping-address-display__no-address{margin:0;color:var(--color-neutral-700);font-style:italic}
|
|
7
7
|
.quote-management-items-quoted{display:flex;flex-direction:column;gap:var(--spacing-big)}.quote-management-product-list-table-container{display:flex;flex-direction:column;gap:var(--spacing-small)}.quote-management-product-list-table__checkbox{align-self:center;justify-self:center}.quote-management-product-list-table__product-name-container{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-product-list-table__product-name{font:var(--type-body-1-font);letter-spacing:var(--type-body-1-letter-spacing)}.quote-management-product-list-table__configurable-option{display:flex;flex-direction:row;gap:var(--spacing-xxsmall)}.quote-management-product-list-table__configurable-option-label{font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing)}.quote-management-product-list-table__configurable-option-value{font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing)}.quote-management-product-list-table__bundle-option{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-product-list-table__bundle-option-label{font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing)}.quote-management-product-list-table__bundle-option-values{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-product-list-table__bundle-option-value{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-xxsmall);font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing)}.quote-management-product-list-table__bundle-option-value-original-price{font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing)}.quote-management-product-list-table__sku{font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing)}.quote-management-product-list-table__quantity{font:var(--type-body-1-font);letter-spacing:var(--type-body-1-letter-spacing)}.quote-management-product-list-table__quantity-input{width:80px}@media only screen and (max-width: 767px){.quote-management-product-list-table__quantity-input{width:100%;max-width:200px}}.quote-management-product-list-table__discount-container{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--spacing-xxsmall);align-items:baseline}.quote-management-product-list-table-container__submit-container{display:flex;justify-content:flex-end}.quote-management-quote-prices-summary{font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing)}.quote-management-quote-prices-summary__entry{display:flex;flex-direction:row;justify-content:space-between;gap:10px;width:100%}.quote-management-quote-prices-summary__accordion,.quote-management-quote-prices-summary__label{flex-grow:1}.quote-management-quote-prices-summary__label--strong{font:var(--type-body-1-strong-font);letter-spacing:var(--type-body-1-strong-letter-spacing)}.quote-management-quote-prices-summary__value{flex-grow:1;text-align:right}.dropin-modal__body.dropin-modal__body--medium{padding:var(--spacing-small)}.confirmation-modal__content{display:flex;flex-direction:column}.confirmation-modal__banner{margin-left:calc(-1 * var(--spacing-small));margin-right:calc(-1 * var(--spacing-small));margin-top:calc(-1 * var(--spacing-small));margin-bottom:var(--spacing-medium)}.confirmation-modal__title{font:var(--type-headline-2-strong-font);letter-spacing:var(--type-headline-1-letter-spacing);color:var(--color-neutral-800);margin-bottom:var(--spacing-medium);padding-bottom:var(--spacing-medium)}.confirmation-modal__message{margin-bottom:var(--spacing-medium);text-align:left;color:var(--color-neutral-800)}.confirmation-modal__actions{display:flex;justify-content:flex-end;gap:var(--spacing-medium);margin-top:var(--spacing-big);margin-right:var(--spacing-small);padding-bottom:var(--spacing-small)}div.dropin-modal__body.dropin-modal__body--medium>div.dropin-modal__content{margin:var(--spacing-small) var(--spacing-small) var(--spacing-small) var(--spacing-small)!important}.dropin-modal:has(.confirmation-modal__banner) .dropin-modal__header,.dropin-modal__body:has(.confirmation-modal__banner) .dropin-modal__header{display:none!important;height:0!important;padding:0!important;margin:0!important}@media only screen and (max-width: 768px){.confirmation-modal__banner .dropin-in-line-alert{padding:var(--spacing-xsmall) var(--spacing-small)!important;gap:var(--spacing-xsmall)!important}.confirmation-modal__actions{flex-direction:column-reverse;gap:var(--spacing-small)}.confirmation-modal__actions button{width:100%}}
|
|
8
8
|
.quote-management-actions-bar__container{container-type:inline-size;container-name:actions-bar-container}.quote-management-actions-bar{background:var(--color-neutral-200);padding:var(--spacing-xsmall);display:flex;gap:var(--spacing-small);justify-content:space-between;align-items:center}.quote-management-actions-bar__dropdown{width:max-content}.quote-management-actions-bar__buttons{display:flex}.quote-management-actions-bar__button>span{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}@container actions-bar-container (max-width: 768px){.quote-management-actions-bar{flex-direction:column;align-items:flex-start;gap:var(--spacing-xsmall)}.quote-management-actions-bar__dropdown{width:100%}.quote-management-actions-bar__buttons{flex-direction:column;align-items:flex-start;gap:var(--spacing-xsmall);width:100%}.quote-management-actions-bar__button{width:100%}}.quote-management-manage-negotiable-quote{display:grid;gap:var(--spacing-small);color:var(--color-neutral-800);width:100%;container-type:inline-size}.quote-management-manage-negotiable-quote__header{display:flex;gap:var(--spacing-big);align-items:center}.quote-management-manage-negotiable-quote__quote-name>*{font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);margin:0}.quote-management-manage-negotiable-quote__quote-name-wrapper{display:flex;align-items:center;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote__quote-name-title{font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);margin:0}.quote-management-manage-negotiable-quote__rename-button{background:none;border:none;padding:var(--spacing-xsmall);cursor:pointer;display:inline-flex;align-items:center}.quote-management-manage-negotiable-quote__rename-button:disabled{cursor:not-allowed;opacity:.5}.quote-management-manage-negotiable-quote__quote-status>*{font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing);border:2px solid var(--color-neutral-300);padding:var(--spacing-xxsmall)}.quote-management-manage-negotiable-quote__banner{width:100%}.quote-management-manage-negotiable-quote__details{display:flex;flex-direction:row;gap:var(--spacing-xsmall);justify-content:space-between;align-items:center;flex-wrap:wrap}.quote-management-manage-negotiable-quote__detail{display:flex;flex-wrap:wrap;gap:var(--spacing-xxsmall);align-items:baseline}.quote-management-manage-negotiable-quote__detail-title{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing)}.quote-management-manage-negotiable-quote__detail-content{font:var(--type-body-2-font);letter-spacing:var(--type-body-2-letter-spacing)}.quote-management-manage-negotiable-quote__item-actions{justify-content:flex-start}.quote-management-manage-negotiable-quote__quote-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote__shipping-information-container{display:flex;flex-direction:column;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote__shipping-information-title>*{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);margin:0}.quote-management-manage-negotiable-quote__quote-comments-container{display:flex;flex-direction:column;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote__quote-comments-title>*{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);margin:0}.quote-management-manage-negotiable-quote__footer{display:flex;gap:var(--spacing-small);justify-content:flex-start}@container (max-width: 768px){.quote-management-manage-negotiable-quote__header{flex-direction:column}.quote-management-manage-negotiable-quote__action-bar{flex-direction:column;align-items:flex-start}.quote-management-manage-negotiable-quote__quote-actions{justify-content:flex-start}}.quote-order-summary{display:grid;position:relative;grid-auto-flow:row;padding:var(--spacing-medium)}.quote-order-summary__primary{background-color:var(--color-neutral-200)}.quote-order-summary__secondary{background-color:var(--color-neutral-50)}.quote-order-summary__content{display:grid;gap:var(--spacing-xsmall);margin-top:var(--spacing-small)}.quote-order-summary__heading{display:grid;font:var(--type-headline-2-strong-font);letter-spacing:var(--type-headline-2-strong-letter-spacing);color:var(--color-neutral-800);gap:var(--spacing-small)}.quote-order-summary__discount .quote-order-summary__label,.quote-order-summary__discount .quote-order-summary__price{color:var(--color-warning-800)}.quote-order-summary__taxes .dropin-divider:last-child{margin-bottom:0}.quote-order-summary__total{margin-top:var(--spacing-medium)}.quote-order-summary__heading .quote-order-summary__divider-primary,.quote-order-summary__heading .quote-order-summary__divider-secondary{width:100%;margin:0}.quote-order-summary__divider-secondary{margin:0}.quote-order-summary__taxEntry.quote-order-summary__entry{margin-top:0}.quote-order-summary__entry,.quote-order-summary__taxEntry{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xxsmall);align-items:center;color:var(--color-neutral-800)}.quote-order-summary__caption{font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing);grid-column:span 2;color:var(--color-neutral-700)}.quote-order-summary__shipping--edit{display:grid;grid-column:1 / span 2;gap:var(--spacing-small);padding-top:var(--spacing-small);padding-left:var(--spacing-small)}a.quote-order-summary__shippingLink{text-decoration:underline}.quote-order-summary__shipping--hide{display:none!important}.quote-order-summary__shipping--edit button{width:var(--spacing-huge);justify-self:end}.quote-order-summary__shipping--zip,.quote-order-summary__shipping--state{background-color:var(--color-neutral-50)}.quote-order-summary__taxes .dropin-accordion-section__content-container{gap:var(--spacing-small);margin:var(--spacing-small) 0}.quote-order-summary__spinner{margin:0 auto;position:absolute;z-index:999;left:0;right:0;top:calc(50% - (var(--size) / 2));bottom:0}.quote-order-summary__label,.quote-order-summary__price{font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing)}.quote-order-summary__price{text-align:right;text-transform:uppercase}.quote-order-summary__label--muted{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-700)}.quote-order-summary__price--muted{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}.quote-order-summary__label--bold,.quote-order-summary__price--bold{font:var(--type-body-1-emphasized-font);letter-spacing:var(--type-body-1-emphasized-letter-spacing)}.quote-management-quote-summary-list{container-type:inline-size;container-name:quote-summary-list}.quote-management-quote-summary-list__background--secondary{background-color:var(--color-neutral-200)}.quote-management-quote-summary-list__heading{display:grid;row-gap:var(--spacing-xsmall);padding:var(--spacing-medium) 0 0 0;font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);color:var(--color-neutral-800)}.quote-management-quote-summary-list__heading--full-width{width:100%}.quote-management-quote-summary-list__heading-divider{width:100%;margin:var(--spacing-xxsmall) 0 var(--spacing-medium) 0}.quote-management-quote-summary-list__content{display:grid;grid-template-columns:1fr;padding:0}.quote-management-quote-summary-list__out-of-stock-message{margin:calc(-1 * var(--spacing-xsmall)) 0 var(--spacing-medium) 0}.quote-management-quote-summary-list-footer__action,.quote-management-quote-summary-list-footer__action:focus .quote-management-quote-summary-list-footer__action:active,.quote-management-quote-summary-list-footer__action:link{font:var(--type-body-2-strong-font);margin:0 auto;width:auto;margin-top:var(--spacing-medium);margin-bottom:var(--spacing-medium)}.quote-management-quote-summary-list-footer__action:hover{text-decoration:underline;text-underline-offset:var(--spacing-xxsmall);background:transparent;color:var(--color-brand-700)}.quote-management-quote-summary-list-footer__action:visited{background-color:transparent}.quote-management-quote-summary-list-accordion{border-left:var(--shape-border-width-2) solid var(--color-neutral-400);border-right:var(--shape-border-width-2) solid var(--color-neutral-400)}.quote-management-quote-summary-list-accordion__section{margin:var(--spacing-medium)}.dropin-cart-item__quantity{width:fit-content}@container quote-summary-list (width >= 768px){.quote-management-quote-summary-list__out-of-stock-message{margin:calc(-1 * var(--spacing-small)) 0 var(--spacing-xxbig) 0}}@container quote-summary-list (width >= 1024px){.quote-management-quote-summary-list__content,.quote-management-quote-summary-list__heading{grid-column:1 / span 8}.quote-management-quote-summary-list__heading--full-width{grid-column:1 / span 12}.quote-management-quote-summary-list__content{padding:0}}.quotes-list-table__empty-state{padding:var(--spacing-large);text-align:center;color:var(--color-neutral-600);border-top:var(--shape-border-width-1) solid var(--color-neutral-200)}.quotes-list-table__footer{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-medium);border-top:var(--shape-border-width-1) solid var(--color-neutral-200);gap:var(--spacing-medium)}.quotes-list-table__item-range{flex:1;color:var(--color-neutral-800);font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}.quotes-list-table__pagination{flex:0 0 auto;display:flex;justify-content:center}.quotes-list-table__page-size-picker{flex:1;display:flex;justify-content:flex-end;align-items:center;gap:var(--spacing-small);color:var(--color-neutral-800);font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}.quotes-list-table__page-size-picker>span{display:inline-flex;align-items:baseline}.quotes-list-table__page-size-picker .dropin-picker{display:inline-flex;align-items:center;margin:0 var(--spacing-xsmall);vertical-align:center}.quotes-list-table__page-size-picker .dropin-picker__select{height:auto;min-height:var(--sizing-medium);line-height:1.2;vertical-align:baseline}.quote-management-quote-templates-list-table,.quote-management-quote-templates-list-table__table{width:100%}.quote-templates-list-table__empty-state{padding:var(--spacing-large);text-align:center}.quote-templates-list-table__footer{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-medium) 0;gap:var(--spacing-medium);flex-wrap:wrap}.quote-templates-list-table__item-range{display:flex;align-items:center;color:var(--color-neutral-700);font-size:var(--type-body-2-font-size)}.quote-templates-list-table__pagination{display:flex;justify-content:center;flex:1}.quote-templates-list-table__page-size-picker{display:flex;align-items:center;gap:var(--spacing-xsmall);color:var(--color-neutral-700);font-size:var(--type-body-2-font-size)}.quote-management-tabbed-content{width:100%}.quote-management-tabbed-content__tabs{display:flex;margin-bottom:-1px}.quote-management-tabbed-content__tab{background:var(--color-neutral-100);color:var(--color-neutral-700);border:solid 1px var(--color-neutral-400);padding:var(--spacing-xsmall) var(--spacing-medium);margin-left:-1px;cursor:pointer;font:var(--type-body-2-font);letter-spacing:var(--type-body-2-letter-spacing)}.quote-management-tabbed-content__tab:first-child{margin-left:unset}.quote-management-tabbed-content__tab:hover{background:var(--color-neutral-300);color:var(--color-neutral-700)}.quote-management-tabbed-content__tab--active{background:var(--color-neutral-50);color:var(--color-neutral-800);border-bottom:none}.quote-management-tabbed-content__tab--active:hover{background:var(--color-neutral-50);color:var(--color-neutral-800)}.quote-management-tabbed-content__active-tab-content{background:var(--color-neutral-50);padding:var(--spacing-small);border:solid 1px var(--color-neutral-400)}.quote-management-rename-quote-modal__error-banner,.quote-management-rename-quote-modal__success-banner{margin-bottom:var(--spacing-medium)}.dropin-modal__header-title-content{font:var(--type-headline-2-strong-font);letter-spacing:var(--type-headline-1-letter-spacing);color:var(--color-neutral-800);margin-top:var(--spacing-small);margin-left:var(--spacing-small)}.quote-management-rename-quote-modal__content{display:flex;flex-direction:column;gap:var(--spacing-medium);margin-bottom:var(--spacing-medium);width:100%}.quote-management-rename-quote-modal__error-text{color:var(--color-alert-800);font:var(--type-body-2-default-font);margin-top:var(--spacing-xsmall)}.quote-management-rename-quote-modal__actions{display:flex;justify-content:flex-start;gap:var(--spacing-small);margin-top:var(--spacing-medium);width:100%}.quote-management-rename-quote-modal__cancel-button{order:1}.quote-management-rename-quote-modal__save-button{order:2}@media only screen and (min-width: 768px) and (max-width: 1023px){.quote-management-rename-quote-modal .dropin-modal__close-button{top:var(--spacing-small);right:var(--spacing-small)}.quote-management-rename-quote-modal__actions{gap:var(--spacing-medium)}}@media only screen and (min-width: 1024px){.quote-management-rename-quote-modal__actions{gap:var(--spacing-medium)}}@media only screen and (max-width: 767px){.quote-management-rename-quote-modal .dropin-modal__close-button{margin:var(--spacing-small)}.quote-management-rename-quote-modal__error-banner .dropin-in-line-alert{padding:var(--spacing-xsmall) var(--spacing-small)!important;gap:var(--spacing-xsmall)!important}.quote-management-rename-quote-modal__content{gap:var(--spacing-small)}.quote-management-rename-quote-modal__actions{flex-direction:column-reverse;gap:var(--spacing-small);margin-top:var(--spacing-small)}.quote-management-rename-quote-modal__actions button{width:100%}.quote-management-rename-quote-modal__cancel-button{order:2}.quote-management-rename-quote-modal__save-button{order:1}}`,{styleId:"quote-management"});
|
|
9
|
-
import{jsx as t}from"@dropins/tools/preact-jsx-runtime.js";import{Render as n}from"@dropins/tools/lib.js";import{useState as i,useEffect as u}from"@dropins/tools/preact-hooks.js";import{UIProvider as
|
|
9
|
+
import{jsx as t}from"@dropins/tools/preact-jsx-runtime.js";import{Render as n}from"@dropins/tools/lib.js";import{useState as i,useEffect as u}from"@dropins/tools/preact-hooks.js";import{UIProvider as l}from"@dropins/tools/components.js";import{events as d}from"@dropins/tools/event-bus.js";const c={cancel:"Cancel",confirm:"Confirm"},m={Request:{title:"Request a Quote",comment:"Comment",commentError:"Please add your comment",quoteName:"Quote name",quoteNameError:"Please add a quote name",attachmentsError:"Error uploading attachments",requestCta:"Request a Quote",saveDraftCta:"Save as draft",error:{header:"Error",unauthenticated:"Please sign in to request a quote.",unauthorized:"You are not authorized to request a quote.",missingCart:"Could not find a valid cart."},success:{header:"Success",submitted:"Quote request submitted successfully!",draftSaved:"Quote saved as draft successfully!"}},Manage:{createdLabel:"Created:",salesRepLabel:"Sales Rep:",expiresLabel:"Expires:",actionsLabel:"Actions",actions:{remove:"Remove"},bannerTitle:"Alert",bannerStatusMessages:{submitted:"This quote is currently locked for editing. It will become available once released by the Merchant.",pending:"This quote is currently locked for editing. It will become available once released by the Merchant.",expired:"Your quote has expired and the product prices have been updated as per the latest prices in your catalog. You can either re-submit the quote to seller for further negotiation or go to checkout."},actionButtons:{close:"Close quote",delete:"Delete quote",print:"Print quote",createTemplate:"Create quote template",createCopy:"Create copy",sendForReview:"Send for review"},confirmationModal:{cancel:"Cancel",delete:{title:"Delete Quote",message:"Are you sure you want to delete this quote?",confirm:"Delete",errorHeading:"Error",errorFallback:"Failed to delete quote",successHeading:"Success",successDescription:"Quote has been successfully deleted"},close:{message:"Are you sure you want to close this quote?",confirm:"Close",confirmLoading:"Closing...",successHeading:"Success",successDescription:"Quote has been successfully closed"}},shippingInformation:{title:"Shipping Information"},shippingAddress:{noAddress:"No shipping address has been set for this quote."},quoteComments:{title:"Quote Comments",placeholder:"Add your comment",emptyState:"No comments yet",by:"by"},productListTable:{headers:{productName:"Product name",sku:"SKU",price:"Price",quantity:"Quantity",discount:"Discount",subtotal:"Subtotal",actions:"Actions"},submitButton:"Update",actions:{editNoteToSeller:"Edit note to seller",remove:"Remove"}},rename:{title:"Rename Quote",quoteNameLabel:"Quote name",reasonLabel:"Reason for change",renameButton:"Rename",cancelButton:"Cancel",errorHeading:"Error",quoteNameRequired:"Quote name is required",errorDefault:"Failed to rename quote. Please try again.",successHeading:"Success",successMessage:"Quote renamed successfully!"},tabbedContent:{itemsQuoted:"Items quoted",comments:"Comments",historyLog:"History log"},quotePricesSummary:{subtotal:{excludingTax:"Quote Subtotal (excluding tax)"},appliedTaxes:"Applied Taxes",grandTotal:{includingTax:"Quote Grand Total (including tax)"}},updateQuantitiesModal:{title:"Change Quote Items",description:"Making changes to any quote item changes the terms of the quote. After you update the quote, return it to the seller for review and approval.",cancelButton:"Cancel",updateButton:"Apply Changes",successHeading:"Success",successMessage:"Quote quantities have been successfully updated.",errorHeading:"Error",errorMessage:"Failed to update quote quantities. Please try again."}},PriceSummary:{taxToBeDetermined:"TBD",orderSummary:"Order Summary",giftOptionsTax:{printedCard:{title:"Printed card",inclTax:"Including taxes",exclTax:"excluding taxes"},itemGiftWrapping:{title:"Item gift wrapping",inclTax:"Including taxes",exclTax:"excluding taxes"},orderGiftWrapping:{title:"Order gift wrapping",inclTax:"Including taxes",exclTax:"excluding taxes"}},subTotal:{label:"Subtotal",withTaxes:"Including taxes",withoutTaxes:"excluding taxes"},shipping:{label:"Shipping",withTaxes:"Including taxes",withoutTaxes:"excluding taxes"},taxes:{total:"Tax Total",totalOnly:"Tax",breakdown:"Taxes",showBreakdown:"Show Tax Breakdown",hideBreakdown:"Hide Tax Breakdown"},total:{free:"Free",label:"Total",withoutTax:"Total excluding taxes",saved:"Total saved"}},QuoteSummaryList:{discountedPrice:"Discounted Price",discountPercentage:"{discount}% off",editQuote:"Edit",file:"{count} file",files:"{count} files",heading:"Negotiable Quote ({count})",listOfQuoteItems:"List of Quote Items",regularPrice:"Regular Price",savingsAmount:"Savings",viewMore:"View more"}},g={changeTypes:{created:"Quote Created",updated:"Quote Updated",statusChanged:"Status Changed",commentAdded:"Comment Added",expirationChanged:"Expiration Changed"},noteTypes:{buyerNoteAdded:"Buyer Note Added",sellerNoteAdded:"Seller Note Added"},authorLabels:{buyer:"(Buyer)",seller:"(Seller)"},changeDetails:{comment:'Comment: "{comment}"',statusChangedFromTo:"Status changed from {oldStatus} to {newStatus}",statusSetTo:"Status set to {newStatus}",expirationChangedFromTo:"Expiration changed from {oldExpiration} to {newExpiration}",expirationSetTo:"Expiration set to {newExpiration}",totalChangedFromTo:"Total changed from {oldTotal} to {newTotal}",customChange:'{title}: changed from "{oldValue}" to "{newValue}"',productsRemovedFromCatalog:"Products removed from catalog: {products}",productsRemovedFromQuote:"Products removed from quote: {products}",noDetailsAvailable:"No details available"},emptyState:"No history available for this quote."},p={never:"Never"},h={QuotesListTable:{quoteName:"Quote Name",created:"Created",createdBy:"Created By",status:"Status",lastUpdated:"Last Updated",quoteTemplate:"Quote Template",quoteTotal:"Quote Total",actions:"Action"},QuoteTemplatesListTable:{name:"Template Name",state:"State",status:"Status",validUntil:"Valid Until",minQuoteTotal:"Min. Quote Total (Negotiated)",ordersPlaced:"Orders Placed",lastOrdered:"Last Ordered",actions:"Action"}},f={ConfirmationModal:c,NegotiableQuote:m,historyLog:g,dateUtils:p,QuoteManagement:h},x={default:f},T=({children:a})=>{const[o,s]=i("en_US");return u(()=>{const e=d.on("locale",r=>{s(r)},{eager:!0});return()=>{e==null||e.off()}},[]),t(l,{lang:o,langDefinitions:x,children:a})},Q=new n(t(T,{}));export{Q as render};
|
|
10
10
|
//# sourceMappingURL=render.js.map
|
package/render.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sources":["/@dropins/storefront-quote-management/src/render/Provider.tsx","/@dropins/storefront-quote-management/src/render/render.tsx"],"sourcesContent":["/********************************************************************\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: Adobe permits you to use, modify, and distribute this\n * file in accordance with the terms of the Adobe license agreement\n * accompanying it.\n *******************************************************************/\n\nimport { FunctionComponent } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { UIProvider } from '@adobe-commerce/elsie/components';\nimport { Lang } from '@adobe-commerce/elsie/i18n';\nimport { events } from '@adobe-commerce/event-bus';\n\nimport en_US from '../i18n/en_US.json';\n\n// Langs\nconst langDefinitions = {\n default: en_US,\n};\n\ninterface CartProviderProps {\n children?: any;\n}\n\nexport const Provider: FunctionComponent<CartProviderProps> = ({\n children,\n}) => {\n const [lang, setLang] = useState<Lang>('en_US');\n\n // Events\n useEffect(() => {\n const localeEvent = events.on(\n 'locale',\n (locale: string) => {\n setLang(locale as Lang);\n },\n { eager: true }\n );\n return () => {\n localeEvent?.off();\n };\n }, []);\n\n return (\n <UIProvider lang={lang} langDefinitions={langDefinitions}>\n {children}\n </UIProvider>\n );\n};\n","/********************************************************************\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: Adobe permits you to use, modify, and distribute this\n * file in accordance with the terms of the Adobe license agreement\n * accompanying it.\n *******************************************************************/\n\nimport { Render } from '@adobe-commerce/elsie/lib';\nimport { Provider } from './Provider';\n\nexport const render = new Render(<Provider />);\n"],"names":["langDefinitions","en_US","Provider","children","lang","setLang","useState","useEffect","localeEvent","events","locale","jsx","UIProvider","render","Render"],"mappings":"
|
|
1
|
+
{"version":3,"file":"render.js","sources":["/@dropins/storefront-quote-management/src/render/Provider.tsx","/@dropins/storefront-quote-management/src/render/render.tsx"],"sourcesContent":["/********************************************************************\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: Adobe permits you to use, modify, and distribute this\n * file in accordance with the terms of the Adobe license agreement\n * accompanying it.\n *******************************************************************/\n\nimport { FunctionComponent } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { UIProvider } from '@adobe-commerce/elsie/components';\nimport { Lang } from '@adobe-commerce/elsie/i18n';\nimport { events } from '@adobe-commerce/event-bus';\n\nimport en_US from '../i18n/en_US.json';\n\n// Langs\nconst langDefinitions = {\n default: en_US,\n};\n\ninterface CartProviderProps {\n children?: any;\n}\n\nexport const Provider: FunctionComponent<CartProviderProps> = ({\n children,\n}) => {\n const [lang, setLang] = useState<Lang>('en_US');\n\n // Events\n useEffect(() => {\n const localeEvent = events.on(\n 'locale',\n (locale: string) => {\n setLang(locale as Lang);\n },\n { eager: true }\n );\n return () => {\n localeEvent?.off();\n };\n }, []);\n\n return (\n <UIProvider lang={lang} langDefinitions={langDefinitions}>\n {children}\n </UIProvider>\n );\n};\n","/********************************************************************\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: Adobe permits you to use, modify, and distribute this\n * file in accordance with the terms of the Adobe license agreement\n * accompanying it.\n *******************************************************************/\n\nimport { Render } from '@adobe-commerce/elsie/lib';\nimport { Provider } from './Provider';\n\nexport const render = new Render(<Provider />);\n"],"names":["langDefinitions","en_US","Provider","children","lang","setLang","useState","useEffect","localeEvent","events","locale","jsx","UIProvider","render","Render"],"mappings":"siMAkBMA,EAAkB,CACtB,QAASC,CACX,EAMaC,EAAiD,CAAC,CAC7D,SAAAC,CACF,IAAM,CACJ,KAAM,CAACC,EAAMC,CAAO,EAAIC,EAAe,OAAO,EAG9C,OAAAC,EAAU,IAAM,CACd,MAAMC,EAAcC,EAAO,GACzB,SACCC,GAAmB,CAClBL,EAAQK,CAAc,CACxB,EACA,CAAE,MAAO,EAAA,CAAK,EAEhB,MAAO,IAAM,CACXF,GAAA,MAAAA,EAAa,KACf,CACF,EAAG,CAAA,CAAE,EAGHG,EAACC,EAAA,CAAW,KAAAR,EAAY,gBAAAJ,EACrB,SAAAG,CAAA,CACH,CAEJ,ECtCaU,EAAS,IAAIC,EAAOH,EAACT,IAAS,CAAE"}
|
package/utils/dateUtils.d.ts
CHANGED
|
@@ -12,4 +12,10 @@
|
|
|
12
12
|
*/
|
|
13
13
|
export declare function formatExpirationDate(date: string, dateFormatter: Intl.DateTimeFormat): string;
|
|
14
14
|
export declare function getUserTimezone(): string;
|
|
15
|
+
/**
|
|
16
|
+
* Formats a date string to locale date string, returning "–" for invalid dates
|
|
17
|
+
* @param dateString - The date string to format
|
|
18
|
+
* @returns Formatted date string or "–" for invalid dates
|
|
19
|
+
*/
|
|
20
|
+
export declare function formattedDate(dateString: string): string;
|
|
15
21
|
//# sourceMappingURL=dateUtils.d.ts.map
|