@dropins/storefront-quote-management 0.0.1-alpha17 → 0.0.1-alpha19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/api/deleteQuote/deleteQuote.d.ts +28 -0
- package/api/deleteQuote/graphql/DeleteQuoteMutation.d.ts +10 -0
- package/api/deleteQuote/index.d.ts +10 -0
- package/api/getStoreConfig/getStoreConfig.d.ts +4 -0
- package/api/getStoreConfig/graphql/StoreConfigQuery.d.ts +10 -0
- package/api/getStoreConfig/index.d.ts +10 -0
- package/api/graphql/NegotiableQuoteAddressFragment.d.ts +10 -0
- package/api/graphql/NegotiableQuoteFragment.d.ts +1 -1
- package/api/graphql/ShippingMethodFragment.d.ts +10 -0
- package/api/index.d.ts +11 -0
- package/api/renameNegotiableQuote/graphql/RenameNegotiableQuoteMutation.d.ts +10 -0
- package/api/renameNegotiableQuote/index.d.ts +10 -0
- package/api/renameNegotiableQuote/renameNegotiableQuote.d.ts +9 -0
- package/api.js +22 -8
- package/api.js.map +1 -1
- package/chunks/ChevronDown.js +4 -0
- package/chunks/ChevronDown.js.map +1 -0
- package/chunks/NegotiableQuoteFragment.js +204 -26
- package/chunks/NegotiableQuoteFragment.js.map +1 -1
- package/chunks/OrderSummaryLine.js +4 -0
- package/chunks/OrderSummaryLine.js.map +1 -0
- package/chunks/WarningFilled.js +1 -1
- package/chunks/WarningFilled.js.map +1 -1
- package/chunks/negotiableQuotes.js +2 -2
- package/chunks/negotiableQuotes.js.map +1 -1
- package/chunks/renameNegotiableQuote.js +62 -0
- package/chunks/renameNegotiableQuote.js.map +1 -0
- package/chunks/state.js +4 -0
- package/chunks/state.js.map +1 -0
- package/chunks/transform-quote.js +4 -0
- package/chunks/transform-quote.js.map +1 -0
- package/chunks/uploadFile.js +3 -3
- package/chunks/uploadFile.js.map +1 -1
- package/components/ConfirmationModal/ConfirmationModal.d.ts +16 -0
- package/components/ConfirmationModal/index.d.ts +11 -0
- package/components/OrderSummary/OrderSummary.d.ts +7 -26
- package/components/RenameQuoteModal/RenameQuoteModal.d.ts +18 -0
- package/components/RenameQuoteModal/index.d.ts +11 -0
- package/components/index.d.ts +2 -0
- package/containers/ManageNegotiableQuote.js +1 -1
- package/containers/ManageNegotiableQuote.js.map +1 -1
- package/containers/OrderSummary/OrderSummary.d.ts +11 -0
- package/containers/OrderSummary/index.d.ts +11 -0
- package/containers/OrderSummary.d.ts +3 -0
- package/containers/OrderSummary.js +4 -0
- package/containers/OrderSummary.js.map +1 -0
- package/containers/OrderSummaryLine/OrderSummaryLine.d.ts +14 -0
- package/containers/OrderSummaryLine/index.d.ts +11 -0
- package/containers/OrderSummaryLine.d.ts +3 -0
- package/containers/OrderSummaryLine.js +4 -0
- package/containers/OrderSummaryLine.js.map +1 -0
- package/containers/QuoteSummaryList/QuoteSummaryList.d.ts +51 -0
- package/containers/QuoteSummaryList/index.d.ts +11 -0
- package/containers/QuoteSummaryList.d.ts +3 -0
- package/containers/QuoteSummaryList.js +4 -0
- package/containers/QuoteSummaryList.js.map +1 -0
- package/containers/QuotesListTable.js +1 -1
- package/containers/QuotesListTable.js.map +1 -1
- package/containers/RequestNegotiableQuoteForm.js +1 -1
- package/containers/RequestNegotiableQuoteForm.js.map +1 -1
- package/containers/index.d.ts +15 -4
- package/data/models/__fixtures__/negotiableQuoteModel.d.ts +1 -0
- package/data/models/__fixtures__/storeConfigModel.d.ts +5 -0
- package/data/models/index.d.ts +9 -0
- package/data/models/negotiable-quote-model.d.ts +66 -10
- package/data/models/store-config-model.d.ts +27 -0
- package/data/transforms/__fixtures__/negotiableQuoteData.d.ts +274 -0
- package/data/transforms/__fixtures__/storeConfigData.d.ts +31 -0
- package/data/transforms/index.d.ts +1 -0
- package/data/transforms/transform-quote.d.ts +8 -0
- package/data/transforms/transform-store-config.d.ts +4 -0
- package/i18n/en_US.json.d.ts +51 -0
- package/lib/state.d.ts +2 -0
- package/package.json +1 -1
- package/render.js +3 -3
- package/render.js.map +1 -1
- package/types/state.types.d.ts +3 -0
- package/chunks/fetch-graphql.js +0 -4
- package/chunks/fetch-graphql.js.map +0 -1
- package/chunks/sendForReview.js +0 -21
- package/chunks/sendForReview.js.map +0 -1
package/i18n/en_US.json.d.ts
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
declare const _default: {
|
|
2
|
+
"ConfirmationModal": {
|
|
3
|
+
"cancel": "Cancel",
|
|
4
|
+
"confirm": "Confirm"
|
|
5
|
+
},
|
|
2
6
|
"NegotiableQuote": {
|
|
3
7
|
"Request": {
|
|
4
8
|
"title": "Request a Quote",
|
|
@@ -43,6 +47,22 @@ declare const _default: {
|
|
|
43
47
|
"createCopy": "Create copy",
|
|
44
48
|
"sendForReview": "Send for review"
|
|
45
49
|
},
|
|
50
|
+
"confirmationModal": {
|
|
51
|
+
"cancel": "Cancel",
|
|
52
|
+
"delete": {
|
|
53
|
+
"title": "Delete Quote",
|
|
54
|
+
"message": "Are you sure you want to delete this quote?",
|
|
55
|
+
"confirm": "Delete",
|
|
56
|
+
"errorHeading": "Error",
|
|
57
|
+
"errorFallback": "Failed to delete quote",
|
|
58
|
+
"successHeading": "Success",
|
|
59
|
+
"successDescription": "Quote has been successfully deleted"
|
|
60
|
+
},
|
|
61
|
+
"close": {
|
|
62
|
+
"message": "Are you sure you want to close this quote?",
|
|
63
|
+
"confirm": "Close"
|
|
64
|
+
}
|
|
65
|
+
},
|
|
46
66
|
"shippingInformation": {
|
|
47
67
|
"title": "Shipping Information"
|
|
48
68
|
},
|
|
@@ -71,6 +91,18 @@ declare const _default: {
|
|
|
71
91
|
"remove": "Remove"
|
|
72
92
|
}
|
|
73
93
|
},
|
|
94
|
+
"rename": {
|
|
95
|
+
"title": "Rename Quote",
|
|
96
|
+
"quoteNameLabel": "Quote name",
|
|
97
|
+
"reasonLabel": "Reason for change",
|
|
98
|
+
"renameButton": "Rename",
|
|
99
|
+
"cancelButton": "Cancel",
|
|
100
|
+
"errorHeading": "Error",
|
|
101
|
+
"quoteNameRequired": "Quote name is required",
|
|
102
|
+
"errorDefault": "Failed to rename quote. Please try again.",
|
|
103
|
+
"successHeading": "Success",
|
|
104
|
+
"successMessage": "Quote renamed successfully!"
|
|
105
|
+
},
|
|
74
106
|
"tabbedContent": {
|
|
75
107
|
"itemsQuoted": "Items quoted",
|
|
76
108
|
"comments": "Comments",
|
|
@@ -87,6 +119,8 @@ declare const _default: {
|
|
|
87
119
|
}
|
|
88
120
|
},
|
|
89
121
|
"PriceSummary": {
|
|
122
|
+
"taxToBeDetermined": "TBD",
|
|
123
|
+
"orderSummary": "Order Summary",
|
|
90
124
|
"giftOptionsTax": {
|
|
91
125
|
"printedCard": {
|
|
92
126
|
"title": "Printed card",
|
|
@@ -109,6 +143,11 @@ declare const _default: {
|
|
|
109
143
|
"withTaxes": "Including taxes",
|
|
110
144
|
"withoutTaxes": "excluding taxes"
|
|
111
145
|
},
|
|
146
|
+
"shipping": {
|
|
147
|
+
"label": "Shipping",
|
|
148
|
+
"withTaxes": "Including taxes",
|
|
149
|
+
"withoutTaxes": "excluding taxes"
|
|
150
|
+
},
|
|
112
151
|
"taxes": {
|
|
113
152
|
"total": "Tax Total",
|
|
114
153
|
"totalOnly": "Tax",
|
|
@@ -117,10 +156,22 @@ declare const _default: {
|
|
|
117
156
|
"hideBreakdown": "Hide Tax Breakdown"
|
|
118
157
|
},
|
|
119
158
|
"total": {
|
|
159
|
+
"free": "Free",
|
|
120
160
|
"label": "Total",
|
|
121
161
|
"withoutTax": "Total excluding taxes",
|
|
122
162
|
"saved": "Total saved"
|
|
123
163
|
}
|
|
164
|
+
},
|
|
165
|
+
"QuoteSummaryList": {
|
|
166
|
+
"discountedPrice": "Discounted Price",
|
|
167
|
+
"discountPercentage": "{discount}% off",
|
|
168
|
+
"editQuote": "Edit",
|
|
169
|
+
"file": "{count} file",
|
|
170
|
+
"files": "{count} files",
|
|
171
|
+
"heading": "Negotiable Quote ({count})",
|
|
172
|
+
"regularPrice": "Regular Price",
|
|
173
|
+
"savingsAmount": "Savings",
|
|
174
|
+
"viewMore": "View more"
|
|
124
175
|
}
|
|
125
176
|
},
|
|
126
177
|
"historyLog": {
|
package/lib/state.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { StoreConfigModel } from '../data/models';
|
|
1
2
|
import { State } from '../types/state.types';
|
|
2
3
|
|
|
3
4
|
export declare const DEFAULT_PERMISSIONS: {
|
|
@@ -6,5 +7,6 @@ export declare const DEFAULT_PERMISSIONS: {
|
|
|
6
7
|
deleteQuote: boolean;
|
|
7
8
|
checkoutQuote: boolean;
|
|
8
9
|
};
|
|
10
|
+
export declare const DEFAULT_CONFIG: StoreConfigModel;
|
|
9
11
|
export declare const state: State;
|
|
10
12
|
//# sourceMappingURL=state.d.ts.map
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name": "@dropins/storefront-quote-management", "version": "0.0.1-
|
|
1
|
+
{"name": "@dropins/storefront-quote-management", "version": "0.0.1-alpha19", "@dropins/tools": "1.6.0-beta2", "license": "SEE LICENSE IN LICENSE.md"}
|
package/render.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/*! Copyright 2025 Adobe
|
|
2
2
|
All Rights Reserved. */
|
|
3
|
-
(function(o,
|
|
3
|
+
(function(o,t){try{if(typeof document<"u"){const e=document.createElement("style"),r=t.styleId;for(const a in t.attributes)e.setAttribute(a,t.attributes[a]);e.setAttribute("data-dropin",r),e.appendChild(document.createTextNode(o));const n=document.querySelector('style[data-dropin="sdk"]');if(n)n.after(e);else{const a=document.querySelector('link[rel="stylesheet"], style');a?a.before(e):document.head.append(e)}}}catch(e){console.error("dropin-styles (injectCodeFunction)",e)}})(`.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)}
|
|
4
4
|
.quote-management-quote-history-log{padding:var(--spacing-small)}.quote-management-quote-history-log__entries{display:flex;flex-direction:column;gap:var(--spacing-small)}.quote-management-quote-history-log__entry{border:1px solid var(--color-neutral-400);padding:var(--spacing-small);background-color:var(--color-neutral-50)}.quote-management-quote-history-log__entry-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-xsmall);flex-wrap:wrap;gap:var(--spacing-xsmall)}.quote-management-quote-history-log__entry-meta{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-quote-history-log__entry-date,.quote-management-quote-history-log__entry-author{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-1-emphasized-letter-spacing);color:var(--color-neutral-800)}.quote-management-quote-history-log__entry-type{background-color:var(--color-neutral-200);color:var(--color-neutral-800);padding:var(--spacing-xxsmall) var(--spacing-xsmall);font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing);white-space:nowrap;border:1px solid var(--color-neutral-300)}.quote-management-quote-history-log__entry-changes{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-quote-history-log__entry-change{font:var(--type-body-2-font);letter-spacing:var(--type-body-2-letter-spacing);color:var(--color-neutral-700);padding-left:var(--spacing-small);position:relative}.quote-management-quote-history-log__entry-change:before{position:absolute;left:0;color:var(--color-neutral-600);font-weight:700}.quote-management-quote-history-log__empty{text-align:center;color:var(--color-neutral-700);font:var(--type-body-1-font);letter-spacing:var(--type-body-1-letter-spacing);font-style:italic;padding:var(--spacing-big)}@media only screen and (min-width: 768px){.quote-management-quote-history-log__entry-header{flex-wrap:nowrap}.quote-management-quote-history-log__entry-meta{flex-direction:row;gap:var(--spacing-xsmall);align-items:center}}
|
|
5
5
|
.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-font);letter-spacing:var(--type-body-2-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-2-font);letter-spacing:var(--type-body-2-letter-spacing);color:var(--color-neutral-800);margin:0;word-wrap:break-word}@media only screen and (min-width: 768px){.quote-management-quote-comments-list__item{padding:var(--spacing-medium) 0}}
|
|
6
6
|
.quote-management-shipping-address-display{display:flex;flex-direction:column;gap:var(--spacing-xsmall);font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-800)}.quote-management-shipping-address-display__field{margin:0;word-wrap:break-word;overflow-wrap:break-word}.quote-management-shipping-address-display__name{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing)}.quote-management-shipping-address-display--empty{padding:var(--spacing-medium);background-color:var(--color-neutral-50)}.quote-management-shipping-address-display__no-address{margin:0;color:var(--color-neutral-700);font-style:italic}
|
|
7
7
|
.quote-management-items-quoted{display:flex;flex-direction:column;gap:var(--spacing-big)}.quote-management-product-list-table-container{display:flex;flex-direction:column;gap:var(--spacing-small)}.quote-management-product-list-table__checkbox{align-self:center;justify-self:center}.quote-management-product-list-table__product-name-container{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-product-list-table__product-name{font:var(--type-body-1-font);letter-spacing:var(--type-body-1-letter-spacing)}.quote-management-product-list-table__configurable-option{display:flex;flex-direction:row;gap:var(--spacing-xxsmall)}.quote-management-product-list-table__configurable-option-label{font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing)}.quote-management-product-list-table__configurable-option-value{font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing)}.quote-management-product-list-table__bundle-option{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-product-list-table__bundle-option-label{font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing)}.quote-management-product-list-table__bundle-option-values{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.quote-management-product-list-table__bundle-option-value{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-xxsmall);font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing)}.quote-management-product-list-table__bundle-option-value-original-price{font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing)}.quote-management-product-list-table__sku{font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing)}.quote-management-product-list-table__quantity{font:var(--type-body-1-font);letter-spacing:var(--type-body-1-letter-spacing);display:block;justify-self:center}.quote-management-product-list-table__discount-container{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--spacing-xxsmall);align-items:baseline}.quote-management-product-list-table-container__submit-container{display:flex;justify-content:flex-end}.quote-management-quote-prices-summary{font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing)}.quote-management-quote-prices-summary__entry{display:flex;flex-direction:row;justify-content:space-between;gap:10px;width:100%}.quote-management-quote-prices-summary__accordion,.quote-management-quote-prices-summary__label{flex-grow:1}.quote-management-quote-prices-summary__label--strong{font:var(--type-body-1-strong-font);letter-spacing:var(--type-body-1-strong-letter-spacing)}.quote-management-quote-prices-summary__value{flex-grow:1;text-align:right}
|
|
8
|
-
.quote-management-actions-bar__container{container-type:inline-size;container-name:actions-bar-container}.quote-management-actions-bar{background:var(--color-neutral-200);padding:var(--spacing-xsmall);display:flex;gap:var(--spacing-small);justify-content:space-between;align-items:center}.quote-management-actions-bar__dropdown{width:max-content}.quote-management-actions-bar__buttons{display:flex}.quote-management-actions-bar__button>span{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}@container actions-bar-container (max-width: 768px){.quote-management-actions-bar{flex-direction:column;align-items:flex-start;gap:var(--spacing-xsmall)}.quote-management-actions-bar__dropdown{width:100%}.quote-management-actions-bar__buttons{flex-direction:column;align-items:flex-start;gap:var(--spacing-xsmall);width:100%}.quote-management-actions-bar__button{width:100%}}.quote-management-manage-negotiable-quote{display:grid;gap:var(--spacing-small);color:var(--color-neutral-800);width:100%;container-type:inline-size}.quote-management-manage-negotiable-quote__header{display:flex;gap:var(--spacing-big);align-items:center}.quote-management-manage-negotiable-quote__quote-name>*{font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);margin:0}.quote-management-manage-negotiable-quote__quote-status>*{font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing);border:2px solid var(--color-neutral-300);padding:var(--spacing-xxsmall)}.quote-management-manage-negotiable-quote__banner{width:100%}.quote-management-manage-negotiable-quote__details{display:flex;flex-direction:row;gap:var(--spacing-xsmall);justify-content:space-between;align-items:center;flex-wrap:wrap}.quote-management-manage-negotiable-quote__detail{display:flex;flex-wrap:wrap;gap:var(--spacing-xxsmall);align-items:baseline}.quote-management-manage-negotiable-quote__detail-title{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing)}.quote-management-manage-negotiable-quote__detail-content{font:var(--type-body-2-font);letter-spacing:var(--type-body-2-letter-spacing)}.quote-management-manage-negotiable-quote__item-actions{justify-content:flex-start}.quote-management-manage-negotiable-quote__quote-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote__shipping-information-container{display:flex;flex-direction:column;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote__shipping-information-title>*{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);margin:0}.quote-management-manage-negotiable-quote__quote-comments-container{display:flex;flex-direction:column;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote__quote-comments-title>*{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);margin:0}.quote-management-manage-negotiable-quote__footer{display:flex;gap:var(--spacing-small);justify-content:flex-start}@container (max-width: 768px){.quote-management-manage-negotiable-quote__header{flex-direction:column}.quote-management-manage-negotiable-quote__action-bar{flex-direction:column;align-items:flex-start}.quote-management-manage-negotiable-quote__quote-actions{justify-content:flex-start}}.negotiable-quote-summary{display:grid;position:relative;grid-auto-flow:row;padding:var(--spacing-medium)}.negotiable-quote-summary__primary{background-color:var(--color-neutral-200)}.negotiable-quote-summary__secondary{background-color:var(--color-neutral-50)}.negotiable-quote-summary__content{display:grid;gap:var(--spacing-xsmall);margin-top:var(--spacing-small)}.negotiable-quote-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)}.negotiable-quote-summary__discount .negotiable-quote-summary__label,.negotiable-quote-summary__discount .negotiable-quote-summary__price{color:var(--color-warning-800)}.negotiable-quote-summary__taxes .dropin-divider:last-child{margin-bottom:0}.negotiable-quote-summary__total{margin-top:var(--spacing-medium)}.negotiable-quote-summary__divider-primary,.negotiable-quote-summary__divider-secondary{width:100%;margin:0}.negotiable-quote-summary__divider-secondary{margin:0}.negotiable-quote-summary__taxEntry.negotiable-quote-summary__entry{margin-top:0}.negotiable-quote-summary__entry,.negotiable-quote-summary__taxEntry{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xxsmall);align-items:center;color:var(--color-neutral-800)}.negotiable-quote-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)}.negotiable-quote-summary__primaryAction{margin-top:var(--spacing-small);grid-template-columns:1fr}.negotiable-quote-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.negotiable-quote-summary__shippingLink{text-decoration:underline}.negotiable-quote-summary__shipping--hide{display:none!important}.negotiable-quote-summary__shipping--edit button{width:var(--spacing-huge);justify-self:end}.negotiable-quote-summary__shipping--zip,.negotiable-quote-summary__shipping--state{background-color:var(--color-neutral-50)}.negotiable-quote-summary__taxes .dropin-accordion-section__content-container{gap:var(--spacing-small);margin:var(--spacing-small) 0}.negotiable-quote-summary--loading{opacity:.4;pointer-events:none}.negotiable-quote-summary__spinner{margin:0 auto;position:absolute;z-index:999;left:0;right:0;top:calc(50% - (var(--size) / 2));bottom:0}.negotiable-quote-summary__label,.negotiable-quote-summary__price{font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing)}.negotiable-quote-summary__price{text-align:right;text-transform:uppercase}.negotiable-quote-summary__label--muted{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-700)}.negotiable-quote-summary__price--muted{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}.negotiable-quote-summary__label--bold,.negotiable-quote-summary__price--bold{font:var(--type-body-1-emphasized-font);letter-spacing:var(--type-body-1-emphasized-letter-spacing)}.quote-management-quote-summary-list{container-type:inline-size;container-name:quote-summary-list}.quote-management-quote-summary-list__background--secondary{background-color:var(--color-neutral-200)}.quote-management-quote-summary-list__heading{display:grid;row-gap:var(--spacing-xsmall);padding:var(--spacing-medium) 0 0 0;font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);color:var(--color-neutral-800)}.quote-management-quote-summary-list__heading--full-width{width:100%}.quote-management-quote-summary-list__heading-divider{width:100%;margin:var(--spacing-xxsmall) 0 var(--spacing-medium) 0}.quote-management-quote-summary-list__content{display:grid;grid-template-columns:1fr;padding:0}.quote-management-quote-summary-list__out-of-stock-message{margin:calc(-1 * var(--spacing-xsmall)) 0 var(--spacing-medium) 0}.quote-management-quote-summary-list-footer__action,.quote-management-quote-summary-list-footer__action:focus .quote-management-quote-summary-list-footer__action:active,.quote-management-quote-summary-list-footer__action:link{font:var(--type-body-2-strong-font);margin:0 auto;width:auto;margin-top:var(--spacing-medium);margin-bottom:var(--spacing-medium)}.quote-management-quote-summary-list-footer__action:hover{text-decoration:underline;text-underline-offset:var(--spacing-xxsmall);background:transparent;color:var(--color-brand-700)}.quote-management-quote-summary-list-footer__action:visited{background-color:transparent}.quote-management-quote-summary-list-accordion{border-left:var(--shape-border-width-2) solid var(--color-neutral-400);border-right:var(--shape-border-width-2) solid var(--color-neutral-400)}.quote-management-quote-summary-list-accordion__section{margin:var(--spacing-medium)}.dropin-cart-item__quantity{width:fit-content}@container quote-summary-list (width >= 768px){.quote-management-quote-summary-list__out-of-stock-message{margin:calc(-1 * var(--spacing-small)) 0 var(--spacing-xxbig) 0}}@container quote-summary-list (width >= 1024px){.quote-management-quote-summary-list__content,.quote-management-quote-summary-list__heading{grid-column:1 / span 8}.quote-management-quote-summary-list__heading--full-width{grid-column:1 / span 12}.quote-management-quote-summary-list__content{padding:0}}.quotes-list-table__empty-state{padding:var(--spacing-large);text-align:center;color:var(--color-neutral-600);border-top:var(--shape-border-width-1) solid var(--color-neutral-200)}.quotes-list-table__footer{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-medium);border-top:var(--shape-border-width-1) solid var(--color-neutral-200);gap:var(--spacing-medium)}.quotes-list-table__item-range{flex:1;color:var(--color-neutral-800);font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}.quotes-list-table__pagination{flex:0 0 auto;display:flex;justify-content:center}.quotes-list-table__page-size-picker{flex:1;display:flex;justify-content:flex-end;align-items:center;gap:var(--spacing-small);color:var(--color-neutral-800);font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}.quotes-list-table__page-size-picker>span{display:inline-flex;align-items:baseline}.quotes-list-table__page-size-picker .dropin-picker{display:inline-flex;align-items:center;margin:0 var(--spacing-xsmall);vertical-align:center}.quotes-list-table__page-size-picker .dropin-picker__select{height:auto;min-height:var(--sizing-medium);line-height:1.2;vertical-align:baseline}.quote-management-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)}`,{styleId:"quote-management"});
|
|
9
|
-
import{jsx as t}from"@dropins/tools/preact-jsx-runtime.js";import{Render as s}from"@dropins/tools/lib.js";import{useState as i,useEffect as
|
|
8
|
+
.quote-management-actions-bar__container{container-type:inline-size;container-name:actions-bar-container}.quote-management-actions-bar{background:var(--color-neutral-200);padding:var(--spacing-xsmall);display:flex;gap:var(--spacing-small);justify-content:space-between;align-items:center}.quote-management-actions-bar__dropdown{width:max-content}.quote-management-actions-bar__buttons{display:flex}.quote-management-actions-bar__button>span{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}@container actions-bar-container (max-width: 768px){.quote-management-actions-bar{flex-direction:column;align-items:flex-start;gap:var(--spacing-xsmall)}.quote-management-actions-bar__dropdown{width:100%}.quote-management-actions-bar__buttons{flex-direction:column;align-items:flex-start;gap:var(--spacing-xsmall);width:100%}.quote-management-actions-bar__button{width:100%}}.quote-management-manage-negotiable-quote{display:grid;gap:var(--spacing-small);color:var(--color-neutral-800);width:100%;container-type:inline-size}.quote-management-manage-negotiable-quote__header{display:flex;gap:var(--spacing-big);align-items:center}.quote-management-manage-negotiable-quote__quote-name>*{font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);margin:0}.quote-management-manage-negotiable-quote__quote-name-wrapper{display:flex;align-items:center;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote__quote-name-title{font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);margin:0}.quote-management-manage-negotiable-quote__rename-button{background:none;border:none;padding:var(--spacing-xsmall);cursor:pointer;display:inline-flex;align-items:center}.quote-management-manage-negotiable-quote__rename-button:disabled{cursor:not-allowed;opacity:.5}.quote-management-manage-negotiable-quote__quote-status>*{font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing);border:2px solid var(--color-neutral-300);padding:var(--spacing-xxsmall)}.quote-management-manage-negotiable-quote__banner{width:100%}.quote-management-manage-negotiable-quote__details{display:flex;flex-direction:row;gap:var(--spacing-xsmall);justify-content:space-between;align-items:center;flex-wrap:wrap}.quote-management-manage-negotiable-quote__detail{display:flex;flex-wrap:wrap;gap:var(--spacing-xxsmall);align-items:baseline}.quote-management-manage-negotiable-quote__detail-title{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing)}.quote-management-manage-negotiable-quote__detail-content{font:var(--type-body-2-font);letter-spacing:var(--type-body-2-letter-spacing)}.quote-management-manage-negotiable-quote__item-actions{justify-content:flex-start}.quote-management-manage-negotiable-quote__quote-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote__shipping-information-container{display:flex;flex-direction:column;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote__shipping-information-title>*{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);margin:0}.quote-management-manage-negotiable-quote__quote-comments-container{display:flex;flex-direction:column;gap:var(--spacing-xsmall)}.quote-management-manage-negotiable-quote__quote-comments-title>*{font:var(--type-body-2-emphasized-font);letter-spacing:var(--type-body-2-emphasized-letter-spacing);margin:0}.quote-management-manage-negotiable-quote__footer{display:flex;gap:var(--spacing-small);justify-content:flex-start}@container (max-width: 768px){.quote-management-manage-negotiable-quote__header{flex-direction:column}.quote-management-manage-negotiable-quote__action-bar{flex-direction:column;align-items:flex-start}.quote-management-manage-negotiable-quote__quote-actions{justify-content:flex-start}}.quote-order-summary{display:grid;position:relative;grid-auto-flow:row;padding:var(--spacing-medium)}.quote-order-summary__primary{background-color:var(--color-neutral-200)}.quote-order-summary__secondary{background-color:var(--color-neutral-50)}.quote-order-summary__content{display:grid;gap:var(--spacing-xsmall);margin-top:var(--spacing-small)}.quote-order-summary__heading{display:grid;font:var(--type-headline-2-strong-font);letter-spacing:var(--type-headline-2-strong-letter-spacing);color:var(--color-neutral-800);gap:var(--spacing-small)}.quote-order-summary__discount .quote-order-summary__label,.quote-order-summary__discount .quote-order-summary__price{color:var(--color-warning-800)}.quote-order-summary__taxes .dropin-divider:last-child{margin-bottom:0}.quote-order-summary__total{margin-top:var(--spacing-medium)}.quote-order-summary__heading .quote-order-summary__divider-primary,.quote-order-summary__heading .quote-order-summary__divider-secondary{width:100%;margin:0}.quote-order-summary__divider-secondary{margin:0}.quote-order-summary__taxEntry.quote-order-summary__entry{margin-top:0}.quote-order-summary__entry,.quote-order-summary__taxEntry{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xxsmall);align-items:center;color:var(--color-neutral-800)}.quote-order-summary__caption{font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing);grid-column:span 2;color:var(--color-neutral-700)}.quote-order-summary__shipping--edit{display:grid;grid-column:1 / span 2;gap:var(--spacing-small);padding-top:var(--spacing-small);padding-left:var(--spacing-small)}a.quote-order-summary__shippingLink{text-decoration:underline}.quote-order-summary__shipping--hide{display:none!important}.quote-order-summary__shipping--edit button{width:var(--spacing-huge);justify-self:end}.quote-order-summary__shipping--zip,.quote-order-summary__shipping--state{background-color:var(--color-neutral-50)}.quote-order-summary__taxes .dropin-accordion-section__content-container{gap:var(--spacing-small);margin:var(--spacing-small) 0}.quote-order-summary__spinner{margin:0 auto;position:absolute;z-index:999;left:0;right:0;top:calc(50% - (var(--size) / 2));bottom:0}.quote-order-summary__label,.quote-order-summary__price{font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing)}.quote-order-summary__price{text-align:right;text-transform:uppercase}.quote-order-summary__label--muted{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-700)}.quote-order-summary__price--muted{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}.quote-order-summary__label--bold,.quote-order-summary__price--bold{font:var(--type-body-1-emphasized-font);letter-spacing:var(--type-body-1-emphasized-letter-spacing)}.quote-management-quote-summary-list{container-type:inline-size;container-name:quote-summary-list}.quote-management-quote-summary-list__background--secondary{background-color:var(--color-neutral-200)}.quote-management-quote-summary-list__heading{display:grid;row-gap:var(--spacing-xsmall);padding:var(--spacing-medium) 0 0 0;font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);color:var(--color-neutral-800)}.quote-management-quote-summary-list__heading--full-width{width:100%}.quote-management-quote-summary-list__heading-divider{width:100%;margin:var(--spacing-xxsmall) 0 var(--spacing-medium) 0}.quote-management-quote-summary-list__content{display:grid;grid-template-columns:1fr;padding:0}.quote-management-quote-summary-list__out-of-stock-message{margin:calc(-1 * var(--spacing-xsmall)) 0 var(--spacing-medium) 0}.quote-management-quote-summary-list-footer__action,.quote-management-quote-summary-list-footer__action:focus .quote-management-quote-summary-list-footer__action:active,.quote-management-quote-summary-list-footer__action:link{font:var(--type-body-2-strong-font);margin:0 auto;width:auto;margin-top:var(--spacing-medium);margin-bottom:var(--spacing-medium)}.quote-management-quote-summary-list-footer__action:hover{text-decoration:underline;text-underline-offset:var(--spacing-xxsmall);background:transparent;color:var(--color-brand-700)}.quote-management-quote-summary-list-footer__action:visited{background-color:transparent}.quote-management-quote-summary-list-accordion{border-left:var(--shape-border-width-2) solid var(--color-neutral-400);border-right:var(--shape-border-width-2) solid var(--color-neutral-400)}.quote-management-quote-summary-list-accordion__section{margin:var(--spacing-medium)}.dropin-cart-item__quantity{width:fit-content}@container quote-summary-list (width >= 768px){.quote-management-quote-summary-list__out-of-stock-message{margin:calc(-1 * var(--spacing-small)) 0 var(--spacing-xxbig) 0}}@container quote-summary-list (width >= 1024px){.quote-management-quote-summary-list__content,.quote-management-quote-summary-list__heading{grid-column:1 / span 8}.quote-management-quote-summary-list__heading--full-width{grid-column:1 / span 12}.quote-management-quote-summary-list__content{padding:0}}.quotes-list-table__empty-state{padding:var(--spacing-large);text-align:center;color:var(--color-neutral-600);border-top:var(--shape-border-width-1) solid var(--color-neutral-200)}.quotes-list-table__footer{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-medium);border-top:var(--shape-border-width-1) solid var(--color-neutral-200);gap:var(--spacing-medium)}.quotes-list-table__item-range{flex:1;color:var(--color-neutral-800);font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}.quotes-list-table__pagination{flex:0 0 auto;display:flex;justify-content:center}.quotes-list-table__page-size-picker{flex:1;display:flex;justify-content:flex-end;align-items:center;gap:var(--spacing-small);color:var(--color-neutral-800);font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}.quotes-list-table__page-size-picker>span{display:inline-flex;align-items:baseline}.quotes-list-table__page-size-picker .dropin-picker{display:inline-flex;align-items:center;margin:0 var(--spacing-xsmall);vertical-align:center}.quotes-list-table__page-size-picker .dropin-picker__select{height:auto;min-height:var(--sizing-medium);line-height:1.2;vertical-align:baseline}.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}}`,{styleId:"quote-management"});
|
|
9
|
+
import{jsx as t}from"@dropins/tools/preact-jsx-runtime.js";import{Render as s}from"@dropins/tools/lib.js";import{useState as i,useEffect as u}from"@dropins/tools/preact-hooks.js";import{UIProvider as d}from"@dropins/tools/components.js";import{events as l}from"@dropins/tools/event-bus.js";const c={cancel:"Cancel",confirm:"Confirm"},m={Request:{title:"Request a Quote",comment:"Comment",commentError:"Please add your comment",quoteName:"Quote name",quoteNameError:"Please add a quote name",attachmentsError:"Error uploading attachments",requestCta:"Request a Quote",saveDraftCta:"Save as draft",error:{header:"Error",unauthenticated:"Please sign in to request a quote.",unauthorized:"You are not authorized to request a quote.",missingCart:"Could not find a valid cart."},success:{header:"Success",submitted:"Quote request submitted successfully!",draftSaved:"Quote saved as draft successfully!"}},Manage:{createdLabel:"Created:",salesRepLabel:"Sales Rep:",expiresLabel:"Expires:",actionsLabel:"Actions",actions:{remove:"Remove"},bannerTitle:"Alert",bannerStatusMessages:{submitted:"This quote is currently locked for editing. It will become available once released by the Merchant.",pending:"This quote is currently locked for editing. It will become available once released by the Merchant.",expired:"Your quote has expired and the product prices have been updated as per the latest prices in your catalog. You can either re-submit the quote to seller for further negotiation or go to checkout."},actionButtons:{close:"Close quote",delete:"Delete quote",print:"Print quote",createTemplate:"Create quote template",createCopy:"Create copy",sendForReview:"Send for review"},confirmationModal:{cancel:"Cancel",delete:{title:"Delete Quote",message:"Are you sure you want to delete this quote?",confirm:"Delete",errorHeading:"Error",errorFallback:"Failed to delete quote",successHeading:"Success",successDescription:"Quote has been successfully deleted"},close:{message:"Are you sure you want to close this quote?",confirm:"Close"}},shippingInformation:{title:"Shipping Information"},shippingAddress:{noAddress:"No shipping address has been set for this quote."},quoteComments:{title:"Quote Comments",placeholder:"Add your comment",emptyState:"No comments yet",by:"by"},productListTable:{headers:{productName:"Product name",sku:"SKU",price:"Price",quantity:"Quantity",discount:"Discount",subtotal:"Subtotal",actions:"Actions"},submitButton:"Update",actions:{editNoteToSeller:"Edit note to seller",remove:"Remove"}},rename:{title:"Rename Quote",quoteNameLabel:"Quote name",reasonLabel:"Reason for change",renameButton:"Rename",cancelButton:"Cancel",errorHeading:"Error",quoteNameRequired:"Quote name is required",errorDefault:"Failed to rename quote. Please try again.",successHeading:"Success",successMessage:"Quote renamed successfully!"},tabbedContent:{itemsQuoted:"Items quoted",comments:"Comments",historyLog:"History log"},quotePricesSummary:{subtotal:{excludingTax:"Quote Subtotal (excluding tax)"},appliedTaxes:"Applied Taxes",grandTotal:{includingTax:"Quote Grand Total (including tax)"}}},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})",regularPrice:"Regular Price",savingsAmount:"Savings",viewMore:"View more"}},g={changeTypes:{created:"Quote Created",updated:"Quote Updated",statusChanged:"Status Changed",commentAdded:"Comment Added",expirationChanged:"Expiration Changed"},noteTypes:{buyerNoteAdded:"Buyer Note Added",sellerNoteAdded:"Seller Note Added"},authorLabels:{buyer:"(Buyer)",seller:"(Seller)"},changeDetails:{comment:'Comment: "{comment}"',statusChangedFromTo:"Status changed from {oldStatus} to {newStatus}",statusSetTo:"Status set to {newStatus}",expirationChangedFromTo:"Expiration changed from {oldExpiration} to {newExpiration}",expirationSetTo:"Expiration set to {newExpiration}",totalChangedFromTo:"Total changed from {oldTotal} to {newTotal}",customChange:'{title}: changed from "{oldValue}" to "{newValue}"',productsRemovedFromCatalog:"Products removed from catalog: {products}",productsRemovedFromQuote:"Products removed from quote: {products}",noDetailsAvailable:"No details available"},emptyState:"No history available for this quote."},p={never:"Never"},h={QuotesListTable:{quoteName:"Quote Name",created:"Created",createdBy:"Created By",status:"Status",lastUpdated:"Last Updated",quoteTemplate:"Quote Template",quoteTotal:"Quote Total",actions:"Action"}},x={ConfirmationModal:c,NegotiableQuote:m,historyLog:g,dateUtils:p,QuoteManagement:h},f={default:x},T=({children:o})=>{const[a,r]=i("en_US");return u(()=>{const e=l.on("locale",n=>{r(n)},{eager:!0});return()=>{e==null||e.off()}},[]),t(d,{lang:a,langDefinitions:f,children:o})},v=new s(t(T,{}));export{v as render};
|
|
10
10
|
//# sourceMappingURL=render.js.map
|
package/render.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sources":["/@dropins/storefront-quote-management/src/render/Provider.tsx","/@dropins/storefront-quote-management/src/render/render.tsx"],"sourcesContent":["import { 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","import { Render } from '@adobe-commerce/elsie/lib';\nimport { Provider } from './Provider';\n\nexport const render = new Render(<Provider />);\n"],"names":["langDefinitions","en_US","Provider","children","lang","setLang","useState","useEffect","localeEvent","events","locale","jsx","UIProvider","render","Render"],"mappings":"+
|
|
1
|
+
{"version":3,"file":"render.js","sources":["/@dropins/storefront-quote-management/src/render/Provider.tsx","/@dropins/storefront-quote-management/src/render/render.tsx"],"sourcesContent":["import { 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","import { 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":"+vKASMA,EAAkB,CACtB,QAASC,CACX,EAMaC,EAAiD,CAAC,CAC7D,SAAAC,CACF,IAAM,CACJ,KAAM,CAACC,EAAMC,CAAO,EAAIC,EAAe,OAAO,EAG9C,OAAAC,EAAU,IAAM,CACd,MAAMC,EAAcC,EAAO,GACzB,SACCC,GAAmB,CAClBL,EAAQK,CAAc,CACxB,EACA,CAAE,MAAO,EAAA,CAAK,EAEhB,MAAO,IAAM,CACXF,GAAA,MAAAA,EAAa,KACf,CACF,EAAG,CAAA,CAAE,EAGHG,EAACC,EAAA,CAAW,KAAAR,EAAY,gBAAAJ,EACrB,SAAAG,CAAA,CACH,CAEJ,ECtCaU,EAAS,IAAIC,EAAOH,EAACT,IAAS,CAAE"}
|
package/types/state.types.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { StoreConfigModel } from '../data/models';
|
|
2
|
+
|
|
1
3
|
export type State = {
|
|
2
4
|
authenticated: boolean;
|
|
3
5
|
permissions: {
|
|
@@ -6,5 +8,6 @@ export type State = {
|
|
|
6
8
|
deleteQuote: boolean;
|
|
7
9
|
checkoutQuote: boolean;
|
|
8
10
|
};
|
|
11
|
+
config: StoreConfigModel | null;
|
|
9
12
|
};
|
|
10
13
|
//# sourceMappingURL=state.types.d.ts.map
|
package/chunks/fetch-graphql.js
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
/*! Copyright 2025 Adobe
|
|
2
|
-
All Rights Reserved. */
|
|
3
|
-
import{FetchGraphQL as b}from"@dropins/tools/fetch-graphql.js";const x={requestQuote:!1,editQuote:!1,deleteQuote:!1,checkoutQuote:!1},y={authenticated:!1,permissions:x},E=new Proxy(y,{get:(e,t)=>e[t],set:(e,t,r)=>(e[t]=r,!0)});var h=(e=>(e.NEW="NEW",e.SUBMITTED="SUBMITTED",e.PENDING="PENDING",e.UPDATED="UPDATED",e.OPEN="OPEN",e.ORDERED="ORDERED",e.CLOSED="CLOSED",e.DECLINED="DECLINED",e.EXPIRED="EXPIRED",e.DRAFT="DRAFT",e))(h||{});function I(e){var r,s,i,g,m,f;const t=v(e);return{uid:e.uid,name:e.name,createdAt:e.created_at,updatedAt:e.updated_at,expirationDate:e.expiration_date,status:t?h.NEW:e.status,salesRepName:e.sales_rep_name,buyer:{firstname:e.buyer.firstname,lastname:e.buyer.lastname},templateName:e.template_name,comments:(r=e.comments)==null?void 0:r.map(a=>{const c={uid:a.uid,createdAt:a.created_at,author:{firstname:a.author.firstname,lastname:a.author.lastname},text:a.text};return Array.isArray(a.attachments)&&a.attachments.length>0&&(c.attachments=a.attachments.map(o=>({name:o.name,url:o.url}))),c}),prices:e.prices&&{subtotalExcludingTax:e.prices.subtotal_excluding_tax&&{value:e.prices.subtotal_excluding_tax.value,currency:e.prices.subtotal_excluding_tax.currency},subtotalIncludingTax:e.prices.subtotal_including_tax&&{value:e.prices.subtotal_including_tax.value,currency:e.prices.subtotal_including_tax.currency},subtotalWithDiscountExcludingTax:e.prices.subtotal_with_discount_excluding_tax&&{value:e.prices.subtotal_with_discount_excluding_tax.value,currency:e.prices.subtotal_with_discount_excluding_tax.currency},appliedTaxes:(s=e.prices.applied_taxes)==null?void 0:s.map(a=>({amount:{value:a.amount.value,currency:a.amount.currency},label:a.label})),grandTotal:e.prices.grand_total&&{value:e.prices.grand_total.value,currency:e.prices.grand_total.currency}},history:(i=e.history)==null?void 0:i.map(a=>{var c,o,u,p,d,_,n;return{uid:a.uid,createdAt:a.created_at,author:{firstname:a.author.firstname,lastname:a.author.lastname},changeType:a.change_type,changes:{commentAdded:((c=a.changes)==null?void 0:c.comment_added)&&{comment:a.changes.comment_added.comment},customChanges:((o=a.changes)==null?void 0:o.custom_changes)&&{new_value:a.changes.custom_changes.new_value,old_value:a.changes.custom_changes.old_value,title:a.changes.custom_changes.title},expiration:((u=a.changes)==null?void 0:u.expiration)&&{newExpiration:a.changes.expiration.new_expiration,oldExpiration:a.changes.expiration.old_expiration},productsRemoved:((p=a.changes)==null?void 0:p.products_removed)&&{productsRemovedFromCatalog:a.changes.products_removed.products_removed_from_catalog||[],productsRemovedFromQuote:a.changes.products_removed.products_removed_from_quote||[]},statuses:((d=a.changes)==null?void 0:d.statuses)&&{changes:((_=a.changes.statuses.changes)==null?void 0:_.map(l=>({newStatus:l.new_status,oldStatus:l.old_status})))||[]},total:((n=a.changes)==null?void 0:n.total)&&a.changes.total.new_price&&a.changes.total.old_price&&{newPrice:{value:a.changes.total.new_price.value,currency:a.changes.total.new_price.currency},oldPrice:{value:a.changes.total.old_price.value,currency:a.changes.total.old_price.currency}}}}}),items:((g=e.items)==null?void 0:g.map(a=>{var c,o,u,p,d,_;return{product:{uid:a.product.uid,sku:a.product.sku,name:a.product.name},catalogDiscount:{amountOff:a.prices.catalog_discount.amount_off,percentOff:a.prices.catalog_discount.percent_off},discounts:((o=(c=a.prices)==null?void 0:c.discounts)==null?void 0:o.map(n=>({label:n.label,value:n.value,amount:{value:n.amount.value,currency:n.amount.currency}})))??[],stockStatus:a.product.stock_status,quantity:a.quantity,prices:{originalItemPrice:{value:a.prices.original_item_price.value,currency:a.prices.original_item_price.currency},rowTotal:{value:a.prices.row_total.value,currency:a.prices.row_total.currency}},noteFromBuyer:(u=a.note_from_buyer)==null?void 0:u.map(n=>({createdAt:n.created_at,creatorId:n.creator_id,creatorType:n.creator_type,negotiableQuoteItemUid:n.negotiable_quote_item_uid,note:n.note,noteUid:n.note_uid})),noteFromSeller:(p=a.note_from_seller)==null?void 0:p.map(n=>({createdAt:n.created_at,creatorId:n.creator_id,creatorType:n.creator_type,negotiableQuoteItemUid:n.negotiable_quote_item_uid,note:n.note,noteUid:n.note_uid})),configurableOptions:(d=a.configurable_options)==null?void 0:d.map(n=>({optionLabel:n.option_label,valueLabel:n.value_label})),bundleOptions:(_=a.bundle_options)==null?void 0:_.map(n=>({label:n.label,values:n.values.map(l=>({label:l.label,quantity:l.quantity,originalPrice:{value:l.original_price.value,currency:l.original_price.currency},price:{value:l.priceV2.value,currency:l.priceV2.currency}}))}))}}))||[],shippingAddresses:(m=e.shipping_addresses)==null?void 0:m.map(a=>{const c={uid:a.uid,firstname:a.firstname,lastname:a.lastname,company:a.company,street:a.street,city:a.city,postcode:a.postcode,country:{code:a.country.code,label:a.country.label},telephone:a.telephone};return a.region&&(c.region={code:a.region.code,label:a.region.label,regionId:a.region.region_id}),c}),canCheckout:["UPDATED","DECLINED"].includes(e.status)&&E.permissions.checkoutQuote&&((f=e.shipping_addresses)==null?void 0:f.length)>0,canSendForReview:(t||["DRAFT","UPDATED","DECLINED","EXPIRED","NEW"].includes(e.status))&&E.permissions.editQuote}}function w(e){return e?I(e):null}function v(e){return e.status==="SUBMITTED"&&!(e.history??[]).some(t=>{var r,s;return t.change_type==="UPDATED"&&(((s=(r=t.changes)==null?void 0:r.statuses)==null?void 0:s.changes)??[]).length>0})}function D(e){const t=v(e);return{uid:e.uid,name:e.name,createdAt:e.created_at,updatedAt:e.updated_at,status:t?h.NEW:e.status,buyer:{firstname:e.buyer.firstname,lastname:e.buyer.lastname},templateName:e.template_name,prices:{grandTotal:{value:e.prices.grand_total.value,currency:e.prices.grand_total.currency}}}}function A(e){var s;if(!e)return null;const t={items:((s=e.items)==null?void 0:s.filter(i=>i==null?void 0:i.uid).map(D))||[],pageInfo:{currentPage:e.page_info.current_page,pageSize:e.page_info.page_size,totalPages:e.page_info.total_pages},totalCount:e.total_count,sortFields:e.sort_fields?{default:e.sort_fields.default,options:e.sort_fields.options}:void 0},r=T(t);return{...t,paginationInfo:r||void 0}}function T(e){if(!(e!=null&&e.pageInfo)||!e.totalCount)return null;const{currentPage:t,pageSize:r,totalPages:s}=e.pageInfo,{totalCount:i}=e,g=i>0?(t-1)*r+1:0,m=Math.min(t*r,i);return{currentPage:t,totalCount:i,pageSize:r,startItem:g,endItem:m,totalPages:s,pageSizeOptions:[20,30,50,100,200]}}const R=()=>[20,30,50,100,200],{setEndpoint:N,setFetchGraphQlHeader:C,removeFetchGraphQlHeader:F,setFetchGraphQlHeaders:O,fetchGraphQl:U,getConfig:L}=new b().getMethods();export{x as D,A as a,N as b,C as c,O as d,L as e,U as f,R as g,F as r,E as s,w as t};
|
|
4
|
-
//# sourceMappingURL=fetch-graphql.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-graphql.js","sources":["/@dropins/storefront-quote-management/src/lib/state.ts","/@dropins/storefront-quote-management/src/data/models/negotiable-quote-model.ts","/@dropins/storefront-quote-management/src/data/transforms/transform-quote.ts","/@dropins/storefront-quote-management/src/api/fetch-graphql/fetch-graphql.ts"],"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 { State } from '../types/state.types';\n\nexport const DEFAULT_PERMISSIONS = {\n requestQuote: false,\n editQuote: false,\n deleteQuote: false,\n checkoutQuote: false,\n};\n\nconst _state: State = {\n authenticated: false,\n permissions: DEFAULT_PERMISSIONS,\n}\n\n// Proxy state to make it reactive\nexport const state = new Proxy(_state, {\n get: (target, key) => {\n return target[key as keyof State];\n },\n set: (target, key, value) => {\n target[key as keyof State] = value;\n return true;\n }\n})","export interface ShippingAddress {\n /**\n * The unique string identifier of the address\n */\n uid?: string;\n firstname: string;\n lastname: string;\n company?: string;\n street: string[];\n city: string;\n region?: {\n code: string;\n label: string;\n regionId: number;\n };\n postcode: string;\n country: {\n code: string;\n label: string;\n };\n telephone: string;\n}\n\nexport interface NegotiableQuoteModel {\n uid: string;\n name: string;\n createdAt: string;\n salesRepName: string;\n expirationDate: string;\n updatedAt: string;\n status: NegotiableQuoteStatus;\n buyer: {\n firstname: string;\n lastname: string;\n };\n templateName?: string;\n comments?: {\n uid: string;\n createdAt: string;\n author: {\n firstname: string;\n lastname: string;\n };\n text: string;\n attachments?: {\n name: string;\n url: string;\n }[];\n }[];\n history?: NegotiableQuoteHistoryEntry[];\n prices: {\n subtotalExcludingTax?: Currency;\n subtotalIncludingTax?: Currency;\n subtotalWithDiscountExcludingTax?: Currency;\n grandTotal?: Currency;\n appliedTaxes?: {\n amount: Currency;\n label: string;\n }[];\n };\n items: NegotiableQuoteCartItem[];\n shippingAddresses?: ShippingAddress[];\n canCheckout: boolean;\n canSendForReview: boolean;\n}\n\nexport interface NegotiableQuoteCartItem {\n product: {\n uid: string;\n sku: string;\n name: string;\n templateId?: string;\n templateName?: string;\n priceRange: {\n maximumPrice: {\n regularPrice: {\n value: number;\n };\n };\n };\n };\n catalogDiscount: {\n amountOff: number;\n percentOff: number;\n };\n discounts: {\n label: string;\n value: string;\n amount: Currency;\n }[];\n stockStatus: string;\n quantity: number;\n prices: {\n originalItemPrice: Currency;\n rowTotal: Currency;\n };\n configurableOptions?: {\n optionLabel: string;\n valueLabel: string;\n }[];\n bundleOptions?: {\n label: string;\n values: {\n label: string;\n quantity: number;\n originalPrice: Currency;\n price: Currency;\n }[];\n }[];\n noteFromBuyer?: ItemNote[];\n noteFromSeller?: ItemNote[];\n}\n\nexport interface ItemNote {\n createdAt: string;\n creatorId: number;\n creatorType: number;\n negotiableQuoteItemUid: string;\n note: string;\n noteUid: string;\n}\n\nexport interface Currency {\n value: number;\n currency: string;\n}\n\nexport interface NegotiableQuoteListEntry {\n uid: string;\n name: string;\n createdAt: string;\n updatedAt: string;\n status: NegotiableQuoteStatus;\n buyer: {\n firstname: string;\n lastname: string;\n };\n templateName: string;\n prices: {\n grandTotal: Currency;\n };\n}\nexport interface NegotiableQuotesListModel {\n items: NegotiableQuoteListEntry[];\n pageInfo: {\n currentPage: number;\n pageSize: number;\n totalPages: number;\n };\n totalCount: number;\n paginationInfo?: PaginationInfo;\n sortFields?: {\n default: string;\n options: Array<{\n label: string;\n value: string;\n }>;\n };\n}\n\nexport interface NegotiableQuoteHistoryEntry {\n author: {\n firstname: string;\n lastname: string;\n };\n changeType: NegotiableQuoteHistoryEntryChangeType;\n changes: {\n commentAdded?: {\n comment: string;\n };\n customChanges?: {\n new_value: string;\n old_value: string;\n title: string;\n };\n expiration?: {\n newExpiration: string;\n oldExpiration: string;\n };\n productsRemoved?: {\n productsRemovedFromCatalog: string[];\n productsRemovedFromQuote?: {\n uid: string;\n name: string;\n sku: string;\n quantity: number;\n }[];\n };\n statuses?: {\n changes: {\n newStatus: string;\n oldStatus: string;\n }[];\n };\n total?: {\n newPrice: Currency;\n oldPrice: Currency;\n };\n };\n createdAt: string;\n uid: string;\n}\n\nexport enum NegotiableQuoteHistoryEntryChangeType {\n CREATED = 'CREATED',\n UPDATED = 'UPDATED',\n CLOSED = 'CLOSED',\n UPDATED_BY_SYSTEM = 'UPDATED_BY_SYSTEM',\n}\n\n// See: https://experienceleague.adobe.com/en/docs/commerce-admin/b2b/quotes/quotes#quote-status\nexport enum NegotiableQuoteStatus {\n NEW = 'NEW', // Currently not returned by the API, but is used to indicate a new quote\n SUBMITTED = 'SUBMITTED',\n PENDING = 'PENDING',\n UPDATED = 'UPDATED',\n OPEN = 'OPEN',\n ORDERED = 'ORDERED',\n CLOSED = 'CLOSED',\n DECLINED = 'DECLINED',\n EXPIRED = 'EXPIRED',\n DRAFT = 'DRAFT',\n}\n\nexport interface PaginationInfo {\n currentPage: number;\n totalCount: number;\n pageSize: number;\n startItem: number;\n endItem: number;\n totalPages: number;\n pageSizeOptions?: number[];\n}\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\nimport {\n NegotiableQuoteListEntry,\n NegotiableQuoteModel,\n NegotiableQuotesListModel,\n NegotiableQuoteStatus,\n PaginationInfo,\n ShippingAddress,\n} from '@/quote-management/data/models/negotiable-quote-model';\nimport { state } from '@/quote-management/lib/state';\n\n// Base helper that transforms a single quote object directly\nfunction transformSingleQuote(quote: any): NegotiableQuoteModel {\n const isQuoteNew = isNewQuote(quote);\n return {\n uid: quote.uid,\n name: quote.name,\n createdAt: quote.created_at,\n updatedAt: quote.updated_at,\n expirationDate: quote.expiration_date,\n status: isQuoteNew ? NegotiableQuoteStatus.NEW : quote.status,\n salesRepName: quote.sales_rep_name,\n buyer: {\n firstname: quote.buyer.firstname,\n lastname: quote.buyer.lastname,\n },\n templateName: quote.template_name,\n comments: quote.comments?.map((comment: any) => {\n const baseComment: any = {\n uid: comment.uid,\n createdAt: comment.created_at,\n author: {\n firstname: comment.author.firstname,\n lastname: comment.author.lastname,\n },\n text: comment.text,\n };\n\n if (\n Array.isArray(comment.attachments) &&\n comment.attachments.length > 0\n ) {\n baseComment.attachments = comment.attachments.map((a: any) => ({\n name: a.name,\n url: a.url,\n }));\n }\n\n return baseComment;\n }),\n prices: quote.prices && {\n subtotalExcludingTax: quote.prices.subtotal_excluding_tax && {\n value: quote.prices.subtotal_excluding_tax.value,\n currency: quote.prices.subtotal_excluding_tax.currency,\n },\n subtotalIncludingTax: quote.prices.subtotal_including_tax && {\n value: quote.prices.subtotal_including_tax.value,\n currency: quote.prices.subtotal_including_tax.currency,\n },\n subtotalWithDiscountExcludingTax: quote.prices\n .subtotal_with_discount_excluding_tax && {\n value: quote.prices.subtotal_with_discount_excluding_tax.value,\n currency: quote.prices.subtotal_with_discount_excluding_tax.currency,\n },\n appliedTaxes: quote.prices.applied_taxes?.map((tax: any) => ({\n amount: { value: tax.amount.value, currency: tax.amount.currency },\n label: tax.label,\n })),\n grandTotal: quote.prices.grand_total && {\n value: quote.prices.grand_total.value,\n currency: quote.prices.grand_total.currency,\n },\n },\n history: quote.history?.map((history: any) => ({\n uid: history.uid,\n createdAt: history.created_at,\n author: {\n firstname: history.author.firstname,\n lastname: history.author.lastname,\n },\n changeType: history.change_type,\n changes: {\n commentAdded: history.changes?.comment_added && {\n comment: history.changes.comment_added.comment,\n },\n customChanges: history.changes?.custom_changes && {\n new_value: history.changes.custom_changes.new_value,\n old_value: history.changes.custom_changes.old_value,\n title: history.changes.custom_changes.title,\n },\n expiration: history.changes?.expiration && {\n newExpiration: history.changes.expiration.new_expiration,\n oldExpiration: history.changes.expiration.old_expiration,\n },\n productsRemoved: history.changes?.products_removed && {\n productsRemovedFromCatalog:\n history.changes.products_removed.products_removed_from_catalog ||\n [],\n productsRemovedFromQuote:\n history.changes.products_removed.products_removed_from_quote || [],\n },\n statuses: history.changes?.statuses && {\n changes:\n history.changes.statuses.changes?.map((change: any) => ({\n newStatus: change.new_status,\n oldStatus: change.old_status,\n })) || [],\n },\n total: history.changes?.total &&\n history.changes.total.new_price &&\n history.changes.total.old_price && {\n newPrice: {\n value: history.changes.total.new_price.value,\n currency: history.changes.total.new_price.currency,\n },\n oldPrice: {\n value: history.changes.total.old_price.value,\n currency: history.changes.total.old_price.currency,\n },\n },\n },\n })),\n items:\n quote.items?.map((item: any) => ({\n product: {\n uid: item.product.uid,\n sku: item.product.sku,\n name: item.product.name,\n },\n catalogDiscount: {\n amountOff: item.prices.catalog_discount.amount_off,\n percentOff: item.prices.catalog_discount.percent_off,\n },\n discounts:\n item.prices?.discounts?.map((discount: any) => ({\n label: discount.label,\n value: discount.value,\n amount: {\n value: discount.amount.value,\n currency: discount.amount.currency,\n },\n })) ?? [],\n stockStatus: item.product.stock_status,\n quantity: item.quantity,\n prices: {\n originalItemPrice: {\n value: item.prices.original_item_price.value,\n currency: item.prices.original_item_price.currency,\n },\n rowTotal: {\n value: item.prices.row_total.value,\n currency: item.prices.row_total.currency,\n },\n },\n noteFromBuyer: item.note_from_buyer?.map((note: any) => ({\n createdAt: note.created_at,\n creatorId: note.creator_id,\n creatorType: note.creator_type,\n negotiableQuoteItemUid: note.negotiable_quote_item_uid,\n note: note.note,\n noteUid: note.note_uid,\n })),\n noteFromSeller: item.note_from_seller?.map((note: any) => ({\n createdAt: note.created_at,\n creatorId: note.creator_id,\n creatorType: note.creator_type,\n negotiableQuoteItemUid: note.negotiable_quote_item_uid,\n note: note.note,\n noteUid: note.note_uid,\n })),\n configurableOptions: item.configurable_options?.map((option: any) => ({\n optionLabel: option.option_label,\n valueLabel: option.value_label,\n })),\n bundleOptions: item.bundle_options?.map((option: any) => ({\n label: option.label,\n values: option.values.map((value: any) => ({\n label: value.label,\n quantity: value.quantity,\n originalPrice: {\n value: value.original_price.value,\n currency: value.original_price.currency,\n },\n price: {\n value: value.priceV2.value,\n currency: value.priceV2.currency,\n },\n })),\n })),\n })) || [],\n shippingAddresses: quote.shipping_addresses?.map((address: any) => {\n const shippingAddress: ShippingAddress = {\n uid: address.uid,\n firstname: address.firstname,\n lastname: address.lastname,\n company: address.company,\n street: address.street,\n city: address.city,\n postcode: address.postcode,\n country: {\n code: address.country.code,\n label: address.country.label,\n },\n telephone: address.telephone,\n };\n\n if (address.region) {\n shippingAddress.region = {\n code: address.region.code,\n label: address.region.label,\n regionId: address.region.region_id,\n };\n }\n\n return shippingAddress;\n }),\n canCheckout:\n ['UPDATED', 'DECLINED'].includes(quote.status) &&\n state.permissions.checkoutQuote &&\n quote.shipping_addresses?.length > 0,\n canSendForReview:\n (isQuoteNew ||\n ['DRAFT', 'UPDATED', 'DECLINED', 'EXPIRED', 'NEW'].includes(\n quote.status\n )) &&\n state.permissions.editQuote,\n };\n}\n\nexport function transformQuote(quoteData: any): NegotiableQuoteModel | null {\n if (!quoteData) {\n return null;\n }\n\n return transformSingleQuote(quoteData);\n}\n\n// quote is new if it has a status of SUBMITTED and there is no history entry that\n// has a change_type of UPDATED with a non-empty array of status changes\nfunction isNewQuote(quote: any): boolean {\n return (\n quote.status === 'SUBMITTED' &&\n !(quote.history ?? []).some(\n (history: any) =>\n history.change_type === 'UPDATED' &&\n (history.changes?.statuses?.changes ?? []).length > 0\n )\n );\n}\n\nfunction transformNegotiableQuoteListEntry(\n quote: any\n): NegotiableQuoteListEntry {\n const isQuoteNew = isNewQuote(quote);\n return {\n uid: quote.uid,\n name: quote.name,\n createdAt: quote.created_at,\n updatedAt: quote.updated_at,\n status: isQuoteNew ? NegotiableQuoteStatus.NEW : quote.status,\n buyer: {\n firstname: quote.buyer.firstname,\n lastname: quote.buyer.lastname,\n },\n templateName: quote.template_name,\n prices: {\n grandTotal: {\n value: quote.prices.grand_total.value,\n currency: quote.prices.grand_total.currency,\n },\n },\n };\n}\n\nexport function transformNegotiableQuotesList(\n quotesData: any\n): NegotiableQuotesListModel | null {\n if (!quotesData) {\n return null;\n }\n\n const transformedModel = {\n items:\n quotesData.items\n ?.filter((quote: any) => quote?.uid)\n .map(transformNegotiableQuoteListEntry) || [],\n pageInfo: {\n currentPage: quotesData.page_info.current_page,\n pageSize: quotesData.page_info.page_size,\n totalPages: quotesData.page_info.total_pages,\n },\n totalCount: quotesData.total_count,\n sortFields: quotesData.sort_fields\n ? {\n default: quotesData.sort_fields.default,\n options: quotesData.sort_fields.options,\n }\n : undefined,\n };\n\n // Calculate pagination info\n const paginationInfo = transformPaginationInfo(transformedModel);\n\n return {\n ...transformedModel,\n paginationInfo: paginationInfo || undefined,\n };\n}\n\nexport function transformPaginationInfo(\n quotesData: NegotiableQuotesListModel | null\n): PaginationInfo | null {\n if (!quotesData?.pageInfo || !quotesData.totalCount) {\n return null;\n }\n\n const { currentPage, pageSize, totalPages } = quotesData.pageInfo;\n const { totalCount } = quotesData;\n\n const startItem = totalCount > 0 ? (currentPage - 1) * pageSize + 1 : 0;\n const endItem = Math.min(currentPage * pageSize, totalCount);\n\n const pageSizeOptions = [20, 30, 50, 100, 200]; // Default page size options\n\n return {\n currentPage,\n totalCount,\n pageSize,\n startItem,\n endItem,\n totalPages,\n pageSizeOptions,\n };\n}\n\n// TODO: Check if admin has this configuration\nexport const getDefaultPageSizeOptions = () => [20, 30, 50, 100, 200];\n","import { FetchGraphQL } from '@adobe-commerce/fetch-graphql';\n\nexport const {\n setEndpoint,\n setFetchGraphQlHeader,\n removeFetchGraphQlHeader,\n setFetchGraphQlHeaders,\n fetchGraphQl,\n getConfig,\n} = new FetchGraphQL().getMethods();\n"],"names":["DEFAULT_PERMISSIONS","_state","state","target","key","value","NegotiableQuoteStatus","transformSingleQuote","quote","isQuoteNew","isNewQuote","_a","comment","baseComment","a","_b","tax","_c","history","_d","_e","_f","change","_g","item","discount","note","option","address","shippingAddress","transformQuote","quoteData","transformNegotiableQuoteListEntry","transformNegotiableQuotesList","quotesData","transformedModel","paginationInfo","transformPaginationInfo","currentPage","pageSize","totalPages","totalCount","startItem","endItem","getDefaultPageSizeOptions","setEndpoint","setFetchGraphQlHeader","removeFetchGraphQlHeader","setFetchGraphQlHeaders","fetchGraphQl","getConfig","FetchGraphQL"],"mappings":"+DAWO,MAAMA,EAAsB,CAC/B,aAAc,GACd,UAAW,GACX,YAAa,GACb,cAAe,EACnB,EAEMC,EAAgB,CAClB,cAAe,GACf,YAAaD,CACjB,EAGaE,EAAQ,IAAI,MAAMD,EAAQ,CACnC,IAAK,CAACE,EAAQC,IACHD,EAAOC,CAAkB,EAEpC,IAAK,CAACD,EAAQC,EAAKC,KACfF,EAAOC,CAAkB,EAAIC,EACtB,GAEf,CAAC,ECmLM,IAAKC,GAAAA,IACVA,EAAA,IAAM,MACNA,EAAA,UAAY,YACZA,EAAA,QAAU,UACVA,EAAA,QAAU,UACVA,EAAA,KAAO,OACPA,EAAA,QAAU,UACVA,EAAA,OAAS,SACTA,EAAA,SAAW,WACXA,EAAA,QAAU,UACVA,EAAA,MAAQ,QAVEA,IAAAA,GAAA,CAAA,CAAA,ECxLZ,SAASC,EAAqBC,EAAkC,iBAC9D,MAAMC,EAAaC,EAAWF,CAAK,EACnC,MAAO,CACL,IAAKA,EAAM,IACX,KAAMA,EAAM,KACZ,UAAWA,EAAM,WACjB,UAAWA,EAAM,WACjB,eAAgBA,EAAM,gBACtB,OAAQC,EAAaH,EAAsB,IAAME,EAAM,OACvD,aAAcA,EAAM,eACpB,MAAO,CACL,UAAWA,EAAM,MAAM,UACvB,SAAUA,EAAM,MAAM,QAAA,EAExB,aAAcA,EAAM,cACpB,UAAUG,EAAAH,EAAM,WAAN,YAAAG,EAAgB,IAAKC,GAAiB,CAC9C,MAAMC,EAAmB,CACvB,IAAKD,EAAQ,IACb,UAAWA,EAAQ,WACnB,OAAQ,CACN,UAAWA,EAAQ,OAAO,UAC1B,SAAUA,EAAQ,OAAO,QAAA,EAE3B,KAAMA,EAAQ,IAAA,EAGhB,OACE,MAAM,QAAQA,EAAQ,WAAW,GACjCA,EAAQ,YAAY,OAAS,IAE7BC,EAAY,YAAcD,EAAQ,YAAY,IAAKE,IAAY,CAC7D,KAAMA,EAAE,KACR,IAAKA,EAAE,GAAA,EACP,GAGGD,CACT,GACA,OAAQL,EAAM,QAAU,CACtB,qBAAsBA,EAAM,OAAO,wBAA0B,CAC3D,MAAOA,EAAM,OAAO,uBAAuB,MAC3C,SAAUA,EAAM,OAAO,uBAAuB,QAAA,EAEhD,qBAAsBA,EAAM,OAAO,wBAA0B,CAC3D,MAAOA,EAAM,OAAO,uBAAuB,MAC3C,SAAUA,EAAM,OAAO,uBAAuB,QAAA,EAEhD,iCAAkCA,EAAM,OACrC,sCAAwC,CACzC,MAAOA,EAAM,OAAO,qCAAqC,MACzD,SAAUA,EAAM,OAAO,qCAAqC,QAAA,EAE9D,cAAcO,EAAAP,EAAM,OAAO,gBAAb,YAAAO,EAA4B,IAAKC,IAAc,CAC3D,OAAQ,CAAE,MAAOA,EAAI,OAAO,MAAO,SAAUA,EAAI,OAAO,QAAA,EACxD,MAAOA,EAAI,KAAA,IAEb,WAAYR,EAAM,OAAO,aAAe,CACtC,MAAOA,EAAM,OAAO,YAAY,MAChC,SAAUA,EAAM,OAAO,YAAY,QAAA,CACrC,EAEF,SAASS,EAAAT,EAAM,UAAN,YAAAS,EAAe,IAAKC,GAAA,mBAAkB,OAC7C,IAAKA,EAAQ,IACb,UAAWA,EAAQ,WACnB,OAAQ,CACN,UAAWA,EAAQ,OAAO,UAC1B,SAAUA,EAAQ,OAAO,QAAA,EAE3B,WAAYA,EAAQ,YACpB,QAAS,CACP,eAAcP,EAAAO,EAAQ,UAAR,YAAAP,EAAiB,gBAAiB,CAC9C,QAASO,EAAQ,QAAQ,cAAc,OAAA,EAEzC,gBAAeH,EAAAG,EAAQ,UAAR,YAAAH,EAAiB,iBAAkB,CAChD,UAAWG,EAAQ,QAAQ,eAAe,UAC1C,UAAWA,EAAQ,QAAQ,eAAe,UAC1C,MAAOA,EAAQ,QAAQ,eAAe,KAAA,EAExC,aAAYD,EAAAC,EAAQ,UAAR,YAAAD,EAAiB,aAAc,CACzC,cAAeC,EAAQ,QAAQ,WAAW,eAC1C,cAAeA,EAAQ,QAAQ,WAAW,cAAA,EAE5C,kBAAiBC,EAAAD,EAAQ,UAAR,YAAAC,EAAiB,mBAAoB,CACpD,2BACED,EAAQ,QAAQ,iBAAiB,+BACjC,CAAA,EACF,yBACEA,EAAQ,QAAQ,iBAAiB,6BAA+B,CAAA,CAAC,EAErE,WAAUE,EAAAF,EAAQ,UAAR,YAAAE,EAAiB,WAAY,CACrC,UACEC,EAAAH,EAAQ,QAAQ,SAAS,UAAzB,YAAAG,EAAkC,IAAKC,IAAiB,CACtD,UAAWA,EAAO,WAClB,UAAWA,EAAO,UAAA,MACb,CAAA,CAAC,EAEZ,QAAOC,EAAAL,EAAQ,UAAR,YAAAK,EAAiB,QACtBL,EAAQ,QAAQ,MAAM,WACtBA,EAAQ,QAAQ,MAAM,WAAa,CACjC,SAAU,CACR,MAAOA,EAAQ,QAAQ,MAAM,UAAU,MACvC,SAAUA,EAAQ,QAAQ,MAAM,UAAU,QAAA,EAE5C,SAAU,CACR,MAAOA,EAAQ,QAAQ,MAAM,UAAU,MACvC,SAAUA,EAAQ,QAAQ,MAAM,UAAU,QAAA,CAC5C,CACF,CACJ,IAEF,QACEC,EAAAX,EAAM,QAAN,YAAAW,EAAa,IAAKK,GAAA,iBAAe,OAC/B,QAAS,CACP,IAAKA,EAAK,QAAQ,IAClB,IAAKA,EAAK,QAAQ,IAClB,KAAMA,EAAK,QAAQ,IAAA,EAErB,gBAAiB,CACf,UAAWA,EAAK,OAAO,iBAAiB,WACxC,WAAYA,EAAK,OAAO,iBAAiB,WAAA,EAE3C,YACET,GAAAJ,EAAAa,EAAK,SAAL,YAAAb,EAAa,YAAb,YAAAI,EAAwB,IAAKU,IAAmB,CAC9C,MAAOA,EAAS,MAChB,MAAOA,EAAS,MAChB,OAAQ,CACN,MAAOA,EAAS,OAAO,MACvB,SAAUA,EAAS,OAAO,QAAA,CAC5B,MACK,CAAA,EACT,YAAaD,EAAK,QAAQ,aAC1B,SAAUA,EAAK,SACf,OAAQ,CACN,kBAAmB,CACjB,MAAOA,EAAK,OAAO,oBAAoB,MACvC,SAAUA,EAAK,OAAO,oBAAoB,QAAA,EAE5C,SAAU,CACR,MAAOA,EAAK,OAAO,UAAU,MAC7B,SAAUA,EAAK,OAAO,UAAU,QAAA,CAClC,EAEF,eAAeP,EAAAO,EAAK,kBAAL,YAAAP,EAAsB,IAAKS,IAAe,CACvD,UAAWA,EAAK,WAChB,UAAWA,EAAK,WAChB,YAAaA,EAAK,aAClB,uBAAwBA,EAAK,0BAC7B,KAAMA,EAAK,KACX,QAASA,EAAK,QAAA,IAEhB,gBAAgBP,EAAAK,EAAK,mBAAL,YAAAL,EAAuB,IAAKO,IAAe,CACzD,UAAWA,EAAK,WAChB,UAAWA,EAAK,WAChB,YAAaA,EAAK,aAClB,uBAAwBA,EAAK,0BAC7B,KAAMA,EAAK,KACX,QAASA,EAAK,QAAA,IAEhB,qBAAqBN,EAAAI,EAAK,uBAAL,YAAAJ,EAA2B,IAAKO,IAAiB,CACpE,YAAaA,EAAO,aACpB,WAAYA,EAAO,WAAA,IAErB,eAAeN,EAAAG,EAAK,iBAAL,YAAAH,EAAqB,IAAKM,IAAiB,CACxD,MAAOA,EAAO,MACd,OAAQA,EAAO,OAAO,IAAKtB,IAAgB,CACzC,MAAOA,EAAM,MACb,SAAUA,EAAM,SAChB,cAAe,CACb,MAAOA,EAAM,eAAe,MAC5B,SAAUA,EAAM,eAAe,QAAA,EAEjC,MAAO,CACL,MAAOA,EAAM,QAAQ,MACrB,SAAUA,EAAM,QAAQ,QAAA,CAC1B,EACA,CAAA,GACF,MACG,CAAA,EACT,mBAAmBe,EAAAZ,EAAM,qBAAN,YAAAY,EAA0B,IAAKQ,GAAiB,CACjE,MAAMC,EAAmC,CACvC,IAAKD,EAAQ,IACb,UAAWA,EAAQ,UACnB,SAAUA,EAAQ,SAClB,QAASA,EAAQ,QACjB,OAAQA,EAAQ,OAChB,KAAMA,EAAQ,KACd,SAAUA,EAAQ,SAClB,QAAS,CACP,KAAMA,EAAQ,QAAQ,KACtB,MAAOA,EAAQ,QAAQ,KAAA,EAEzB,UAAWA,EAAQ,SAAA,EAGrB,OAAIA,EAAQ,SACVC,EAAgB,OAAS,CACvB,KAAMD,EAAQ,OAAO,KACrB,MAAOA,EAAQ,OAAO,MACtB,SAAUA,EAAQ,OAAO,SAAA,GAItBC,CACT,GACA,YACE,CAAC,UAAW,UAAU,EAAE,SAASrB,EAAM,MAAM,GAC7CN,EAAM,YAAY,iBAClBmB,EAAAb,EAAM,qBAAN,YAAAa,EAA0B,QAAS,EACrC,kBACGZ,GACC,CAAC,QAAS,UAAW,WAAY,UAAW,KAAK,EAAE,SACjDD,EAAM,MAAA,IAEVN,EAAM,YAAY,SAAA,CAExB,CAEO,SAAS4B,EAAeC,EAA6C,CAC1E,OAAKA,EAIExB,EAAqBwB,CAAS,EAH5B,IAIX,CAIA,SAASrB,EAAWF,EAAqB,CACvC,OACEA,EAAM,SAAW,aACjB,EAAEA,EAAM,SAAW,CAAA,GAAI,KACpBU,GAAA,SACC,OAAAA,EAAQ,cAAgB,cACvBH,GAAAJ,EAAAO,EAAQ,UAAR,YAAAP,EAAiB,WAAjB,YAAAI,EAA2B,UAAW,CAAA,GAAI,OAAS,EAAA,CAG5D,CAEA,SAASiB,EACPxB,EAC0B,CAC1B,MAAMC,EAAaC,EAAWF,CAAK,EACnC,MAAO,CACL,IAAKA,EAAM,IACX,KAAMA,EAAM,KACZ,UAAWA,EAAM,WACjB,UAAWA,EAAM,WACjB,OAAQC,EAAaH,EAAsB,IAAME,EAAM,OACvD,MAAO,CACL,UAAWA,EAAM,MAAM,UACvB,SAAUA,EAAM,MAAM,QAAA,EAExB,aAAcA,EAAM,cACpB,OAAQ,CACN,WAAY,CACV,MAAOA,EAAM,OAAO,YAAY,MAChC,SAAUA,EAAM,OAAO,YAAY,QAAA,CACrC,CACF,CAEJ,CAEO,SAASyB,EACdC,EACkC,OAClC,GAAI,CAACA,EACH,OAAO,KAGT,MAAMC,EAAmB,CACvB,QACExB,EAAAuB,EAAW,QAAX,YAAAvB,EACI,OAAQH,GAAeA,GAAA,YAAAA,EAAO,KAC/B,IAAIwB,KAAsC,CAAA,EAC/C,SAAU,CACR,YAAaE,EAAW,UAAU,aAClC,SAAUA,EAAW,UAAU,UAC/B,WAAYA,EAAW,UAAU,WAAA,EAEnC,WAAYA,EAAW,YACvB,WAAYA,EAAW,YACnB,CACE,QAASA,EAAW,YAAY,QAChC,QAASA,EAAW,YAAY,OAAA,EAElC,MAAA,EAIAE,EAAiBC,EAAwBF,CAAgB,EAE/D,MAAO,CACL,GAAGA,EACH,eAAgBC,GAAkB,MAAA,CAEtC,CAEO,SAASC,EACdH,EACuB,CACvB,GAAI,EAACA,GAAA,MAAAA,EAAY,WAAY,CAACA,EAAW,WACvC,OAAO,KAGT,KAAM,CAAE,YAAAI,EAAa,SAAAC,EAAU,WAAAC,CAAA,EAAeN,EAAW,SACnD,CAAE,WAAAO,GAAeP,EAEjBQ,EAAYD,EAAa,GAAKH,EAAc,GAAKC,EAAW,EAAI,EAChEI,EAAU,KAAK,IAAIL,EAAcC,EAAUE,CAAU,EAI3D,MAAO,CACL,YAAAH,EACA,WAAAG,EACA,SAAAF,EACA,UAAAG,EACA,QAAAC,EACA,WAAAH,EACA,gBATsB,CAAC,GAAI,GAAI,GAAI,IAAK,GAAG,CAS3C,CAEJ,CAGO,MAAMI,EAA4B,IAAM,CAAC,GAAI,GAAI,GAAI,IAAK,GAAG,EC7VvD,CACX,YAAAC,EACA,sBAAAC,EACA,yBAAAC,EACA,uBAAAC,EACA,aAAAC,EACA,UAAAC,CACF,EAAI,IAAIC,EAAA,EAAe,WAAA"}
|
package/chunks/sendForReview.js
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/*! Copyright 2025 Adobe
|
|
2
|
-
All Rights Reserved. */
|
|
3
|
-
import{f as E,t as c}from"./fetch-graphql.js";import{events as d}from"@dropins/tools/event-bus.js";import{N as q}from"./NegotiableQuoteFragment.js";const I=`
|
|
4
|
-
mutation SEND_NEGOTIABLE_QUOTE_FOR_REVIEW_MUTATION(
|
|
5
|
-
$quoteUid: ID!
|
|
6
|
-
$comment: NegotiableQuoteCommentInput
|
|
7
|
-
) {
|
|
8
|
-
sendNegotiableQuoteForReview(
|
|
9
|
-
input: {
|
|
10
|
-
quote_uid: $quoteUid
|
|
11
|
-
comment: $comment
|
|
12
|
-
}
|
|
13
|
-
) {
|
|
14
|
-
quote {
|
|
15
|
-
...NegotiableQuoteFragment
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
${q}
|
|
20
|
-
`,p=async a=>{const{quoteUid:e,comment:t}=a;if(!e)throw new Error("Quote UID is required");return E(I,{variables:{quoteUid:e,comment:t?{comment:t}:null}}).then(r=>{var m,u;const{errors:n}=r;if(n){const i=n.map(s=>s.message).join("; ");throw new Error(`Failed to send quote for review: ${i}`)}const o=c((u=(m=r.data)==null?void 0:m.sendNegotiableQuoteForReview)==null?void 0:u.quote);if(!o)throw new Error("Failed to transform quote data: Invalid response structure");return d.emit("quote-management/quote-sent-for-review",{quote:o,input:{quoteUid:e,comment:t}}),o})};export{p as s};
|
|
21
|
-
//# sourceMappingURL=sendForReview.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sendForReview.js","sources":["/@dropins/storefront-quote-management/src/api/sendForReview/graphql/SendNegotiableQuoteForReviewMutation.ts","/@dropins/storefront-quote-management/src/api/sendForReview/sendForReview.ts"],"sourcesContent":["/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { NEGOTIABLE_QUOTE_FRAGMENT } from '@/quote-management/api/graphql/NegotiableQuoteFragment';\n\nexport const SEND_NEGOTIABLE_QUOTE_FOR_REVIEW_MUTATION = `\n mutation SEND_NEGOTIABLE_QUOTE_FOR_REVIEW_MUTATION(\n $quoteUid: ID!\n $comment: NegotiableQuoteCommentInput\n ) {\n sendNegotiableQuoteForReview(\n input: {\n quote_uid: $quoteUid\n comment: $comment\n }\n ) {\n quote {\n ...NegotiableQuoteFragment\n }\n }\n }\n ${NEGOTIABLE_QUOTE_FRAGMENT}\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 { fetchGraphQl } from '@/quote-management/api';\nimport { events } from '@adobe-commerce/event-bus';\nimport { SEND_NEGOTIABLE_QUOTE_FOR_REVIEW_MUTATION } from './graphql/SendNegotiableQuoteForReviewMutation';\nimport { NegotiableQuoteModel } from '@/quote-management/data/models/negotiable-quote-model';\nimport { transformQuote } from '@/quote-management/data/transforms';\n\nexport interface SendForReviewInput {\n quoteUid: string;\n comment?: string;\n}\n\nexport const sendForReview = async (\n input: SendForReviewInput\n): Promise<NegotiableQuoteModel | null> => {\n const { quoteUid, comment } = input;\n\n if (!quoteUid) {\n throw new Error('Quote UID is required');\n }\n\n // Build the comment object only if a comment is provided\n const commentInput = comment ? { comment } : null;\n\n return fetchGraphQl(SEND_NEGOTIABLE_QUOTE_FOR_REVIEW_MUTATION, {\n variables: {\n quoteUid,\n comment: commentInput,\n },\n }).then((response) => {\n const { errors } = response;\n\n if (errors) {\n // Provide more detailed error information\n const errorMessages = errors.map((error) => error.message).join('; ');\n throw new Error(`Failed to send quote for review: ${errorMessages}`);\n }\n\n // Transform the quote data\n const quoteData = transformQuote(\n response.data?.sendNegotiableQuoteForReview?.quote\n );\n\n if (!quoteData) {\n throw new Error(\n 'Failed to transform quote data: Invalid response structure'\n );\n }\n\n // Emit event with transformed quote data on success\n events.emit('quote-management/quote-sent-for-review', {\n quote: quoteData,\n input: { quoteUid, comment },\n });\n\n return quoteData;\n });\n};\n\n"],"names":["SEND_NEGOTIABLE_QUOTE_FOR_REVIEW_MUTATION","NEGOTIABLE_QUOTE_FRAGMENT","sendForReview","input","quoteUid","comment","fetchGraphQl","response","errors","errorMessages","error","quoteData","transformQuote","_b","_a","events"],"mappings":"oJAmBO,MAAMA,EAA4C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAgBrDC,CAAyB;AAAA,ECfhBC,EAAgB,MAC3BC,GACyC,CACzC,KAAM,CAAE,SAAAC,EAAU,QAAAC,CAAA,EAAYF,EAE9B,GAAI,CAACC,EACH,MAAM,IAAI,MAAM,uBAAuB,EAMzC,OAAOE,EAAaN,EAA2C,CAC7D,UAAW,CACT,SAAAI,EACA,QALiBC,EAAU,CAAE,QAAAA,CAAA,EAAY,IAKhC,CACX,CACD,EAAE,KAAME,GAAa,SACpB,KAAM,CAAE,OAAAC,GAAWD,EAEnB,GAAIC,EAAQ,CAEV,MAAMC,EAAgBD,EAAO,IAAKE,GAAUA,EAAM,OAAO,EAAE,KAAK,IAAI,EACpE,MAAM,IAAI,MAAM,oCAAoCD,CAAa,EAAE,CACrE,CAGA,MAAME,EAAYC,GAChBC,GAAAC,EAAAP,EAAS,OAAT,YAAAO,EAAe,+BAAf,YAAAD,EAA6C,KAAA,EAG/C,GAAI,CAACF,EACH,MAAM,IAAI,MACR,4DAAA,EAKJ,OAAAI,EAAO,KAAK,yCAA0C,CACpD,MAAOJ,EACP,MAAO,CAAE,SAAAP,EAAU,QAAAC,CAAA,CAAQ,CAC5B,EAEMM,CACT,CAAC,CACH"}
|