@shopify/hydrogen-react 0.0.0-next-8ee1ffb → 0.0.0-next-541cac7

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 (89) hide show
  1. package/dist/browser-dev/ShopPayButton.mjs +1 -1
  2. package/dist/browser-dev/ShopPayButton.mjs.map +1 -1
  3. package/dist/browser-dev/ShopifyProvider.mjs +2 -11
  4. package/dist/browser-dev/ShopifyProvider.mjs.map +1 -1
  5. package/dist/browser-dev/cart-queries.mjs +0 -8
  6. package/dist/browser-dev/cart-queries.mjs.map +1 -1
  7. package/dist/browser-dev/index.mjs +1 -5
  8. package/dist/browser-dev/index.mjs.map +1 -1
  9. package/dist/browser-dev/{metafield-parser.mjs → parse-metafield.mjs} +16 -7
  10. package/dist/browser-dev/parse-metafield.mjs.map +1 -0
  11. package/dist/browser-prod/ShopPayButton.mjs +1 -1
  12. package/dist/browser-prod/ShopPayButton.mjs.map +1 -1
  13. package/dist/browser-prod/ShopifyProvider.mjs +2 -8
  14. package/dist/browser-prod/ShopifyProvider.mjs.map +1 -1
  15. package/dist/browser-prod/cart-queries.mjs +0 -8
  16. package/dist/browser-prod/cart-queries.mjs.map +1 -1
  17. package/dist/browser-prod/index.mjs +1 -5
  18. package/dist/browser-prod/index.mjs.map +1 -1
  19. package/dist/browser-prod/{metafield-parser.mjs → parse-metafield.mjs} +16 -7
  20. package/dist/browser-prod/parse-metafield.mjs.map +1 -0
  21. package/dist/node-dev/ShopPayButton.js +1 -1
  22. package/dist/node-dev/ShopPayButton.js.map +1 -1
  23. package/dist/node-dev/ShopPayButton.mjs +1 -1
  24. package/dist/node-dev/ShopPayButton.mjs.map +1 -1
  25. package/dist/node-dev/ShopifyProvider.js +2 -11
  26. package/dist/node-dev/ShopifyProvider.js.map +1 -1
  27. package/dist/node-dev/ShopifyProvider.mjs +2 -11
  28. package/dist/node-dev/ShopifyProvider.mjs.map +1 -1
  29. package/dist/node-dev/cart-queries.js +0 -8
  30. package/dist/node-dev/cart-queries.js.map +1 -1
  31. package/dist/node-dev/cart-queries.mjs +0 -8
  32. package/dist/node-dev/cart-queries.mjs.map +1 -1
  33. package/dist/node-dev/index.js +2 -6
  34. package/dist/node-dev/index.js.map +1 -1
  35. package/dist/node-dev/index.mjs +1 -5
  36. package/dist/node-dev/index.mjs.map +1 -1
  37. package/dist/node-dev/{metafield-parser.js → parse-metafield.js} +18 -9
  38. package/dist/node-dev/parse-metafield.js.map +1 -0
  39. package/dist/node-dev/{metafield-parser.mjs → parse-metafield.mjs} +16 -7
  40. package/dist/node-dev/parse-metafield.mjs.map +1 -0
  41. package/dist/node-prod/ShopPayButton.js +1 -1
  42. package/dist/node-prod/ShopPayButton.js.map +1 -1
  43. package/dist/node-prod/ShopPayButton.mjs +1 -1
  44. package/dist/node-prod/ShopPayButton.mjs.map +1 -1
  45. package/dist/node-prod/ShopifyProvider.js +2 -8
  46. package/dist/node-prod/ShopifyProvider.js.map +1 -1
  47. package/dist/node-prod/ShopifyProvider.mjs +2 -8
  48. package/dist/node-prod/ShopifyProvider.mjs.map +1 -1
  49. package/dist/node-prod/cart-queries.js +0 -8
  50. package/dist/node-prod/cart-queries.js.map +1 -1
  51. package/dist/node-prod/cart-queries.mjs +0 -8
  52. package/dist/node-prod/cart-queries.mjs.map +1 -1
  53. package/dist/node-prod/index.js +2 -6
  54. package/dist/node-prod/index.js.map +1 -1
  55. package/dist/node-prod/index.mjs +1 -5
  56. package/dist/node-prod/index.mjs.map +1 -1
  57. package/dist/node-prod/{metafield-parser.js → parse-metafield.js} +18 -9
  58. package/dist/node-prod/parse-metafield.js.map +1 -0
  59. package/dist/node-prod/{metafield-parser.mjs → parse-metafield.mjs} +16 -7
  60. package/dist/node-prod/parse-metafield.mjs.map +1 -0
  61. package/dist/types/ShopifyProvider.d.ts +1 -1
  62. package/dist/types/cart-queries.d.ts +1 -1
  63. package/dist/types/index.d.cts +1 -2
  64. package/dist/types/index.d.ts +1 -2
  65. package/dist/types/{metafield-parser.d.ts → parse-metafield.d.ts} +9 -5
  66. package/dist/umd/hydrogen-react.dev.js +45 -430
  67. package/dist/umd/hydrogen-react.dev.js.map +1 -1
  68. package/dist/umd/hydrogen-react.prod.js +16 -25
  69. package/dist/umd/hydrogen-react.prod.js.map +1 -1
  70. package/package.json +1 -1
  71. package/dist/browser-dev/Metafield.mjs +0 -301
  72. package/dist/browser-dev/Metafield.mjs.map +0 -1
  73. package/dist/browser-dev/metafield-parser.mjs.map +0 -1
  74. package/dist/browser-prod/Metafield.mjs +0 -288
  75. package/dist/browser-prod/Metafield.mjs.map +0 -1
  76. package/dist/browser-prod/metafield-parser.mjs.map +0 -1
  77. package/dist/node-dev/Metafield.js +0 -301
  78. package/dist/node-dev/Metafield.js.map +0 -1
  79. package/dist/node-dev/Metafield.mjs +0 -301
  80. package/dist/node-dev/Metafield.mjs.map +0 -1
  81. package/dist/node-dev/metafield-parser.js.map +0 -1
  82. package/dist/node-dev/metafield-parser.mjs.map +0 -1
  83. package/dist/node-prod/Metafield.js +0 -288
  84. package/dist/node-prod/Metafield.js.map +0 -1
  85. package/dist/node-prod/Metafield.mjs +0 -288
  86. package/dist/node-prod/Metafield.mjs.map +0 -1
  87. package/dist/node-prod/metafield-parser.js.map +0 -1
  88. package/dist/node-prod/metafield-parser.mjs.map +0 -1
  89. package/dist/types/Metafield.d.ts +0 -61
@@ -1,4 +1,4 @@
1
- (function(D,g){typeof exports=="object"&&typeof module<"u"?g(exports,require("react")):typeof define=="function"&&define.amd?define(["exports","react"],g):(D=typeof globalThis<"u"?globalThis:D||self,g(D.hydrogenreact={},D.React))})(this,function(D,g){"use strict";const Er=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function Sr(e){if(e&&e.__esModule)return e;const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,n.get?n:{enumerable:!0,get:()=>e[t]})}}return r.default=e,Object.freeze(r)}const C=Er(g),Ce=Sr(g);/*! *****************************************************************************
1
+ (function(L,h){typeof exports=="object"&&typeof module<"u"?h(exports,require("react")):typeof define=="function"&&define.amd?define(["exports","react"],h):(L=typeof globalThis<"u"?globalThis:L||self,h(L.hydrogenreact={},L.React))})(this,function(L,h){"use strict";const _t=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function gt(e){if(e&&e.__esModule)return e;const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const D=_t(h),Se=gt(h);/*! *****************************************************************************
2
2
  Copyright (c) Microsoft Corporation.
3
3
 
4
4
  Permission to use, copy, modify, and/or distribute this software for any
@@ -11,7 +11,7 @@
11
11
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
12
12
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
13
13
  PERFORMANCE OF THIS SOFTWARE.
14
- ***************************************************************************** */function Te(e,r){var t=typeof Symbol=="function"&&e[Symbol.iterator];if(!t)return e;var n,u,a=t.call(e),o=[];try{for(;(r===void 0||r-- >0)&&!(n=a.next()).done;)o.push(n.value)}catch(i){u={error:i}}finally{try{n&&!n.done&&(t=a.return)&&t.call(a)}finally{if(u)throw u.error}}return o}var Y;(function(e){e[e.NotStarted=0]="NotStarted",e[e.Running=1]="Running",e[e.Stopped=2]="Stopped"})(Y||(Y={}));var Ae={type:"xstate.init"};function le(e){return e===void 0?[]:[].concat(e)}function Z(e){return{type:"xstate.assign",assignment:e}}function Ne(e,r){return typeof(e=typeof e=="string"&&r&&r[e]?r[e]:e)=="string"?{type:e}:typeof e=="function"?{type:e.name,exec:e}:e}function ae(e){return function(r){return e===r}}function we(e){return typeof e=="string"?{type:e}:e}function Ie(e,r){return{value:e,context:r,actions:[],changed:!1,matches:ae(e)}}function Oe(e,r,t){var n=r,u=!1;return[e.filter(function(a){if(a.type==="xstate.assign"){u=!0;var o=Object.assign({},n);return typeof a.assignment=="function"?o=a.assignment(n,t):Object.keys(a.assignment).forEach(function(i){o[i]=typeof a.assignment[i]=="function"?a.assignment[i](n,t):a.assignment[i]}),n=o,!1}return!0}),n,u]}function De(e,r){r===void 0&&(r={});var t=Te(Oe(le(e.states[e.initial].entry).map(function(o){return Ne(o,r.actions)}),e.context,Ae),2),n=t[0],u=t[1],a={config:e,_options:r,initialState:{value:e.initial,actions:n,context:u,matches:ae(e.initial)},transition:function(o,i){var l,s,m=typeof o=="string"?{value:o,context:e.context}:o,c=m.value,_=m.context,y=we(i),E=e.states[c];if(E.on){var T=le(E.on[y.type]);try{for(var f=function(L){var G=typeof Symbol=="function"&&Symbol.iterator,k=G&&L[G],se=0;if(k)return k.call(L);if(L&&typeof L.length=="number")return{next:function(){return L&&se>=L.length&&(L=void 0),{value:L&&L[se++],done:!L}}};throw new TypeError(G?"Object is not iterable.":"Symbol.iterator is not defined.")}(T),S=f.next();!S.done;S=f.next()){var b=S.value;if(b===void 0)return Ie(c,_);var v=typeof b=="string"?{target:b}:b,d=v.target,h=v.actions,p=h===void 0?[]:h,w=v.cond,I=w===void 0?function(){return!0}:w,A=d===void 0,O=d!=null?d:c,M=e.states[O];if(I(_,y)){var $=Te(Oe((A?le(p):[].concat(E.exit,p,M.entry).filter(function(L){return L})).map(function(L){return Ne(L,a._options.actions)}),_,y),3),F=$[0],W=$[1],K=$[2],q=d!=null?d:c;return{value:q,context:W,actions:F,changed:d!==c||F.length>0||K,matches:ae(q)}}}}catch(L){l={error:L}}finally{try{S&&!S.done&&(s=f.return)&&s.call(f)}finally{if(l)throw l.error}}}return Ie(c,_)}};return a}var Le=function(e,r){return e.actions.forEach(function(t){var n=t.exec;return n&&n(e.context,r)})};function br(e){var r=e.initialState,t=Y.NotStarted,n=new Set,u={_machine:e,send:function(a){t===Y.Running&&(r=e.transition(r,a),Le(r,we(a)),n.forEach(function(o){return o(r)}))},subscribe:function(a){return n.add(a),a(r),{unsubscribe:function(){return n.delete(a)}}},start:function(a){if(a){var o=typeof a=="object"?a:{context:e.config.context,value:a};r={value:o.value,actions:[],context:o.context,matches:ae(o.value)}}else r=e.initialState;return t=Y.Running,Le(r,Ae),u},stop:function(){return t=Y.Stopped,n.clear(),u},get state(){return r},get status(){return t}};return u}var vr=g.useLayoutEffect,Ue={exports:{}},de={},fe={exports:{}},me={};/**
14
+ ***************************************************************************** */function pe(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var a,o,i=r.call(e),u=[];try{for(;(t===void 0||t-- >0)&&!(a=i.next()).done;)u.push(a.value)}catch(n){o={error:n}}finally{try{a&&!a.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return u}var Y;(function(e){e[e.NotStarted=0]="NotStarted",e[e.Running=1]="Running",e[e.Stopped=2]="Stopped"})(Y||(Y={}));var Ce={type:"xstate.init"};function se(e){return e===void 0?[]:[].concat(e)}function Z(e){return{type:"xstate.assign",assignment:e}}function be(e,t){return typeof(e=typeof e=="string"&&t&&t[e]?t[e]:e)=="string"?{type:e}:typeof e=="function"?{type:e.name,exec:e}:e}function re(e){return function(t){return e===t}}function ve(e){return typeof e=="string"?{type:e}:e}function Te(e,t){return{value:e,context:t,actions:[],changed:!1,matches:re(e)}}function Ae(e,t,r){var a=t,o=!1;return[e.filter(function(i){if(i.type==="xstate.assign"){o=!0;var u=Object.assign({},a);return typeof i.assignment=="function"?u=i.assignment(a,r):Object.keys(i.assignment).forEach(function(n){u[n]=typeof i.assignment[n]=="function"?i.assignment[n](a,r):i.assignment[n]}),a=u,!1}return!0}),a,o]}function we(e,t){t===void 0&&(t={});var r=pe(Ae(se(e.states[e.initial].entry).map(function(u){return be(u,t.actions)}),e.context,Ce),2),a=r[0],o=r[1],i={config:e,_options:t,initialState:{value:e.initial,actions:a,context:o,matches:re(e.initial)},transition:function(u,n){var d,c,f=typeof u=="string"?{value:u,context:e.context}:u,l=f.value,_=f.context,m=ve(n),E=e.states[l];if(E.on){var T=se(E.on[m.type]);try{for(var S=function(O){var G=typeof Symbol=="function"&&Symbol.iterator,k=G&&O[G],oe=0;if(k)return k.call(O);if(O&&typeof O.length=="number")return{next:function(){return O&&oe>=O.length&&(O=void 0),{value:O&&O[oe++],done:!O}}};throw new TypeError(G?"Object is not iterable.":"Symbol.iterator is not defined.")}(T),b=S.next();!b.done;b=S.next()){var C=b.value;if(C===void 0)return Te(l,_);var p=typeof C=="string"?{target:C}:C,s=p.target,y=p.actions,g=y===void 0?[]:y,w=p.cond,N=w===void 0?function(){return!0}:w,v=s===void 0,I=s!=null?s:l,R=e.states[I];if(N(_,m)){var V=pe(Ae((v?se(g):[].concat(E.exit,g,R.entry).filter(function(O){return O})).map(function(O){return be(O,i._options.actions)}),_,m),3),P=V[0],H=V[1],K=V[2],B=s!=null?s:l;return{value:B,context:H,actions:P,changed:s!==l||P.length>0||K,matches:re(B)}}}}catch(O){d={error:O}}finally{try{b&&!b.done&&(c=S.return)&&c.call(S)}finally{if(d)throw d.error}}}return Te(l,_)}};return i}var Ne=function(e,t){return e.actions.forEach(function(r){var a=r.exec;return a&&a(e.context,t)})};function Et(e){var t=e.initialState,r=Y.NotStarted,a=new Set,o={_machine:e,send:function(i){r===Y.Running&&(t=e.transition(t,i),Ne(t,ve(i)),a.forEach(function(u){return u(t)}))},subscribe:function(i){return a.add(i),i(t),{unsubscribe:function(){return a.delete(i)}}},start:function(i){if(i){var u=typeof i=="object"?i:{context:e.config.context,value:i};t={value:u.value,actions:[],context:u.context,matches:re(u.value)}}else t=e.initialState;return r=Y.Running,Ne(t,Ce),o},stop:function(){return r=Y.Stopped,a.clear(),o},get state(){return t},get status(){return r}};return o}var St=h.useLayoutEffect,Ie={exports:{}},ce={},le={exports:{}},de={};/**
15
15
  * @license React
16
16
  * use-sync-external-store-shim.production.min.js
17
17
  *
@@ -19,7 +19,7 @@
19
19
  *
20
20
  * This source code is licensed under the MIT license found in the
21
21
  * LICENSE file in the root directory of this source tree.
22
- */var ke;function Cr(){if(ke)return me;ke=1;var e=C.default;function r(c,_){return c===_&&(c!==0||1/c===1/_)||c!==c&&_!==_}var t=typeof Object.is=="function"?Object.is:r,n=e.useState,u=e.useEffect,a=e.useLayoutEffect,o=e.useDebugValue;function i(c,_){var y=_(),E=n({inst:{value:y,getSnapshot:_}}),T=E[0].inst,f=E[1];return a(function(){T.value=y,T.getSnapshot=_,l(T)&&f({inst:T})},[c,y,_]),u(function(){return l(T)&&f({inst:T}),c(function(){l(T)&&f({inst:T})})},[c]),o(y),y}function l(c){var _=c.getSnapshot;c=c.value;try{var y=_();return!t(c,y)}catch{return!0}}function s(c,_){return _()}var m=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?s:i;return me.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:m,me}var ye={};/**
22
+ */var Oe;function pt(){if(Oe)return de;Oe=1;var e=D.default;function t(l,_){return l===_&&(l!==0||1/l===1/_)||l!==l&&_!==_}var r=typeof Object.is=="function"?Object.is:t,a=e.useState,o=e.useEffect,i=e.useLayoutEffect,u=e.useDebugValue;function n(l,_){var m=_(),E=a({inst:{value:m,getSnapshot:_}}),T=E[0].inst,S=E[1];return i(function(){T.value=m,T.getSnapshot=_,d(T)&&S({inst:T})},[l,m,_]),o(function(){return d(T)&&S({inst:T}),l(function(){d(T)&&S({inst:T})})},[l]),u(m),m}function d(l){var _=l.getSnapshot;l=l.value;try{var m=_();return!r(l,m)}catch{return!0}}function c(l,_){return _()}var f=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?c:n;return de.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:f,de}var fe={};/**
23
23
  * @license React
24
24
  * use-sync-external-store-shim.development.js
25
25
  *
@@ -27,7 +27,7 @@
27
27
  *
28
28
  * This source code is licensed under the MIT license found in the
29
29
  * LICENSE file in the root directory of this source tree.
30
- */var Me;function Tr(){return Me||(Me=1,process.env.NODE_ENV!=="production"&&function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var e=C.default,r=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function t(v){{for(var d=arguments.length,h=new Array(d>1?d-1:0),p=1;p<d;p++)h[p-1]=arguments[p];n("error",v,h)}}function n(v,d,h){{var p=r.ReactDebugCurrentFrame,w=p.getStackAddendum();w!==""&&(d+="%s",h=h.concat([w]));var I=h.map(function(A){return String(A)});I.unshift("Warning: "+d),Function.prototype.apply.call(console[v],console,I)}}function u(v,d){return v===d&&(v!==0||1/v===1/d)||v!==v&&d!==d}var a=typeof Object.is=="function"?Object.is:u,o=e.useState,i=e.useEffect,l=e.useLayoutEffect,s=e.useDebugValue,m=!1,c=!1;function _(v,d,h){m||e.startTransition!==void 0&&(m=!0,t("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."));var p=d();if(!c){var w=d();a(p,w)||(t("The result of getSnapshot should be cached to avoid an infinite loop"),c=!0)}var I=o({inst:{value:p,getSnapshot:d}}),A=I[0].inst,O=I[1];return l(function(){A.value=p,A.getSnapshot=d,y(A)&&O({inst:A})},[v,p,d]),i(function(){y(A)&&O({inst:A});var M=function(){y(A)&&O({inst:A})};return v(M)},[v]),s(p),p}function y(v){var d=v.getSnapshot,h=v.value;try{var p=d();return!a(h,p)}catch{return!0}}function E(v,d,h){return d()}var T=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",f=!T,S=f?E:_,b=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:S;ye.useSyncExternalStore=b,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)}()),ye}var Re;function Pe(){return Re||(Re=1,function(e){process.env.NODE_ENV==="production"?e.exports=Cr():e.exports=Tr()}(fe)),fe.exports}/**
30
+ */var De;function Ct(){return De||(De=1,process.env.NODE_ENV!=="production"&&function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var e=D.default,t=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function r(p){{for(var s=arguments.length,y=new Array(s>1?s-1:0),g=1;g<s;g++)y[g-1]=arguments[g];a("error",p,y)}}function a(p,s,y){{var g=t.ReactDebugCurrentFrame,w=g.getStackAddendum();w!==""&&(s+="%s",y=y.concat([w]));var N=y.map(function(v){return String(v)});N.unshift("Warning: "+s),Function.prototype.apply.call(console[p],console,N)}}function o(p,s){return p===s&&(p!==0||1/p===1/s)||p!==p&&s!==s}var i=typeof Object.is=="function"?Object.is:o,u=e.useState,n=e.useEffect,d=e.useLayoutEffect,c=e.useDebugValue,f=!1,l=!1;function _(p,s,y){f||e.startTransition!==void 0&&(f=!0,r("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."));var g=s();if(!l){var w=s();i(g,w)||(r("The result of getSnapshot should be cached to avoid an infinite loop"),l=!0)}var N=u({inst:{value:g,getSnapshot:s}}),v=N[0].inst,I=N[1];return d(function(){v.value=g,v.getSnapshot=s,m(v)&&I({inst:v})},[p,g,s]),n(function(){m(v)&&I({inst:v});var R=function(){m(v)&&I({inst:v})};return p(R)},[p]),c(g),g}function m(p){var s=p.getSnapshot,y=p.value;try{var g=s();return!i(y,g)}catch{return!0}}function E(p,s,y){return s()}var T=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",S=!T,b=S?E:_,C=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:b;fe.useSyncExternalStore=C,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)}()),fe}var Le;function Ue(){return Le||(Le=1,function(e){process.env.NODE_ENV==="production"?e.exports=pt():e.exports=Ct()}(le)),le.exports}/**
31
31
  * @license React
32
32
  * use-sync-external-store-shim/with-selector.production.min.js
33
33
  *
@@ -35,7 +35,7 @@
35
35
  *
36
36
  * This source code is licensed under the MIT license found in the
37
37
  * LICENSE file in the root directory of this source tree.
38
- */var $e;function Ar(){if($e)return de;$e=1;var e=C.default,r=Pe();function t(s,m){return s===m&&(s!==0||1/s===1/m)||s!==s&&m!==m}var n=typeof Object.is=="function"?Object.is:t,u=r.useSyncExternalStore,a=e.useRef,o=e.useEffect,i=e.useMemo,l=e.useDebugValue;return de.useSyncExternalStoreWithSelector=function(s,m,c,_,y){var E=a(null);if(E.current===null){var T={hasValue:!1,value:null};E.current=T}else T=E.current;E=i(function(){function S(p){if(!b){if(b=!0,v=p,p=_(p),y!==void 0&&T.hasValue){var w=T.value;if(y(w,p))return d=w}return d=p}if(w=d,n(v,p))return w;var I=_(p);return y!==void 0&&y(w,I)?w:(v=p,d=I)}var b=!1,v,d,h=c===void 0?null:c;return[function(){return S(m())},h===null?void 0:function(){return S(h())}]},[m,c,_,y]);var f=u(s,E[0],E[1]);return o(function(){T.hasValue=!0,T.value=f},[f]),l(f),f},de}var he={};/**
38
+ */var ke;function bt(){if(ke)return ce;ke=1;var e=D.default,t=Ue();function r(c,f){return c===f&&(c!==0||1/c===1/f)||c!==c&&f!==f}var a=typeof Object.is=="function"?Object.is:r,o=t.useSyncExternalStore,i=e.useRef,u=e.useEffect,n=e.useMemo,d=e.useDebugValue;return ce.useSyncExternalStoreWithSelector=function(c,f,l,_,m){var E=i(null);if(E.current===null){var T={hasValue:!1,value:null};E.current=T}else T=E.current;E=n(function(){function b(g){if(!C){if(C=!0,p=g,g=_(g),m!==void 0&&T.hasValue){var w=T.value;if(m(w,g))return s=w}return s=g}if(w=s,a(p,g))return w;var N=_(g);return m!==void 0&&m(w,N)?w:(p=g,s=N)}var C=!1,p,s,y=l===void 0?null:l;return[function(){return b(f())},y===null?void 0:function(){return b(y())}]},[f,l,_,m]);var S=o(c,E[0],E[1]);return u(function(){T.hasValue=!0,T.value=S},[S]),d(S),S},ce}var ye={};/**
39
39
  * @license React
40
40
  * use-sync-external-store-shim/with-selector.development.js
41
41
  *
@@ -43,7 +43,7 @@
43
43
  *
44
44
  * This source code is licensed under the MIT license found in the
45
45
  * LICENSE file in the root directory of this source tree.
46
- */var Ve;function Nr(){return Ve||(Ve=1,process.env.NODE_ENV!=="production"&&function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var e=C.default,r=Pe();function t(m,c){return m===c&&(m!==0||1/m===1/c)||m!==m&&c!==c}var n=typeof Object.is=="function"?Object.is:t,u=r.useSyncExternalStore,a=e.useRef,o=e.useEffect,i=e.useMemo,l=e.useDebugValue;function s(m,c,_,y,E){var T=a(null),f;T.current===null?(f={hasValue:!1,value:null},T.current=f):f=T.current;var S=i(function(){var h=!1,p,w,I=function($){if(!h){h=!0,p=$;var F=y($);if(E!==void 0&&f.hasValue){var W=f.value;if(E(W,F))return w=W,W}return w=F,F}var K=p,q=w;if(n(K,$))return q;var L=y($);return E!==void 0&&E(q,L)?q:(p=$,w=L,L)},A=_===void 0?null:_,O=function(){return I(c())},M=A===null?void 0:function(){return I(A())};return[O,M]},[c,_,y,E]),b=S[0],v=S[1],d=u(m,b,v);return o(function(){f.hasValue=!0,f.value=d},[d]),l(d),d}he.useSyncExternalStoreWithSelector=s,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)}()),he}(function(e){process.env.NODE_ENV==="production"?e.exports=Ar():e.exports=Nr()})(Ue);function wr(e){var r=Ce.useRef();return r.current||(r.current={v:e()}),r.current.v}var Fe=globalThis&&globalThis.__read||function(e,r){var t=typeof Symbol=="function"&&e[Symbol.iterator];if(!t)return e;var n=t.call(e),u,a=[],o;try{for(;(r===void 0||r-- >0)&&!(u=n.next()).done;)a.push(u.value)}catch(i){o={error:i}}finally{try{u&&!u.done&&(t=n.return)&&t.call(n)}finally{if(o)throw o.error}}return a};function Ir(e){return e}var Or=function(e){var r;return e.subscribe(function(t){r=t}).unsubscribe(),r};function Dr(e,r){var t=g.useRef();if(process.env.NODE_ENV!=="production"){var n=Fe(g.useState(e),1),u=n[0];e!==u&&console.warn("Machine given to `useMachine` has changed between renders. This is not supported and might lead to unexpected results.\nPlease make sure that you pass the same Machine as argument each time.")}var a=Fe(wr(function(){var s=[],m=br(De(e.config,r||e._options)),c=m.send;return m.send=function(_){if(m.status===Y.NotStarted){s.push(_);return}c(_),t.current=m.state},[m,s]}),2),o=a[0],i=a[1];vr(function(){r&&(o._machine._options=r)});var l=Ur(o);return g.useEffect(function(){return o.start(t.current),i.forEach(o.send),t.current=o.state,function(){o.stop()}},[]),l}var Lr=function(e,r){return r.changed===!1};function Ur(e){var r=g.useCallback(function(){return Or(e)},[e]),t=g.useCallback(function(u){var a=e.subscribe(u).unsubscribe;return a},[e]),n=Ue.exports.useSyncExternalStoreWithSelector(t,r,r,Ir,Lr);return[n,e.send,e]}function x(e){if(!e){const r=`flattenConnection(): needs a 'connection' to flatten, but received '${e}' instead`;return console.error(r),[]}return e.nodes?e.nodes:e.edges?e.edges.map(r=>{if(!(r!=null&&r.node))throw new Error("Connection edges must contain nodes");return r.node}):[]}const kr=e=>`
46
+ */var Re;function vt(){return Re||(Re=1,process.env.NODE_ENV!=="production"&&function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var e=D.default,t=Ue();function r(f,l){return f===l&&(f!==0||1/f===1/l)||f!==f&&l!==l}var a=typeof Object.is=="function"?Object.is:r,o=t.useSyncExternalStore,i=e.useRef,u=e.useEffect,n=e.useMemo,d=e.useDebugValue;function c(f,l,_,m,E){var T=i(null),S;T.current===null?(S={hasValue:!1,value:null},T.current=S):S=T.current;var b=n(function(){var y=!1,g,w,N=function(V){if(!y){y=!0,g=V;var P=m(V);if(E!==void 0&&S.hasValue){var H=S.value;if(E(H,P))return w=H,H}return w=P,P}var K=g,B=w;if(a(K,V))return B;var O=m(V);return E!==void 0&&E(B,O)?B:(g=V,w=O,O)},v=_===void 0?null:_,I=function(){return N(l())},R=v===null?void 0:function(){return N(v())};return[I,R]},[l,_,m,E]),C=b[0],p=b[1],s=o(f,C,p);return u(function(){S.hasValue=!0,S.value=s},[s]),d(s),s}ye.useSyncExternalStoreWithSelector=c,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)}()),ye}(function(e){process.env.NODE_ENV==="production"?e.exports=bt():e.exports=vt()})(Ie);function Tt(e){var t=Se.useRef();return t.current||(t.current={v:e()}),t.current.v}var $e=globalThis&&globalThis.__read||function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var a=r.call(e),o,i=[],u;try{for(;(t===void 0||t-- >0)&&!(o=a.next()).done;)i.push(o.value)}catch(n){u={error:n}}finally{try{o&&!o.done&&(r=a.return)&&r.call(a)}finally{if(u)throw u.error}}return i};function At(e){return e}var wt=function(e){var t;return e.subscribe(function(r){t=r}).unsubscribe(),t};function Nt(e,t){var r=h.useRef();if(process.env.NODE_ENV!=="production"){var a=$e(h.useState(e),1),o=a[0];e!==o&&console.warn("Machine given to `useMachine` has changed between renders. This is not supported and might lead to unexpected results.\nPlease make sure that you pass the same Machine as argument each time.")}var i=$e(Tt(function(){var c=[],f=Et(we(e.config,t||e._options)),l=f.send;return f.send=function(_){if(f.status===Y.NotStarted){c.push(_);return}l(_),r.current=f.state},[f,c]}),2),u=i[0],n=i[1];St(function(){t&&(u._machine._options=t)});var d=Ot(u);return h.useEffect(function(){return u.start(r.current),n.forEach(u.send),r.current=u.state,function(){u.stop()}},[]),d}var It=function(e,t){return t.changed===!1};function Ot(e){var t=h.useCallback(function(){return wt(e)},[e]),r=h.useCallback(function(o){var i=e.subscribe(o).unsubscribe;return i},[e]),a=Ie.exports.useSyncExternalStoreWithSelector(r,t,t,At,It);return[a,e.send,e]}function q(e){if(!e){const t=`flattenConnection(): needs a 'connection' to flatten, but received '${e}' instead`;return console.error(t),[]}return e.nodes?e.nodes:e.edges?e.edges.map(t=>{if(!(t!=null&&t.node))throw new Error("Connection edges must contain nodes");return t.node}):[]}const Dt=e=>`
47
47
  mutation CartLineAdd(
48
48
  $cartId: ID!
49
49
  $lines: [CartLineInput!]!
@@ -58,7 +58,7 @@
58
58
  }
59
59
 
60
60
  ${e}
61
- `,Mr=e=>`
61
+ `,Lt=e=>`
62
62
  mutation CartCreate(
63
63
  $input: CartInput!
64
64
  $numCartLines: Int = 250
@@ -72,7 +72,7 @@
72
72
  }
73
73
 
74
74
  ${e}
75
- `,Rr=e=>`
75
+ `,Ut=e=>`
76
76
  mutation CartLineRemove(
77
77
  $cartId: ID!
78
78
  $lines: [ID!]!
@@ -87,7 +87,7 @@
87
87
  }
88
88
 
89
89
  ${e}
90
- `,Pr=e=>`
90
+ `,kt=e=>`
91
91
  mutation CartLineUpdate(
92
92
  $cartId: ID!
93
93
  $lines: [CartLineUpdateInput!]!
@@ -102,7 +102,7 @@
102
102
  }
103
103
 
104
104
  ${e}
105
- `,$r=e=>`
105
+ `,Rt=e=>`
106
106
  mutation CartNoteUpdate(
107
107
  $cartId: ID!
108
108
  $note: String
@@ -117,7 +117,7 @@
117
117
  }
118
118
 
119
119
  ${e}
120
- `,Vr=e=>`
120
+ `,$t=e=>`
121
121
  mutation CartBuyerIdentityUpdate(
122
122
  $cartId: ID!
123
123
  $buyerIdentity: CartBuyerIdentityInput!
@@ -132,7 +132,7 @@
132
132
  }
133
133
 
134
134
  ${e}
135
- `,Fr=e=>`
135
+ `,Vt=e=>`
136
136
  mutation CartAttributesUpdate(
137
137
  $attributes: [AttributeInput!]!
138
138
  $cartId: ID!
@@ -147,7 +147,7 @@
147
147
  }
148
148
 
149
149
  ${e}
150
- `,xr=e=>`
150
+ `,Mt=e=>`
151
151
  mutation CartDiscountCodesUpdate(
152
152
  $cartId: ID!
153
153
  $discountCodes: [String!]
@@ -162,7 +162,7 @@
162
162
  }
163
163
 
164
164
  ${e}
165
- `,jr=e=>`
165
+ `,Pt=e=>`
166
166
  query CartQuery(
167
167
  $id: ID!
168
168
  $numCartLines: Int = 250
@@ -174,7 +174,7 @@
174
174
  }
175
175
 
176
176
  ${e}
177
- `,Br=`
177
+ `,Ft=`
178
178
  fragment CartFragment on Cart {
179
179
  id
180
180
  checkoutUrl
@@ -217,17 +217,9 @@
217
217
  compareAtPrice {
218
218
  ...MoneyFragment
219
219
  }
220
- # @deprecated remove in next major
221
- compareAtPriceV2 {
222
- ...MoneyFragment
223
- }
224
220
  price {
225
221
  ...MoneyFragment
226
222
  }
227
- # @deprecated remove in next major
228
- priceV2 {
229
- ...MoneyFragment
230
- }
231
223
  requiresShipping
232
224
  title
233
225
  image {
@@ -282,6 +274,5 @@
282
274
  width
283
275
  height
284
276
  }
285
- `,J="2023-01",xe=new Set,qr=e=>{xe.has(e)||(console.warn(e),xe.add(e))};function Hr({storeDomain:e,privateStorefrontToken:r,publicStorefrontToken:t,storefrontApiVersion:n,contentType:u}){return n!==J&&qr(`StorefrontClient: The Storefront API version that you're using is different than the version this build of Hydrogen-UI is targeting. You may run into unexpected errors if these versions don't match. Received verion: "${n}"; expected version "${J}"`),{getShopifyDomain(a){var o;return`https://${(o=a==null?void 0:a.storeDomain)!=null?o:e}.myshopify.com`},getStorefrontApiUrl(a){var o,i;return`https://${(o=a==null?void 0:a.storeDomain)!=null?o:e}.myshopify.com/api/${(i=a==null?void 0:a.storefrontApiVersion)!=null?i:n}/graphql.json`},getPrivateTokenHeaders(a){var i,l,s;if(!r&&!(a!=null&&a.privateStorefrontToken))throw new Error("StorefrontClient: You did not pass in a 'privateStorefrontToken' while using 'getPrivateTokenHeaders()'");return{"content-type":((i=a==null?void 0:a.contentType)!=null?i:u)==="graphql"?"application/graphql":"application/json","X-SDK-Variant":"hydrogen-ui","X-SDK-Variant-Source":"react","X-SDK-Version":n,"Shopify-Storefront-Private-Token":(s=(l=a==null?void 0:a.privateStorefrontToken)!=null?l:r)!=null?s:"",...a!=null&&a.buyerIp?{"Shopify-Storefront-Buyer-IP":a.buyerIp}:{}}},getPublicTokenHeaders(a){var i,l,s,m;if(!t&&!(a!=null&&a.publicStorefrontToken))throw new Error("StorefrontClient: You did not pass in a 'publicStorefrontToken' while using 'getPublicTokenHeaders()'");const o=(l=(i=a==null?void 0:a.contentType)!=null?i:u)!=null?l:"json";return je(o,n,(m=(s=a==null?void 0:a.publicStorefrontToken)!=null?s:t)!=null?m:"")}}}function je(e,r,t){return{"content-type":e==="graphql"?"application/graphql":"application/json","X-SDK-Variant":"hydrogen-ui","X-SDK-Variant-Source":"react","X-SDK-Version":r,"X-Shopify-Storefront-Access-Token":t}}var Wr="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ShopifyProvider.tsx";const Be=g.createContext({storeDomain:"test",storefrontToken:"abc123",storefrontApiVersion:J,country:{isoCode:"US"},language:{isoCode:"EN"},locale:"EN-US",getStorefrontApiUrl(){return""},getPublicTokenHeaders(){return{}},getShopifyDomain(){return""}});function Yr({children:e,shopifyConfig:r}){if(!r)throw new Error("The 'shopifyConfig' prop must be passed to '<ShopifyProvider/>'");r.storefrontApiVersion!==J&&console.warn(`<ShopifyProvider/>: This version of Hydrogen-UI is built for Shopify's Storefront API version ${J}, but it looks like you're using version ${r.storefrontApiVersion}. There may be issues or bugs if you use a mismatched version of Hydrogen-UI and the Storefront API.`);const t=g.useMemo(()=>{const n=r.storeDomain.replace(/^https?:\/\//,"");n.includes(".myshopify.com");function u(a){var i;let o=(i=a==null?void 0:a.storeDomain)!=null?i:n;return o=o.replace(".myshopify.com",""),`https://${o}.myshopify.com`}return{...r,storeDomain:n,getPublicTokenHeaders(a){var o;return je(a.contentType,r.storefrontApiVersion,(o=a.storefrontToken)!=null?o:r.storefrontToken)},getShopifyDomain:u,getStorefrontApiUrl(a){var o,i,l;return(o=a==null?void 0:a.storeDomain)!=null&&o.includes(".myshopify.com"),`${u({storeDomain:(i=a==null?void 0:a.storeDomain)!=null?i:n})}/api/${(l=a==null?void 0:a.storefrontApiVersion)!=null?l:r.storefrontApiVersion}/graphql.json`}}},[r]);return C.default.createElement(Be.Provider,{value:t,__self:this,__source:{fileName:Wr,lineNumber:99,columnNumber:5}},e)}function X(){const e=g.useContext(Be);if(!e)throw new Error("'useShop()' must be a descendent of <ShopifyProvider/>");return e}const _e="shopifyCartId",Gr="Shopify-Storefront-Id",Zr="Shopify-Storefront-Y",zr="Shopify-Storefront-S",qe="_shopify_y",He="_shopify_s";var Kr=new Set(["domain","path","max-age","expires","samesite","secure","httponly"]);function Qr(e){let r={},t,n,u=0,a=e.split(/;\s*/g),o,i;for(;u<a.length;u++)if(n=a[u],t=n.indexOf("="),~t){if(o=n.substring(0,t++).trim(),i=n.substring(t).trim(),i[0]==='"'&&(i=i.substring(1,i.length-1)),~i.indexOf("%"))try{i=decodeURIComponent(i)}catch{}Kr.has(n=o.toLowerCase())?n==="expires"?r.expires=new Date(i):n==="max-age"?r.maxage=+i:r[n]=i:r[o]=i}else(o=n.trim().toLowerCase())&&(o==="httponly"||o==="secure")&&(r[o]=!0);return r}function Jr(){const{storefrontId:e,getPublicTokenHeaders:r,getStorefrontApiUrl:t}=X();return g.useCallback(({query:n,variables:u})=>{const a=r({contentType:"json"});e&&(a[Gr]=e);const o=Qr(document.cookie);return o[qe]&&o[He]&&(a[Zr]=o[qe],a[zr]=o[He]),fetch(t(),{method:"POST",headers:a,body:JSON.stringify({query:n.toString(),variables:u})}).then(i=>i.json()).catch(i=>({data:void 0,errors:i.toString()}))},[r,e,t])}function Xr({numCartLines:e,cartFragment:r,countryCode:t="US"}){const n=Jr(),u=g.useCallback(y=>n({query:jr(r),variables:{id:y,numCartLines:e,country:t}}),[n,r,e,t]),a=g.useCallback(y=>n({query:Mr(r),variables:{input:y,numCartLines:e,country:t}}),[r,t,n,e]),o=g.useCallback((y,E)=>n({query:kr(r),variables:{cartId:y,lines:E,numCartLines:e,country:t}}),[r,t,n,e]),i=g.useCallback((y,E)=>n({query:Pr(r),variables:{cartId:y,lines:E,numCartLines:e,country:t}}),[r,t,n,e]),l=g.useCallback((y,E)=>n({query:Rr(r),variables:{cartId:y,lines:E,numCartLines:e,country:t}}),[r,t,n,e]),s=g.useCallback((y,E)=>n({query:$r(r),variables:{cartId:y,note:E,numCartLines:e,country:t}}),[n,r,e,t]),m=g.useCallback((y,E)=>n({query:Vr(r),variables:{cartId:y,buyerIdentity:E,numCartLines:e,country:t}}),[r,t,n,e]),c=g.useCallback((y,E)=>n({query:Fr(r),variables:{cartId:y,attributes:E,numCartLines:e,country:t}}),[r,t,n,e]),_=g.useCallback((y,E)=>n({query:xr(r),variables:{cartId:y,discountCodes:E,numCartLines:e,country:t}}),[r,t,n,e]);return g.useMemo(()=>({cartFetch:u,cartCreate:a,cartLineAdd:o,cartLineUpdate:i,cartLineRemove:l,noteUpdate:s,buyerIdentityUpdate:m,cartAttributesUpdate:c,discountCodesUpdate:_,cartFragment:r}),[u,a,o,i,l,s,m,c,_,r])}function j(e,r){return{entry:[...(r==null?void 0:r.entryActions)||[],Z({lastValidCart:t=>t==null?void 0:t.cart}),"onCartActionEntry","onCartActionOptimisticUI",e],on:{RESOLVE:{target:(r==null?void 0:r.resolveTarget)||"idle",actions:[Z({prevCart:t=>t==null?void 0:t.lastValidCart,cart:(t,n)=>{var u;return(u=n==null?void 0:n.payload)==null?void 0:u.cart},rawCartResult:(t,n)=>{var u;return(u=n==null?void 0:n.payload)==null?void 0:u.rawCartResult},errors:t=>{}})]},ERROR:{target:(r==null?void 0:r.errorTarget)||"error",actions:[Z({prevCart:t=>t==null?void 0:t.lastValidCart,cart:t=>t==null?void 0:t.lastValidCart,errors:(t,n)=>{var u;return(u=n==null?void 0:n.payload)==null?void 0:u.errors}})]},CART_COMPLETED:{target:"cartCompleted",actions:Z({prevCart:t=>{},cart:t=>{},lastValidCart:t=>{},rawCartResult:t=>{},errors:t=>{}})}},exit:["onCartActionComplete",...(r==null?void 0:r.exitActions)||[]]}}const ee={CART_FETCH:{target:"cartFetching"},CART_CREATE:{target:"cartCreating"},CART_SET:{target:"idle",actions:[Z({rawCartResult:(e,r)=>r.payload.cart,cart:(e,r)=>ge(r.payload.cart)})]}},We={CARTLINE_ADD:{target:"cartLineAdding"},CARTLINE_UPDATE:{target:"cartLineUpdating"},CARTLINE_REMOVE:{target:"cartLineRemoving"},NOTE_UPDATE:{target:"noteUpdating"},BUYER_IDENTITY_UPDATE:{target:"buyerIdentityUpdating"},CART_ATTRIBUTES_UPDATE:{target:"cartAttributesUpdating"},DISCOUNT_CODES_UPDATE:{target:"discountCodesUpdating"}};function et(e){return De({id:"Cart",initial:e?"idle":"uninitialized",context:{cart:e&&ge(e)},states:{uninitialized:{on:ee},cartCompleted:{on:ee},initializationError:{on:ee},idle:{on:{...ee,...We}},error:{on:{...ee,...We}},cartFetching:j("cartFetchAction",{errorTarget:"initializationError"}),cartCreating:j("cartCreateAction",{errorTarget:"initializationError"}),cartLineRemoving:j("cartLineRemoveAction"),cartLineUpdating:j("cartLineUpdateAction"),cartLineAdding:j("cartLineAddAction"),noteUpdating:j("noteUpdateAction"),buyerIdentityUpdating:j("buyerIdentityUpdateAction"),cartAttributesUpdating:j("cartAttributesUpdateAction"),discountCodesUpdating:j("discountCodesUpdateAction")}})}function rt({numCartLines:e,onCartActionEntry:r,onCartActionOptimisticUI:t,onCartActionComplete:n,data:u,cartFragment:a,countryCode:o}){const{cartFetch:i,cartCreate:l,cartLineAdd:s,cartLineUpdate:m,cartLineRemove:c,noteUpdate:_,buyerIdentityUpdate:y,cartAttributesUpdate:E,discountCodesUpdate:T}=Xr({numCartLines:e,cartFragment:a,countryCode:o}),f=g.useMemo(()=>et(u),[u]),[S,b,v]=Dr(f,{actions:{cartFetchAction:async(d,h)=>{var A;if(h.type!=="CART_FETCH")return;const{data:p,errors:w}=await i((A=h==null?void 0:h.payload)==null?void 0:A.cartId),I=B(h,p==null?void 0:p.cart,w);b(I)},cartCreateAction:async(d,h)=>{var A;if(h.type!=="CART_CREATE")return;const{data:p,errors:w}=await l(h==null?void 0:h.payload),I=B(h,(A=p==null?void 0:p.cartCreate)==null?void 0:A.cart,w);b(I)},cartLineAddAction:async(d,h)=>{var A,O;if(h.type!=="CARTLINE_ADD"||!((A=d==null?void 0:d.cart)!=null&&A.id))return;const{data:p,errors:w}=await s(d.cart.id,h.payload.lines),I=B(h,(O=p==null?void 0:p.cartLinesAdd)==null?void 0:O.cart,w);b(I)},cartLineUpdateAction:async(d,h)=>{var A,O;if(h.type!=="CARTLINE_UPDATE"||!((A=d==null?void 0:d.cart)!=null&&A.id))return;const{data:p,errors:w}=await m(d.cart.id,h.payload.lines),I=B(h,(O=p==null?void 0:p.cartLinesUpdate)==null?void 0:O.cart,w);b(I)},cartLineRemoveAction:async(d,h)=>{var A,O;if(h.type!=="CARTLINE_REMOVE"||!((A=d==null?void 0:d.cart)!=null&&A.id))return;const{data:p,errors:w}=await c(d.cart.id,h.payload.lines),I=B(h,(O=p==null?void 0:p.cartLinesRemove)==null?void 0:O.cart,w);b(I)},noteUpdateAction:async(d,h)=>{var A,O;if(h.type!=="NOTE_UPDATE"||!((A=d==null?void 0:d.cart)!=null&&A.id))return;const{data:p,errors:w}=await _(d.cart.id,h.payload.note),I=B(h,(O=p==null?void 0:p.cartNoteUpdate)==null?void 0:O.cart,w);b(I)},buyerIdentityUpdateAction:async(d,h)=>{var A,O;if(h.type!=="BUYER_IDENTITY_UPDATE"||!((A=d==null?void 0:d.cart)!=null&&A.id))return;const{data:p,errors:w}=await y(d.cart.id,h.payload.buyerIdentity),I=B(h,(O=p==null?void 0:p.cartBuyerIdentityUpdate)==null?void 0:O.cart,w);b(I)},cartAttributesUpdateAction:async(d,h)=>{var A,O;if(h.type!=="CART_ATTRIBUTES_UPDATE"||!((A=d==null?void 0:d.cart)!=null&&A.id))return;const{data:p,errors:w}=await E(d.cart.id,h.payload.attributes),I=B(h,(O=p==null?void 0:p.cartAttributesUpdate)==null?void 0:O.cart,w);b(I)},discountCodesUpdateAction:async(d,h)=>{var A,O;if(h.type!=="DISCOUNT_CODES_UPDATE"||!((A=d==null?void 0:d.cart)!=null&&A.id))return;const{data:p,errors:w}=await T(d.cart.id,h.payload.discountCodes),I=B(h,(O=p==null?void 0:p.cartDiscountCodesUpdate)==null?void 0:O.cart,w);b(I)},...r&&{onCartActionEntry:(d,h)=>{tt(h)&&r(d,h)}},...t&&{onCartActionOptimisticUI:Z((d,h)=>t(d,h))},...n&&{onCartActionComplete:(d,h)=>{nt(h)&&n(d,h)}}}});return g.useMemo(()=>[S,b,v],[S,b,v])}function ge(e){var r;return{...e,lines:x(e==null?void 0:e.lines),note:(r=e.note)!=null?r:void 0}}function B(e,r,t){return t?{type:"ERROR",payload:{errors:t,cartActionEvent:e}}:r?{type:"RESOLVE",payload:{cart:ge(r),rawCartResult:r,cartActionEvent:e}}:{type:"CART_COMPLETED",payload:{cartActionEvent:e}}}function tt(e){return e.type==="CART_CREATE"||e.type==="CARTLINE_ADD"||e.type==="CARTLINE_UPDATE"||e.type==="CARTLINE_REMOVE"||e.type==="NOTE_UPDATE"||e.type==="BUYER_IDENTITY_UPDATE"||e.type==="CART_ATTRIBUTES_UPDATE"||e.type==="DISCOUNT_CODES_UPDATE"}function nt(e){return e.type==="RESOLVE"||e.type==="ERROR"||e.type==="CART_COMPLETED"}var at="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/CartProvider.tsx";const Ye=g.createContext(null);function ie(){const e=g.useContext(Ye);if(!e)throw new Error("Expected a Cart Context, but no Cart Context was found");return e}function it({children:e,numCartLines:r,onCreate:t,onLineAdd:n,onLineRemove:u,onLineUpdate:a,onNoteUpdate:o,onBuyerIdentityUpdate:i,onAttributesUpdate:l,onDiscountCodesUpdate:s,onCreateComplete:m,onLineAddComplete:c,onLineRemoveComplete:_,onLineUpdateComplete:y,onNoteUpdateComplete:E,onBuyerIdentityUpdateComplete:T,onAttributesUpdateComplete:f,onDiscountCodesUpdateComplete:S,data:b,cartFragment:v=Br,customerAccessToken:d,countryCode:h="US"}){var fr,mr,yr,hr,_r,gr,pr;h&&(h=h.toUpperCase());const[p,w]=g.useState(h),[I,A]=g.useState(d),O=g.useRef(!1);(p!==h||I!==d)&&(w(h),A(d),O.current=!1);const[M,$]=rt({numCartLines:r,data:b,cartFragment:v,countryCode:h,onCartActionEntry(N,R){try{switch(R.type){case"CART_CREATE":return t==null?void 0:t();case"CARTLINE_ADD":return n==null?void 0:n();case"CARTLINE_REMOVE":return u==null?void 0:u();case"CARTLINE_UPDATE":return a==null?void 0:a();case"NOTE_UPDATE":return o==null?void 0:o();case"BUYER_IDENTITY_UPDATE":return i==null?void 0:i();case"CART_ATTRIBUTES_UPDATE":return l==null?void 0:l();case"DISCOUNT_CODES_UPDATE":return s==null?void 0:s()}}catch(V){console.error("Cart entry action failed",V)}},onCartActionOptimisticUI(N,R){var V,H,te,ne;if(!N.cart)return{...N};switch(R.type){case"CARTLINE_REMOVE":return{...N,cart:{...N.cart,lines:(H=(V=N==null?void 0:N.cart)==null?void 0:V.lines)==null?void 0:H.filter(U=>(U==null?void 0:U.id)&&!R.payload.lines.includes(U==null?void 0:U.id))}};case"CARTLINE_UPDATE":return{...N,cart:{...N.cart,lines:(ne=(te=N==null?void 0:N.cart)==null?void 0:te.lines)==null?void 0:ne.map(U=>{const Q=R.payload.lines.find(({id:ce})=>ce===(U==null?void 0:U.id));return Q&&Q.quantity?{...U,quantity:Q.quantity}:U})}}}return{...N}},onCartActionComplete(N,R){const V=R.payload.cartActionEvent;try{switch(R.type){case"RESOLVE":switch(V.type){case"CART_CREATE":return m==null?void 0:m();case"CARTLINE_ADD":return c==null?void 0:c();case"CARTLINE_REMOVE":return _==null?void 0:_();case"CARTLINE_UPDATE":return y==null?void 0:y();case"NOTE_UPDATE":return E==null?void 0:E();case"BUYER_IDENTITY_UPDATE":return st(N,V)&&(O.current=!0),T==null?void 0:T();case"CART_ATTRIBUTES_UPDATE":return f==null?void 0:f();case"DISCOUNT_CODES_UPDATE":return S==null?void 0:S()}}}catch(H){console.error("onCartActionComplete failed",H)}}}),F=g.useRef(!1),W=M.matches("cartCompleted"),K=(M.value==="idle"||M.value==="error"||M.value==="cartCompleted")&&h!==((yr=(mr=(fr=M==null?void 0:M.context)==null?void 0:fr.cart)==null?void 0:mr.buyerIdentity)==null?void 0:yr.countryCode)&&!M.context.errors,q=g.useRef(!1);g.useEffect(()=>{if(!F.current&&!q.current){if(!b&&pe("localStorage")){q.current=!0;try{const N=window.localStorage.getItem(_e);N&&$({type:"CART_FETCH",payload:{cartId:N}})}catch(N){console.warn("error fetching cartId"),console.warn(N)}}F.current=!0}},[b,F,$]),g.useEffect(()=>{!K||O.current||$({type:"BUYER_IDENTITY_UPDATE",payload:{buyerIdentity:{countryCode:h,customerAccessToken:d}}})},[h,d,K,O,$]);const L=g.useCallback(N=>{if(!F.current)return console.warn("Cart isn't ready yet");$(N)},[$]);g.useEffect(()=>{var N,R,V;if(((R=(N=M==null?void 0:M.context)==null?void 0:N.cart)==null?void 0:R.id)&&pe("localStorage"))try{window.localStorage.setItem(_e,(V=M.context.cart)==null?void 0:V.id)}catch(H){console.warn("Failed to save cartId to localStorage",H)}},[(_r=(hr=M==null?void 0:M.context)==null?void 0:hr.cart)==null?void 0:_r.id]),g.useEffect(()=>{if(W&&pe("localStorage"))try{window.localStorage.removeItem(_e)}catch(N){console.warn("Failed to delete cartId from localStorage",N)}},[W]);const G=g.useCallback(N=>{var R,V;h&&!((R=N.buyerIdentity)!=null&&R.countryCode)&&(N.buyerIdentity==null&&(N.buyerIdentity={}),N.buyerIdentity.countryCode=h),d&&!((V=N.buyerIdentity)!=null&&V.customerAccessToken)&&(N.buyerIdentity==null&&(N.buyerIdentity={}),N.buyerIdentity.customerAccessToken=d),L({type:"CART_CREATE",payload:N})},[h,d,L]),k=ut(M),se=g.useMemo(()=>{var N,R,V,H,te,ne;return{...(R=(N=k==null?void 0:k.context)==null?void 0:N.cart)!=null?R:{lines:[],attributes:[]},status:ot(k.value),error:(V=k==null?void 0:k.context)==null?void 0:V.errors,totalQuantity:(ne=(te=(H=k==null?void 0:k.context)==null?void 0:H.cart)==null?void 0:te.totalQuantity)!=null?ne:0,cartCreate:G,linesAdd(U){var Q,ce;(ce=(Q=k==null?void 0:k.context)==null?void 0:Q.cart)!=null&&ce.id?L({type:"CARTLINE_ADD",payload:{lines:U}}):G({lines:U})},linesRemove(U){L({type:"CARTLINE_REMOVE",payload:{lines:U}})},linesUpdate(U){L({type:"CARTLINE_UPDATE",payload:{lines:U}})},noteUpdate(U){L({type:"NOTE_UPDATE",payload:{note:U}})},buyerIdentityUpdate(U){L({type:"BUYER_IDENTITY_UPDATE",payload:{buyerIdentity:U}})},cartAttributesUpdate(U){L({type:"CART_ATTRIBUTES_UPDATE",payload:{attributes:U}})},discountCodesUpdate(U){L({type:"DISCOUNT_CODES_UPDATE",payload:{discountCodes:U}})},cartFragment:v}},[G,(gr=k==null?void 0:k.context)==null?void 0:gr.cart,(pr=k==null?void 0:k.context)==null?void 0:pr.errors,k.value,v,L]);return C.default.createElement(Ye.Provider,{value:se,__self:this,__source:{fileName:at,lineNumber:424,columnNumber:5}},e)}function ot(e){switch(e){case"uninitialized":case"initializationError":return"uninitialized";case"idle":case"cartCompleted":case"error":return"idle";case"cartFetching":return"fetching";case"cartCreating":return"creating";case"cartLineAdding":case"cartLineRemoving":case"cartLineUpdating":case"noteUpdating":case"buyerIdentityUpdating":case"cartAttributesUpdating":case"discountCodesUpdating":return"updating"}}function ut(e){const[r,t]=g.useTransition(),[n,u]=g.useState(e),a=g.useRef(!1);r&&(a.current=!0);const o=g.useRef(!1);return!r&&a.current&&(o.current=!0),g.useEffect(()=>{t(()=>{o.current||u(e)})},[e]),o.current?e:n}function pe(e){let r;try{r=window[e];const t="__storage_test__";return r.setItem(t,t),r.removeItem(t),!0}catch(t){return t instanceof DOMException&&(t.code===22||t.code===1014||t.name==="QuotaExceededError"||t.name==="NS_ERROR_DOM_QUOTA_REACHED")&&r&&r.length!==0}}function st(e,r){var t,n;return r.payload.buyerIdentity.countryCode&&((n=(t=e.cart)==null?void 0:t.buyerIdentity)==null?void 0:n.countryCode)!==r.payload.buyerIdentity.countryCode}var ct="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ProductProvider.tsx";const Ge=g.createContext(null);function lt({children:e,data:r,initialVariantId:t}){const n=g.useMemo(()=>{var f;return x((f=r.variants)!=null?f:{})},[r.variants]);if(!ft(n))throw new Error("<ProductProvider/> requires 'product.variants.nodes' or 'product.variants.edges'");const u=g.useMemo(()=>dt(n),[n]),[a,o]=g.useState(()=>Ke(t,n)),[i,l]=g.useState(()=>Qe(a));g.useEffect(()=>{const f=Ke(t,n);o(f),l(Qe(f))},[t,n]);const s=g.useCallback((f,S)=>{l(b=>{const v={...b,[f]:S};return o(ze(n,v)),v})},[l,n]),m=g.useCallback((f,S)=>{var v;const b=ze(n,{...i,[f]:S});return(v=b==null?void 0:b.availableForSale)!=null?v:!0},[i,n]),c=g.useMemo(()=>{var f;return x((f=r.sellingPlanGroups)!=null?f:{}).map(S=>{var b;return{...S,sellingPlans:x((b=S==null?void 0:S.sellingPlans)!=null?b:{})}})},[r.sellingPlanGroups]),[_,y]=g.useState(void 0),E=g.useMemo(()=>{var f,S;if(!(!a||!_)){if(!((f=a.sellingPlanAllocations)!=null&&f.nodes)&&!((S=a.sellingPlanAllocations)!=null&&S.edges))throw new Error("<ProductProvider/>: You must include 'sellingPlanAllocations.nodes' or 'sellingPlanAllocations.edges' in your variants in order to calculate selectedSellingPlanAllocation");return x(a.sellingPlanAllocations).find(b=>{var v;return((v=b==null?void 0:b.sellingPlan)==null?void 0:v.id)===_.id})}},[a,_]),T=g.useMemo(()=>({variants:n,variantsConnection:r.variants,options:u,selectedVariant:a,setSelectedVariant:o,selectedOptions:i,setSelectedOption:s,setSelectedOptions:l,isOptionInStock:m,selectedSellingPlan:_,setSelectedSellingPlan:y,selectedSellingPlanAllocation:E,sellingPlanGroups:c,sellingPlanGroupsConnection:r.sellingPlanGroups}),[m,u,r.sellingPlanGroups,r.variants,i,_,E,a,c,s,n]);return C.default.createElement(Ge.Provider,{value:T,__self:this,__source:{fileName:ct,lineNumber:201,columnNumber:5}},e)}function Ze(){const e=g.useContext(Ge);if(!e)throw new Error("'useProduct' must be a child of <ProductProvider />");return e}function ze(e,r){var t,n;if(!(!e.length||((n=(t=e==null?void 0:e[0])==null?void 0:t.selectedOptions)==null?void 0:n.length)!==Object.keys(r).length))return e==null?void 0:e.find(u=>Object.entries(r).every(([a,o])=>{var i;return(i=u==null?void 0:u.selectedOptions)==null?void 0:i.some(l=>(l==null?void 0:l.name)===a&&(l==null?void 0:l.value)===o)}))}function dt(e){const r=e.reduce((t,n)=>{var u;if(!n.selectedOptions)throw new Error("'getOptions' requires 'variant.selectedOptions'");return(u=n==null?void 0:n.selectedOptions)==null||u.forEach(a=>{var o,i,l,s;t[(o=a==null?void 0:a.name)!=null?o:""]=t[(i=a==null?void 0:a.name)!=null?i:""]||new Set,t[(l=a==null?void 0:a.name)!=null?l:""].add((s=a==null?void 0:a.value)!=null?s:"")}),t},{});return Object.keys(r).map(t=>({name:t,values:Array.from(r[t])}))}function Ke(e,r){if(e){const t=r.find(n=>(n==null?void 0:n.id)===e);return t||console.warn("<ProductProvider/> received a 'initialVariantId' prop, but could not actually find a variant with that ID"),t}if(e===null)return null;if(e===void 0)return r.find(t=>t==null?void 0:t.availableForSale)||r[0]}function Qe(e){return e!=null&&e.selectedOptions?e.selectedOptions.reduce((r,t)=>{var n,u;return r[(n=t==null?void 0:t.name)!=null?n:""]=(u=t==null?void 0:t.value)!=null?u:"",r},{}):{}}function ft(e){return!(!e||!Array.isArray(e))}var mt="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/BaseButton.tsx";function Ee(e){const{as:r,onClick:t,defaultOnClick:n,children:u,buttonRef:a,...o}=e,i=g.useCallback(s=>{if(t){const m=t(s);if(typeof m=="boolean"&&m===!1||(s==null?void 0:s.defaultPrevented))return}n==null||n(s)},[n,t]),l=r||"button";return C.default.createElement(l,{ref:a,onClick:i,...o,__self:this,__source:{fileName:mt,lineNumber:59,columnNumber:5}},u)}var Je="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/AddToCartButton.tsx";function yt(e){var S;const[r,t]=g.useState(!1),{variantId:n,quantity:u=1,attributes:a,sellingPlanId:o,onClick:i,children:l,accessibleAddingToCartLabel:s,...m}=e,{status:c,linesAdd:_}=ie(),{selectedVariant:y}=Ze(),E=(S=n!=null?n:y==null?void 0:y.id)!=null?S:"",T=n===null||E===""||y===null||r||m.disabled;g.useEffect(()=>{r&&c==="idle"&&t(!1)},[c,r]);const f=g.useCallback(()=>{t(!0),_([{quantity:u,merchandiseId:E||"",attributes:a,sellingPlanId:o}])},[_,u,E,a,o]);return C.default.createElement(C.default.Fragment,null,C.default.createElement(Ee,{...m,disabled:T,onClick:i,defaultOnClick:f,__self:this,__source:{fileName:Je,lineNumber:71,columnNumber:7}},l),s?C.default.createElement("p",{style:{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"},role:"alert","aria-live":"assertive",__self:this,__source:{fileName:Je,lineNumber:80,columnNumber:9}},r?s:null):null)}var ht="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/BuyNowButton.tsx";function _t(e){const{cartCreate:r,checkoutUrl:t}=ie(),[n,u]=g.useState(!1),{quantity:a,variantId:o,onClick:i,attributes:l,children:s,...m}=e;g.useEffect(()=>{t&&(window.location.href=t)},[t]);const c=g.useCallback(()=>{u(!0),r({lines:[{quantity:a!=null?a:1,merchandiseId:o,attributes:l}]})},[r,a,o,l]);return C.default.createElement(Ee,{disabled:n!=null?n:m.disabled,...m,onClick:i,defaultOnClick:c,__self:this,__source:{fileName:ht,lineNumber:53,columnNumber:5}},s)}var gt="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/CartCheckoutButton.tsx";function pt(e){const[r,t]=g.useState(!1),{status:n,checkoutUrl:u}=ie(),{children:a,...o}=e;return g.useEffect(()=>{r&&u&&n==="idle"&&(window.location.href=u)},[r,n,u]),C.default.createElement(Ee,{...o,disabled:r||o.disabled,onClick:()=>t(!0),__self:this,__source:{fileName:gt,lineNumber:28,columnNumber:5}},a)}const Et={DateTime:"string",Decimal:"string",HTML:"string",URL:"string",Color:"string",UnsignedInt64:"string"};var St="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ExternalVideo.tsx";function Xe(e){var m,c;const{data:r,options:t,id:n=r.id,frameBorder:u="0",allow:a="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:o=!0,loading:i="lazy",...l}=e;if(!r.embedUrl)throw new Error("<ExternalVideo/> requires the 'embedUrl' property");let s=r.embedUrl;if(t){const _=new URL(r.embedUrl);for(const y of Object.keys(t))_.searchParams.set(y,t[y]);s=_.toString()}return C.default.createElement("iframe",{...l,id:n!=null?n:r.embedUrl,title:(c=(m=r.alt)!=null?m:r.id)!=null?c:"external video",frameBorder:u,allow:a,allowFullScreen:o,src:s,loading:i,__self:this,__source:{fileName:St,lineNumber:56,columnNumber:5}})}const bt=["cdn.shopify.com","cdn.shopifycdn.net","shopify-assets.shopifycdn.com","shopify-assets.shopifycdn.net"],vt=["spin.dev"],Ct=[...bt,...vt],re=[352,832,1200,1920,2560];function er({src:e,width:r,height:t,crop:n,scale:u}){const a=new URL(e),o=u!=null?u:1;if(r){let i;typeof r=="string"?i=(re[0]*o).toString():i=(Number(r)*o).toString(),a.searchParams.append("width",i)}return t&&typeof t=="number"&&a.searchParams.append("height",(t*o).toString()),n&&a.searchParams.append("crop",n),a.toString()}function rr(e){const r=new URL(e.src);return!Ct.some(n=>r.hostname.endsWith(n))||!e.width&&!e.height&&!e.crop&&!e.scale?e.src:er(e)}function Tt({data:e,loaderOptions:r,elementProps:t}){var u,a,o,i,l,s;let n=null;return(e==null?void 0:e.width)&&(e==null?void 0:e.height)&&(n=(e==null?void 0:e.width)/(e==null?void 0:e.height)),(r==null?void 0:r.width)||(r==null?void 0:r.height)?{width:(u=r==null?void 0:r.width)!=null?u:n&&typeof r.height=="number"?Math.round(n*r.height):null,height:(a=r==null?void 0:r.height)!=null?a:n&&typeof r.width=="number"?Math.round(n*r.width):null}:(t==null?void 0:t.width)||(t==null?void 0:t.height)?{width:(o=t==null?void 0:t.width)!=null?o:n&&typeof t.height=="number"?Math.round(n*t.height):null,height:(i=t==null?void 0:t.height)!=null?i:n&&typeof t.width=="number"?Math.round(n*t.width):null}:(e==null?void 0:e.width)||(e==null?void 0:e.height)?{width:(l=e==null?void 0:e.width)!=null?l:null,height:(s=e==null?void 0:e.height)!=null?s:null}:{width:null,height:null}}var At="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Image.tsx";function oe({data:e,width:r,height:t,loading:n,loader:u=rr,loaderOptions:a,widths:o,decoding:i="async",...l}){var E,T,f,S,b,v;if(!e.url){const d=`<Image/>: the 'data' prop requires the 'url' property. Image: ${(E=e.id)!=null?E:"no ID provided"}`;return console.error(d),null}const{width:s,height:m}=Tt({data:e,loaderOptions:a,elementProps:{width:r,height:t}});let c=e.url;if(u&&(c=u({...a,src:e.url,width:s,height:m}),typeof c!="string"||!c))throw new Error(`<Image/>: 'loader' did not return a valid string. Image: ${(T=e.id)!=null?T:e.url}`);const _=r&&s&&r<s?r:s,y=(f=l.srcSet)!=null?f:Nt({...a,widths:o,src:e.url,width:_,height:m,loader:u});return Ce.createElement("img",{id:(S=e.id)!=null?S:"",alt:(v=(b=e.altText)!=null?b:l.alt)!=null?v:"",loading:n!=null?n:"lazy",...l,src:c,width:s!=null?s:void 0,height:m!=null?m:void 0,srcSet:y,decoding:i,__self:this,__source:{fileName:At,lineNumber:150,columnNumber:5}})}function Nt({src:e,width:r,crop:t,scale:n,widths:u,loader:a,height:o}){const i=u&&Array.isArray(u);if(i&&u.some(c=>isNaN(c)))throw new Error(`<Image/>: the 'widths' must be an array of numbers. Image: ${e}`);let l=1;r&&o&&(l=Number(o)/Number(r));let s=i?u:re;!i&&r&&r<re[re.length-1]&&(s=re.filter(c=>c<=r));const m=a||er;return s.map(c=>`${m({src:e,width:c,height:t?Number(c)*l:void 0,crop:t,scale:n})} ${c}w`).join(", ")}var tr="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Video.tsx";function Se(e){var s,m;const{data:r,previewImageOptions:t,id:n=r.id,playsInline:u=!0,controls:a=!0,sourceProps:o={},...i}=e,l=rr({src:(m=(s=r.previewImage)==null?void 0:s.url)!=null?m:"",...t});if(!r.sources)throw new Error("<Video/> requires a 'data.sources' array");return C.default.createElement("video",{...i,id:n,playsInline:u,controls:a,poster:l,__self:this,__source:{fileName:tr,lineNumber:42,columnNumber:5}},r.sources.map(c=>{if(!((c==null?void 0:c.url)&&(c==null?void 0:c.mimeType)))throw new Error("<Video/> needs 'source.url' and 'source.mimeType'");return C.default.createElement("source",{...o,key:c.url,src:c.url,type:c.mimeType,__self:this,__source:{fileName:tr,lineNumber:54,columnNumber:11}})}))}const nr={};function wt(e,r){const t=nr[e];if(t)return t;const n=new Promise((u,a)=>{const o=document.createElement("script");r!=null&&r.module?o.type="module":o.type="text/javascript",o.src=e,o.onload=()=>{u(!0)},o.onerror=()=>{a(!1)},(r==null?void 0:r.in)==="head"?document.head.appendChild(o):document.body.appendChild(o)});return nr[e]=n,n}function ar(e,r){const[t,n]=g.useState("loading"),u=JSON.stringify(r);return g.useEffect(()=>{async function a(){try{n("loading"),await wt(e,r),n("done")}catch{n("error")}}a()},[e,u,r]),t}var It="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ModelViewer.tsx";function ir(e){var s,m,c,_,y,E,T,f,S,b,v;const[r,t]=g.useState(void 0),n=g.useCallback(d=>{t(d)},[]),{data:u,children:a,className:o,...i}=e,l=ar("https://unpkg.com/@google/model-viewer@v1.12.1/dist/model-viewer.min.js",{module:!0});return g.useEffect(()=>{if(!!r)return i.onError&&r.addEventListener("error",i.onError),i.onLoad&&r.addEventListener("load",i.onLoad),i.onPreload&&r.addEventListener("preload",i.onPreload),i.onModelVisibility&&r.addEventListener("model-visibility",i.onModelVisibility),i.onProgress&&r.addEventListener("progress",i.onProgress),i.onArStatus&&r.addEventListener("ar-status",i.onArStatus),i.onArTracking&&r.addEventListener("ar-tracking",i.onArTracking),i.onQuickLookButtonTapped&&r.addEventListener("quick-look-button-tapped",i.onQuickLookButtonTapped),i.onCameraChange&&r.addEventListener("camera-change",i.onCameraChange),i.onEnvironmentChange&&r.addEventListener("environment-change",i.onEnvironmentChange),i.onPlay&&r.addEventListener("play",i.onPlay),i.onPause&&r.addEventListener("ar-status",i.onPause),i.onSceneGraphReady&&r.addEventListener("scene-graph-ready",i.onSceneGraphReady),()=>{r!=null&&(i.onError&&r.removeEventListener("error",i.onError),i.onLoad&&r.removeEventListener("load",i.onLoad),i.onPreload&&r.removeEventListener("preload",i.onPreload),i.onModelVisibility&&r.removeEventListener("model-visibility",i.onModelVisibility),i.onProgress&&r.removeEventListener("progress",i.onProgress),i.onArStatus&&r.removeEventListener("ar-status",i.onArStatus),i.onArTracking&&r.removeEventListener("ar-tracking",i.onArTracking),i.onQuickLookButtonTapped&&r.removeEventListener("quick-look-button-tapped",i.onQuickLookButtonTapped),i.onCameraChange&&r.removeEventListener("camera-change",i.onCameraChange),i.onEnvironmentChange&&r.removeEventListener("environment-change",i.onEnvironmentChange),i.onPlay&&r.removeEventListener("play",i.onPlay),i.onPause&&r.removeEventListener("ar-status",i.onPause),i.onSceneGraphReady&&r.removeEventListener("scene-graph-ready",i.onSceneGraphReady))}},[r,i.onArStatus,i.onArTracking,i.onCameraChange,i.onEnvironmentChange,i.onError,i.onLoad,i.onModelVisibility,i.onPause,i.onPlay,i.onPreload,i.onProgress,i.onQuickLookButtonTapped,i.onSceneGraphReady]),l!=="done"?null:(m=(s=u.sources)==null?void 0:s[0])!=null&&m.url?C.default.createElement("model-viewer",{ref:n,...i,className:o,id:(c=i.id)!=null?c:u.id,src:u.sources[0].url,alt:(_=u.alt)!=null?_:null,"camera-controls":(y=i.cameraControls)!=null?y:!0,poster:(T=i.poster||((E=u.previewImage)==null?void 0:E.url))!=null?T:null,autoplay:(f=i.autoplay)!=null?f:!0,loading:i.loading,reveal:i.reveal,ar:i.ar,"ar-modes":i.arModes,"ar-scale":i.arScale,"ar-placement":i.arPlacement,"ios-src":i.iosSrc,"touch-action":i.touchAction,"disable-zoom":i.disableZoom,"orbit-sensitivity":i.orbitSensitivity,"auto-rotate":i.autoRotate,"auto-rotate-delay":i.autoRotateDelay,"rotation-per-second":i.rotationPerSecond,"interaction-policy":i.interactionPolicy,"interaction-prompt":i.interactionPrompt,"interaction-prompt-style":i.interactionPromptStyle,"interaction-prompt-threshold":i.interactionPromptThreshold,"camera-orbit":i.cameraOrbit,"camera-target":i.cameraTarget,"field-of-view":i.fieldOfView,"max-camera-orbit":i.maxCameraOrbit,"min-camera-orbit":i.minCameraOrbit,"max-field-of-view":i.maxFieldOfView,"min-field-of-view":i.minFieldOfView,bounds:i.bounds,"interpolation-decay":(S=i.interpolationDecay)!=null?S:100,"skybox-image":i.skyboxImage,"environment-image":i.environmentImage,exposure:i.exposure,"shadow-intensity":(b=i.shadowIntensity)!=null?b:0,"shadow-softness":(v=i.shadowSoftness)!=null?v:0,"animation-name":i.animationName,"animation-crossfade-duration":i.animationCrossfadeDuration,"variant-name":i.variantName,orientation:i.orientation,scale:i.scale,__self:this,__source:{fileName:It,lineNumber:222,columnNumber:5}},a):(console.error("<ModelViewer/> requires 'data.sources' prop to be an array, with an object that has a property 'url' on it. Rendering 'null'"),null)}var ue="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/MediaFile.tsx";function Ot({data:e,mediaOptions:r,...t}){switch(e.__typename){case"MediaImage":return e.image?C.default.createElement(oe,{...t,...r==null?void 0:r.image,data:e.image,__self:this,__source:{fileName:ue,lineNumber:54,columnNumber:9}}):(console.warn("<MediaFile/>: 'data.image' does not exist for __typename of 'MediaImage'; rendering 'null' by default."),null);case"Video":return C.default.createElement(Se,{...t,...r==null?void 0:r.video,data:e,__self:this,__source:{fileName:ue,lineNumber:63,columnNumber:9}});case"ExternalVideo":return C.default.createElement(Xe,{...t,...r==null?void 0:r.externalVideo,data:e,__self:this,__source:{fileName:ue,lineNumber:68,columnNumber:9}});case"Model3d":return C.default.createElement(ir,{...t,...r==null?void 0:r.modelViewer,data:e,__self:this,__source:{fileName:ue,lineNumber:78,columnNumber:9}});default:return console.error("<MediaFile /> requires the '__typename' property to exist on the 'data' prop in order to render the matching sub-component for this type of media. Rendering 'null' by default"),null}}var P="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Metafield.tsx";function Dt(e){var i,l,s,m,c,_,y,E,T;const{data:r,as:t,...n}=e,{locale:u}=X(),a=g.useMemo(()=>or(r),[r]);if(!a)return console.warn("<Metafield/>: nothing was passed to the data prop 'data'. Rendering 'null'"),null;if(a.value===null||a.value===void 0){const f=`<Metafield/>: No metafield value for metafield ${(i=a.id)!=null?i:a.key}. Rendering 'null'`;return console.warn(f),null}switch(a.type){case"date":{const f=t!=null?t:"time";return C.default.createElement(f,{...n,__self:this,__source:{fileName:P,lineNumber:68,columnNumber:9}},a.value.toLocaleDateString(u))}case"date_time":{const f=t!=null?t:"time";return C.default.createElement(f,{...n,__self:this,__source:{fileName:P,lineNumber:76,columnNumber:9}},a.value.toLocaleString(u))}case"weight":case"dimension":case"volume":{const f=t!=null?t:"span";return C.default.createElement(f,{...n,__self:this,__source:{fileName:P,lineNumber:86,columnNumber:9}},Ut(a.value,u))}case"rating":{const f=t!=null?t:"span";return C.default.createElement(f,{...n,__self:this,__source:{fileName:P,lineNumber:94,columnNumber:9}},a.value.value)}case"single_line_text_field":{const f=t!=null?t:"span";return C.default.createElement(f,{...n,dangerouslySetInnerHTML:{__html:a.value},__self:this,__source:{fileName:P,lineNumber:102,columnNumber:9}})}case"multi_line_text_field":{const f=t!=null?t:"div";return C.default.createElement(f,{...n,dangerouslySetInnerHTML:{__html:a.value.split(`
286
- `).join("<br/>")},__self:this,__source:{fileName:P,lineNumber:111,columnNumber:9}})}case"url":{const f=new URL(a.value);return C.default.createElement("a",{href:f.href.replace(f.protocol,""),...n,__self:this,__source:{fileName:P,lineNumber:122,columnNumber:9}},a.value)}case"json":{const f=t!=null?t:"span";return C.default.createElement(f,{...n,__self:this,__source:{fileName:P,lineNumber:133,columnNumber:9}},JSON.stringify(a.value))}case"product_reference":case"variant_reference":case"page_reference":{const f=t!=null?t:"span",S=a.reference;return C.default.createElement(f,{...n,__self:this,__source:{fileName:P,lineNumber:144,columnNumber:9}},(s=(l=S==null?void 0:S.title)!=null?l:S==null?void 0:S.id)!=null?s:"")}case"list.single_line_text_field":{const f=t!=null?t:"ul",S=a.references?x(a.references):[];return C.default.createElement(f,{...n,__self:this,__source:{fileName:P,lineNumber:154,columnNumber:9}},S.map((b,v)=>C.default.createElement("li",{key:`${b!=null?b:""}-${v}`,__self:this,__source:{fileName:P,lineNumber:158,columnNumber:13}},b)))}case"file_reference":if(((m=a.reference)==null?void 0:m.__typename)==="MediaImage"){const f=a.reference;return f.image?C.default.createElement(oe,{data:f.image,...n,__self:this,__source:{fileName:P,lineNumber:167,columnNumber:11}}):null}else if(((c=a.reference)==null?void 0:c.__typename)==="GenericFile"){const f=a.reference;return f.previewImage?C.default.createElement("a",{href:(y=(_=a.reference)==null?void 0:_.url)!=null?y:"",...n,__self:this,__source:{fileName:P,lineNumber:172,columnNumber:11}},C.default.createElement(oe,{data:f.previewImage,__self:this,__source:{fileName:P,lineNumber:173,columnNumber:13}})):null}else if(((E=a.reference)==null?void 0:E.__typename)==="Video"){const f=a.reference;return C.default.createElement(Se,{...n,data:f,__self:this,__source:{fileName:P,lineNumber:178,columnNumber:16}})}}const o=t!=null?t:"span";return C.default.createElement(o,{...n,__self:this,__source:{fileName:P,lineNumber:185,columnNumber:5}},(T=a.value)==null?void 0:T.toString())}function or(e){return e?{...e,value:ur(e)}:null}function ur(e){if(!e)return null;if(e.value===null||e.value===void 0)return e.value;switch(e.type){case"boolean":return e.value==="true";case"number_integer":return parseInt(e.value);case"number_decimal":return parseFloat(e.value);case"date":case"date_time":return new Date(e.value);case"json":case"weight":case"dimension":case"volume":case"rating":return be(e.value);case"color":case"single_line_text_field":case"multi_line_text_field":case"product_reference":case"page_reference":case"variant_reference":case"file_reference":case"url":default:return e.value}}function be(e){return String(e).includes("__proto__")?JSON.parse(e,(r,t)=>{if(r!=="__proto__")return t}):JSON.parse(e)}const Lt={mm:"millimeter",cm:"centimeter",m:"meter",in:"inch",ft:"foot",yd:"yard",ml:"milliliter",l:"liter",us_fl_oz:"fluid-ounce",us_gal:"gallon",kg:"kilogram",g:"gram",lb:"pound",oz:"ounce"};function Ut(e,r="en-us",t={}){let n={value:e.value,unit:Lt[e.unit]};return n.unit==null&&(n=kt(e.value,e.unit)),new Intl.NumberFormat(r,{...t,unit:n.unit,style:"unit"}).format(n.value)}function kt(e,r){switch(r){case"cl":return{value:e/1e3,unit:"liter"};case"m3":return{value:e*1e3,unit:"liter"};case"us_pt":return{value:e*.125,unit:"gallon"};case"us_qt":return{value:e*.5,unit:"gallon"};case"us_oz":return{value:e/128,unit:"gallon"};case"imp_pt":return{value:e/6.661,unit:"gallon"};case"imp_qt":return{value:e/3.331,unit:"gallon"};case"imp_gal":return{value:e/1.201,unit:"gallon"};case"imp_fl_oz":return{value:e*.96076,unit:"fluid-ounce"};default:throw new Error(`Unit not supported: ${r}`)}}function Mt(e){var r,t,n,u;if(!e.type)return console.error("metafieldParser(): The 'type' field is required in order to parse the Metafield. Returning 'parsedValue' of 'null'"),{...e,parsedValue:null};switch(e.type){case"boolean":return{...e,parsedValue:e.value==="true"};case"collection_reference":case"file_reference":case"page_reference":case"product_reference":case"variant_reference":return{...e,parsedValue:e.reference};case"color":case"multi_line_text_field":case"single_line_text_field":case"url":return{...e,parsedValue:e.value};case"dimension":case"money":case"json":case"rating":case"volume":case"weight":case"list.color":case"list.dimension":case"list.number_integer":case"list.number_decimal":case"list.rating":case"list.single_line_text_field":case"list.url":case"list.volume":case"list.weight":{let a=null;try{a=be((r=e.value)!=null?r:"")}catch{console.error("metafieldParser(): attempted to JSON.parse the 'metafield.value' property, but failed. Returning 'null' for 'parsedValue'"),a=null}return{...e,parsedValue:a}}case"date":case"date_time":return{...e,parsedValue:new Date((t=e.value)!=null?t:"")};case"list.date":case"list.date_time":{const a=be((n=e==null?void 0:e.value)!=null?n:"");return{...e,parsedValue:a.map(o=>new Date(o))}}case"number_decimal":case"number_integer":return{...e,parsedValue:Number(e.value)};case"list.collection_reference":case"list.file_reference":case"list.page_reference":case"list.product_reference":case"list.variant_reference":return{...e,parsedValue:x((u=e.references)!=null?u:void 0)};default:{const a=`metafieldParser(): the 'metafield.type' you passed in is not supported. Your type: "${e.type}". If you believe this is an error, please open an issue on GitHub.`;return console.error(`${a} Returning 'parsedValue' of 'null'`),{...e,parsedValue:null}}}}function sr(e){const{locale:r}=X();if(!r)throw new Error("useMoney(): Unable to get 'locale' from 'useShop()', which means that 'locale' was not passed to '<ShopifyProvider/>'. 'locale' is required for 'useMoney()' to work");const t=parseFloat(e.amount),n=g.useMemo(()=>({style:"currency",currency:e.currencyCode}),[e.currencyCode]),u=z(r,n),a=z(r,{...n,currencyDisplay:"name"}),o=z(r,{...n,currencyDisplay:"narrowSymbol"}),i=z(r,{...n,minimumFractionDigits:0,maximumFractionDigits:0}),l=z(r),s=z(r,{minimumFractionDigits:0,maximumFractionDigits:0}),m=_=>_.type==="currency",c=g.useMemo(()=>({original:()=>e,currencyCode:()=>e.currencyCode,localizedString:()=>u().format(t),parts:()=>u().formatToParts(t),withoutTrailingZeros:()=>t%1===0?i().format(t):u().format(t),withoutTrailingZerosAndCurrency:()=>t%1===0?s().format(t):l().format(t),currencyName:()=>{var _,y;return(y=(_=a().formatToParts(t).find(m))==null?void 0:_.value)!=null?y:e.currencyCode},currencySymbol:()=>{var _,y;return(y=(_=u().formatToParts(t).find(m))==null?void 0:_.value)!=null?y:e.currencyCode},currencyNarrowSymbol:()=>{var _,y;return(y=(_=o().formatToParts(t).find(m))==null?void 0:_.value)!=null?y:""},amount:()=>u().formatToParts(t).filter(_=>["decimal","fraction","group","integer","literal"].includes(_.type)).map(_=>_.value).join("")}),[e,t,a,u,o,l,i,s]);return g.useMemo(()=>new Proxy(c,{get:(_,y)=>{var E;return(E=Reflect.get(_,y))==null?void 0:E.call(null)}}),[c])}function z(e,r){return g.useMemo(()=>{let t;return()=>t!=null?t:t=new Intl.NumberFormat(e,r)},[e,r])}var Rt="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Money.tsx";function ve({data:e,as:r,withoutCurrency:t,withoutTrailingZeros:n,measurement:u,measurementSeparator:a="/",...o}){if(!Pt(e))throw new Error("<Money/> needs a valid 'data' prop that has 'amount' and 'currencyCode'");const i=sr(e),l=r!=null?r:"div";let s=i.localizedString;return(t||n)&&(t&&!n?s=i.amount:!t&&n?s=i.withoutTrailingZeros:s=i.withoutTrailingZerosAndCurrency),C.default.createElement(l,{...o,__self:this,__source:{fileName:Rt,lineNumber:65,columnNumber:5}},s,u&&u.referenceUnit&&C.default.createElement(C.default.Fragment,null,a,u.referenceUnit))}function Pt(e){return typeof e.amount=="string"&&!!e.amount&&typeof e.currencyCode=="string"&&!!e.currencyCode}var cr="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ProductPrice.tsx";function $t(e){var s,m,c,_,y,E,T,f;const{priceType:r="regular",variantId:t,valueType:n="min",data:u,...a}=e;if(u==null)throw new Error("<ProductPrice/> requires a product as the 'data' prop");let o,i;const l=t&&(m=x((s=u==null?void 0:u.variants)!=null?s:{}).find(S=>(S==null?void 0:S.id)===t))!=null?m:null;if(r==="compareAt")if(t&&l){if(((c=l.compareAtPriceV2)==null?void 0:c.amount)===((_=l.priceV2)==null?void 0:_.amount))return null;o=l.compareAtPriceV2}else n==="max"?o=(y=u==null?void 0:u.compareAtPriceRange)==null?void 0:y.maxVariantPrice:o=(E=u==null?void 0:u.compareAtPriceRange)==null?void 0:E.minVariantPrice;else t&&l?(o=l.priceV2,n==="unit"&&(o=l.unitPrice,i=l.unitPriceMeasurement)):n==="max"?o=(T=u.priceRange)==null?void 0:T.maxVariantPrice:o=(f=u.priceRange)==null?void 0:f.minVariantPrice;return o?i?C.default.createElement(ve,{...a,data:o,measurement:i,__self:this,__source:{fileName:cr,lineNumber:81,columnNumber:7}}):C.default.createElement(ve,{...a,data:o,__self:this,__source:{fileName:cr,lineNumber:85,columnNumber:10}}):null}var lr="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ShopPayButton.tsx";const Vt="https://cdn.shopify.com/shopifycloud/shop-js/v1.0/client.js";function Ft({variantIds:e,className:r,variantIdsAndQuantities:t,width:n}){const{storeDomain:u}=X(),a=ar(Vt);let o;if(e&&t)throw new Error(jt);if(e)o=e.reduce((l,s)=>{const m=dr(s);return m&&l.push(m),l},[]);else if(t)o=t.reduce((l,s)=>{var c;const m=dr(s==null?void 0:s.id);return m&&l.push(`${m}:${(c=s==null?void 0:s.quantity)!=null?c:1}`),l},[]);else throw new Error(xt);const i=n?{"--shop-pay-button-width":n}:void 0;return C.default.createElement("div",{className:r,style:i,__self:this,__source:{fileName:lr,lineNumber:90,columnNumber:5}},a==="done"&&C.default.createElement("shop-pay-button",{"store-url":`https://${u}`,variants:o.join(","),__self:this,__source:{fileName:lr,lineNumber:92,columnNumber:9}}))}function dr(e){if(!!e)return e.split("/").pop()}const xt='You must pass in either "variantIds" or "variantIdsAndQuantities" to ShopPayButton',jt="You must provide either a variantIds or variantIdsAndQuantities prop, but not both in the ShopPayButton component";D.AddToCartButton=yt,D.BuyNowButton=_t,D.CartCheckoutButton=pt,D.CartProvider=it,D.ExternalVideo=Xe,D.Image=oe,D.MediaFile=Ot,D.Metafield=Dt,D.ModelViewer=ir,D.Money=ve,D.ProductPrice=$t,D.ProductProvider=lt,D.ShopPayButton=Ft,D.ShopifyProvider=Yr,D.Video=Se,D.createStorefrontClient=Hr,D.flattenConnection=x,D.metafieldParser=Mt,D.parseMetafield=or,D.parseMetafieldValue=ur,D.storefrontApiCustomScalars=Et,D.useCart=ie,D.useMoney=sr,D.useProduct=Ze,D.useShop=X,Object.defineProperties(D,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
277
+ `,Q="2023-01",Ve=new Set,xt=e=>{Ve.has(e)||(console.warn(e),Ve.add(e))};function Bt({storeDomain:e,privateStorefrontToken:t,publicStorefrontToken:r,storefrontApiVersion:a,contentType:o}){return a!==Q&&xt(`StorefrontClient: The Storefront API version that you're using is different than the version this build of Hydrogen-UI is targeting. You may run into unexpected errors if these versions don't match. Received verion: "${a}"; expected version "${Q}"`),{getShopifyDomain(i){var u;return`https://${(u=i==null?void 0:i.storeDomain)!=null?u:e}.myshopify.com`},getStorefrontApiUrl(i){var u,n;return`https://${(u=i==null?void 0:i.storeDomain)!=null?u:e}.myshopify.com/api/${(n=i==null?void 0:i.storefrontApiVersion)!=null?n:a}/graphql.json`},getPrivateTokenHeaders(i){var n,d,c;if(!t&&!(i!=null&&i.privateStorefrontToken))throw new Error("StorefrontClient: You did not pass in a 'privateStorefrontToken' while using 'getPrivateTokenHeaders()'");return{"content-type":((n=i==null?void 0:i.contentType)!=null?n:o)==="graphql"?"application/graphql":"application/json","X-SDK-Variant":"hydrogen-ui","X-SDK-Variant-Source":"react","X-SDK-Version":a,"Shopify-Storefront-Private-Token":(c=(d=i==null?void 0:i.privateStorefrontToken)!=null?d:t)!=null?c:"",...i!=null&&i.buyerIp?{"Shopify-Storefront-Buyer-IP":i.buyerIp}:{}}},getPublicTokenHeaders(i){var n,d,c,f;if(!r&&!(i!=null&&i.publicStorefrontToken))throw new Error("StorefrontClient: You did not pass in a 'publicStorefrontToken' while using 'getPublicTokenHeaders()'");const u=(d=(n=i==null?void 0:i.contentType)!=null?n:o)!=null?d:"json";return Me(u,a,(f=(c=i==null?void 0:i.publicStorefrontToken)!=null?c:r)!=null?f:"")}}}function Me(e,t,r){return{"content-type":e==="graphql"?"application/graphql":"application/json","X-SDK-Variant":"hydrogen-ui","X-SDK-Variant-Source":"react","X-SDK-Version":t,"X-Shopify-Storefront-Access-Token":r}}var jt="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ShopifyProvider.tsx";const Pe=h.createContext({storeDomain:"test",storefrontToken:"abc123",storefrontApiVersion:Q,country:{isoCode:"US"},language:{isoCode:"EN"},locale:"EN-US",getStorefrontApiUrl(){return""},getPublicTokenHeaders(){return{}},getShopifyDomain(){return""}});function qt({children:e,shopifyConfig:t}){if(!t)throw new Error("The 'shopifyConfig' prop must be passed to '<ShopifyProvider/>'");t.storefrontApiVersion!==Q&&console.warn(`<ShopifyProvider/>: This version of Hydrogen-UI is built for Shopify's Storefront API version ${Q}, but it looks like you're using version ${t.storefrontApiVersion}. There may be issues or bugs if you use a mismatched version of Hydrogen-UI and the Storefront API.`);const r=h.useMemo(()=>{function a(o){var i;return(i=o==null?void 0:o.storeDomain)!=null?i:t.storeDomain}return{...t,getPublicTokenHeaders(o){var i;return Me(o.contentType,t.storefrontApiVersion,(i=o.storefrontToken)!=null?i:t.storefrontToken)},getShopifyDomain:a,getStorefrontApiUrl(o){var i,u,n;return(i=o==null?void 0:o.storeDomain)!=null&&i.includes(".myshopify.com"),`${a({storeDomain:(u=o==null?void 0:o.storeDomain)!=null?u:t.storeDomain})}/api/${(n=o==null?void 0:o.storefrontApiVersion)!=null?n:t.storefrontApiVersion}/graphql.json`}}},[t]);return D.default.createElement(Pe.Provider,{value:r,__self:this,__source:{fileName:jt,lineNumber:84,columnNumber:5}},e)}function ne(){const e=h.useContext(Pe);if(!e)throw new Error("'useShop()' must be a descendent of <ShopifyProvider/>");return e}const he="shopifyCartId",Ht="Shopify-Storefront-Id",Yt="Shopify-Storefront-Y",Gt="Shopify-Storefront-S",Fe="_shopify_y",xe="_shopify_s";var Zt=new Set(["domain","path","max-age","expires","samesite","secure","httponly"]);function Wt(e){let t={},r,a,o=0,i=e.split(/;\s*/g),u,n;for(;o<i.length;o++)if(a=i[o],r=a.indexOf("="),~r){if(u=a.substring(0,r++).trim(),n=a.substring(r).trim(),n[0]==='"'&&(n=n.substring(1,n.length-1)),~n.indexOf("%"))try{n=decodeURIComponent(n)}catch{}Zt.has(a=u.toLowerCase())?a==="expires"?t.expires=new Date(n):a==="max-age"?t.maxage=+n:t[a]=n:t[u]=n}else(u=a.trim().toLowerCase())&&(u==="httponly"||u==="secure")&&(t[u]=!0);return t}function Kt(){const{storefrontId:e,getPublicTokenHeaders:t,getStorefrontApiUrl:r}=ne();return h.useCallback(({query:a,variables:o})=>{const i=t({contentType:"json"});e&&(i[Ht]=e);const u=Wt(document.cookie);return u[Fe]&&u[xe]&&(i[Yt]=u[Fe],i[Gt]=u[xe]),fetch(r(),{method:"POST",headers:i,body:JSON.stringify({query:a.toString(),variables:o})}).then(n=>n.json()).catch(n=>({data:void 0,errors:n.toString()}))},[t,e,r])}function zt({numCartLines:e,cartFragment:t,countryCode:r="US"}){const a=Kt(),o=h.useCallback(m=>a({query:Pt(t),variables:{id:m,numCartLines:e,country:r}}),[a,t,e,r]),i=h.useCallback(m=>a({query:Lt(t),variables:{input:m,numCartLines:e,country:r}}),[t,r,a,e]),u=h.useCallback((m,E)=>a({query:Dt(t),variables:{cartId:m,lines:E,numCartLines:e,country:r}}),[t,r,a,e]),n=h.useCallback((m,E)=>a({query:kt(t),variables:{cartId:m,lines:E,numCartLines:e,country:r}}),[t,r,a,e]),d=h.useCallback((m,E)=>a({query:Ut(t),variables:{cartId:m,lines:E,numCartLines:e,country:r}}),[t,r,a,e]),c=h.useCallback((m,E)=>a({query:Rt(t),variables:{cartId:m,note:E,numCartLines:e,country:r}}),[a,t,e,r]),f=h.useCallback((m,E)=>a({query:$t(t),variables:{cartId:m,buyerIdentity:E,numCartLines:e,country:r}}),[t,r,a,e]),l=h.useCallback((m,E)=>a({query:Vt(t),variables:{cartId:m,attributes:E,numCartLines:e,country:r}}),[t,r,a,e]),_=h.useCallback((m,E)=>a({query:Mt(t),variables:{cartId:m,discountCodes:E,numCartLines:e,country:r}}),[t,r,a,e]);return h.useMemo(()=>({cartFetch:o,cartCreate:i,cartLineAdd:u,cartLineUpdate:n,cartLineRemove:d,noteUpdate:c,buyerIdentityUpdate:f,cartAttributesUpdate:l,discountCodesUpdate:_,cartFragment:t}),[o,i,u,n,d,c,f,l,_,t])}function F(e,t){return{entry:[...(t==null?void 0:t.entryActions)||[],Z({lastValidCart:r=>r==null?void 0:r.cart}),"onCartActionEntry","onCartActionOptimisticUI",e],on:{RESOLVE:{target:(t==null?void 0:t.resolveTarget)||"idle",actions:[Z({prevCart:r=>r==null?void 0:r.lastValidCart,cart:(r,a)=>{var o;return(o=a==null?void 0:a.payload)==null?void 0:o.cart},rawCartResult:(r,a)=>{var o;return(o=a==null?void 0:a.payload)==null?void 0:o.rawCartResult},errors:r=>{}})]},ERROR:{target:(t==null?void 0:t.errorTarget)||"error",actions:[Z({prevCart:r=>r==null?void 0:r.lastValidCart,cart:r=>r==null?void 0:r.lastValidCart,errors:(r,a)=>{var o;return(o=a==null?void 0:a.payload)==null?void 0:o.errors}})]},CART_COMPLETED:{target:"cartCompleted",actions:Z({prevCart:r=>{},cart:r=>{},lastValidCart:r=>{},rawCartResult:r=>{},errors:r=>{}})}},exit:["onCartActionComplete",...(t==null?void 0:t.exitActions)||[]]}}const J={CART_FETCH:{target:"cartFetching"},CART_CREATE:{target:"cartCreating"},CART_SET:{target:"idle",actions:[Z({rawCartResult:(e,t)=>t.payload.cart,cart:(e,t)=>me(t.payload.cart)})]}},Be={CARTLINE_ADD:{target:"cartLineAdding"},CARTLINE_UPDATE:{target:"cartLineUpdating"},CARTLINE_REMOVE:{target:"cartLineRemoving"},NOTE_UPDATE:{target:"noteUpdating"},BUYER_IDENTITY_UPDATE:{target:"buyerIdentityUpdating"},CART_ATTRIBUTES_UPDATE:{target:"cartAttributesUpdating"},DISCOUNT_CODES_UPDATE:{target:"discountCodesUpdating"}};function Qt(e){return we({id:"Cart",initial:e?"idle":"uninitialized",context:{cart:e&&me(e)},states:{uninitialized:{on:J},cartCompleted:{on:J},initializationError:{on:J},idle:{on:{...J,...Be}},error:{on:{...J,...Be}},cartFetching:F("cartFetchAction",{errorTarget:"initializationError"}),cartCreating:F("cartCreateAction",{errorTarget:"initializationError"}),cartLineRemoving:F("cartLineRemoveAction"),cartLineUpdating:F("cartLineUpdateAction"),cartLineAdding:F("cartLineAddAction"),noteUpdating:F("noteUpdateAction"),buyerIdentityUpdating:F("buyerIdentityUpdateAction"),cartAttributesUpdating:F("cartAttributesUpdateAction"),discountCodesUpdating:F("discountCodesUpdateAction")}})}function Jt({numCartLines:e,onCartActionEntry:t,onCartActionOptimisticUI:r,onCartActionComplete:a,data:o,cartFragment:i,countryCode:u}){const{cartFetch:n,cartCreate:d,cartLineAdd:c,cartLineUpdate:f,cartLineRemove:l,noteUpdate:_,buyerIdentityUpdate:m,cartAttributesUpdate:E,discountCodesUpdate:T}=zt({numCartLines:e,cartFragment:i,countryCode:u}),S=h.useMemo(()=>Qt(o),[o]),[b,C,p]=Nt(S,{actions:{cartFetchAction:async(s,y)=>{var v;if(y.type!=="CART_FETCH")return;const{data:g,errors:w}=await n((v=y==null?void 0:y.payload)==null?void 0:v.cartId),N=x(y,g==null?void 0:g.cart,w);C(N)},cartCreateAction:async(s,y)=>{var v;if(y.type!=="CART_CREATE")return;const{data:g,errors:w}=await d(y==null?void 0:y.payload),N=x(y,(v=g==null?void 0:g.cartCreate)==null?void 0:v.cart,w);C(N)},cartLineAddAction:async(s,y)=>{var v,I;if(y.type!=="CARTLINE_ADD"||!((v=s==null?void 0:s.cart)!=null&&v.id))return;const{data:g,errors:w}=await c(s.cart.id,y.payload.lines),N=x(y,(I=g==null?void 0:g.cartLinesAdd)==null?void 0:I.cart,w);C(N)},cartLineUpdateAction:async(s,y)=>{var v,I;if(y.type!=="CARTLINE_UPDATE"||!((v=s==null?void 0:s.cart)!=null&&v.id))return;const{data:g,errors:w}=await f(s.cart.id,y.payload.lines),N=x(y,(I=g==null?void 0:g.cartLinesUpdate)==null?void 0:I.cart,w);C(N)},cartLineRemoveAction:async(s,y)=>{var v,I;if(y.type!=="CARTLINE_REMOVE"||!((v=s==null?void 0:s.cart)!=null&&v.id))return;const{data:g,errors:w}=await l(s.cart.id,y.payload.lines),N=x(y,(I=g==null?void 0:g.cartLinesRemove)==null?void 0:I.cart,w);C(N)},noteUpdateAction:async(s,y)=>{var v,I;if(y.type!=="NOTE_UPDATE"||!((v=s==null?void 0:s.cart)!=null&&v.id))return;const{data:g,errors:w}=await _(s.cart.id,y.payload.note),N=x(y,(I=g==null?void 0:g.cartNoteUpdate)==null?void 0:I.cart,w);C(N)},buyerIdentityUpdateAction:async(s,y)=>{var v,I;if(y.type!=="BUYER_IDENTITY_UPDATE"||!((v=s==null?void 0:s.cart)!=null&&v.id))return;const{data:g,errors:w}=await m(s.cart.id,y.payload.buyerIdentity),N=x(y,(I=g==null?void 0:g.cartBuyerIdentityUpdate)==null?void 0:I.cart,w);C(N)},cartAttributesUpdateAction:async(s,y)=>{var v,I;if(y.type!=="CART_ATTRIBUTES_UPDATE"||!((v=s==null?void 0:s.cart)!=null&&v.id))return;const{data:g,errors:w}=await E(s.cart.id,y.payload.attributes),N=x(y,(I=g==null?void 0:g.cartAttributesUpdate)==null?void 0:I.cart,w);C(N)},discountCodesUpdateAction:async(s,y)=>{var v,I;if(y.type!=="DISCOUNT_CODES_UPDATE"||!((v=s==null?void 0:s.cart)!=null&&v.id))return;const{data:g,errors:w}=await T(s.cart.id,y.payload.discountCodes),N=x(y,(I=g==null?void 0:g.cartDiscountCodesUpdate)==null?void 0:I.cart,w);C(N)},...t&&{onCartActionEntry:(s,y)=>{Xt(y)&&t(s,y)}},...r&&{onCartActionOptimisticUI:Z((s,y)=>r(s,y))},...a&&{onCartActionComplete:(s,y)=>{er(y)&&a(s,y)}}}});return h.useMemo(()=>[b,C,p],[b,C,p])}function me(e){var t;return{...e,lines:q(e==null?void 0:e.lines),note:(t=e.note)!=null?t:void 0}}function x(e,t,r){return r?{type:"ERROR",payload:{errors:r,cartActionEvent:e}}:t?{type:"RESOLVE",payload:{cart:me(t),rawCartResult:t,cartActionEvent:e}}:{type:"CART_COMPLETED",payload:{cartActionEvent:e}}}function Xt(e){return e.type==="CART_CREATE"||e.type==="CARTLINE_ADD"||e.type==="CARTLINE_UPDATE"||e.type==="CARTLINE_REMOVE"||e.type==="NOTE_UPDATE"||e.type==="BUYER_IDENTITY_UPDATE"||e.type==="CART_ATTRIBUTES_UPDATE"||e.type==="DISCOUNT_CODES_UPDATE"}function er(e){return e.type==="RESOLVE"||e.type==="ERROR"||e.type==="CART_COMPLETED"}var tr="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/CartProvider.tsx";const je=h.createContext(null);function ae(){const e=h.useContext(je);if(!e)throw new Error("Expected a Cart Context, but no Cart Context was found");return e}function rr({children:e,numCartLines:t,onCreate:r,onLineAdd:a,onLineRemove:o,onLineUpdate:i,onNoteUpdate:u,onBuyerIdentityUpdate:n,onAttributesUpdate:d,onDiscountCodesUpdate:c,onCreateComplete:f,onLineAddComplete:l,onLineRemoveComplete:_,onLineUpdateComplete:m,onNoteUpdateComplete:E,onBuyerIdentityUpdateComplete:T,onAttributesUpdateComplete:S,onDiscountCodesUpdateComplete:b,data:C,cartFragment:p=Ft,customerAccessToken:s,countryCode:y="US"}){var ct,lt,dt,ft,yt,ht,mt;y&&(y=y.toUpperCase());const[g,w]=h.useState(y),[N,v]=h.useState(s),I=h.useRef(!1);(g!==y||N!==s)&&(w(y),v(s),I.current=!1);const[R,V]=Jt({numCartLines:t,data:C,cartFragment:p,countryCode:y,onCartActionEntry(A,$){try{switch($.type){case"CART_CREATE":return r==null?void 0:r();case"CARTLINE_ADD":return a==null?void 0:a();case"CARTLINE_REMOVE":return o==null?void 0:o();case"CARTLINE_UPDATE":return i==null?void 0:i();case"NOTE_UPDATE":return u==null?void 0:u();case"BUYER_IDENTITY_UPDATE":return n==null?void 0:n();case"CART_ATTRIBUTES_UPDATE":return d==null?void 0:d();case"DISCOUNT_CODES_UPDATE":return c==null?void 0:c()}}catch(M){console.error("Cart entry action failed",M)}},onCartActionOptimisticUI(A,$){var M,j,ee,te;if(!A.cart)return{...A};switch($.type){case"CARTLINE_REMOVE":return{...A,cart:{...A.cart,lines:(j=(M=A==null?void 0:A.cart)==null?void 0:M.lines)==null?void 0:j.filter(U=>(U==null?void 0:U.id)&&!$.payload.lines.includes(U==null?void 0:U.id))}};case"CARTLINE_UPDATE":return{...A,cart:{...A.cart,lines:(te=(ee=A==null?void 0:A.cart)==null?void 0:ee.lines)==null?void 0:te.map(U=>{const z=$.payload.lines.find(({id:ue})=>ue===(U==null?void 0:U.id));return z&&z.quantity?{...U,quantity:z.quantity}:U})}}}return{...A}},onCartActionComplete(A,$){const M=$.payload.cartActionEvent;try{switch($.type){case"RESOLVE":switch(M.type){case"CART_CREATE":return f==null?void 0:f();case"CARTLINE_ADD":return l==null?void 0:l();case"CARTLINE_REMOVE":return _==null?void 0:_();case"CARTLINE_UPDATE":return m==null?void 0:m();case"NOTE_UPDATE":return E==null?void 0:E();case"BUYER_IDENTITY_UPDATE":return ir(A,M)&&(I.current=!0),T==null?void 0:T();case"CART_ATTRIBUTES_UPDATE":return S==null?void 0:S();case"DISCOUNT_CODES_UPDATE":return b==null?void 0:b()}}}catch(j){console.error("onCartActionComplete failed",j)}}}),P=h.useRef(!1),H=R.matches("cartCompleted"),K=(R.value==="idle"||R.value==="error"||R.value==="cartCompleted")&&y!==((dt=(lt=(ct=R==null?void 0:R.context)==null?void 0:ct.cart)==null?void 0:lt.buyerIdentity)==null?void 0:dt.countryCode)&&!R.context.errors,B=h.useRef(!1);h.useEffect(()=>{if(!P.current&&!B.current){if(!C&&_e("localStorage")){B.current=!0;try{const A=window.localStorage.getItem(he);A&&V({type:"CART_FETCH",payload:{cartId:A}})}catch(A){console.warn("error fetching cartId"),console.warn(A)}}P.current=!0}},[C,P,V]),h.useEffect(()=>{!K||I.current||V({type:"BUYER_IDENTITY_UPDATE",payload:{buyerIdentity:{countryCode:y,customerAccessToken:s}}})},[y,s,K,I,V]);const O=h.useCallback(A=>{if(!P.current)return console.warn("Cart isn't ready yet");V(A)},[V]);h.useEffect(()=>{var A,$,M;if((($=(A=R==null?void 0:R.context)==null?void 0:A.cart)==null?void 0:$.id)&&_e("localStorage"))try{window.localStorage.setItem(he,(M=R.context.cart)==null?void 0:M.id)}catch(j){console.warn("Failed to save cartId to localStorage",j)}},[(yt=(ft=R==null?void 0:R.context)==null?void 0:ft.cart)==null?void 0:yt.id]),h.useEffect(()=>{if(H&&_e("localStorage"))try{window.localStorage.removeItem(he)}catch(A){console.warn("Failed to delete cartId from localStorage",A)}},[H]);const G=h.useCallback(A=>{var $,M;y&&!(($=A.buyerIdentity)!=null&&$.countryCode)&&(A.buyerIdentity==null&&(A.buyerIdentity={}),A.buyerIdentity.countryCode=y),s&&!((M=A.buyerIdentity)!=null&&M.customerAccessToken)&&(A.buyerIdentity==null&&(A.buyerIdentity={}),A.buyerIdentity.customerAccessToken=s),O({type:"CART_CREATE",payload:A})},[y,s,O]),k=ar(R),oe=h.useMemo(()=>{var A,$,M,j,ee,te;return{...($=(A=k==null?void 0:k.context)==null?void 0:A.cart)!=null?$:{lines:[],attributes:[]},status:nr(k.value),error:(M=k==null?void 0:k.context)==null?void 0:M.errors,totalQuantity:(te=(ee=(j=k==null?void 0:k.context)==null?void 0:j.cart)==null?void 0:ee.totalQuantity)!=null?te:0,cartCreate:G,linesAdd(U){var z,ue;(ue=(z=k==null?void 0:k.context)==null?void 0:z.cart)!=null&&ue.id?O({type:"CARTLINE_ADD",payload:{lines:U}}):G({lines:U})},linesRemove(U){O({type:"CARTLINE_REMOVE",payload:{lines:U}})},linesUpdate(U){O({type:"CARTLINE_UPDATE",payload:{lines:U}})},noteUpdate(U){O({type:"NOTE_UPDATE",payload:{note:U}})},buyerIdentityUpdate(U){O({type:"BUYER_IDENTITY_UPDATE",payload:{buyerIdentity:U}})},cartAttributesUpdate(U){O({type:"CART_ATTRIBUTES_UPDATE",payload:{attributes:U}})},discountCodesUpdate(U){O({type:"DISCOUNT_CODES_UPDATE",payload:{discountCodes:U}})},cartFragment:p}},[G,(ht=k==null?void 0:k.context)==null?void 0:ht.cart,(mt=k==null?void 0:k.context)==null?void 0:mt.errors,k.value,p,O]);return D.default.createElement(je.Provider,{value:oe,__self:this,__source:{fileName:tr,lineNumber:424,columnNumber:5}},e)}function nr(e){switch(e){case"uninitialized":case"initializationError":return"uninitialized";case"idle":case"cartCompleted":case"error":return"idle";case"cartFetching":return"fetching";case"cartCreating":return"creating";case"cartLineAdding":case"cartLineRemoving":case"cartLineUpdating":case"noteUpdating":case"buyerIdentityUpdating":case"cartAttributesUpdating":case"discountCodesUpdating":return"updating"}}function ar(e){const[t,r]=h.useTransition(),[a,o]=h.useState(e),i=h.useRef(!1);t&&(i.current=!0);const u=h.useRef(!1);return!t&&i.current&&(u.current=!0),h.useEffect(()=>{r(()=>{u.current||o(e)})},[e]),u.current?e:a}function _e(e){let t;try{t=window[e];const r="__storage_test__";return t.setItem(r,r),t.removeItem(r),!0}catch(r){return r instanceof DOMException&&(r.code===22||r.code===1014||r.name==="QuotaExceededError"||r.name==="NS_ERROR_DOM_QUOTA_REACHED")&&t&&t.length!==0}}function ir(e,t){var r,a;return t.payload.buyerIdentity.countryCode&&((a=(r=e.cart)==null?void 0:r.buyerIdentity)==null?void 0:a.countryCode)!==t.payload.buyerIdentity.countryCode}var or="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ProductProvider.tsx";const qe=h.createContext(null);function ur({children:e,data:t,initialVariantId:r}){const a=h.useMemo(()=>{var S;return q((S=t.variants)!=null?S:{})},[t.variants]);if(!cr(a))throw new Error("<ProductProvider/> requires 'product.variants.nodes' or 'product.variants.edges'");const o=h.useMemo(()=>sr(a),[a]),[i,u]=h.useState(()=>Ge(r,a)),[n,d]=h.useState(()=>Ze(i));h.useEffect(()=>{const S=Ge(r,a);u(S),d(Ze(S))},[r,a]);const c=h.useCallback((S,b)=>{d(C=>{const p={...C,[S]:b};return u(Ye(a,p)),p})},[d,a]),f=h.useCallback((S,b)=>{var p;const C=Ye(a,{...n,[S]:b});return(p=C==null?void 0:C.availableForSale)!=null?p:!0},[n,a]),l=h.useMemo(()=>{var S;return q((S=t.sellingPlanGroups)!=null?S:{}).map(b=>{var C;return{...b,sellingPlans:q((C=b==null?void 0:b.sellingPlans)!=null?C:{})}})},[t.sellingPlanGroups]),[_,m]=h.useState(void 0),E=h.useMemo(()=>{var S,b;if(!(!i||!_)){if(!((S=i.sellingPlanAllocations)!=null&&S.nodes)&&!((b=i.sellingPlanAllocations)!=null&&b.edges))throw new Error("<ProductProvider/>: You must include 'sellingPlanAllocations.nodes' or 'sellingPlanAllocations.edges' in your variants in order to calculate selectedSellingPlanAllocation");return q(i.sellingPlanAllocations).find(C=>{var p;return((p=C==null?void 0:C.sellingPlan)==null?void 0:p.id)===_.id})}},[i,_]),T=h.useMemo(()=>({variants:a,variantsConnection:t.variants,options:o,selectedVariant:i,setSelectedVariant:u,selectedOptions:n,setSelectedOption:c,setSelectedOptions:d,isOptionInStock:f,selectedSellingPlan:_,setSelectedSellingPlan:m,selectedSellingPlanAllocation:E,sellingPlanGroups:l,sellingPlanGroupsConnection:t.sellingPlanGroups}),[f,o,t.sellingPlanGroups,t.variants,n,_,E,i,l,c,a]);return D.default.createElement(qe.Provider,{value:T,__self:this,__source:{fileName:or,lineNumber:201,columnNumber:5}},e)}function He(){const e=h.useContext(qe);if(!e)throw new Error("'useProduct' must be a child of <ProductProvider />");return e}function Ye(e,t){var r,a;if(!(!e.length||((a=(r=e==null?void 0:e[0])==null?void 0:r.selectedOptions)==null?void 0:a.length)!==Object.keys(t).length))return e==null?void 0:e.find(o=>Object.entries(t).every(([i,u])=>{var n;return(n=o==null?void 0:o.selectedOptions)==null?void 0:n.some(d=>(d==null?void 0:d.name)===i&&(d==null?void 0:d.value)===u)}))}function sr(e){const t=e.reduce((r,a)=>{var o;if(!a.selectedOptions)throw new Error("'getOptions' requires 'variant.selectedOptions'");return(o=a==null?void 0:a.selectedOptions)==null||o.forEach(i=>{var u,n,d,c;r[(u=i==null?void 0:i.name)!=null?u:""]=r[(n=i==null?void 0:i.name)!=null?n:""]||new Set,r[(d=i==null?void 0:i.name)!=null?d:""].add((c=i==null?void 0:i.value)!=null?c:"")}),r},{});return Object.keys(t).map(r=>({name:r,values:Array.from(t[r])}))}function Ge(e,t){if(e){const r=t.find(a=>(a==null?void 0:a.id)===e);return r||console.warn("<ProductProvider/> received a 'initialVariantId' prop, but could not actually find a variant with that ID"),r}if(e===null)return null;if(e===void 0)return t.find(r=>r==null?void 0:r.availableForSale)||t[0]}function Ze(e){return e!=null&&e.selectedOptions?e.selectedOptions.reduce((t,r)=>{var a,o;return t[(a=r==null?void 0:r.name)!=null?a:""]=(o=r==null?void 0:r.value)!=null?o:"",t},{}):{}}function cr(e){return!(!e||!Array.isArray(e))}var lr="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/BaseButton.tsx";function ge(e){const{as:t,onClick:r,defaultOnClick:a,children:o,buttonRef:i,...u}=e,n=h.useCallback(c=>{if(r){const f=r(c);if(typeof f=="boolean"&&f===!1||(c==null?void 0:c.defaultPrevented))return}a==null||a(c)},[a,r]),d=t||"button";return D.default.createElement(d,{ref:i,onClick:n,...u,__self:this,__source:{fileName:lr,lineNumber:59,columnNumber:5}},o)}var We="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/AddToCartButton.tsx";function dr(e){var b;const[t,r]=h.useState(!1),{variantId:a,quantity:o=1,attributes:i,sellingPlanId:u,onClick:n,children:d,accessibleAddingToCartLabel:c,...f}=e,{status:l,linesAdd:_}=ae(),{selectedVariant:m}=He(),E=(b=a!=null?a:m==null?void 0:m.id)!=null?b:"",T=a===null||E===""||m===null||t||f.disabled;h.useEffect(()=>{t&&l==="idle"&&r(!1)},[l,t]);const S=h.useCallback(()=>{r(!0),_([{quantity:o,merchandiseId:E||"",attributes:i,sellingPlanId:u}])},[_,o,E,i,u]);return D.default.createElement(D.default.Fragment,null,D.default.createElement(ge,{...f,disabled:T,onClick:n,defaultOnClick:S,__self:this,__source:{fileName:We,lineNumber:71,columnNumber:7}},d),c?D.default.createElement("p",{style:{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"},role:"alert","aria-live":"assertive",__self:this,__source:{fileName:We,lineNumber:80,columnNumber:9}},t?c:null):null)}var fr="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/BuyNowButton.tsx";function yr(e){const{cartCreate:t,checkoutUrl:r}=ae(),[a,o]=h.useState(!1),{quantity:i,variantId:u,onClick:n,attributes:d,children:c,...f}=e;h.useEffect(()=>{r&&(window.location.href=r)},[r]);const l=h.useCallback(()=>{o(!0),t({lines:[{quantity:i!=null?i:1,merchandiseId:u,attributes:d}]})},[t,i,u,d]);return D.default.createElement(ge,{disabled:a!=null?a:f.disabled,...f,onClick:n,defaultOnClick:l,__self:this,__source:{fileName:fr,lineNumber:53,columnNumber:5}},c)}var hr="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/CartCheckoutButton.tsx";function mr(e){const[t,r]=h.useState(!1),{status:a,checkoutUrl:o}=ae(),{children:i,...u}=e;return h.useEffect(()=>{t&&o&&a==="idle"&&(window.location.href=o)},[t,a,o]),D.default.createElement(ge,{...u,disabled:t||u.disabled,onClick:()=>r(!0),__self:this,__source:{fileName:hr,lineNumber:28,columnNumber:5}},i)}const _r={DateTime:"string",Decimal:"string",HTML:"string",URL:"string",Color:"string",UnsignedInt64:"string"};var gr="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ExternalVideo.tsx";function Ke(e){var f,l;const{data:t,options:r,id:a=t.id,frameBorder:o="0",allow:i="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:u=!0,loading:n="lazy",...d}=e;if(!t.embedUrl)throw new Error("<ExternalVideo/> requires the 'embedUrl' property");let c=t.embedUrl;if(r){const _=new URL(t.embedUrl);for(const m of Object.keys(r))_.searchParams.set(m,r[m]);c=_.toString()}return D.default.createElement("iframe",{...d,id:a!=null?a:t.embedUrl,title:(l=(f=t.alt)!=null?f:t.id)!=null?l:"external video",frameBorder:o,allow:i,allowFullScreen:u,src:c,loading:n,__self:this,__source:{fileName:gr,lineNumber:56,columnNumber:5}})}const Er=["cdn.shopify.com","cdn.shopifycdn.net","shopify-assets.shopifycdn.com","shopify-assets.shopifycdn.net"],Sr=["spin.dev"],pr=[...Er,...Sr],X=[352,832,1200,1920,2560];function ze({src:e,width:t,height:r,crop:a,scale:o}){const i=new URL(e),u=o!=null?o:1;if(t){let n;typeof t=="string"?n=(X[0]*u).toString():n=(Number(t)*u).toString(),i.searchParams.append("width",n)}return r&&typeof r=="number"&&i.searchParams.append("height",(r*u).toString()),a&&i.searchParams.append("crop",a),i.toString()}function Qe(e){const t=new URL(e.src);return!pr.some(a=>t.hostname.endsWith(a))||!e.width&&!e.height&&!e.crop&&!e.scale?e.src:ze(e)}function Cr({data:e,loaderOptions:t,elementProps:r}){var o,i,u,n,d,c;let a=null;return(e==null?void 0:e.width)&&(e==null?void 0:e.height)&&(a=(e==null?void 0:e.width)/(e==null?void 0:e.height)),(t==null?void 0:t.width)||(t==null?void 0:t.height)?{width:(o=t==null?void 0:t.width)!=null?o:a&&typeof t.height=="number"?Math.round(a*t.height):null,height:(i=t==null?void 0:t.height)!=null?i:a&&typeof t.width=="number"?Math.round(a*t.width):null}:(r==null?void 0:r.width)||(r==null?void 0:r.height)?{width:(u=r==null?void 0:r.width)!=null?u:a&&typeof r.height=="number"?Math.round(a*r.height):null,height:(n=r==null?void 0:r.height)!=null?n:a&&typeof r.width=="number"?Math.round(a*r.width):null}:(e==null?void 0:e.width)||(e==null?void 0:e.height)?{width:(d=e==null?void 0:e.width)!=null?d:null,height:(c=e==null?void 0:e.height)!=null?c:null}:{width:null,height:null}}var br="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Image.tsx";function Je({data:e,width:t,height:r,loading:a,loader:o=Qe,loaderOptions:i,widths:u,decoding:n="async",...d}){var E,T,S,b,C,p;if(!e.url){const s=`<Image/>: the 'data' prop requires the 'url' property. Image: ${(E=e.id)!=null?E:"no ID provided"}`;return console.error(s),null}const{width:c,height:f}=Cr({data:e,loaderOptions:i,elementProps:{width:t,height:r}});let l=e.url;if(o&&(l=o({...i,src:e.url,width:c,height:f}),typeof l!="string"||!l))throw new Error(`<Image/>: 'loader' did not return a valid string. Image: ${(T=e.id)!=null?T:e.url}`);const _=t&&c&&t<c?t:c,m=(S=d.srcSet)!=null?S:vr({...i,widths:u,src:e.url,width:_,height:f,loader:o});return Se.createElement("img",{id:(b=e.id)!=null?b:"",alt:(p=(C=e.altText)!=null?C:d.alt)!=null?p:"",loading:a!=null?a:"lazy",...d,src:l,width:c!=null?c:void 0,height:f!=null?f:void 0,srcSet:m,decoding:n,__self:this,__source:{fileName:br,lineNumber:150,columnNumber:5}})}function vr({src:e,width:t,crop:r,scale:a,widths:o,loader:i,height:u}){const n=o&&Array.isArray(o);if(n&&o.some(l=>isNaN(l)))throw new Error(`<Image/>: the 'widths' must be an array of numbers. Image: ${e}`);let d=1;t&&u&&(d=Number(u)/Number(t));let c=n?o:X;!n&&t&&t<X[X.length-1]&&(c=X.filter(l=>l<=t));const f=i||ze;return c.map(l=>`${f({src:e,width:l,height:r?Number(l)*d:void 0,crop:r,scale:a})} ${l}w`).join(", ")}var Xe="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Video.tsx";function et(e){var c,f;const{data:t,previewImageOptions:r,id:a=t.id,playsInline:o=!0,controls:i=!0,sourceProps:u={},...n}=e,d=Qe({src:(f=(c=t.previewImage)==null?void 0:c.url)!=null?f:"",...r});if(!t.sources)throw new Error("<Video/> requires a 'data.sources' array");return D.default.createElement("video",{...n,id:a,playsInline:o,controls:i,poster:d,__self:this,__source:{fileName:Xe,lineNumber:42,columnNumber:5}},t.sources.map(l=>{if(!((l==null?void 0:l.url)&&(l==null?void 0:l.mimeType)))throw new Error("<Video/> needs 'source.url' and 'source.mimeType'");return D.default.createElement("source",{...u,key:l.url,src:l.url,type:l.mimeType,__self:this,__source:{fileName:Xe,lineNumber:54,columnNumber:11}})}))}const tt={};function Tr(e,t){const r=tt[e];if(r)return r;const a=new Promise((o,i)=>{const u=document.createElement("script");t!=null&&t.module?u.type="module":u.type="text/javascript",u.src=e,u.onload=()=>{o(!0)},u.onerror=()=>{i(!1)},(t==null?void 0:t.in)==="head"?document.head.appendChild(u):document.body.appendChild(u)});return tt[e]=a,a}function rt(e,t){const[r,a]=h.useState("loading"),o=JSON.stringify(t);return h.useEffect(()=>{async function i(){try{a("loading"),await Tr(e,t),a("done")}catch{a("error")}}i()},[e,o,t]),r}var Ar="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ModelViewer.tsx";function nt(e){var c,f,l,_,m,E,T,S,b,C,p;const[t,r]=h.useState(void 0),a=h.useCallback(s=>{r(s)},[]),{data:o,children:i,className:u,...n}=e,d=rt("https://unpkg.com/@google/model-viewer@v1.12.1/dist/model-viewer.min.js",{module:!0});return h.useEffect(()=>{if(!!t)return n.onError&&t.addEventListener("error",n.onError),n.onLoad&&t.addEventListener("load",n.onLoad),n.onPreload&&t.addEventListener("preload",n.onPreload),n.onModelVisibility&&t.addEventListener("model-visibility",n.onModelVisibility),n.onProgress&&t.addEventListener("progress",n.onProgress),n.onArStatus&&t.addEventListener("ar-status",n.onArStatus),n.onArTracking&&t.addEventListener("ar-tracking",n.onArTracking),n.onQuickLookButtonTapped&&t.addEventListener("quick-look-button-tapped",n.onQuickLookButtonTapped),n.onCameraChange&&t.addEventListener("camera-change",n.onCameraChange),n.onEnvironmentChange&&t.addEventListener("environment-change",n.onEnvironmentChange),n.onPlay&&t.addEventListener("play",n.onPlay),n.onPause&&t.addEventListener("ar-status",n.onPause),n.onSceneGraphReady&&t.addEventListener("scene-graph-ready",n.onSceneGraphReady),()=>{t!=null&&(n.onError&&t.removeEventListener("error",n.onError),n.onLoad&&t.removeEventListener("load",n.onLoad),n.onPreload&&t.removeEventListener("preload",n.onPreload),n.onModelVisibility&&t.removeEventListener("model-visibility",n.onModelVisibility),n.onProgress&&t.removeEventListener("progress",n.onProgress),n.onArStatus&&t.removeEventListener("ar-status",n.onArStatus),n.onArTracking&&t.removeEventListener("ar-tracking",n.onArTracking),n.onQuickLookButtonTapped&&t.removeEventListener("quick-look-button-tapped",n.onQuickLookButtonTapped),n.onCameraChange&&t.removeEventListener("camera-change",n.onCameraChange),n.onEnvironmentChange&&t.removeEventListener("environment-change",n.onEnvironmentChange),n.onPlay&&t.removeEventListener("play",n.onPlay),n.onPause&&t.removeEventListener("ar-status",n.onPause),n.onSceneGraphReady&&t.removeEventListener("scene-graph-ready",n.onSceneGraphReady))}},[t,n.onArStatus,n.onArTracking,n.onCameraChange,n.onEnvironmentChange,n.onError,n.onLoad,n.onModelVisibility,n.onPause,n.onPlay,n.onPreload,n.onProgress,n.onQuickLookButtonTapped,n.onSceneGraphReady]),d!=="done"?null:(f=(c=o.sources)==null?void 0:c[0])!=null&&f.url?D.default.createElement("model-viewer",{ref:a,...n,className:u,id:(l=n.id)!=null?l:o.id,src:o.sources[0].url,alt:(_=o.alt)!=null?_:null,"camera-controls":(m=n.cameraControls)!=null?m:!0,poster:(T=n.poster||((E=o.previewImage)==null?void 0:E.url))!=null?T:null,autoplay:(S=n.autoplay)!=null?S:!0,loading:n.loading,reveal:n.reveal,ar:n.ar,"ar-modes":n.arModes,"ar-scale":n.arScale,"ar-placement":n.arPlacement,"ios-src":n.iosSrc,"touch-action":n.touchAction,"disable-zoom":n.disableZoom,"orbit-sensitivity":n.orbitSensitivity,"auto-rotate":n.autoRotate,"auto-rotate-delay":n.autoRotateDelay,"rotation-per-second":n.rotationPerSecond,"interaction-policy":n.interactionPolicy,"interaction-prompt":n.interactionPrompt,"interaction-prompt-style":n.interactionPromptStyle,"interaction-prompt-threshold":n.interactionPromptThreshold,"camera-orbit":n.cameraOrbit,"camera-target":n.cameraTarget,"field-of-view":n.fieldOfView,"max-camera-orbit":n.maxCameraOrbit,"min-camera-orbit":n.minCameraOrbit,"max-field-of-view":n.maxFieldOfView,"min-field-of-view":n.minFieldOfView,bounds:n.bounds,"interpolation-decay":(b=n.interpolationDecay)!=null?b:100,"skybox-image":n.skyboxImage,"environment-image":n.environmentImage,exposure:n.exposure,"shadow-intensity":(C=n.shadowIntensity)!=null?C:0,"shadow-softness":(p=n.shadowSoftness)!=null?p:0,"animation-name":n.animationName,"animation-crossfade-duration":n.animationCrossfadeDuration,"variant-name":n.variantName,orientation:n.orientation,scale:n.scale,__self:this,__source:{fileName:Ar,lineNumber:222,columnNumber:5}},i):(console.error("<ModelViewer/> requires 'data.sources' prop to be an array, with an object that has a property 'url' on it. Rendering 'null'"),null)}var ie="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/MediaFile.tsx";function wr({data:e,mediaOptions:t,...r}){switch(e.__typename){case"MediaImage":return e.image?D.default.createElement(Je,{...r,...t==null?void 0:t.image,data:e.image,__self:this,__source:{fileName:ie,lineNumber:54,columnNumber:9}}):(console.warn("<MediaFile/>: 'data.image' does not exist for __typename of 'MediaImage'; rendering 'null' by default."),null);case"Video":return D.default.createElement(et,{...r,...t==null?void 0:t.video,data:e,__self:this,__source:{fileName:ie,lineNumber:63,columnNumber:9}});case"ExternalVideo":return D.default.createElement(Ke,{...r,...t==null?void 0:t.externalVideo,data:e,__self:this,__source:{fileName:ie,lineNumber:68,columnNumber:9}});case"Model3d":return D.default.createElement(nt,{...r,...t==null?void 0:t.modelViewer,data:e,__self:this,__source:{fileName:ie,lineNumber:78,columnNumber:9}});default:return console.error("<MediaFile /> requires the '__typename' property to exist on the 'data' prop in order to render the matching sub-component for this type of media. Rendering 'null' by default"),null}}function Nr(e){var t,r,a,o;if(!e.type)return console.error("parseMetafield(): The 'type' field is required in order to parse the Metafield. Returning 'parsedValue' of 'null'"),{...e,parsedValue:null};switch(e.type){case"boolean":return{...e,parsedValue:e.value==="true"};case"collection_reference":case"file_reference":case"page_reference":case"product_reference":case"variant_reference":return{...e,parsedValue:e.reference};case"color":case"multi_line_text_field":case"single_line_text_field":case"url":return{...e,parsedValue:e.value};case"dimension":case"money":case"json":case"rating":case"volume":case"weight":case"list.color":case"list.dimension":case"list.number_integer":case"list.number_decimal":case"list.rating":case"list.single_line_text_field":case"list.url":case"list.volume":case"list.weight":{let i=null;try{i=at((t=e.value)!=null?t:"")}catch{console.error("parseMetafield(): attempted to JSON.parse the 'metafield.value' property, but failed. Returning 'null' for 'parsedValue'"),i=null}return{...e,parsedValue:i}}case"date":case"date_time":return{...e,parsedValue:new Date((r=e.value)!=null?r:"")};case"list.date":case"list.date_time":{const i=at((a=e==null?void 0:e.value)!=null?a:"");return{...e,parsedValue:i.map(u=>new Date(u))}}case"number_decimal":case"number_integer":return{...e,parsedValue:Number(e.value)};case"list.collection_reference":case"list.file_reference":case"list.page_reference":case"list.product_reference":case"list.variant_reference":return{...e,parsedValue:q((o=e.references)!=null?o:void 0)};default:{const i=`parseMetafield(): the 'metafield.type' you passed in is not supported. Your type: "${e.type}". If you believe this is an error, please open an issue on GitHub.`;return console.error(`${i} Returning 'parsedValue' of 'null'`),{...e,parsedValue:null}}}}function at(e){return String(e).includes("__proto__")?JSON.parse(e,(t,r)=>{if(t!=="__proto__")return r}):JSON.parse(e)}function it(e){const{locale:t}=ne();if(!t)throw new Error("useMoney(): Unable to get 'locale' from 'useShop()', which means that 'locale' was not passed to '<ShopifyProvider/>'. 'locale' is required for 'useMoney()' to work");const r=parseFloat(e.amount),a=h.useMemo(()=>({style:"currency",currency:e.currencyCode}),[e.currencyCode]),o=W(t,a),i=W(t,{...a,currencyDisplay:"name"}),u=W(t,{...a,currencyDisplay:"narrowSymbol"}),n=W(t,{...a,minimumFractionDigits:0,maximumFractionDigits:0}),d=W(t),c=W(t,{minimumFractionDigits:0,maximumFractionDigits:0}),f=_=>_.type==="currency",l=h.useMemo(()=>({original:()=>e,currencyCode:()=>e.currencyCode,localizedString:()=>o().format(r),parts:()=>o().formatToParts(r),withoutTrailingZeros:()=>r%1===0?n().format(r):o().format(r),withoutTrailingZerosAndCurrency:()=>r%1===0?c().format(r):d().format(r),currencyName:()=>{var _,m;return(m=(_=i().formatToParts(r).find(f))==null?void 0:_.value)!=null?m:e.currencyCode},currencySymbol:()=>{var _,m;return(m=(_=o().formatToParts(r).find(f))==null?void 0:_.value)!=null?m:e.currencyCode},currencyNarrowSymbol:()=>{var _,m;return(m=(_=u().formatToParts(r).find(f))==null?void 0:_.value)!=null?m:""},amount:()=>o().formatToParts(r).filter(_=>["decimal","fraction","group","integer","literal"].includes(_.type)).map(_=>_.value).join("")}),[e,r,i,o,u,d,n,c]);return h.useMemo(()=>new Proxy(l,{get:(_,m)=>{var E;return(E=Reflect.get(_,m))==null?void 0:E.call(null)}}),[l])}function W(e,t){return h.useMemo(()=>{let r;return()=>r!=null?r:r=new Intl.NumberFormat(e,t)},[e,t])}var Ir="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Money.tsx";function Ee({data:e,as:t,withoutCurrency:r,withoutTrailingZeros:a,measurement:o,measurementSeparator:i="/",...u}){if(!Or(e))throw new Error("<Money/> needs a valid 'data' prop that has 'amount' and 'currencyCode'");const n=it(e),d=t!=null?t:"div";let c=n.localizedString;return(r||a)&&(r&&!a?c=n.amount:!r&&a?c=n.withoutTrailingZeros:c=n.withoutTrailingZerosAndCurrency),D.default.createElement(d,{...u,__self:this,__source:{fileName:Ir,lineNumber:65,columnNumber:5}},c,o&&o.referenceUnit&&D.default.createElement(D.default.Fragment,null,i,o.referenceUnit))}function Or(e){return typeof e.amount=="string"&&!!e.amount&&typeof e.currencyCode=="string"&&!!e.currencyCode}var ot="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ProductPrice.tsx";function Dr(e){var c,f,l,_,m,E,T,S;const{priceType:t="regular",variantId:r,valueType:a="min",data:o,...i}=e;if(o==null)throw new Error("<ProductPrice/> requires a product as the 'data' prop");let u,n;const d=r&&(f=q((c=o==null?void 0:o.variants)!=null?c:{}).find(b=>(b==null?void 0:b.id)===r))!=null?f:null;if(t==="compareAt")if(r&&d){if(((l=d.compareAtPriceV2)==null?void 0:l.amount)===((_=d.priceV2)==null?void 0:_.amount))return null;u=d.compareAtPriceV2}else a==="max"?u=(m=o==null?void 0:o.compareAtPriceRange)==null?void 0:m.maxVariantPrice:u=(E=o==null?void 0:o.compareAtPriceRange)==null?void 0:E.minVariantPrice;else r&&d?(u=d.priceV2,a==="unit"&&(u=d.unitPrice,n=d.unitPriceMeasurement)):a==="max"?u=(T=o.priceRange)==null?void 0:T.maxVariantPrice:u=(S=o.priceRange)==null?void 0:S.minVariantPrice;return u?n?D.default.createElement(Ee,{...i,data:u,measurement:n,__self:this,__source:{fileName:ot,lineNumber:81,columnNumber:7}}):D.default.createElement(Ee,{...i,data:u,__self:this,__source:{fileName:ot,lineNumber:85,columnNumber:10}}):null}var ut="/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ShopPayButton.tsx";const Lr="https://cdn.shopify.com/shopifycloud/shop-js/v1.0/client.js";function Ur({variantIds:e,className:t,variantIdsAndQuantities:r,width:a}){const{storeDomain:o}=ne(),i=rt(Lr);let u;if(e&&r)throw new Error(Rr);if(e)u=e.reduce((d,c)=>{const f=st(c);return f&&d.push(f),d},[]);else if(r)u=r.reduce((d,c)=>{var l;const f=st(c==null?void 0:c.id);return f&&d.push(`${f}:${(l=c==null?void 0:c.quantity)!=null?l:1}`),d},[]);else throw new Error(kr);const n=a?{"--shop-pay-button-width":a}:void 0;return D.default.createElement("div",{className:t,style:n,__self:this,__source:{fileName:ut,lineNumber:90,columnNumber:5}},i==="done"&&D.default.createElement("shop-pay-button",{"store-url":o,variants:u.join(","),__self:this,__source:{fileName:ut,lineNumber:92,columnNumber:9}}))}function st(e){if(!!e)return e.split("/").pop()}const kr='You must pass in either "variantIds" or "variantIdsAndQuantities" to ShopPayButton',Rr="You must provide either a variantIds or variantIdsAndQuantities prop, but not both in the ShopPayButton component";L.AddToCartButton=dr,L.BuyNowButton=yr,L.CartCheckoutButton=mr,L.CartProvider=rr,L.ExternalVideo=Ke,L.Image=Je,L.MediaFile=wr,L.ModelViewer=nt,L.Money=Ee,L.ProductPrice=Dr,L.ProductProvider=ur,L.ShopPayButton=Ur,L.ShopifyProvider=qt,L.Video=et,L.createStorefrontClient=Bt,L.flattenConnection=q,L.parseMetafield=Nr,L.storefrontApiCustomScalars=_r,L.useCart=ae,L.useMoney=it,L.useProduct=He,L.useShop=ne,Object.defineProperties(L,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
287
278
  //# sourceMappingURL=hydrogen-react.prod.js.map