@dropins/storefront-quote-management 0.0.1-alpha3 → 0.0.1-alpha5

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 (50) hide show
  1. package/api/getQuoteData/getQuoteData.d.ts +10 -0
  2. package/api/getQuoteData/graphql/QuoteDataQuery.d.ts +2 -0
  3. package/api/getQuoteData/index.d.ts +10 -0
  4. package/api/graphql/NegotiableQuoteFragment.d.ts +1 -1
  5. package/api/index.d.ts +1 -0
  6. package/api/initialize/initialize.d.ts +1 -0
  7. package/api.js +16 -4
  8. package/api.js.map +1 -1
  9. package/chunks/RequestNegotiableQuoteForm.js +4 -0
  10. package/chunks/RequestNegotiableQuoteForm.js.map +1 -0
  11. package/chunks/requestNegotiableQuote.js +98 -37
  12. package/chunks/requestNegotiableQuote.js.map +1 -1
  13. package/components/ActionsBar/ActionsBar.d.ts +14 -0
  14. package/components/ActionsBar/index.d.ts +11 -0
  15. package/components/ItemsQuoted/ItemsQuoted.d.ts +9 -0
  16. package/components/ItemsQuoted/index.d.ts +11 -0
  17. package/components/ManageNegotiableQuote/ManageNegotiableQuote.d.ts +18 -0
  18. package/components/ManageNegotiableQuote/__fixtures__/ManageNegotiableQuoteProps.d.ts +4 -0
  19. package/components/ManageNegotiableQuote/index.d.ts +11 -0
  20. package/components/ProductListTable/ProductListTable.d.ts +13 -0
  21. package/components/ProductListTable/index.d.ts +11 -0
  22. package/components/QuotePricesSummary/QuotePricesSummary.d.ts +16 -0
  23. package/components/QuotePricesSummary/index.d.ts +11 -0
  24. package/components/TabbedContent/TabbedContent.d.ts +10 -0
  25. package/components/TabbedContent/index.d.ts +11 -0
  26. package/components/index.d.ts +6 -0
  27. package/containers/ItemsQuoted/ItemsQuoted.d.ts +25 -0
  28. package/containers/ItemsQuoted/index.d.ts +11 -0
  29. package/containers/ItemsQuoted.d.ts +3 -0
  30. package/containers/ItemsQuoted.js +4 -0
  31. package/containers/ItemsQuoted.js.map +1 -0
  32. package/containers/ManageNegotiableQuote/ManageNegotiableQuote.d.ts +48 -0
  33. package/containers/ManageNegotiableQuote/index.d.ts +11 -0
  34. package/containers/ManageNegotiableQuote.d.ts +3 -0
  35. package/containers/ManageNegotiableQuote.js +4 -0
  36. package/containers/ManageNegotiableQuote.js.map +1 -0
  37. package/containers/RequestNegotiableQuoteForm.js +1 -1
  38. package/containers/RequestNegotiableQuoteForm.js.map +1 -1
  39. package/containers/index.d.ts +2 -0
  40. package/data/models/__fixtures__/negotiableQuoteModel.d.ts +4 -0
  41. package/data/models/customer-model.d.ts +1 -0
  42. package/data/models/negotiable-quote-model.d.ts +28 -20
  43. package/data/transforms/__fixtures__/negotiableQuoteData.d.ts +100 -48
  44. package/data/transforms/transform-quote.d.ts +1 -1
  45. package/i18n/en_US.json.d.ts +54 -0
  46. package/lib/state.d.ts +1 -0
  47. package/package.json +1 -1
  48. package/render.js +4 -2
  49. package/render.js.map +1 -1
  50. package/types/state.types.d.ts +1 -0
@@ -1,56 +1,108 @@
1
- import { NegotiableQuoteModel } from '../../models/negotiable-quote-model';
2
-
3
- export declare const mockGraphQLResponse: {
4
- data: {
5
- requestNegotiableQuote: {
6
- quote: {
7
- uid: string;
8
- created_at: string;
9
- status: string;
10
- buyer: {
11
- firstname: string;
12
- lastname: string;
13
- };
14
- comments: {
15
- uid: string;
16
- created_at: string;
17
- author: {
18
- firstname: string;
19
- lastname: string;
20
- };
21
- }[];
22
- items: {
23
- product: {
24
- uid: string;
25
- sku: string;
26
- name: string;
27
- price_range: {
28
- maximum_price: {
29
- regular_price: {
30
- value: number;
31
- };
32
- };
33
- };
34
- };
35
- quantity: number;
36
- }[];
37
- prices: {
38
- subtotal_excluding_tax: {
39
- value: number;
40
- };
41
- subtotal_including_tax: {
42
- value: number;
43
- };
44
- subtotal_with_discount_excluding_tax: {
45
- value: number;
46
- };
47
- grand_total: {
1
+ export declare const mockQuoteData: {
2
+ uid: string;
3
+ name: string;
4
+ created_at: string;
5
+ status: string;
6
+ buyer: {
7
+ firstname: string;
8
+ lastname: string;
9
+ };
10
+ comments: {
11
+ uid: string;
12
+ created_at: string;
13
+ author: {
14
+ firstname: string;
15
+ lastname: string;
16
+ };
17
+ text: string;
18
+ }[];
19
+ items: {
20
+ product: {
21
+ name: string;
22
+ sku: string;
23
+ uid: string;
24
+ stock_status: string;
25
+ quantity: null;
26
+ price_range: {
27
+ maximum_price: {
28
+ regular_price: {
48
29
  value: number;
49
30
  };
50
31
  };
51
32
  };
52
33
  };
34
+ prices: {
35
+ price: {
36
+ currency: string;
37
+ value: number;
38
+ };
39
+ original_item_price: {
40
+ currency: string;
41
+ value: number;
42
+ };
43
+ original_row_total: {
44
+ currency: string;
45
+ value: number;
46
+ };
47
+ row_total: {
48
+ currency: string;
49
+ value: number;
50
+ };
51
+ catalog_discount: {
52
+ amount_off: number;
53
+ percent_off: number;
54
+ };
55
+ discounts: {
56
+ label: string;
57
+ value: number;
58
+ amount: {
59
+ value: number;
60
+ currency: string;
61
+ };
62
+ }[];
63
+ };
64
+ quantity: number;
65
+ }[];
66
+ history: {
67
+ uid: string;
68
+ created_at: string;
69
+ author: {
70
+ firstname: string;
71
+ lastname: string;
72
+ };
73
+ change_type: string;
74
+ changes: {
75
+ comment_added: {
76
+ comment: string;
77
+ };
78
+ statuses: {
79
+ changes: {
80
+ new_status: string;
81
+ old_status: null;
82
+ }[];
83
+ };
84
+ expiration: {
85
+ new_expiration: null;
86
+ old_expiration: null;
87
+ };
88
+ };
89
+ }[];
90
+ prices: {
91
+ subtotal_excluding_tax: {
92
+ currency: string;
93
+ value: number;
94
+ };
95
+ applied_taxes: {
96
+ amount: {
97
+ value: number;
98
+ currency: string;
99
+ };
100
+ label: string;
101
+ }[];
102
+ grand_total: {
103
+ currency: string;
104
+ value: number;
105
+ };
53
106
  };
54
107
  };
55
- export declare const expectedTransformedQuote: NegotiableQuoteModel;
56
108
  //# sourceMappingURL=negotiableQuoteData.d.ts.map
@@ -1,4 +1,4 @@
1
1
  import { NegotiableQuoteModel } from '../models/negotiable-quote-model';
2
2
 
3
- export declare function transformQuote(response: any): NegotiableQuoteModel | null;
3
+ export declare function transformQuote(quoteData: any): NegotiableQuoteModel | null;
4
4
  //# sourceMappingURL=transform-quote.d.ts.map
@@ -20,6 +20,60 @@ declare const _default: {
20
20
  "submitted": "Quote request submitted successfully!",
21
21
  "draftSaved": "Quote saved as draft successfully!"
22
22
  }
23
+ },
24
+ "Manage": {
25
+ "createdLabel": "Created:",
26
+ "salesRepLabel": "Sales Rep:",
27
+ "expiresLabel": "Expires:",
28
+ "actionsLabel": "Actions",
29
+ "actions": {
30
+ "remove": "Remove"
31
+ },
32
+ "bannerTitle": "Alert",
33
+ "bannerStatusMessages": {
34
+ "pending": "This quote is currently locked for editing. It will become available once released by the Merchant.",
35
+ "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."
36
+ },
37
+ "actionButtons": {
38
+ "close": "Close quote",
39
+ "delete": "Delete quote",
40
+ "print": "Print quote",
41
+ "createTemplate": "Create quote template",
42
+ "createCopy": "Create copy",
43
+ "sendForReview": "Send for review"
44
+ },
45
+ "shippingInformation": {
46
+ "title": "Shipping Information"
47
+ },
48
+ "quoteComments": {
49
+ "title": "Quote Comments",
50
+ "placeholder": "Add your comment"
51
+ },
52
+ "productListTable": {
53
+ "headers": {
54
+ "productName": "Product name",
55
+ "sku": "SKU",
56
+ "price": "Price",
57
+ "quantity": "Quantity",
58
+ "discount": "Discount",
59
+ "subtotal": "Subtotal",
60
+ "actions": "Actions"
61
+ },
62
+ "submitButton": "Update",
63
+ "actions": {
64
+ "editNoteToSeller": "Edit note to seller",
65
+ "remove": "Remove"
66
+ }
67
+ },
68
+ "quotePricesSummary": {
69
+ "subtotal": {
70
+ "excludingTax": "Quote Subtotal (excluding tax)"
71
+ },
72
+ "appliedTaxes": "Applied Taxes",
73
+ "grandTotal": {
74
+ "includingTax": "Quote Grand Total (including tax)"
75
+ }
76
+ }
23
77
  }
24
78
  }
25
79
  };
package/lib/state.d.ts CHANGED
@@ -4,6 +4,7 @@ export declare const DEFAULT_PERMISSIONS: {
4
4
  requestQuote: boolean;
5
5
  editQuote: boolean;
6
6
  deleteQuote: boolean;
7
+ checkoutQuote: boolean;
7
8
  };
8
9
  export declare const state: State;
9
10
  //# sourceMappingURL=state.d.ts.map
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name": "@dropins/storefront-quote-management", "version": "0.0.1-alpha3", "@dropins/tools": "^1.5.0-beta2", "license": "SEE LICENSE IN LICENSE.md"}
1
+ {"name": "@dropins/storefront-quote-management", "version": "0.0.1-alpha5", "@dropins/tools": "1.5.0-alpha3001", "license": "SEE LICENSE IN LICENSE.md"}
package/render.js CHANGED
@@ -1,5 +1,7 @@
1
1
  /*! Copyright 2025 Adobe
2
2
  All Rights Reserved. */
3
- (function(a,o){try{if(typeof document<"u"){const e=document.createElement("style"),n=o.styleId;for(const t in o.attributes)e.setAttribute(t,o.attributes[t]);e.setAttribute("data-dropin",n),e.appendChild(document.createTextNode(a));const r=document.querySelector('style[data-dropin="sdk"]');if(r)r.after(e);else{const t=document.querySelector('link[rel="stylesheet"], style');t?t.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)}",{styleId:"quote-management"});
4
- import{jsx as t}from"@dropins/tools/preact-jsx-runtime.js";import{Render as u}from"@dropins/tools/lib.js";import{useState as n,useEffect as m}from"@dropins/tools/preact-hooks.js";import{UIProvider as d}from"@dropins/tools/components.js";import{events as i}from"@dropins/tools/event-bus.js";const c={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!"}}},f={NegotiableQuote:c},l={default:f},q=({children:r})=>{const[o,a]=n("en_US");return m(()=>{const e=i.on("locale",s=>{a(s)},{eager:!0});return()=>{e==null||e.off()}},[]),t(d,{lang:o,langDefinitions:l,children:r})},S=new u(t(q,{}));export{S as render};
3
+ (function(o,a){try{if(typeof document<"u"){const e=document.createElement("style"),r=a.styleId;for(const t in a.attributes)e.setAttribute(t,a.attributes[t]);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 t=document.querySelector('link[rel="stylesheet"], style');t?t.before(e):document.head.append(e)}}}catch(e){console.error("dropin-styles (injectCodeFunction)",e)}})(`.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}}.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-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{padding:var(--spacing-xxsmall) var(--spacing-xsmall);min-width:150px}.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%}}
4
+ .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)}
5
+ .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{font:var(--type-body-1-font);letter-spacing:var(--type-body-1-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}.quote-management-items-quoted{display:flex;flex-direction:column;gap:var(--spacing-big)}`,{styleId:"quote-management"});
6
+ import{jsx as t}from"@dropins/tools/preact-jsx-runtime.js";import{Render as s}from"@dropins/tools/lib.js";import{useState as u,useEffect as i}from"@dropins/tools/preact-hooks.js";import{UIProvider as l}from"@dropins/tools/components.js";import{events as c}from"@dropins/tools/event-bus.js";const d={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:{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"},shippingInformation:{title:"Shipping Information"},quoteComments:{title:"Quote Comments",placeholder:"Add your comment"},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"}},quotePricesSummary:{subtotal:{excludingTax:"Quote Subtotal (excluding tax)"},appliedTaxes:"Applied Taxes",grandTotal:{includingTax:"Quote Grand Total (including tax)"}}}},m={NegotiableQuote:d},p={default:m},f=({children:o})=>{const[a,r]=u("en_US");return i(()=>{const e=c.on("locale",n=>{r(n)},{eager:!0});return()=>{e==null||e.off()}},[]),t(l,{lang:a,langDefinitions:p,children:o})},S=new s(t(f,{}));export{S as render};
5
7
  //# 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":"o3BASMA,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":["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":"miEASMA,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"}
@@ -4,6 +4,7 @@ export type State = {
4
4
  requestQuote: boolean;
5
5
  editQuote: boolean;
6
6
  deleteQuote: boolean;
7
+ checkoutQuote: boolean;
7
8
  };
8
9
  };
9
10
  //# sourceMappingURL=state.types.d.ts.map