@dropins/storefront-quote-management 1.0.0 → 1.1.0-beta1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/api/graphql/NegotiableQuoteTemplateFragment.d.ts +1 -1
  2. package/api/index.d.ts +1 -0
  3. package/api/setQuoteTemplateExpirationDate/graphql/setQuoteTemplateExpirationDate.d.ts +10 -0
  4. package/api/setQuoteTemplateExpirationDate/index.d.ts +10 -0
  5. package/api/setQuoteTemplateExpirationDate/setQuoteTemplateExpirationDate.d.ts +8 -0
  6. package/api.js +4 -4
  7. package/api.js.map +1 -1
  8. package/chunks/ItemsQuotedTemplate.js +1 -1
  9. package/chunks/ItemsQuotedTemplate.js.map +1 -1
  10. package/chunks/LineItemNoteModal.js +1 -1
  11. package/chunks/LineItemNoteModal.js.map +1 -1
  12. package/chunks/NegotiableQuoteFragment.js +4 -0
  13. package/chunks/NegotiableQuoteFragment.js.map +1 -1
  14. package/chunks/NegotiableQuoteTemplateFragment.js +4 -0
  15. package/chunks/NegotiableQuoteTemplateFragment.js.map +1 -1
  16. package/chunks/dateUtils.js +1 -1
  17. package/chunks/dateUtils.js.map +1 -1
  18. package/chunks/openQuoteTemplate.js +20 -10
  19. package/chunks/openQuoteTemplate.js.map +1 -1
  20. package/chunks/transform-quote.js +1 -1
  21. package/chunks/transform-quote.js.map +1 -1
  22. package/components/ExpirationDateModal/ExpirationDateModal.d.ts +16 -0
  23. package/components/ExpirationDateModal/index.d.ts +11 -0
  24. package/components/index.d.ts +1 -0
  25. package/containers/ManageNegotiableQuoteTemplate.js +2 -2
  26. package/containers/ManageNegotiableQuoteTemplate.js.map +1 -1
  27. package/data/models/negotiable-quote-model.d.ts +4 -0
  28. package/data/transforms/__fixtures__/negotiableQuoteData.d.ts +16 -0
  29. package/data/transforms/__fixtures__/negotiableQuoteTemplateData.d.ts +60 -0
  30. package/hooks/useExpirationDate.d.ts +64 -0
  31. package/hooks/useItemsQuotedTemplate.d.ts +1 -0
  32. package/i18n/en_US.json.d.ts +12 -0
  33. package/package.json +1 -1
  34. package/render.js +3 -2
  35. package/render.js.map +1 -1
@@ -125,6 +125,10 @@ export interface CartItemModel {
125
125
  amountOff: number;
126
126
  percentOff: number;
127
127
  };
128
+ rowCatalogDiscount: {
129
+ amountOff: number;
130
+ percentOff: number;
131
+ };
128
132
  discounts: {
129
133
  label: string;
130
134
  value: string;
@@ -190,6 +190,10 @@ export declare const mockQuoteData: {
190
190
  amount_off: number;
191
191
  percent_off: number;
192
192
  };
193
+ row_catalog_discount: {
194
+ amount_off: number;
195
+ percent_off: number;
196
+ };
193
197
  discounts: {
194
198
  label: string;
195
199
  value: number;
@@ -282,6 +286,10 @@ export declare const mockQuoteData: {
282
286
  amount_off: number;
283
287
  percent_off: number;
284
288
  };
289
+ row_catalog_discount: {
290
+ amount_off: number;
291
+ percent_off: number;
292
+ };
285
293
  discounts: never[];
286
294
  };
287
295
  quantity: number;
@@ -395,6 +403,10 @@ export declare const mockQuoteData: {
395
403
  amount_off: number;
396
404
  percent_off: number;
397
405
  };
406
+ row_catalog_discount: {
407
+ amount_off: number;
408
+ percent_off: number;
409
+ };
398
410
  discounts: {
399
411
  label: string;
400
412
  value: number;
@@ -507,6 +519,10 @@ export declare const mockQuoteData: {
507
519
  amount_off: number;
508
520
  percent_off: number;
509
521
  };
522
+ row_catalog_discount: {
523
+ amount_off: number;
524
+ percent_off: number;
525
+ };
510
526
  discounts: {
511
527
  label: string;
512
528
  value: number;
@@ -91,6 +91,10 @@ export declare const mockQuoteTemplateData: {
91
91
  amount_off: number;
92
92
  percent_off: number;
93
93
  };
94
+ row_catalog_discount: {
95
+ amount_off: number;
96
+ percent_off: number;
97
+ };
94
98
  discounts: {
95
99
  label: string;
96
100
  value: string;
@@ -188,6 +192,10 @@ export declare const mockQuoteTemplateData: {
188
192
  amount_off: number;
189
193
  percent_off: number;
190
194
  };
195
+ row_catalog_discount: {
196
+ amount_off: number;
197
+ percent_off: number;
198
+ };
191
199
  discounts: {
192
200
  label: string;
193
201
  value: string;
@@ -263,6 +271,10 @@ export declare const mockQuoteTemplateData: {
263
271
  amount_off: number;
264
272
  percent_off: number;
265
273
  };
274
+ row_catalog_discount: {
275
+ amount_off: number;
276
+ percent_off: number;
277
+ };
266
278
  discounts: {
267
279
  label: string;
268
280
  value: string;
@@ -521,6 +533,10 @@ export declare const mockSubmittedQuoteTemplateData: {
521
533
  amount_off: number;
522
534
  percent_off: number;
523
535
  };
536
+ row_catalog_discount: {
537
+ amount_off: number;
538
+ percent_off: number;
539
+ };
524
540
  discounts: {
525
541
  label: string;
526
542
  value: string;
@@ -618,6 +634,10 @@ export declare const mockSubmittedQuoteTemplateData: {
618
634
  amount_off: number;
619
635
  percent_off: number;
620
636
  };
637
+ row_catalog_discount: {
638
+ amount_off: number;
639
+ percent_off: number;
640
+ };
621
641
  discounts: {
622
642
  label: string;
623
643
  value: string;
@@ -693,6 +713,10 @@ export declare const mockSubmittedQuoteTemplateData: {
693
713
  amount_off: number;
694
714
  percent_off: number;
695
715
  };
716
+ row_catalog_discount: {
717
+ amount_off: number;
718
+ percent_off: number;
719
+ };
696
720
  discounts: {
697
721
  label: string;
698
722
  value: string;
@@ -938,6 +962,10 @@ export declare const mockInReviewQuoteTemplateData: {
938
962
  amount_off: number;
939
963
  percent_off: number;
940
964
  };
965
+ row_catalog_discount: {
966
+ amount_off: number;
967
+ percent_off: number;
968
+ };
941
969
  discounts: {
942
970
  label: string;
943
971
  value: string;
@@ -1035,6 +1063,10 @@ export declare const mockInReviewQuoteTemplateData: {
1035
1063
  amount_off: number;
1036
1064
  percent_off: number;
1037
1065
  };
1066
+ row_catalog_discount: {
1067
+ amount_off: number;
1068
+ percent_off: number;
1069
+ };
1038
1070
  discounts: {
1039
1071
  label: string;
1040
1072
  value: string;
@@ -1110,6 +1142,10 @@ export declare const mockInReviewQuoteTemplateData: {
1110
1142
  amount_off: number;
1111
1143
  percent_off: number;
1112
1144
  };
1145
+ row_catalog_discount: {
1146
+ amount_off: number;
1147
+ percent_off: number;
1148
+ };
1113
1149
  discounts: {
1114
1150
  label: string;
1115
1151
  value: string;
@@ -1355,6 +1391,10 @@ export declare const mockClosedQuoteTemplateData: {
1355
1391
  amount_off: number;
1356
1392
  percent_off: number;
1357
1393
  };
1394
+ row_catalog_discount: {
1395
+ amount_off: number;
1396
+ percent_off: number;
1397
+ };
1358
1398
  discounts: {
1359
1399
  label: string;
1360
1400
  value: string;
@@ -1452,6 +1492,10 @@ export declare const mockClosedQuoteTemplateData: {
1452
1492
  amount_off: number;
1453
1493
  percent_off: number;
1454
1494
  };
1495
+ row_catalog_discount: {
1496
+ amount_off: number;
1497
+ percent_off: number;
1498
+ };
1455
1499
  discounts: {
1456
1500
  label: string;
1457
1501
  value: string;
@@ -1527,6 +1571,10 @@ export declare const mockClosedQuoteTemplateData: {
1527
1571
  amount_off: number;
1528
1572
  percent_off: number;
1529
1573
  };
1574
+ row_catalog_discount: {
1575
+ amount_off: number;
1576
+ percent_off: number;
1577
+ };
1530
1578
  discounts: {
1531
1579
  label: string;
1532
1580
  value: string;
@@ -1772,6 +1820,10 @@ export declare const mockInactiveQuoteTemplateData: {
1772
1820
  amount_off: number;
1773
1821
  percent_off: number;
1774
1822
  };
1823
+ row_catalog_discount: {
1824
+ amount_off: number;
1825
+ percent_off: number;
1826
+ };
1775
1827
  discounts: {
1776
1828
  label: string;
1777
1829
  value: string;
@@ -1869,6 +1921,10 @@ export declare const mockInactiveQuoteTemplateData: {
1869
1921
  amount_off: number;
1870
1922
  percent_off: number;
1871
1923
  };
1924
+ row_catalog_discount: {
1925
+ amount_off: number;
1926
+ percent_off: number;
1927
+ };
1872
1928
  discounts: {
1873
1929
  label: string;
1874
1930
  value: string;
@@ -1944,6 +2000,10 @@ export declare const mockInactiveQuoteTemplateData: {
1944
2000
  amount_off: number;
1945
2001
  percent_off: number;
1946
2002
  };
2003
+ row_catalog_discount: {
2004
+ amount_off: number;
2005
+ percent_off: number;
2006
+ };
1947
2007
  discounts: {
1948
2008
  label: string;
1949
2009
  value: string;
@@ -0,0 +1,64 @@
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 interface UseExpirationDateParams {
10
+ templateId?: string;
11
+ initialExpirationDate?: string;
12
+ expirationDateRequiredErrorMessage?: string;
13
+ }
14
+ export interface UseExpirationDateReturn {
15
+ /**
16
+ * Whether the expiration date modal is currently open.
17
+ */
18
+ isExpirationModalOpen: boolean;
19
+ /**
20
+ * The new expiration date entered by the user (in YYYY-MM-DD format).
21
+ */
22
+ expirationDate: string;
23
+ /**
24
+ * Error message for expiration date operation.
25
+ */
26
+ expirationError: string;
27
+ /**
28
+ * Error message for expiration date validation.
29
+ */
30
+ expirationDateError: string;
31
+ /**
32
+ * Success message for expiration date operation.
33
+ */
34
+ expirationSuccess: string;
35
+ /**
36
+ * Opens the expiration date modal and initializes state with the current expiration date.
37
+ */
38
+ handleExpirationClick: (currentExpirationDate?: string) => void;
39
+ /**
40
+ * Closes the expiration date modal and resets all state.
41
+ */
42
+ handleExpirationClose: () => void;
43
+ /**
44
+ * Updates the expiration date and clears any date-related errors.
45
+ */
46
+ handleExpirationDateChange: (value: string) => void;
47
+ /**
48
+ * Validates and saves the expiration date. Makes an API call to save immediately.
49
+ * Closes the modal if successful.
50
+ * Returns a promise that resolves to true if successful, false otherwise.
51
+ */
52
+ handleExpirationSave: () => Promise<boolean>;
53
+ /**
54
+ * Resets expiration date state (useful after successful submission).
55
+ */
56
+ resetExpirationState: () => void;
57
+ }
58
+ /**
59
+ * Custom hook to manage quote template expiration date functionality.
60
+ * Handles state management for the expiration date modal, validation, and API calls.
61
+ * Saves the expiration date immediately when user clicks "Save" in the modal.
62
+ */
63
+ export declare const useExpirationDate: (params?: UseExpirationDateParams) => UseExpirationDateReturn;
64
+ //# sourceMappingURL=useExpirationDate.d.ts.map
@@ -4,6 +4,7 @@ export interface UseItemsQuotedTemplateReturn {
4
4
  dropdownSelections: Record<string, string | undefined>;
5
5
  handleItemDropdownChange: (item: CartItemModel, action: string) => void;
6
6
  handleDismissRemoveBanner: () => void;
7
+ clearDropdownSelection: (item: CartItemModel) => void;
7
8
  }
8
9
  export interface UseItemsQuotedTemplateParams {
9
10
  handleRemoveItems: (items: CartItemModel[]) => void;
@@ -408,6 +408,18 @@ declare const _default: {
408
408
  "successHeading": "Success",
409
409
  "successMessage": "Quote template renamed successfully!"
410
410
  },
411
+ "expirationDate": {
412
+ "title": "Set Expiration Date",
413
+ "expirationDateLabel": "Expiration date",
414
+ "saveButton": "Save",
415
+ "cancelButton": "Cancel",
416
+ "errorHeading": "Error",
417
+ "expirationDateRequired": "Expiration date is required",
418
+ "invalidDate": "Please enter a valid date",
419
+ "pastDateError": "Expiration date must be in the future",
420
+ "errorDefault": "Failed to set expiration date. Please try again.",
421
+ "successHeading": "Success"
422
+ },
411
423
  "unsavedChangesWarningHeading": "Unsaved Changes",
412
424
  "unsavedChangesWarningMessage": "The quote template must be submitted for review to save the changes.",
413
425
  "shippingAddressWarningHeading": "No Shipping Address",
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name": "@dropins/storefront-quote-management", "version": "1.0.0", "@dropins/tools": "^1.6.0", "license": "SEE LICENSE IN LICENSE.md"}
1
+ {"name": "@dropins/storefront-quote-management", "version": "1.1.0-beta1", "@dropins/tools": "^1.6.0", "license": "SEE LICENSE IN LICENSE.md"}
package/render.js CHANGED
@@ -4,6 +4,7 @@ All Rights Reserved. */
4
4
  .quote-management-quote-comments-list{list-style:none;padding:0;margin:0}.quote-management-quote-comments-list__empty-state{color:var(--color-neutral-800);font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);padding:var(--spacing-small) 0;margin:0;list-style:none}.quote-management-quote-comments-list__item{padding:var(--spacing-small) 0;border-bottom:1px solid var(--color-neutral-300)}.quote-management-quote-comments-list__item:last-child{border-bottom:none}.quote-management-quote-comments-list__header{display:flex;align-items:baseline;margin-bottom:var(--spacing-xxsmall);gap:var(--spacing-xxsmall)}.quote-management-quote-comments-list__date,.quote-management-quote-comments-list__by,.quote-management-quote-comments-list__author{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);color:var(--color-neutral-800)}.quote-management-quote-comments-list__date{white-space:nowrap}.quote-management-quote-comments-list__text{font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing);color:var(--color-neutral-800);margin:0;word-wrap:break-word}.quote-management-quote-comments-list__attachments{margin-top:var(--spacing-xsmall);display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-quote-comments-list__attachments-label{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);color:var(--color-neutral-800);margin-bottom:var(--spacing-xxsmall)}.quote-management-quote-comments-list__attachment-link{font:var(--type-body-2-font);letter-spacing:var(--type-body-2-letter-spacing);color:var(--color-brand-600);text-decoration:underline;transition:color .2s ease;display:block;padding-left:var(--spacing-small);position:relative}.quote-management-quote-comments-list__attachment-link:hover{color:var(--color-brand-700);text-decoration:underline}.quote-management-quote-comments-list__attachment-link:focus{outline:2px solid var(--color-brand-600);outline-offset:2px}@media only screen and (min-width: 768px){.quote-management-quote-comments-list__item{padding:var(--spacing-medium) 0}}
5
5
  .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}
6
6
  .attached-files-list{display:flex;flex-direction:column;gap:var(--spacing-small, 8px);margin:var(--spacing-medium, 16px) 0}.attached-files-list__item{border:1px solid var(--color-neutral-300, #d1d5db);border-radius:var(--border-radius, 4px);padding:var(--spacing-small, 8px) var(--spacing-medium, 12px);background-color:var(--color-neutral-50, #f9fafb);transition:all .2s ease-in-out}.attached-files-list__item--error{border-color:var(--color-error, #ef4444);background-color:var(--color-error-light, #fef2f2)}.attached-files-list__item--success{border-color:var(--color-success, #10b981)}.attached-files-list__item--uploading{opacity:.8}.attached-files-list__item-main{display:flex;align-items:center;gap:var(--spacing-small, 8px)}.attached-files-list__item-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0}.attached-files-list__spinner{width:20px;height:20px;border:2px solid var(--color-neutral-200, #e5e7eb);border-top-color:var(--color-primary, #3b82f6);border-radius:50%;animation:attached-files-list__spin .8s linear infinite}@keyframes attached-files-list__spin{to{transform:rotate(360deg)}}.attached-files-list__success-icon{color:var(--color-success, #10b981)}.attached-files-list__error-icon{color:var(--color-error, #ef4444)}.attached-files-list__item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--spacing-xsmall, 4px)}.attached-files-list__item-name{font-weight:var(--font-weight-medium, 500);font-size:var(--font-size-base, 14px);line-height:1.4;color:var(--color-text-primary, #111827);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attached-files-list__item-size{font-size:var(--font-size-small, 12px);line-height:1.4;color:var(--color-text-secondary, #6b7280)}.attached-files-list__remove-button{flex-shrink:0;padding:var(--spacing-xsmall, 4px);min-width:auto}.attached-files-list__remove-button:disabled{opacity:.5;cursor:not-allowed}.attached-files-list__item-error{margin-top:var(--spacing-small, 8px);padding-left:32px;font-size:var(--font-size-small, 12px);color:var(--color-error, #ef4444);line-height:1.4}@media (max-width: 640px){.attached-files-list__item-name{font-size:var(--font-size-small, 12px)}.attached-files-list__item-size{font-size:var(--font-size-xsmall, 11px)}}
7
- .request-negotiable-quote-form{display:grid;gap:var(--spacing-small);align-items:flex-end;color:var(--color-neutral-800);width:100%}.request-negotiable-quote-form input:user-invalid,.request-negotiable-quote-form textarea:user-invalid{border-color:var(--color-alert-800)}.request-negotiable-quote-form__title{font:var(--type-body-1-emphasized-font);letter-spacing:var(--type-body-1-emphasized-letter-spacing)}.request-negotiable-quote-form__actions,.request-negotiable-quote-form [data-slot=AttachFileField]{display:flex;gap:var(--spacing-small)}.request-negotiable-quote-form__actions{justify-content:flex-start}.request-negotiable-quote-form__attach-file-field{justify-content:end}.request-negotiable-quote-form__attach-file-field label{background:none;color:var(--color-brand-500);font:var(--type-body-1-strong-font)}.request-negotiable-quote-form__attach-file-field label:hover{background:none}.request-negotiable-quote-form__error-banner svg{color:var(--color-alert-800)}.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-items-quoted{display:flex;flex-direction:column;gap:var(--spacing-big)}.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__attach-files[data-disabled]{opacity:.5;pointer-events:none}.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-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);display:block;justify-self:center}.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}td:has(.quote-management-product-list-table__notes-row-wrapper)~td{display:none}.quote-management-product-list-table__notes-row-wrapper{margin-left:calc(var(--spacing-medium) * -1);margin-right:calc(var(--spacing-medium) * -1);margin-top:calc(var(--spacing-small) * -1);margin-bottom:calc(var(--spacing-small) * -1);background-color:var(--color-neutral-100);box-shadow:100vw 0 0 0 var(--color-neutral-100),-100vw 0 0 0 var(--color-neutral-100)}.quote-management-product-list-table__notes-container{padding:var(--spacing-medium)}.quote-management-product-list-table__notes-header{font:var(--type-body-2-strong-font);letter-spacing:var(--type-body-2-letter-spacing);color:var(--color-neutral-600);margin-bottom:var(--spacing-small);text-transform:uppercase}.quote-management-product-list-table__notes-list{display:flex;flex-direction:column;gap:var(--spacing-small)}.quote-management-product-list-table__note-item{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-product-list-table__note-content{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-800)}.quote-management-product-list-table__note-meta{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);color:var(--color-neutral-800)}.quote-management-product-list-table__note-text{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-800);padding-left:0}.quote-management-product-list-table__note-edit-icon{cursor:pointer;opacity:.6}.quote-management-product-list-table__note-edit-icon:hover{opacity:1}.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}.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)}.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-quote-templates-list-table__actions-cell{display:flex;gap:var(--spacing-xsmall)}.quote-management-quote-templates-list-table__actions-cell>*{white-space:nowrap}.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%}}.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}}.quote-management-manage-negotiable-quote-template{display:grid;gap:var(--spacing-small);color:var(--color-neutral-800);width:100%;container-type:inline-size}.quote-management-manage-negotiable-quote-template__header{display:flex;gap:var(--spacing-big);align-items:center}.quote-management-manage-negotiable-quote-template__template-name-wrapper{display:flex;align-items:center;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote-template__template-name-title{font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);margin:0}.quote-management-manage-negotiable-quote-template__rename-button{background:none;border:none;padding:var(--spacing-xsmall);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:var(--color-neutral-700)}.quote-management-manage-negotiable-quote-template__rename-button:hover:not(:disabled){color:var(--color-neutral-900)}.quote-management-manage-negotiable-quote-template__rename-button:disabled{cursor:not-allowed;opacity:.5}.quote-management-manage-negotiable-quote-template__template-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-template__banner{display:flex;flex-direction:row}.quote-management-manage-negotiable-quote-template__reference-documents h2{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);margin:0}.quote-management-manage-negotiable-quote-template__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-template__detail{display:flex;flex-wrap:wrap;gap:var(--spacing-xxsmall);align-items:baseline}.quote-management-manage-negotiable-quote-template__detail-title{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing)}.quote-management-manage-negotiable-quote-template__detail-content{font:var(--type-body-2-font);letter-spacing:var(--type-body-2-letter-spacing)}.quote-management-manage-negotiable-quote-template__reference-documents-container{display:flex;flex-direction:column;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote-template__reference-documents-title>*{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);margin:0}.quote-management-manage-negotiable-quote-template__reference-documents{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-manage-negotiable-quote-template__items-table{width:100%}.quote-management-manage-negotiable-quote-template__comments-container{display:flex;flex-direction:column;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote-template__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-template__attach-files[data-disabled]{opacity:.5;pointer-events:none}.quote-management-manage-negotiable-quote-template__file-error{color:var(--color-error);font:var(--type-body-2-font);letter-spacing:var(--type-body-2-letter-spacing);margin-top:var(--spacing-xxsmall)}.quote-management-manage-negotiable-quote-template__history-log-container{display:flex;flex-direction:column;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote-template__history-log-title>*{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);margin:0}.quote-management-manage-negotiable-quote-template__shipping-information-container{display:flex;flex-direction:column;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote-template__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-template__footer{display:flex;flex-wrap:wrap;gap:var(--spacing-small);justify-content:flex-start}@container (max-width: 768px){.quote-management-manage-negotiable-quote-template__header{flex-direction:column}}.quote-management-line-item-note-modal .dropin-modal__header-title-content{font:var(--type-headline-2-strong-font);letter-spacing:var(--type-headline-2-strong-letter-spacing);color:var(--color-neutral-800);margin-top:var(--spacing-small);margin-left:var(--spacing-small)}.quote-management-line-item-note-modal__error-banner,.quote-management-line-item-note-modal__success-banner{margin-bottom:var(--spacing-medium)}.quote-management-line-item-note-modal__content{display:flex;flex-direction:column;gap:var(--spacing-medium);margin-bottom:var(--spacing-medium);width:100%}.quote-management-line-item-note-modal__details{width:100%;overflow-x:auto;margin-bottom:var(--spacing-small)}.quote-management-line-item-note-modal__details-table{width:100%}.quote-management-line-item-note-modal__product-info{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-line-item-note-modal__product-name,.quote-management-line-item-note-modal__stock,.quote-management-line-item-note-modal__discount{font:var(--type-body-2-strong-font);letter-spacing:var(--type-body-2-strong-letter-spacing);color:var(--color-neutral-800)}.quote-management-line-item-note-modal__product-sku{font:var(--type-body-2-strong-font);letter-spacing:var(--type-body-2-strong-letter-spacing);color:var(--color-neutral-600)}.quote-management-line-item-note-modal__quantity-input{width:100px;min-width:100px;margin:0}.quote-management-line-item-note-modal__quantity-input input{padding:var(--spacing-xsmall) var(--spacing-small);font:var(--type-body-2-default-font);width:100%}.quote-management-line-item-note-modal__table-error{color:var(--color-alert-800);font:var(--type-body-2-default-font);margin-top:var(--spacing-xsmall);padding:var(--spacing-xsmall) var(--spacing-small)}.quote-management-line-item-note-modal__form-field{display:flex;flex-direction:column;gap:var(--spacing-xxsmall);width:100%}.quote-management-line-item-note-modal__error-text{color:var(--color-alert-800);font:var(--type-body-2-default-font);margin-top:var(--spacing-xxsmall)}.quote-management-line-item-note-modal__helper-text{color:var(--color-neutral-600);font:var(--type-body-3-default-font);margin-top:var(--spacing-xxsmall)}.quote-management-line-item-note-modal__actions{display:flex;justify-content:flex-start;gap:var(--spacing-small);margin-top:var(--spacing-medium);width:100%}.quote-management-line-item-note-modal__cancel-button{order:1}.quote-management-line-item-note-modal__confirm-button{order:2}@media only screen and (min-width: 768px) and (max-width: 1023px){.quote-management-line-item-note-modal .dropin-modal__close-button{top:var(--spacing-small);right:var(--spacing-small)}.quote-management-line-item-note-modal__actions{gap:var(--spacing-medium)}}@media only screen and (min-width: 1024px){.quote-management-line-item-note-modal__actions{gap:var(--spacing-medium)}}@media only screen and (max-width: 767px){.quote-management-line-item-note-modal .dropin-modal__close-button{margin:var(--spacing-small)}.quote-management-line-item-note-modal__error-banner .dropin-in-line-alert{padding:var(--spacing-xsmall) var(--spacing-small);gap:var(--spacing-xsmall)}.quote-management-line-item-note-modal__content{gap:var(--spacing-small)}.quote-management-line-item-note-modal__details{overflow-x:auto;-webkit-overflow-scrolling:touch}.quote-management-line-item-note-modal__actions{flex-direction:column-reverse;gap:var(--spacing-small);margin-top:var(--spacing-small)}.quote-management-line-item-note-modal__actions button{width:100%}.quote-management-line-item-note-modal__cancel-button{order:2}.quote-management-line-item-note-modal__confirm-button{order:1}}.quote-management-reference-document-form-modal__error-banner,.quote-management-reference-document-form-modal__success-banner{margin-bottom:var(--spacing-medium)}.quote-management-reference-document-form-modal__content{display:flex;flex-direction:column;gap:var(--spacing-medium);margin-bottom:var(--spacing-medium);width:100%}.quote-management-reference-document-form-modal__error-text{color:var(--color-alert-800);font:var(--type-body-2-default-font);margin-top:var(--spacing-xsmall)}.quote-management-reference-document-form-modal__actions{display:flex;justify-content:flex-start;gap:var(--spacing-small);margin-top:var(--spacing-medium);width:100%}.quote-management-reference-document-form-modal__cancel-button{order:1}.quote-management-reference-document-form-modal__save-button{order:2}@media only screen and (min-width: 768px) and (max-width: 1023px){.quote-management-reference-document-form-modal .dropin-modal__close-button{top:var(--spacing-small);right:var(--spacing-small)}.quote-management-reference-document-form-modal__actions{gap:var(--spacing-medium)}}@media only screen and (min-width: 1024px){.quote-management-reference-document-form-modal__actions{gap:var(--spacing-medium)}}@media only screen and (max-width: 767px){.quote-management-reference-document-form-modal .dropin-modal__close-button{margin:var(--spacing-small)}.quote-management-reference-document-form-modal__error-banner .dropin-in-line-alert{padding:var(--spacing-xsmall) var(--spacing-small)!important;gap:var(--spacing-xsmall)!important}.quote-management-reference-document-form-modal__content{gap:var(--spacing-small)}.quote-management-reference-document-form-modal__actions{flex-direction:column-reverse;gap:var(--spacing-small);margin-top:var(--spacing-small)}.quote-management-reference-document-form-modal__actions button{width:100%}.quote-management-reference-document-form-modal__cancel-button{order:2}.quote-management-reference-document-form-modal__save-button{order:1}}.quote-management-reference-documents-list{margin-bottom:var(--spacing-medium)}.quote-management-reference-documents-list__header{display:flex;align-items:center;gap:var(--spacing-xsmall);margin-bottom:var(--spacing-small)}.quote-management-reference-documents-list__title{font:var(--type-body-1-emphasized-font);letter-spacing:var(--type-body-1-emphasized-letter-spacing);color:var(--color-neutral-800);margin:0}.quote-management-reference-documents-list__info-icon{width:16px;height:16px;color:var(--color-neutral-600)}.quote-management-reference-documents-list__empty{color:var(--color-neutral-600);font:var(--type-body-2-default-font);padding:var(--spacing-small) 0}.quote-management-reference-documents-list__content{display:flex;flex-wrap:wrap;gap:var(--spacing-small)}.quote-management-reference-documents-list__document{display:flex;align-items:center;gap:var(--spacing-small);background-color:var(--color-neutral-100);border-radius:var(--border-radius-medium);border:1px solid var(--color-neutral-200)}.quote-management-reference-documents-list__document-link{color:var(--color-primary-700);text-decoration:none;font:var(--type-body-2-default-font);word-break:break-word}.quote-management-reference-documents-list__document-link:hover{text-decoration:underline}.quote-management-reference-documents-list__document-actions{display:flex;align-items:center;gap:var(--spacing-xsmall);margin-left:auto}.quote-management-reference-documents-list__separator{color:var(--color-neutral-400);font:var(--type-body-2-default-font)}.quote-management-reference-documents-list__edit-button,.quote-management-reference-documents-list__remove-button{padding:var(--spacing-xsmall) var(--spacing-small);font-size:var(--type-body-2-default-font-size)}.quote-management-reference-documents-list__add-button{background-color:var(--color-neutral-100);border:1px solid var(--color-neutral-200);border-radius:var(--border-radius-medium)}@media only screen and (max-width: 767px){.quote-management-reference-documents-list__content{flex-direction:column}.quote-management-reference-documents-list__document{flex-direction:column;align-items:flex-start;width:100%}.quote-management-reference-documents-list__document-actions{margin-left:0;width:100%;justify-content:flex-start}.quote-management-reference-documents-list__add-button{width:100%}}`,{styleId:"quote-management"});
8
- 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 l}from"@dropins/tools/preact-hooks.js";import{UIProvider as u}from"@dropins/tools/components.js";import{events as c}from"@dropins/tools/event-bus.js";const d={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",maxFilesExceeded:"Maximum {maxFiles} file(s) allowed",maxFileSizeExceeded:"File size exceeds maximum limit of {maxSize}",invalidFileType:"File type not accepted",removeFile:"Remove file",uploading:"Uploading...",uploadSuccess:"Upload complete",uploadError:"Upload failed",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"},attachFile:"Attach File",attachFiles:"Attach Files",fileUploadError:"Failed to upload file. Please try again.",maxFilesExceeded:"Maximum {maxFiles} file(s) allowed",maxFileSizeExceeded:"File size exceeds maximum limit of {maxSize}",invalidFileType:"File type not accepted",removeFile:"Remove file",uploading:"Uploading...",uploadSuccess:"Upload complete",uploadError:"Upload failed",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"},duplicate:{title:"Duplicate Quote",message:"Are you sure you want to create a copy of this quote?",confirm:"Create Copy",errorHeading:"Error",errorFallback:"Failed to duplicate quote",successHeading:"Success",successDescription:"Quote has been successfully duplicated. You will be redirected to the new quote shortly.",outOfStockWarningHeading:"Alert",outOfStockWarningMessage:"Some items were skipped during duplication due to errors."},close:{message:"Are you sure you want to close this quote?",confirm:"Close",confirmLoading:"Closing...",successHeading:"Success",successDescription:"Quote has been successfully closed"},createTemplate:{message:"Are you sure you want to create a quote template from this quote?",confirm:"Create Template",confirmLoading:"Creating...",successHeading:"Success",successDescription:"Quote template has been successfully created",errorHeading:"Error",errorFallback:"Failed to create quote template"},noItemsSelected:{title:"Please Select Quote Items",message:"Please select at least one quote item to proceed.",confirm:"Ok"}},shippingInformation:{title:"Shipping Information"},shippingAddress:{noAddress:"No shipping address has been set for this quote.",noAddressHeading:"No Shipping Address",noAddressDescription:"Please select or enter a shipping address."},quoteComments:{title:"Quote Comments",placeholder:"Add your comment",emptyState:"No comments yet",by:"by",attachments:"Attachments:"},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"},notes:{header:"NOTES",leftANote:"left a note:",buyer:"Buyer",seller:"Seller"},outOfStock:"Out of Stock",outOfStockMessage:"This item is currently out of stock."},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!"},lineItemNote:{title:"Leave a note to seller",productLabel:"Name & SKU",skuLabel:"SKU",priceLabel:"Price",stockLabel:"Stock",quantityLabel:"Qty",discountLabel:"Discount",subtotalLabel:"Subtotal",noteLabel:"Note to seller",notePlaceholder:"Can I get a discount on this?",noteHelper:"The seller will see the note when you send the quote back.",confirmButton:"Confirm",cancelButton:"Cancel",noteError:"Please enter a note",quantityError:"Quantity must be greater than 0"},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."},removeItemsModal:{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",confirmButton:"Remove",confirmButtonRemoving:"Removing...",successHeading:"Success",successMessage:"Quote items have been successfully removed.",errorHeading:"Error",errorMessage:"Failed to remove quote items. 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"}},p={Manage:{createdLabel:"Created:",salesRepLabel:"Sales Rep:",expiresLabel:"Expires:",templateIdLabel:"Template ID:",referenceDocuments:{title:"Reference Documents",add:"Add",edit:"Edit",remove:"Remove",noReferenceDocuments:"No reference documents",form:{title:"Document Information",documentNameLabel:"Document name",documentIdentifierLabel:"Document identifier",referenceUrlLabel:"Reference URL",addButton:"Add to Quote Template",updateButton:"Update Document",cancelButton:"Cancel",documentNameRequired:"Document name is required",documentIdentifierRequired:"Document identifier is required",referenceUrlRequired:"Reference URL is required",invalidUrl:"Please enter a valid URL",errorHeading:"Error",duplicateUidError:"A document with this identifier already exists in the template. Please use a different identifier."}},shippingInformation:{title:"Shipping Information"},comments:{title:"Comments"},historyLog:{title:"History Log"},tabs:{itemsQuoted:"Items Quoted",comments:"Comments",historyLog:"History Log"},templateComments:{title:"Template Comments",placeholder:"Add your comment"},actionsLabel:"Actions",actionButtons:{sendForReview:"Send for review",delete:"Delete template",cancel:"Cancel template",accept:"Accept",generateQuote:"Generate quote"},removeItemsModal:{title:"Change Quote Template Items",description:"Making changes to any quote template item changes the terms of the template. After you update the template, return it to the seller for review and approval.",cancelButton:"Cancel",confirmButton:"Remove",confirmButtonRemoving:"Removing...",successHeading:"Success",successMessage:"Quote template items have been successfully removed.",errorHeading:"Error",errorMessage:"Failed to remove quote template items. Please try again."},updateQuantitiesModal:{title:"Change Quote Template Items",description:"Making changes to any quote template item changes the terms of the template. After you update the template, return it to the seller for review and approval.",cancelButton:"Cancel",updateButton:"Apply Changes",successHeading:"Success",successMessage:"Quote template quantities have been successfully updated.",errorHeading:"Error",errorMessage:"Failed to update quote template quantities. Please try again."},confirmationModal:{cancel:"Cancel",delete:{title:"Delete Quote Template",message:"Are you sure you want to delete this quote template?",confirm:"Delete",errorHeading:"Error",errorFallback:"Failed to delete quote template",successHeading:"Success",successDescription:"Quote template has been successfully deleted"},cancelTemplate:{title:"Cancel Quote Template",message:"Are you sure you want to cancel this quote template?",confirm:"Cancel Template",errorHeading:"Error",errorFallback:"Failed to cancel quote template",successHeading:"Success",successDescription:"Quote template has been successfully cancelled"},accept:{title:"Accept Quote Template",message:"Are you sure you want to accept this quote template?",confirm:"Accept",confirmLoading:"Accepting...",successHeading:"Quote Template Accepted",successDescription:"Quote template has been successfully accepted.",errorHeading:"Error",errorFallback:"Failed to accept quote template. Please try again."},generateQuote:{message:"Are you sure you want to generate a quote from this template?",confirm:"Generate Quote",confirmLoading:"Generating...",successHeading:"Quote Generated",successDescription:"Quote has been successfully generated from the template.",errorHeading:"Error",errorFallback:"Failed to generate quote from template. Please try again."}},quotePricesSummary:{subtotal:{excludingTax:"Quote Template Subtotal (excluding tax)"},appliedTaxes:"Applied Taxes",grandTotal:{includingTax:"Quote Template Grand Total (including tax)"}},lineItemNoteModal:{errorHeading:"Error"},rename:{title:"Rename Quote Template",templateNameLabel:"Template name",reasonLabel:"Reason for change",renameButton:"Rename",cancelButton:"Cancel",errorHeading:"Error",templateNameRequired:"Template name is required",errorDefault:"Failed to rename quote template. Please try again.",successHeading:"Success",successMessage:"Quote template renamed successfully!"},unsavedChangesWarningHeading:"Unsaved Changes",unsavedChangesWarningMessage:"The quote template must be submitted for review to save the changes.",shippingAddressWarningHeading:"No Shipping Address",shippingAddressWarningMessage:"No shipping address has been set for this quote template."}},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."},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",view:"View"}},f={ConfirmationModal:d,NegotiableQuote:m,NegotiableQuoteTemplate:p,historyLog:g,QuoteManagement:h},y={default:f},b=({children:a})=>{const[o,s]=i("en_US");return l(()=>{const e=c.on("locale",r=>{s(r)},{eager:!0});return()=>{e==null||e.off()}},[]),t(u,{lang:o,langDefinitions:y,children:a})},v=new n(t(b,{}));export{v as render};
7
+ .quote-management-expiration-date-modal__error-banner,.quote-management-expiration-date-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-expiration-date-modal__content{display:flex;flex-direction:column;gap:var(--spacing-medium);margin-bottom:var(--spacing-medium);width:100%}.quote-management-expiration-date-modal__actions{display:flex;justify-content:flex-start;gap:var(--spacing-small);margin-top:var(--spacing-medium);width:100%}.quote-management-expiration-date-modal__cancel-button{order:1}.quote-management-expiration-date-modal__save-button{order:2}@media only screen and (min-width: 768px) and (max-width: 1023px){.quote-management-expiration-date-modal .dropin-modal__close-button{top:var(--spacing-small);right:var(--spacing-small)}.quote-management-expiration-date-modal__actions{gap:var(--spacing-medium)}}@media only screen and (min-width: 1024px){.quote-management-expiration-date-modal__actions{gap:var(--spacing-medium)}}@media only screen and (max-width: 767px){.quote-management-expiration-date-modal .dropin-modal__close-button{margin:var(--spacing-small)}.quote-management-expiration-date-modal__error-banner .dropin-in-line-alert{padding:var(--spacing-xsmall) var(--spacing-small)!important;gap:var(--spacing-xsmall)!important}.quote-management-expiration-date-modal__content{gap:var(--spacing-small)}.quote-management-expiration-date-modal__actions{flex-direction:column-reverse;gap:var(--spacing-small);margin-top:var(--spacing-small)}.quote-management-expiration-date-modal__actions button{width:100%}.quote-management-expiration-date-modal__cancel-button{order:2}.quote-management-expiration-date-modal__save-button{order:1}}
8
+ .request-negotiable-quote-form{display:grid;gap:var(--spacing-small);align-items:flex-end;color:var(--color-neutral-800);width:100%}.request-negotiable-quote-form input:user-invalid,.request-negotiable-quote-form textarea:user-invalid{border-color:var(--color-alert-800)}.request-negotiable-quote-form__title{font:var(--type-body-1-emphasized-font);letter-spacing:var(--type-body-1-emphasized-letter-spacing)}.request-negotiable-quote-form__actions,.request-negotiable-quote-form [data-slot=AttachFileField]{display:flex;gap:var(--spacing-small)}.request-negotiable-quote-form__actions{justify-content:flex-start}.request-negotiable-quote-form__attach-file-field{justify-content:end}.request-negotiable-quote-form__attach-file-field label{background:none;color:var(--color-brand-500);font:var(--type-body-1-strong-font)}.request-negotiable-quote-form__attach-file-field label:hover{background:none}.request-negotiable-quote-form__error-banner svg{color:var(--color-alert-800)}.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-items-quoted{display:flex;flex-direction:column;gap:var(--spacing-big)}.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__attach-files[data-disabled]{opacity:.5;pointer-events:none}.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-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);display:block;justify-self:center}.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}td:has(.quote-management-product-list-table__notes-row-wrapper)~td{display:none}.quote-management-product-list-table__notes-row-wrapper{margin-left:calc(var(--spacing-medium) * -1);margin-right:calc(var(--spacing-medium) * -1);margin-top:calc(var(--spacing-small) * -1);margin-bottom:calc(var(--spacing-small) * -1);background-color:var(--color-neutral-100);box-shadow:100vw 0 0 0 var(--color-neutral-100),-100vw 0 0 0 var(--color-neutral-100)}.quote-management-product-list-table__notes-container{padding:var(--spacing-medium)}.quote-management-product-list-table__notes-header{font:var(--type-body-2-strong-font);letter-spacing:var(--type-body-2-letter-spacing);color:var(--color-neutral-600);margin-bottom:var(--spacing-small);text-transform:uppercase}.quote-management-product-list-table__notes-list{display:flex;flex-direction:column;gap:var(--spacing-small)}.quote-management-product-list-table__note-item{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-product-list-table__note-content{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-800)}.quote-management-product-list-table__note-meta{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);color:var(--color-neutral-800)}.quote-management-product-list-table__note-text{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-800);padding-left:0}.quote-management-product-list-table__note-edit-icon{cursor:pointer;opacity:.6}.quote-management-product-list-table__note-edit-icon:hover{opacity:1}.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}.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)}.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-quote-templates-list-table__actions-cell{display:flex;gap:var(--spacing-xsmall)}.quote-management-quote-templates-list-table__actions-cell>*{white-space:nowrap}.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%}}.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}}.quote-management-manage-negotiable-quote-template{display:grid;gap:var(--spacing-small);color:var(--color-neutral-800);width:100%;container-type:inline-size}.quote-management-manage-negotiable-quote-template__header{display:flex;gap:var(--spacing-big);align-items:center}.quote-management-manage-negotiable-quote-template__template-name-wrapper{display:flex;align-items:center;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote-template__template-name-title{font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);margin:0}.quote-management-manage-negotiable-quote-template__rename-button{background:none;border:none;padding:var(--spacing-xsmall);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:var(--color-neutral-700)}.quote-management-manage-negotiable-quote-template__rename-button:hover:not(:disabled){color:var(--color-neutral-900)}.quote-management-manage-negotiable-quote-template__rename-button:disabled{cursor:not-allowed;opacity:.5}.quote-management-manage-negotiable-quote-template__expiration-wrapper{display:flex;align-items:center;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote-template__edit-expiration-button{background:none;border:none;padding-left:0;padding-bottom:var(--spacing-xsmall);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:var(--color-neutral-700)}.quote-management-manage-negotiable-quote-template__edit-expiration-button:hover:not(:disabled){color:var(--color-neutral-900)}.quote-management-manage-negotiable-quote-template__edit-expiration-button:disabled{cursor:not-allowed;opacity:.5}.quote-management-manage-negotiable-quote-template__template-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-template__banner{display:flex;flex-direction:row}.quote-management-manage-negotiable-quote-template__reference-documents h2{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);margin:0}.quote-management-manage-negotiable-quote-template__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-template__detail{display:flex;flex-wrap:wrap;gap:var(--spacing-xxsmall);align-items:baseline}.quote-management-manage-negotiable-quote-template__detail-title{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing)}.quote-management-manage-negotiable-quote-template__detail-content{font:var(--type-body-2-font);letter-spacing:var(--type-body-2-letter-spacing)}.quote-management-manage-negotiable-quote-template__reference-documents-container{display:flex;flex-direction:column;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote-template__reference-documents-title>*{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);margin:0}.quote-management-manage-negotiable-quote-template__reference-documents{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-manage-negotiable-quote-template__items-table{width:100%}.quote-management-manage-negotiable-quote-template__comments-container{display:flex;flex-direction:column;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote-template__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-template__attach-files[data-disabled]{opacity:.5;pointer-events:none}.quote-management-manage-negotiable-quote-template__file-error{color:var(--color-error);font:var(--type-body-2-font);letter-spacing:var(--type-body-2-letter-spacing);margin-top:var(--spacing-xxsmall)}.quote-management-manage-negotiable-quote-template__history-log-container{display:flex;flex-direction:column;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote-template__history-log-title>*{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);margin:0}.quote-management-manage-negotiable-quote-template__shipping-information-container{display:flex;flex-direction:column;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote-template__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-template__footer{display:flex;flex-wrap:wrap;gap:var(--spacing-small);justify-content:flex-start}@container (max-width: 768px){.quote-management-manage-negotiable-quote-template__header{flex-direction:column}}.quote-management-line-item-note-modal .dropin-modal__header-title-content{font:var(--type-headline-2-strong-font);letter-spacing:var(--type-headline-2-strong-letter-spacing);color:var(--color-neutral-800);margin-top:var(--spacing-small);margin-left:var(--spacing-small)}.quote-management-line-item-note-modal__error-banner,.quote-management-line-item-note-modal__success-banner{margin-bottom:var(--spacing-medium)}.quote-management-line-item-note-modal__content{display:flex;flex-direction:column;gap:var(--spacing-medium);margin-bottom:var(--spacing-medium);width:100%}.quote-management-line-item-note-modal__details{width:100%;overflow-x:auto;margin-bottom:var(--spacing-small)}.quote-management-line-item-note-modal__details-table{width:100%}.quote-management-line-item-note-modal__product-info{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-line-item-note-modal__product-name,.quote-management-line-item-note-modal__stock,.quote-management-line-item-note-modal__discount{font:var(--type-body-2-strong-font);letter-spacing:var(--type-body-2-strong-letter-spacing);color:var(--color-neutral-800)}.quote-management-line-item-note-modal__product-sku{font:var(--type-body-2-strong-font);letter-spacing:var(--type-body-2-strong-letter-spacing);color:var(--color-neutral-600)}.quote-management-line-item-note-modal__quantity-input{width:100px;min-width:100px;margin:0}.quote-management-line-item-note-modal__quantity-input input{padding:var(--spacing-xsmall) var(--spacing-small);font:var(--type-body-2-default-font);width:100%}.quote-management-line-item-note-modal__table-error{color:var(--color-alert-800);font:var(--type-body-2-default-font);margin-top:var(--spacing-xsmall);padding:var(--spacing-xsmall) var(--spacing-small)}.quote-management-line-item-note-modal__form-field{display:flex;flex-direction:column;gap:var(--spacing-xxsmall);width:100%}.quote-management-line-item-note-modal__error-text{color:var(--color-alert-800);font:var(--type-body-2-default-font);margin-top:var(--spacing-xxsmall)}.quote-management-line-item-note-modal__helper-text{color:var(--color-neutral-600);font:var(--type-body-3-default-font);margin-top:var(--spacing-xxsmall)}.quote-management-line-item-note-modal__actions{display:flex;justify-content:flex-start;gap:var(--spacing-small);margin-top:var(--spacing-medium);width:100%}.quote-management-line-item-note-modal__cancel-button{order:1}.quote-management-line-item-note-modal__confirm-button{order:2}@media only screen and (min-width: 768px) and (max-width: 1023px){.quote-management-line-item-note-modal .dropin-modal__close-button{top:var(--spacing-small);right:var(--spacing-small)}.quote-management-line-item-note-modal__actions{gap:var(--spacing-medium)}}@media only screen and (min-width: 1024px){.quote-management-line-item-note-modal__actions{gap:var(--spacing-medium)}}@media only screen and (max-width: 767px){.quote-management-line-item-note-modal .dropin-modal__close-button{margin:var(--spacing-small)}.quote-management-line-item-note-modal__error-banner .dropin-in-line-alert{padding:var(--spacing-xsmall) var(--spacing-small);gap:var(--spacing-xsmall)}.quote-management-line-item-note-modal__content{gap:var(--spacing-small)}.quote-management-line-item-note-modal__details{overflow-x:auto;-webkit-overflow-scrolling:touch}.quote-management-line-item-note-modal__actions{flex-direction:column-reverse;gap:var(--spacing-small);margin-top:var(--spacing-small)}.quote-management-line-item-note-modal__actions button{width:100%}.quote-management-line-item-note-modal__cancel-button{order:2}.quote-management-line-item-note-modal__confirm-button{order:1}}.quote-management-reference-document-form-modal__error-banner,.quote-management-reference-document-form-modal__success-banner{margin-bottom:var(--spacing-medium)}.quote-management-reference-document-form-modal__content{display:flex;flex-direction:column;gap:var(--spacing-medium);margin-bottom:var(--spacing-medium);width:100%}.quote-management-reference-document-form-modal__error-text{color:var(--color-alert-800);font:var(--type-body-2-default-font);margin-top:var(--spacing-xsmall)}.quote-management-reference-document-form-modal__actions{display:flex;justify-content:flex-start;gap:var(--spacing-small);margin-top:var(--spacing-medium);width:100%}.quote-management-reference-document-form-modal__cancel-button{order:1}.quote-management-reference-document-form-modal__save-button{order:2}@media only screen and (min-width: 768px) and (max-width: 1023px){.quote-management-reference-document-form-modal .dropin-modal__close-button{top:var(--spacing-small);right:var(--spacing-small)}.quote-management-reference-document-form-modal__actions{gap:var(--spacing-medium)}}@media only screen and (min-width: 1024px){.quote-management-reference-document-form-modal__actions{gap:var(--spacing-medium)}}@media only screen and (max-width: 767px){.quote-management-reference-document-form-modal .dropin-modal__close-button{margin:var(--spacing-small)}.quote-management-reference-document-form-modal__error-banner .dropin-in-line-alert{padding:var(--spacing-xsmall) var(--spacing-small)!important;gap:var(--spacing-xsmall)!important}.quote-management-reference-document-form-modal__content{gap:var(--spacing-small)}.quote-management-reference-document-form-modal__actions{flex-direction:column-reverse;gap:var(--spacing-small);margin-top:var(--spacing-small)}.quote-management-reference-document-form-modal__actions button{width:100%}.quote-management-reference-document-form-modal__cancel-button{order:2}.quote-management-reference-document-form-modal__save-button{order:1}}.quote-management-reference-documents-list{margin-bottom:var(--spacing-medium)}.quote-management-reference-documents-list__header{display:flex;align-items:center;gap:var(--spacing-xsmall);margin-bottom:var(--spacing-small)}.quote-management-reference-documents-list__title{font:var(--type-body-1-emphasized-font);letter-spacing:var(--type-body-1-emphasized-letter-spacing);color:var(--color-neutral-800);margin:0}.quote-management-reference-documents-list__info-icon{width:16px;height:16px;color:var(--color-neutral-600)}.quote-management-reference-documents-list__empty{color:var(--color-neutral-600);font:var(--type-body-2-default-font);padding:var(--spacing-small) 0}.quote-management-reference-documents-list__content{display:flex;flex-wrap:wrap;gap:var(--spacing-small)}.quote-management-reference-documents-list__document{display:flex;align-items:center;gap:var(--spacing-small);background-color:var(--color-neutral-100);border-radius:var(--border-radius-medium);border:1px solid var(--color-neutral-200)}.quote-management-reference-documents-list__document-link{color:var(--color-primary-700);text-decoration:none;font:var(--type-body-2-default-font);word-break:break-word}.quote-management-reference-documents-list__document-link:hover{text-decoration:underline}.quote-management-reference-documents-list__document-actions{display:flex;align-items:center;gap:var(--spacing-xsmall);margin-left:auto}.quote-management-reference-documents-list__separator{color:var(--color-neutral-400);font:var(--type-body-2-default-font)}.quote-management-reference-documents-list__edit-button,.quote-management-reference-documents-list__remove-button{padding:var(--spacing-xsmall) var(--spacing-small);font-size:var(--type-body-2-default-font-size)}.quote-management-reference-documents-list__add-button{background-color:var(--color-neutral-100);border:1px solid var(--color-neutral-200);border-radius:var(--border-radius-medium)}@media only screen and (max-width: 767px){.quote-management-reference-documents-list__content{flex-direction:column}.quote-management-reference-documents-list__document{flex-direction:column;align-items:flex-start;width:100%}.quote-management-reference-documents-list__document-actions{margin-left:0;width:100%;justify-content:flex-start}.quote-management-reference-documents-list__add-button{width:100%}}`,{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 l}from"@dropins/tools/preact-hooks.js";import{UIProvider as u}from"@dropins/tools/components.js";import{events as c}from"@dropins/tools/event-bus.js";const d={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",maxFilesExceeded:"Maximum {maxFiles} file(s) allowed",maxFileSizeExceeded:"File size exceeds maximum limit of {maxSize}",invalidFileType:"File type not accepted",removeFile:"Remove file",uploading:"Uploading...",uploadSuccess:"Upload complete",uploadError:"Upload failed",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"},attachFile:"Attach File",attachFiles:"Attach Files",fileUploadError:"Failed to upload file. Please try again.",maxFilesExceeded:"Maximum {maxFiles} file(s) allowed",maxFileSizeExceeded:"File size exceeds maximum limit of {maxSize}",invalidFileType:"File type not accepted",removeFile:"Remove file",uploading:"Uploading...",uploadSuccess:"Upload complete",uploadError:"Upload failed",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"},duplicate:{title:"Duplicate Quote",message:"Are you sure you want to create a copy of this quote?",confirm:"Create Copy",errorHeading:"Error",errorFallback:"Failed to duplicate quote",successHeading:"Success",successDescription:"Quote has been successfully duplicated. You will be redirected to the new quote shortly.",outOfStockWarningHeading:"Alert",outOfStockWarningMessage:"Some items were skipped during duplication due to errors."},close:{message:"Are you sure you want to close this quote?",confirm:"Close",confirmLoading:"Closing...",successHeading:"Success",successDescription:"Quote has been successfully closed"},createTemplate:{message:"Are you sure you want to create a quote template from this quote?",confirm:"Create Template",confirmLoading:"Creating...",successHeading:"Success",successDescription:"Quote template has been successfully created",errorHeading:"Error",errorFallback:"Failed to create quote template"},noItemsSelected:{title:"Please Select Quote Items",message:"Please select at least one quote item to proceed.",confirm:"Ok"}},shippingInformation:{title:"Shipping Information"},shippingAddress:{noAddress:"No shipping address has been set for this quote.",noAddressHeading:"No Shipping Address",noAddressDescription:"Please select or enter a shipping address."},quoteComments:{title:"Quote Comments",placeholder:"Add your comment",emptyState:"No comments yet",by:"by",attachments:"Attachments:"},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"},notes:{header:"NOTES",leftANote:"left a note:",buyer:"Buyer",seller:"Seller"},outOfStock:"Out of Stock",outOfStockMessage:"This item is currently out of stock."},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!"},lineItemNote:{title:"Leave a note to seller",productLabel:"Name & SKU",skuLabel:"SKU",priceLabel:"Price",stockLabel:"Stock",quantityLabel:"Qty",discountLabel:"Discount",subtotalLabel:"Subtotal",noteLabel:"Note to seller",notePlaceholder:"Can I get a discount on this?",noteHelper:"The seller will see the note when you send the quote back.",confirmButton:"Confirm",cancelButton:"Cancel",noteError:"Please enter a note",quantityError:"Quantity must be greater than 0"},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."},removeItemsModal:{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",confirmButton:"Remove",confirmButtonRemoving:"Removing...",successHeading:"Success",successMessage:"Quote items have been successfully removed.",errorHeading:"Error",errorMessage:"Failed to remove quote items. 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"}},p={Manage:{createdLabel:"Created:",salesRepLabel:"Sales Rep:",expiresLabel:"Expires:",templateIdLabel:"Template ID:",referenceDocuments:{title:"Reference Documents",add:"Add",edit:"Edit",remove:"Remove",noReferenceDocuments:"No reference documents",form:{title:"Document Information",documentNameLabel:"Document name",documentIdentifierLabel:"Document identifier",referenceUrlLabel:"Reference URL",addButton:"Add to Quote Template",updateButton:"Update Document",cancelButton:"Cancel",documentNameRequired:"Document name is required",documentIdentifierRequired:"Document identifier is required",referenceUrlRequired:"Reference URL is required",invalidUrl:"Please enter a valid URL",errorHeading:"Error",duplicateUidError:"A document with this identifier already exists in the template. Please use a different identifier."}},shippingInformation:{title:"Shipping Information"},comments:{title:"Comments"},historyLog:{title:"History Log"},tabs:{itemsQuoted:"Items Quoted",comments:"Comments",historyLog:"History Log"},templateComments:{title:"Template Comments",placeholder:"Add your comment"},actionsLabel:"Actions",actionButtons:{sendForReview:"Send for review",delete:"Delete template",cancel:"Cancel template",accept:"Accept",generateQuote:"Generate quote"},removeItemsModal:{title:"Change Quote Template Items",description:"Making changes to any quote template item changes the terms of the template. After you update the template, return it to the seller for review and approval.",cancelButton:"Cancel",confirmButton:"Remove",confirmButtonRemoving:"Removing...",successHeading:"Success",successMessage:"Quote template items have been successfully removed.",errorHeading:"Error",errorMessage:"Failed to remove quote template items. Please try again."},updateQuantitiesModal:{title:"Change Quote Template Items",description:"Making changes to any quote template item changes the terms of the template. After you update the template, return it to the seller for review and approval.",cancelButton:"Cancel",updateButton:"Apply Changes",successHeading:"Success",successMessage:"Quote template quantities have been successfully updated.",errorHeading:"Error",errorMessage:"Failed to update quote template quantities. Please try again."},confirmationModal:{cancel:"Cancel",delete:{title:"Delete Quote Template",message:"Are you sure you want to delete this quote template?",confirm:"Delete",errorHeading:"Error",errorFallback:"Failed to delete quote template",successHeading:"Success",successDescription:"Quote template has been successfully deleted"},cancelTemplate:{title:"Cancel Quote Template",message:"Are you sure you want to cancel this quote template?",confirm:"Cancel Template",errorHeading:"Error",errorFallback:"Failed to cancel quote template",successHeading:"Success",successDescription:"Quote template has been successfully cancelled"},accept:{title:"Accept Quote Template",message:"Are you sure you want to accept this quote template?",confirm:"Accept",confirmLoading:"Accepting...",successHeading:"Quote Template Accepted",successDescription:"Quote template has been successfully accepted.",errorHeading:"Error",errorFallback:"Failed to accept quote template. Please try again."},generateQuote:{message:"Are you sure you want to generate a quote from this template?",confirm:"Generate Quote",confirmLoading:"Generating...",successHeading:"Quote Generated",successDescription:"Quote has been successfully generated from the template.",errorHeading:"Error",errorFallback:"Failed to generate quote from template. Please try again."}},quotePricesSummary:{subtotal:{excludingTax:"Quote Template Subtotal (excluding tax)"},appliedTaxes:"Applied Taxes",grandTotal:{includingTax:"Quote Template Grand Total (including tax)"}},lineItemNoteModal:{errorHeading:"Error"},rename:{title:"Rename Quote Template",templateNameLabel:"Template name",reasonLabel:"Reason for change",renameButton:"Rename",cancelButton:"Cancel",errorHeading:"Error",templateNameRequired:"Template name is required",errorDefault:"Failed to rename quote template. Please try again.",successHeading:"Success",successMessage:"Quote template renamed successfully!"},expirationDate:{title:"Set Expiration Date",expirationDateLabel:"Expiration date",saveButton:"Save",cancelButton:"Cancel",errorHeading:"Error",expirationDateRequired:"Expiration date is required",invalidDate:"Please enter a valid date",pastDateError:"Expiration date must be in the future",errorDefault:"Failed to set expiration date. Please try again.",successHeading:"Success"},unsavedChangesWarningHeading:"Unsaved Changes",unsavedChangesWarningMessage:"The quote template must be submitted for review to save the changes.",shippingAddressWarningHeading:"No Shipping Address",shippingAddressWarningMessage:"No shipping address has been set for this quote template."}},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."},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",view:"View"}},f={ConfirmationModal:d,NegotiableQuote:m,NegotiableQuoteTemplate:p,historyLog:g,QuoteManagement:h},y={default:f},b=({children:a})=>{const[o,r]=i("en_US");return l(()=>{const e=c.on("locale",s=>{r(s)},{eager:!0});return()=>{e==null||e.off()}},[]),t(u,{lang:o,langDefinitions:y,children:a})},Q=new n(t(b,{}));export{Q as render};
9
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":"4iaAkBMA,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"}
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":"w6aAkBMA,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"}