From 795ba24415541f1bf35aa887424e69bda87f5013 Mon Sep 17 00:00:00 2001 From: Adarsh07rai <115350705+Adarsh07rai@users.noreply.github.com> Date: Mon, 23 Oct 2023 12:03:01 +0000 Subject: [PATCH 1/2] React webapplication --- ecommerce/.babelrc | 3 + ecommerce/.eslintrc.json | 3 + ecommerce/.gitignore | 36 + ecommerce/README.md | 34 + ecommerce/components/Cart.jsx | 143 + ecommerce/components/Footer.jsx | 15 + ecommerce/components/FooterBanner.jsx | 49 + ecommerce/components/HeroBanner.jsx | 33 + ecommerce/components/Layout.jsx | 21 + ecommerce/components/Navbar.jsx | 27 + ecommerce/components/Product.jsx | 23 + ecommerce/components/index.js | 7 + ecommerce/context/StateContext.js | 119 + ecommerce/lib/client.js | 14 + ecommerce/lib/getStripe.js | 12 + ecommerce/lib/utils.js | 34 + ecommerce/next.config.js | 7 + ecommerce/package-lock.json | 6857 +++++++++++++++++ ecommerce/package.json | 31 + ecommerce/pages/_app.js | 18 + ecommerce/pages/api/hello.js | 5 + ecommerce/pages/api/stripe.js | 57 + ecommerce/pages/index.js | 36 + ecommerce/pages/product/[slug].js | 134 + ecommerce/pages/success.js | 43 + ecommerce/public/favicon.ico | Bin 0 -> 25931 bytes ecommerce/public/vercel.svg | 4 + ecommerce/sanity_ecommerce2/.eslintrc | 3 + ecommerce/sanity_ecommerce2/.npmignore | 12 + ecommerce/sanity_ecommerce2/config/.checksums | 9 + .../config/@sanity/data-aspects.json | 3 + .../config/@sanity/default-layout.json | 6 + .../config/@sanity/default-login.json | 8 + .../config/@sanity/form-builder.json | 5 + .../config/@sanity/google-maps-input.json | 9 + .../config/@sanity/vision.json | 3 + .../@babel/core/lib/config/cache-contexts.js | 3 + .../core/lib/config/cache-contexts.js.map | 1 + .../@babel/core/lib/config/caching.js | 328 + .../@babel/core/lib/config/caching.js.map | 1 + .../@babel/core/lib/config/config-chain.js | 572 ++ .../core/lib/config/config-chain.js.map | 1 + .../core/lib/config/config-descriptors.js | 233 + .../core/lib/config/config-descriptors.js.map | 1 + 44 files changed, 8963 insertions(+) create mode 100644 ecommerce/.babelrc create mode 100644 ecommerce/.eslintrc.json create mode 100644 ecommerce/.gitignore create mode 100644 ecommerce/README.md create mode 100644 ecommerce/components/Cart.jsx create mode 100644 ecommerce/components/Footer.jsx create mode 100644 ecommerce/components/FooterBanner.jsx create mode 100644 ecommerce/components/HeroBanner.jsx create mode 100644 ecommerce/components/Layout.jsx create mode 100644 ecommerce/components/Navbar.jsx create mode 100644 ecommerce/components/Product.jsx create mode 100644 ecommerce/components/index.js create mode 100644 ecommerce/context/StateContext.js create mode 100644 ecommerce/lib/client.js create mode 100644 ecommerce/lib/getStripe.js create mode 100644 ecommerce/lib/utils.js create mode 100644 ecommerce/next.config.js create mode 100644 ecommerce/package-lock.json create mode 100644 ecommerce/package.json create mode 100644 ecommerce/pages/_app.js create mode 100644 ecommerce/pages/api/hello.js create mode 100644 ecommerce/pages/api/stripe.js create mode 100644 ecommerce/pages/index.js create mode 100644 ecommerce/pages/product/[slug].js create mode 100644 ecommerce/pages/success.js create mode 100644 ecommerce/public/favicon.ico create mode 100644 ecommerce/public/vercel.svg create mode 100644 ecommerce/sanity_ecommerce2/.eslintrc create mode 100644 ecommerce/sanity_ecommerce2/.npmignore create mode 100644 ecommerce/sanity_ecommerce2/config/.checksums create mode 100644 ecommerce/sanity_ecommerce2/config/@sanity/data-aspects.json create mode 100644 ecommerce/sanity_ecommerce2/config/@sanity/default-layout.json create mode 100644 ecommerce/sanity_ecommerce2/config/@sanity/default-login.json create mode 100644 ecommerce/sanity_ecommerce2/config/@sanity/form-builder.json create mode 100644 ecommerce/sanity_ecommerce2/config/@sanity/google-maps-input.json create mode 100644 ecommerce/sanity_ecommerce2/config/@sanity/vision.json create mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js create mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js.map create mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js create mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js.map create mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js create mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js.map create mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js create mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js.map diff --git a/ecommerce/.babelrc b/ecommerce/.babelrc new file mode 100644 index 000000000..68bd97c87 --- /dev/null +++ b/ecommerce/.babelrc @@ -0,0 +1,3 @@ +{ + "presets": ["@babel/preset-react"] +} diff --git a/ecommerce/.eslintrc.json b/ecommerce/.eslintrc.json new file mode 100644 index 000000000..a2ceebebd --- /dev/null +++ b/ecommerce/.eslintrc.json @@ -0,0 +1,3 @@ +{ + "extends": ["next/babel", "next/core-web-vitals"] +} diff --git a/ecommerce/.gitignore b/ecommerce/.gitignore new file mode 100644 index 000000000..c87c9b392 --- /dev/null +++ b/ecommerce/.gitignore @@ -0,0 +1,36 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* +.pnpm-debug.log* + +# local env files +.env*.local + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/ecommerce/README.md b/ecommerce/README.md new file mode 100644 index 000000000..b12f3e33e --- /dev/null +++ b/ecommerce/README.md @@ -0,0 +1,34 @@ +This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app). + +## Getting Started + +First, run the development server: + +```bash +npm run dev +# or +yarn dev +``` + +Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. + +You can start editing the page by modifying `pages/index.js`. The page auto-updates as you edit the file. + +[API routes](https://nextjs.org/docs/api-routes/introduction) can be accessed on [http://localhost:3000/api/hello](http://localhost:3000/api/hello). This endpoint can be edited in `pages/api/hello.js`. + +The `pages/api` directory is mapped to `/api/*`. Files in this directory are treated as [API routes](https://nextjs.org/docs/api-routes/introduction) instead of React pages. + +## Learn More + +To learn more about Next.js, take a look at the following resources: + +- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. +- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. + +You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome! + +## Deploy on Vercel + +The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. + +Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details. diff --git a/ecommerce/components/Cart.jsx b/ecommerce/components/Cart.jsx new file mode 100644 index 000000000..44fe3d66d --- /dev/null +++ b/ecommerce/components/Cart.jsx @@ -0,0 +1,143 @@ +import React, { useRef } from "react"; +import Link from "next/link"; +import { + AiOutlineMinus, + AiOutlinePlus, + AiOutlineLeft, + AiOutlineShopping, +} from "react-icons/ai"; +import { TiDeleteOutline } from "react-icons/ti"; +import toast from "react-hot-toast"; + +import { useStateContext } from "../context/StateContext"; +import { urlFor } from "../lib/client"; +import getStripe from "../lib/getStripe"; + +const Cart = () => { + const cartRef = useRef(); + const { + totalPrice, + totalQuantities, + cartItems, + setShowCart, + toggleCartItemQuanitity, + onRemove, + } = useStateContext(); + + const handleCheckout = async () => { + const stripe = await getStripe(); + + const response = await fetch("/api/stripe", { + method: "POST", + headers: { + "Content-Type": "application/json", + }, + body: JSON.stringify(cartItems), + }); + + if (response.statusCode === 500) return; + + const data = await response.json(); + + toast.loading("Redirecting..."); + + stripe.redirectToCheckout({ sessionId: data.id }); + }; + + return ( +
+
+ toggleCartItemQuanitity(item._id, "dec")
+ }
+ >
+
SAS Store All rights reserverd
+
+
{discount}
+{saleTime}
+{smallText}
+{desc}
+ + + +{heroBanner.smallText}
+{heroBanner.desc}
+{name}
+₹{price}
+will decied
+(20)
+{details}
+₹{price}
+
+
+
+
Check your email inbox for the receipt.
++ If you have any questions, please email + + order@example.com + +
+ + + +dAMQaiH zm^r3v#$Q#2T=X>bsY#D%s!bhs^M9PMAcHbCc0FMHV{u-dwlL;a1eJ63v5U*?Q_8JO zT#50!RD619#j_Uf))0ooADz~*9&lN!bBDRUgE>Vud-i5ck%vT=r^yD*^?Mp@Q^v+V zG#-?gKlr}Eeqifb{|So?HM&g91P8|av8hQoCmQXkd?7wIJw b z_^v8bbg` SAn{I*4bH$u(RZ6*x UhuA~hc=8czK8SHEKTzSxgbwi~9(OqJB&gwb^l4+m`k*Q;_?>Y-APi1{k zAHQ)P)G)f|AyjSgcCFps)Fh6Bca*Xznq36!pV6Az&m{O8$wGFD? zY&O*3*J0;_EqM#jh6^gMQKpXV?#1?>$ml1xvh8nSN>-?H=V;nJIwB07YX$e6vLxH( zqYwQ>qxwR(i4f)DLd)-$P>T-no_c!LsN@)8`e;W@)-Hj0>nJ-}Kla4-ZdPJzI&Mce zv)V_j;(3ERN3_@I$N<^|4Lf`B;8n+bX@bHbcZTopEmDI*Jfl)-pFDvo6svPRoo@(x z);_{lY<;);XzT`dBFpRmGrr}z5u1=p C^ S-{ce6iXQlLGcItwJ^mZx{m$&DA_oEZ)B{_bYPq-HA zcH8WGoBG(aBU_j)vEy+_71T34@4dmSg!|M8Vf92Zj6WH7Q7t#OHQqWgFE3ARt+%!T z?oLovLVlnf?2c7pTc)~cc^($_8nyKwsN`RA-23ed3sdj(ys%pjjM+9JrctL;dy8a( z@en&CQmnV(()bu|Y%G1-4a(6x{aLytn$T-;(&{QIJB9vMox11U-1HpD@d(QkaJdEb zG{)+6Dos_L+O3NpWo^=gR?evp|CqEG?L&Ut#D*KLaRFOgOEK(Kq1@!EGcTfo+%A&I z=dLbB+d$u{sh?u)xP{PF8L%;YPPW53+@{>5W=Jt#wQpN;0_HYdw1{ksf_XhO4#2F= zyPx6Lx2<92L-;L5PD`zn6zwIH`Jk( $?Qw({erA$^bC;q33hv!d!>%wRhj# zal^hk+WGNg;rJtb-EB(?czvOM=H7dl=vblBwAv>}%1@{}mnpUznfq1cE^sgsL0*4I zJ##!*B?=vI_OEVis5o+_IwMIRrpQyT_Sq~ZU%oY7c5JMIADzpD!Upz9h@iWg_>>~j zOLS;wp^i$-E?4<_cp?RiS%Rd?i;f*mOz=~(&3lo<=@(nR!_Rqiprh@weZlL!t#NCc zO!QTcInq|%#>OVgobj{~ixEUec`E25zJ~*DofsQdzIa@5^nOXj2T;8O`l--(QyU ^$t?TGY^7#&FQ+2SS3B#qK*k3`ye?8jUYSajE5iBbJls75CCc(m3dk{t?- zopcER9{Z?TC)mk~gpi^kbbu>b-+a{m#8-y2^p$ka4n60w;Sc2}HMf<8JUvh CL0B&Btk)T`ctE$*qNW8L$`7!r^9T+>=<=2qaq-;ll2{`{Rg zc5a0ZUI$oG&j-qVOuKa=*v4aY#IsoM+1|c4Z)<}lEDvy;5huB@1RJPquU2U*U-;gu z=En2m+qjBzR#DEJDO`WU)hdd{Vj%^0V*KoyZ|5lzV87&g_j~NCjwv0uQVqXOb*QrQ zy|Qn`hxx(58c 70$E;L(X0uZZ72M1!6oeg)(cdKO ze0gDaTz+ohR-#d)NbAH4x{I(21yjwvBQfmpLu$)|m{XolbgF!pmsqJ#D}(ylp6uC> z{bqtcI#hT#HW=wl7>p!38sKsJ`r8}lt-q%Keqy%u(xk=yiIJiUw6|5IvkS+#?JTBl z8H5(Q?l#wzazujH!8o>1xtn8#_w+397* _cy8!pQGP%K(Ga3pAjsaTbbXJlQF_+m+-UpUUent@xM zg%jqLUExj~o^vQ3Gl*>wh=_gOr2*|U64_iXb+-111a H}$TjeajM+I20xw(((>fej-@CIz4S1pi$(#}P7`4({6QS2CaQS4NPENDp>sAqD z$bH4KGzXGffkJ7R>V>)>tC)uax{UsN*dbeNC*v}#8Y#OWYwL4t$ePR?VTyIs!wea+ z5Urmc)X|^`MG~*dS6pGSbU+gPJoq*^a=_>$n4|P^w$sMBBy@f*Z^Jg6?n5?oId6f{ z$LW4M|4m502z0t7g<#Bx%X;9<=)smFolV&(V^(7Cv2-sxbxopQ!)*#ZRhTBpx1)Fc zNm1T%bONzv6@#|dz(w02AH8OXe>kQ#1FMCzO}2J_mST)+ExmBr9cva-@?;wnmWMOk z{3_~EX_xadgJGv&H@zK_8{(x84`}+c?oSBX*Ge3VdfTt&F}yCpFP?CpW+BE^cWY0^ zb&uBN!Ja3UzYHK-CTyA5=L zEMW{l3Usky#ly=7px648W31UNV@K)&Ub&zP1c7%)`{);I4b0Q<)B}3;NMG2JH=X$U zfIW4)4n9ZM`-yRj67I)YSLDK)qfUJ_ij}a#aZN~9EXrh8eZY2&=uY%2N0UFF7<~%M zsB8=erOWZ>Ct_#^tHZ|*q`H;A)5;ycw*I cmVxi8_0Xk}aJA^ath+E;xg!x+As(M#0=)3!NJR6H&9+zd#iP(m0PIW8$ z1Y^VX`>jm`W!=WpF*{ioM?C9`yOR>@0q=u7o>BP-eSHqCgMDj!2anwH?s%i2p+Q7D zzszIf5XJpE)IG4;d_(La-xenmF(tgAxK`Y4sQ}BSJEPs6N_U2vI{8=0C_F?@7<(G; zo$~G=8p+076G;`}>{MQ>t>7cm=zGtfbdDXm6||jUU|?X?CaE?(<6bKDYKeHlz}DA8 zXT={X=yp_R;HfJ9h%?eWvQ!dRgz&Su*JfNt!Wu>|XfU &68iRikRrHRW|ZxzRR^`eIGt zIeiDgVS>IeExKVRWW8-= A= yA`}`)ZkWBrZD`hpWIxBGkh&f#ijr449~m`j6{4jiJ*C!oVA8ZC?$1RM#K(_b zL9TW)kN*Y4%^-qPpMP7d4)o?Nk#>aoYHT(*g)qmRUb?**F@pnNiy6Fv9rEiUqD(^O zzyS?nBrX63BTRYduaG(0VVG2yJRe%o&rVrLjbxTaAFTd8s;<<@Qs>u(<193R8>}2_ zuwp{7;H2a*X7_jryzriZXMg?bTuegABb^87@SsKkr2)0Gyiax8KQWstw^v #ix45EVrcEhr>!NMhprl $InQMzjSFH54x5k9qHc`@9uKQzvL4ihcq{^B zPrVR=o_ic%Y>6&rMN)hTZsI7I<3&`#(nl+3y3ys9A~ &^=4?PL&nd8)`OfG#n zwAMN$1&>K++c{^|7< 4P=2y(B{jJsQ0a#U;HTo4ZmWZYvI{+s;Td{Yzem%0*k#)vjpB zia;J&>}ICate44SFYY3vEelqStQWFihx%^vQ@Do(sOy7yR2@WNv7Y9I^yL=nZr3mb zXKV5t@=?-Sk|b{XMhA7ZGB@2hqsx}4xwCW!in#C zI@}sc Zlr3-NFJ@NFaJlhyfcw{k^vvtGl`N9xSo**rDW4S}i zM9{fMPWo%4wYDG~BZ18BD+}h|GQKc-g^{++3MY>}W_uq7jGHx{mwE9fZiPCoxN$+7 zrODGGJrOkcPQUB(FD5aoS4g~7#6NR^ma7-!>mHuJfY5kTe6PpNNKC9GGRiu^L31uG z$7v`*JknQHsYB!Tm_W{a32TM099djW%5e+j0Ve_ct}IM>XLF1Ap+YvcrLV=|CKo6S zb+ 9Nl3_YdKP6%Cxy@6TxZ>;4&nTneadr z_ES90ydCev)LV!dN=#(*f}|ZORFdvkYBni^aLbUk>BajeWIOcmHP#8S)*2U~QKI%S zyrLmtPqb&TphJ;>yAxri#;{uyk`JJqODDw%(Z=2 `1uc}br^V%>j!gS)D*q*f_-qf8&D;W1dJgQMlaH5er zN2U<%Smb7==vE}dDI8K7cKz!vs^73o9f>2sgiTzWcwY|BMYHH5%Vn7#kiw&eItCqa zIkR2~Q}>X=Ar8W|^Ms41Fm8o6IB2_j60eOeBB1Br!boW7JnoeX6Gs)?7rW0^5psc- zjS16yb>dFn>KPOF;imD}e!enuIniFzv}n$m2#gCCv4jM#ArwlzZ$7@9&XkFxZ4n!V zj3dyiwW4Ki2QG{@i>yuZXQizw_OkZI^-3otXC{!(lUpJF33gI60ak;Uqitp74|B6I zgg{b=Iz}WkhCGj1M =hu4#Aw173YxIVbISaoc z-nLZC*6Tgivd5V`K%GxhBsp@SUU60-rfc$=wb>zdJzXS&-5(NRRodFk;Kxk!S( O(a0e7oY=E( zAyS;Ow?6Q&XA+cnkCb{28_1N8H#?J!*$MmIwLq^*T_9-z^&UE@A(z9oGYtFy6EZef LrJugUA?W`A8`#=m literal 0 HcmV?d00001 diff --git a/ecommerce/public/vercel.svg b/ecommerce/public/vercel.svg new file mode 100644 index 000000000..fbf0e25a6 --- /dev/null +++ b/ecommerce/public/vercel.svg @@ -0,0 +1,4 @@ + \ No newline at end of file diff --git a/ecommerce/sanity_ecommerce2/.eslintrc b/ecommerce/sanity_ecommerce2/.eslintrc new file mode 100644 index 000000000..0fdc787ad --- /dev/null +++ b/ecommerce/sanity_ecommerce2/.eslintrc @@ -0,0 +1,3 @@ +{ + "extends": "@sanity/eslint-config-studio" +} diff --git a/ecommerce/sanity_ecommerce2/.npmignore b/ecommerce/sanity_ecommerce2/.npmignore new file mode 100644 index 000000000..3bc18c38e --- /dev/null +++ b/ecommerce/sanity_ecommerce2/.npmignore @@ -0,0 +1,12 @@ +# Logs +/logs +*.log + +# Coverage directory used by tools like istanbul +/coverage + +# Dependency directories +node_modules + +# Compiled sanity studio +/dist diff --git a/ecommerce/sanity_ecommerce2/config/.checksums b/ecommerce/sanity_ecommerce2/config/.checksums new file mode 100644 index 000000000..05fb320b3 --- /dev/null +++ b/ecommerce/sanity_ecommerce2/config/.checksums @@ -0,0 +1,9 @@ +{ + "#": "Used by Sanity to keep track of configuration file checksums, do not delete or modify!", + "@sanity/default-layout": "bb034f391ba508a6ca8cd971967cbedeb131c4d19b17b28a0895f32db5d568ea", + "@sanity/default-login": "e2ed4e51e97331c0699ba7cf9f67cbf76f1c6a5f806d6eabf8259b2bcb5f1002", + "@sanity/form-builder": "b38478227ba5e22c91981da4b53436df22e48ff25238a55a973ed620be5068aa", + "@sanity/data-aspects": "d199e2c199b3e26cd28b68dc84d7fc01c9186bf5089580f2e2446994d36b3cb6", + "@sanity/google-maps-input": "43e62bbd0a78d3dfd363915959160d2dfeafbac941d5a78a0a4c4fd64d9e7638", + "@sanity/vision": "da5b6ed712703ecd04bf4df560570c668aa95252c6bc1c41d6df1bda9b8b8f60" +} diff --git a/ecommerce/sanity_ecommerce2/config/@sanity/data-aspects.json b/ecommerce/sanity_ecommerce2/config/@sanity/data-aspects.json new file mode 100644 index 000000000..d64838e72 --- /dev/null +++ b/ecommerce/sanity_ecommerce2/config/@sanity/data-aspects.json @@ -0,0 +1,3 @@ +{ + "listOptions": {} +} diff --git a/ecommerce/sanity_ecommerce2/config/@sanity/default-layout.json b/ecommerce/sanity_ecommerce2/config/@sanity/default-layout.json new file mode 100644 index 000000000..4d8b87f4d --- /dev/null +++ b/ecommerce/sanity_ecommerce2/config/@sanity/default-layout.json @@ -0,0 +1,6 @@ +{ + "toolSwitcher": { + "order": [], + "hidden": [] + } +} diff --git a/ecommerce/sanity_ecommerce2/config/@sanity/default-login.json b/ecommerce/sanity_ecommerce2/config/@sanity/default-login.json new file mode 100644 index 000000000..c5d12e322 --- /dev/null +++ b/ecommerce/sanity_ecommerce2/config/@sanity/default-login.json @@ -0,0 +1,8 @@ +{ + "providers": { + "mode": "append", + "redirectOnSingle": false, + "entries": [] + }, + "loginMethod": "dual" +} diff --git a/ecommerce/sanity_ecommerce2/config/@sanity/form-builder.json b/ecommerce/sanity_ecommerce2/config/@sanity/form-builder.json new file mode 100644 index 000000000..b97a6a6d9 --- /dev/null +++ b/ecommerce/sanity_ecommerce2/config/@sanity/form-builder.json @@ -0,0 +1,5 @@ +{ + "images": { + "directUploads": true + } +} diff --git a/ecommerce/sanity_ecommerce2/config/@sanity/google-maps-input.json b/ecommerce/sanity_ecommerce2/config/@sanity/google-maps-input.json new file mode 100644 index 000000000..d35b2adfd --- /dev/null +++ b/ecommerce/sanity_ecommerce2/config/@sanity/google-maps-input.json @@ -0,0 +1,9 @@ +{ + "apiKey": null, + "defaultZoom": 11, + "defaultLocale": null, + "defaultLocation": { + "lat": 40.7058254, + "lng": -74.1180863 + } +} diff --git a/ecommerce/sanity_ecommerce2/config/@sanity/vision.json b/ecommerce/sanity_ecommerce2/config/@sanity/vision.json new file mode 100644 index 000000000..738cbdace --- /dev/null +++ b/ecommerce/sanity_ecommerce2/config/@sanity/vision.json @@ -0,0 +1,3 @@ +{ + "defaultApiVersion": "2021-10-21" +} diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js new file mode 100644 index 000000000..d7c091273 --- /dev/null +++ b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js @@ -0,0 +1,3 @@ +0 && 0; + +//# sourceMappingURL=cache-contexts.js.map diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js.map b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js.map new file mode 100644 index 000000000..37fb689e2 --- /dev/null +++ b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js.map @@ -0,0 +1 @@ +{"version":3,"names":[],"sources":["../../src/config/cache-contexts.ts"],"sourcesContent":["import type { Targets } from \"@babel/helper-compilation-targets\";\n\nimport type { ConfigContext } from \"./config-chain\";\nimport type { CallerMetadata } from \"./validation/options\";\n\nexport type { ConfigContext as FullConfig };\n\nexport type FullPreset = {\n targets: Targets;\n} & ConfigContext;\nexport type FullPlugin = {\n assumptions: { [name: string]: boolean };\n} & FullPreset;\n\n// Context not including filename since it is used in places that cannot\n// process 'ignore'/'only' and other filename-based logic.\nexport type SimpleConfig = {\n envName: string;\n caller: CallerMetadata | undefined;\n};\nexport type SimplePreset = {\n targets: Targets;\n} & SimpleConfig;\nexport type SimplePlugin = {\n assumptions: {\n [name: string]: boolean;\n };\n} & SimplePreset;\n"],"mappings":""} \ No newline at end of file diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js new file mode 100644 index 000000000..31e7db174 --- /dev/null +++ b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js @@ -0,0 +1,328 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.assertSimpleType = assertSimpleType; +exports.makeStrongCache = makeStrongCache; +exports.makeStrongCacheSync = makeStrongCacheSync; +exports.makeWeakCache = makeWeakCache; +exports.makeWeakCacheSync = makeWeakCacheSync; + +function _gensync() { + const data = require("gensync"); + + _gensync = function () { + return data; + }; + + return data; +} + +var _async = require("../gensync-utils/async"); + +var _util = require("./util"); + +const synchronize = gen => { + return _gensync()(gen).sync; +}; + +function* genTrue() { + return true; +} + +function makeWeakCache(handler) { + return makeCachedFunction(WeakMap, handler); +} + +function makeWeakCacheSync(handler) { + return synchronize(makeWeakCache(handler)); +} + +function makeStrongCache(handler) { + return makeCachedFunction(Map, handler); +} + +function makeStrongCacheSync(handler) { + return synchronize(makeStrongCache(handler)); +} + +function makeCachedFunction(CallCache, handler) { + const callCacheSync = new CallCache(); + const callCacheAsync = new CallCache(); + const futureCache = new CallCache(); + return function* cachedFunction(arg, data) { + const asyncContext = yield* (0, _async.isAsync)(); + const callCache = asyncContext ? callCacheAsync : callCacheSync; + const cached = yield* getCachedValueOrWait(asyncContext, callCache, futureCache, arg, data); + if (cached.valid) return cached.value; + const cache = new CacheConfigurator(data); + const handlerResult = handler(arg, cache); + let finishLock; + let value; + + if ((0, _util.isIterableIterator)(handlerResult)) { + value = yield* (0, _async.onFirstPause)(handlerResult, () => { + finishLock = setupAsyncLocks(cache, futureCache, arg); + }); + } else { + value = handlerResult; + } + + updateFunctionCache(callCache, cache, arg, value); + + if (finishLock) { + futureCache.delete(arg); + finishLock.release(value); + } + + return value; + }; +} + +function* getCachedValue(cache, arg, data) { + const cachedValue = cache.get(arg); + + if (cachedValue) { + for (const { + value, + valid + } of cachedValue) { + if (yield* valid(data)) return { + valid: true, + value + }; + } + } + + return { + valid: false, + value: null + }; +} + +function* getCachedValueOrWait(asyncContext, callCache, futureCache, arg, data) { + const cached = yield* getCachedValue(callCache, arg, data); + + if (cached.valid) { + return cached; + } + + if (asyncContext) { + const cached = yield* getCachedValue(futureCache, arg, data); + + if (cached.valid) { + const value = yield* (0, _async.waitFor)(cached.value.promise); + return { + valid: true, + value + }; + } + } + + return { + valid: false, + value: null + }; +} + +function setupAsyncLocks(config, futureCache, arg) { + const finishLock = new Lock(); + updateFunctionCache(futureCache, config, arg, finishLock); + return finishLock; +} + +function updateFunctionCache(cache, config, arg, value) { + if (!config.configured()) config.forever(); + let cachedValue = cache.get(arg); + config.deactivate(); + + switch (config.mode()) { + case "forever": + cachedValue = [{ + value, + valid: genTrue + }]; + cache.set(arg, cachedValue); + break; + + case "invalidate": + cachedValue = [{ + value, + valid: config.validator() + }]; + cache.set(arg, cachedValue); + break; + + case "valid": + if (cachedValue) { + cachedValue.push({ + value, + valid: config.validator() + }); + } else { + cachedValue = [{ + value, + valid: config.validator() + }]; + cache.set(arg, cachedValue); + } + + } +} + +class CacheConfigurator { + constructor(data) { + this._active = true; + this._never = false; + this._forever = false; + this._invalidate = false; + this._configured = false; + this._pairs = []; + this._data = void 0; + this._data = data; + } + + simple() { + return makeSimpleConfigurator(this); + } + + mode() { + if (this._never) return "never"; + if (this._forever) return "forever"; + if (this._invalidate) return "invalidate"; + return "valid"; + } + + forever() { + if (!this._active) { + throw new Error("Cannot change caching after evaluation has completed."); + } + + if (this._never) { + throw new Error("Caching has already been configured with .never()"); + } + + this._forever = true; + this._configured = true; + } + + never() { + if (!this._active) { + throw new Error("Cannot change caching after evaluation has completed."); + } + + if (this._forever) { + throw new Error("Caching has already been configured with .forever()"); + } + + this._never = true; + this._configured = true; + } + + using(handler) { + if (!this._active) { + throw new Error("Cannot change caching after evaluation has completed."); + } + + if (this._never || this._forever) { + throw new Error("Caching has already been configured with .never or .forever()"); + } + + this._configured = true; + const key = handler(this._data); + const fn = (0, _async.maybeAsync)(handler, `You appear to be using an async cache handler, but Babel has been called synchronously`); + + if ((0, _async.isThenable)(key)) { + return key.then(key => { + this._pairs.push([key, fn]); + + return key; + }); + } + + this._pairs.push([key, fn]); + + return key; + } + + invalidate(handler) { + this._invalidate = true; + return this.using(handler); + } + + validator() { + const pairs = this._pairs; + return function* (data) { + for (const [key, fn] of pairs) { + if (key !== (yield* fn(data))) return false; + } + + return true; + }; + } + + deactivate() { + this._active = false; + } + + configured() { + return this._configured; + } + +} + +function makeSimpleConfigurator(cache) { + function cacheFn(val) { + if (typeof val === "boolean") { + if (val) cache.forever();else cache.never(); + return; + } + + return cache.using(() => assertSimpleType(val())); + } + + cacheFn.forever = () => cache.forever(); + + cacheFn.never = () => cache.never(); + + cacheFn.using = cb => cache.using(() => assertSimpleType(cb())); + + cacheFn.invalidate = cb => cache.invalidate(() => assertSimpleType(cb())); + + return cacheFn; +} + +function assertSimpleType(value) { + if ((0, _async.isThenable)(value)) { + throw new Error(`You appear to be using an async cache handler, ` + `which your current version of Babel does not support. ` + `We may add support for this in the future, ` + `but if you're on the most recent version of @babel/core and still ` + `seeing this error, then you'll need to synchronously handle your caching logic.`); + } + + if (value != null && typeof value !== "string" && typeof value !== "boolean" && typeof value !== "number") { + throw new Error("Cache keys must be either string, boolean, number, null, or undefined."); + } + + return value; +} + +class Lock { + constructor() { + this.released = false; + this.promise = void 0; + this._resolve = void 0; + this.promise = new Promise(resolve => { + this._resolve = resolve; + }); + } + + release(value) { + this.released = true; + + this._resolve(value); + } + +} + +0 && 0; + +//# sourceMappingURL=caching.js.map diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js.map b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js.map new file mode 100644 index 000000000..e5d3333d9 --- /dev/null +++ b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js.map @@ -0,0 +1 @@ +{"version":3,"names":["synchronize","gen","gensync","sync","genTrue","makeWeakCache","handler","makeCachedFunction","WeakMap","makeWeakCacheSync","makeStrongCache","Map","makeStrongCacheSync","CallCache","callCacheSync","callCacheAsync","futureCache","cachedFunction","arg","data","asyncContext","isAsync","callCache","cached","getCachedValueOrWait","valid","value","cache","CacheConfigurator","handlerResult","finishLock","isIterableIterator","onFirstPause","setupAsyncLocks","updateFunctionCache","delete","release","getCachedValue","cachedValue","get","waitFor","promise","config","Lock","configured","forever","deactivate","mode","set","validator","push","constructor","_active","_never","_forever","_invalidate","_configured","_pairs","_data","simple","makeSimpleConfigurator","Error","never","using","key","fn","maybeAsync","isThenable","then","invalidate","pairs","cacheFn","val","assertSimpleType","cb","released","_resolve","Promise","resolve"],"sources":["../../src/config/caching.ts"],"sourcesContent":["import gensync from \"gensync\";\nimport type { Handler } from \"gensync\";\nimport {\n maybeAsync,\n isAsync,\n onFirstPause,\n waitFor,\n isThenable,\n} from \"../gensync-utils/async\";\nimport { isIterableIterator } from \"./util\";\n\nexport type { CacheConfigurator };\n\nexport type SimpleCacheConfigurator = {\n (forever: boolean): void;\n (handler: () => T): T;\n\n forever: () => void;\n never: () => void;\n using: (handler: () => T) => T;\n invalidate: (handler: () => T) => T;\n};\n\nexport type CacheEntry = Array<{\n value: ResultT;\n valid: (channel: SideChannel) => Handler ;\n}>;\n\nconst synchronize = (\n gen: (...args: ArgsT) => Handler ,\n): ((...args: ArgsT) => ResultT) => {\n return gensync(gen).sync;\n};\n\n// eslint-disable-next-line require-yield\nfunction* genTrue() {\n return true;\n}\n\nexport function makeWeakCache (\n handler: (\n arg: ArgT,\n cache: CacheConfigurator ,\n ) => Handler | ResultT,\n): (arg: ArgT, data: SideChannel) => Handler {\n return makeCachedFunction (WeakMap, handler);\n}\n\nexport function makeWeakCacheSync (\n handler: (arg: ArgT, cache?: CacheConfigurator ) => ResultT,\n): (arg: ArgT, data?: SideChannel) => ResultT {\n return synchronize<[ArgT, SideChannel], ResultT>(\n makeWeakCache (handler),\n );\n}\n\nexport function makeStrongCache (\n handler: (\n arg: ArgT,\n cache: CacheConfigurator ,\n ) => Handler | ResultT,\n): (arg: ArgT, data: SideChannel) => Handler {\n return makeCachedFunction (Map, handler);\n}\n\nexport function makeStrongCacheSync (\n handler: (arg: ArgT, cache?: CacheConfigurator ) => ResultT,\n): (arg: ArgT, data?: SideChannel) => ResultT {\n return synchronize<[ArgT, SideChannel], ResultT>(\n makeStrongCache (handler),\n );\n}\n\n/* NOTE: Part of the logic explained in this comment is explained in the\n * getCachedValueOrWait and setupAsyncLocks functions.\n *\n * > There are only two hard things in Computer Science: cache invalidation and naming things.\n * > -- Phil Karlton\n *\n * I don't know if Phil was also thinking about handling a cache whose invalidation function is\n * defined asynchronously is considered, but it is REALLY hard to do correctly.\n *\n * The implemented logic (only when gensync is run asynchronously) is the following:\n * 1. If there is a valid cache associated to the current \"arg\" parameter,\n * a. RETURN the cached value\n * 3. If there is a FinishLock associated to the current \"arg\" parameter representing a valid cache,\n * a. Wait for that lock to be released\n * b. RETURN the value associated with that lock\n * 5. Start executing the function to be cached\n * a. If it pauses on a promise, then\n * i. Let FinishLock be a new lock\n * ii. Store FinishLock as associated to the current \"arg\" parameter\n * iii. Wait for the function to finish executing\n * iv. Release FinishLock\n * v. Send the function result to anyone waiting on FinishLock\n * 6. Store the result in the cache\n * 7. RETURN the result\n */\nfunction makeCachedFunction (\n CallCache: new () => CacheMap ,\n handler: (\n arg: ArgT,\n cache: CacheConfigurator ,\n ) => Handler | ResultT,\n): (arg: ArgT, data: SideChannel) => Handler {\n const callCacheSync = new CallCache ();\n const callCacheAsync = new CallCache ();\n const futureCache = new CallCache >();\n\n return function* cachedFunction(arg: ArgT, data: SideChannel) {\n const asyncContext = yield* isAsync();\n const callCache = asyncContext ? callCacheAsync : callCacheSync;\n\n const cached = yield* getCachedValueOrWait (\n asyncContext,\n callCache,\n futureCache,\n arg,\n data,\n );\n if (cached.valid) return cached.value;\n\n const cache = new CacheConfigurator(data);\n\n const handlerResult: Handler | ResultT = handler(arg, cache);\n\n let finishLock: Lock ;\n let value: ResultT;\n\n if (isIterableIterator(handlerResult)) {\n value = yield* onFirstPause(handlerResult, () => {\n finishLock = setupAsyncLocks(cache, futureCache, arg);\n });\n } else {\n value = handlerResult;\n }\n\n updateFunctionCache(callCache, cache, arg, value);\n\n if (finishLock) {\n futureCache.delete(arg);\n finishLock.release(value);\n }\n\n return value;\n };\n}\n\ntype CacheMap =\n | Map >\n // @ts-expect-error todo(flow->ts): add `extends object` constraint to ArgT\n | WeakMap >;\n\nfunction* getCachedValue (\n cache: CacheMap ,\n arg: ArgT,\n data: SideChannel,\n): Handler<{ valid: true; value: ResultT } | { valid: false; value: null }> {\n const cachedValue: CacheEntry | void = cache.get(arg);\n\n if (cachedValue) {\n for (const { value, valid } of cachedValue) {\n if (yield* valid(data)) return { valid: true, value };\n }\n }\n\n return { valid: false, value: null };\n}\n\nfunction* getCachedValueOrWait (\n asyncContext: boolean,\n callCache: CacheMap ,\n futureCache: CacheMap , SideChannel>,\n arg: ArgT,\n data: SideChannel,\n): Handler<{ valid: true; value: ResultT } | { valid: false; value: null }> {\n const cached = yield* getCachedValue(callCache, arg, data);\n if (cached.valid) {\n return cached;\n }\n\n if (asyncContext) {\n const cached = yield* getCachedValue(futureCache, arg, data);\n if (cached.valid) {\n const value = yield* waitFor (cached.value.promise);\n return { valid: true, value };\n }\n }\n\n return { valid: false, value: null };\n}\n\nfunction setupAsyncLocks (\n config: CacheConfigurator ,\n futureCache: CacheMap , SideChannel>,\n arg: ArgT,\n): Lock {\n const finishLock = new Lock ();\n\n updateFunctionCache(futureCache, config, arg, finishLock);\n\n return finishLock;\n}\n\nfunction updateFunctionCache<\n ArgT,\n ResultT,\n SideChannel,\n Cache extends CacheMap ,\n>(\n cache: Cache,\n config: CacheConfigurator ,\n arg: ArgT,\n value: ResultT,\n) {\n if (!config.configured()) config.forever();\n\n let cachedValue: CacheEntry | void = cache.get(arg);\n\n config.deactivate();\n\n switch (config.mode()) {\n case \"forever\":\n cachedValue = [{ value, valid: genTrue }];\n cache.set(arg, cachedValue);\n break;\n case \"invalidate\":\n cachedValue = [{ value, valid: config.validator() }];\n cache.set(arg, cachedValue);\n break;\n case \"valid\":\n if (cachedValue) {\n cachedValue.push({ value, valid: config.validator() });\n } else {\n cachedValue = [{ value, valid: config.validator() }];\n cache.set(arg, cachedValue);\n }\n }\n}\n\nclass CacheConfigurator {\n _active: boolean = true;\n _never: boolean = false;\n _forever: boolean = false;\n _invalidate: boolean = false;\n\n _configured: boolean = false;\n\n _pairs: Array<\n [cachedValue: unknown, handler: (data: SideChannel) => Handler ]\n > = [];\n\n _data: SideChannel;\n\n constructor(data: SideChannel) {\n this._data = data;\n }\n\n simple() {\n return makeSimpleConfigurator(this);\n }\n\n mode() {\n if (this._never) return \"never\";\n if (this._forever) return \"forever\";\n if (this._invalidate) return \"invalidate\";\n return \"valid\";\n }\n\n forever() {\n if (!this._active) {\n throw new Error(\"Cannot change caching after evaluation has completed.\");\n }\n if (this._never) {\n throw new Error(\"Caching has already been configured with .never()\");\n }\n this._forever = true;\n this._configured = true;\n }\n\n never() {\n if (!this._active) {\n throw new Error(\"Cannot change caching after evaluation has completed.\");\n }\n if (this._forever) {\n throw new Error(\"Caching has already been configured with .forever()\");\n }\n this._never = true;\n this._configured = true;\n }\n\n using (handler: (data: SideChannel) => T): T {\n if (!this._active) {\n throw new Error(\"Cannot change caching after evaluation has completed.\");\n }\n if (this._never || this._forever) {\n throw new Error(\n \"Caching has already been configured with .never or .forever()\",\n );\n }\n this._configured = true;\n\n const key = handler(this._data);\n\n const fn = maybeAsync(\n handler,\n `You appear to be using an async cache handler, but Babel has been called synchronously`,\n );\n\n if (isThenable(key)) {\n // @ts-expect-error todo(flow->ts): improve function return type annotation\n return key.then((key: unknown) => {\n this._pairs.push([key, fn]);\n return key;\n });\n }\n\n this._pairs.push([key, fn]);\n return key;\n }\n\n invalidate (handler: (data: SideChannel) => T): T {\n this._invalidate = true;\n return this.using(handler);\n }\n\n validator(): (data: SideChannel) => Handler {\n const pairs = this._pairs;\n return function* (data: SideChannel) {\n for (const [key, fn] of pairs) {\n if (key !== (yield* fn(data))) return false;\n }\n return true;\n };\n }\n\n deactivate() {\n this._active = false;\n }\n\n configured() {\n return this._configured;\n }\n}\n\nfunction makeSimpleConfigurator(\n cache: CacheConfigurator ,\n): SimpleCacheConfigurator {\n function cacheFn(val: any) {\n if (typeof val === \"boolean\") {\n if (val) cache.forever();\n else cache.never();\n return;\n }\n\n return cache.using(() => assertSimpleType(val()));\n }\n cacheFn.forever = () => cache.forever();\n cacheFn.never = () => cache.never();\n cacheFn.using = (cb: { (): SimpleType }) =>\n cache.using(() => assertSimpleType(cb()));\n cacheFn.invalidate = (cb: { (): SimpleType }) =>\n cache.invalidate(() => assertSimpleType(cb()));\n\n return cacheFn as any;\n}\n\n// Types are limited here so that in the future these values can be used\n// as part of Babel's caching logic.\nexport type SimpleType =\n | string\n | boolean\n | number\n | null\n | void\n | Promise ;\nexport function assertSimpleType(value: unknown): SimpleType {\n if (isThenable(value)) {\n throw new Error(\n `You appear to be using an async cache handler, ` +\n `which your current version of Babel does not support. ` +\n `We may add support for this in the future, ` +\n `but if you're on the most recent version of @babel/core and still ` +\n `seeing this error, then you'll need to synchronously handle your caching logic.`,\n );\n }\n\n if (\n value != null &&\n typeof value !== \"string\" &&\n typeof value !== \"boolean\" &&\n typeof value !== \"number\"\n ) {\n throw new Error(\n \"Cache keys must be either string, boolean, number, null, or undefined.\",\n );\n }\n // @ts-expect-error Type 'unknown' is not assignable to type 'SimpleType'. This can be removed\n // when strictNullCheck is enabled\n return value;\n}\n\nclass Lock {\n released: boolean = false;\n promise: Promise ;\n _resolve: (value: T) => void;\n\n constructor() {\n this.promise = new Promise(resolve => {\n this._resolve = resolve;\n });\n }\n\n release(value: T) {\n this.released = true;\n this._resolve(value);\n }\n}\n"],"mappings":";;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;;AAOA;;AAmBA,MAAMA,WAAW,GACfC,GADkB,IAEgB;EAClC,OAAOC,UAAA,CAAQD,GAAR,EAAaE,IAApB;AACD,CAJD;;AAOA,UAAUC,OAAV,GAAoB;EAClB,OAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CACLC,OADK,EAK+C;EACpD,OAAOC,kBAAkB,CAA6BC,OAA7B,EAAsCF,OAAtC,CAAzB;AACD;;AAEM,SAASG,iBAAT,CACLH,OADK,EAEuC;EAC5C,OAAON,WAAW,CAChBK,aAAa,CAA6BC,OAA7B,CADG,CAAlB;AAGD;;AAEM,SAASI,eAAT,CACLJ,OADK,EAK+C;EACpD,OAAOC,kBAAkB,CAA6BI,GAA7B,EAAkCL,OAAlC,CAAzB;AACD;;AAEM,SAASM,mBAAT,CACLN,OADK,EAEuC;EAC5C,OAAON,WAAW,CAChBU,eAAe,CAA6BJ,OAA7B,CADC,CAAlB;AAGD;;AA2BD,SAASC,kBAAT,CACEM,SADF,EAEEP,OAFF,EAMsD;EACpD,MAAMQ,aAAa,GAAG,IAAID,SAAJ,EAAtB;EACA,MAAME,cAAc,GAAG,IAAIF,SAAJ,EAAvB;EACA,MAAMG,WAAW,GAAG,IAAIH,SAAJ,EAApB;EAEA,OAAO,UAAUI,cAAV,CAAyBC,GAAzB,EAAoCC,IAApC,EAAuD;IAC5D,MAAMC,YAAY,GAAG,OAAO,IAAAC,cAAA,GAA5B;IACA,MAAMC,SAAS,GAAGF,YAAY,GAAGL,cAAH,GAAoBD,aAAlD;IAEA,MAAMS,MAAM,GAAG,OAAOC,oBAAoB,CACxCJ,YADwC,EAExCE,SAFwC,EAGxCN,WAHwC,EAIxCE,GAJwC,EAKxCC,IALwC,CAA1C;IAOA,IAAII,MAAM,CAACE,KAAX,EAAkB,OAAOF,MAAM,CAACG,KAAd;IAElB,MAAMC,KAAK,GAAG,IAAIC,iBAAJ,CAAsBT,IAAtB,CAAd;IAEA,MAAMU,aAAyC,GAAGvB,OAAO,CAACY,GAAD,EAAMS,KAAN,CAAzD;IAEA,IAAIG,UAAJ;IACA,IAAIJ,KAAJ;;IAEA,IAAI,IAAAK,wBAAA,EAAmBF,aAAnB,CAAJ,EAAuC;MACrCH,KAAK,GAAG,OAAO,IAAAM,mBAAA,EAAaH,aAAb,EAA4B,MAAM;QAC/CC,UAAU,GAAGG,eAAe,CAACN,KAAD,EAAQX,WAAR,EAAqBE,GAArB,CAA5B;MACD,CAFc,CAAf;IAGD,CAJD,MAIO;MACLQ,KAAK,GAAGG,aAAR;IACD;;IAEDK,mBAAmB,CAACZ,SAAD,EAAYK,KAAZ,EAAmBT,GAAnB,EAAwBQ,KAAxB,CAAnB;;IAEA,IAAII,UAAJ,EAAgB;MACdd,WAAW,CAACmB,MAAZ,CAAmBjB,GAAnB;MACAY,UAAU,CAACM,OAAX,CAAmBV,KAAnB;IACD;;IAED,OAAOA,KAAP;EACD,CApCD;AAqCD;;AAOD,UAAUW,cAAV,CACEV,KADF,EAEET,GAFF,EAGEC,IAHF,EAI4E;EAC1E,MAAMmB,WAAoD,GAAGX,KAAK,CAACY,GAAN,CAAUrB,GAAV,CAA7D;;EAEA,IAAIoB,WAAJ,EAAiB;IACf,KAAK,MAAM;MAAEZ,KAAF;MAASD;IAAT,CAAX,IAA+Ba,WAA/B,EAA4C;MAC1C,IAAI,OAAOb,KAAK,CAACN,IAAD,CAAhB,EAAwB,OAAO;QAAEM,KAAK,EAAE,IAAT;QAAeC;MAAf,CAAP;IACzB;EACF;;EAED,OAAO;IAAED,KAAK,EAAE,KAAT;IAAgBC,KAAK,EAAE;EAAvB,CAAP;AACD;;AAED,UAAUF,oBAAV,CACEJ,YADF,EAEEE,SAFF,EAGEN,WAHF,EAIEE,GAJF,EAKEC,IALF,EAM4E;EAC1E,MAAMI,MAAM,GAAG,OAAOc,cAAc,CAACf,SAAD,EAAYJ,GAAZ,EAAiBC,IAAjB,CAApC;;EACA,IAAII,MAAM,CAACE,KAAX,EAAkB;IAChB,OAAOF,MAAP;EACD;;EAED,IAAIH,YAAJ,EAAkB;IAChB,MAAMG,MAAM,GAAG,OAAOc,cAAc,CAACrB,WAAD,EAAcE,GAAd,EAAmBC,IAAnB,CAApC;;IACA,IAAII,MAAM,CAACE,KAAX,EAAkB;MAChB,MAAMC,KAAK,GAAG,OAAO,IAAAc,cAAA,EAAiBjB,MAAM,CAACG,KAAP,CAAae,OAA9B,CAArB;MACA,OAAO;QAAEhB,KAAK,EAAE,IAAT;QAAeC;MAAf,CAAP;IACD;EACF;;EAED,OAAO;IAAED,KAAK,EAAE,KAAT;IAAgBC,KAAK,EAAE;EAAvB,CAAP;AACD;;AAED,SAASO,eAAT,CACES,MADF,EAEE1B,WAFF,EAGEE,GAHF,EAIiB;EACf,MAAMY,UAAU,GAAG,IAAIa,IAAJ,EAAnB;EAEAT,mBAAmB,CAAClB,WAAD,EAAc0B,MAAd,EAAsBxB,GAAtB,EAA2BY,UAA3B,CAAnB;EAEA,OAAOA,UAAP;AACD;;AAED,SAASI,mBAAT,CAMEP,KANF,EAOEe,MAPF,EAQExB,GARF,EASEQ,KATF,EAUE;EACA,IAAI,CAACgB,MAAM,CAACE,UAAP,EAAL,EAA0BF,MAAM,CAACG,OAAP;EAE1B,IAAIP,WAAoD,GAAGX,KAAK,CAACY,GAAN,CAAUrB,GAAV,CAA3D;EAEAwB,MAAM,CAACI,UAAP;;EAEA,QAAQJ,MAAM,CAACK,IAAP,EAAR;IACE,KAAK,SAAL;MACET,WAAW,GAAG,CAAC;QAAEZ,KAAF;QAASD,KAAK,EAAErB;MAAhB,CAAD,CAAd;MACAuB,KAAK,CAACqB,GAAN,CAAU9B,GAAV,EAAeoB,WAAf;MACA;;IACF,KAAK,YAAL;MACEA,WAAW,GAAG,CAAC;QAAEZ,KAAF;QAASD,KAAK,EAAEiB,MAAM,CAACO,SAAP;MAAhB,CAAD,CAAd;MACAtB,KAAK,CAACqB,GAAN,CAAU9B,GAAV,EAAeoB,WAAf;MACA;;IACF,KAAK,OAAL;MACE,IAAIA,WAAJ,EAAiB;QACfA,WAAW,CAACY,IAAZ,CAAiB;UAAExB,KAAF;UAASD,KAAK,EAAEiB,MAAM,CAACO,SAAP;QAAhB,CAAjB;MACD,CAFD,MAEO;QACLX,WAAW,GAAG,CAAC;UAAEZ,KAAF;UAASD,KAAK,EAAEiB,MAAM,CAACO,SAAP;QAAhB,CAAD,CAAd;QACAtB,KAAK,CAACqB,GAAN,CAAU9B,GAAV,EAAeoB,WAAf;MACD;;EAfL;AAiBD;;AAED,MAAMV,iBAAN,CAA4C;EAc1CuB,WAAW,CAAChC,IAAD,EAAoB;IAAA,KAb/BiC,OAa+B,GAbZ,IAaY;IAAA,KAZ/BC,MAY+B,GAZb,KAYa;IAAA,KAX/BC,QAW+B,GAXX,KAWW;IAAA,KAV/BC,WAU+B,GAVR,KAUQ;IAAA,KAR/BC,WAQ+B,GARR,KAQQ;IAAA,KAN/BC,MAM+B,GAJ3B,EAI2B;IAAA,KAF/BC,KAE+B;IAC7B,KAAKA,KAAL,GAAavC,IAAb;EACD;;EAEDwC,MAAM,GAAG;IACP,OAAOC,sBAAsB,CAAC,IAAD,CAA7B;EACD;;EAEDb,IAAI,GAAG;IACL,IAAI,KAAKM,MAAT,EAAiB,OAAO,OAAP;IACjB,IAAI,KAAKC,QAAT,EAAmB,OAAO,SAAP;IACnB,IAAI,KAAKC,WAAT,EAAsB,OAAO,YAAP;IACtB,OAAO,OAAP;EACD;;EAEDV,OAAO,GAAG;IACR,IAAI,CAAC,KAAKO,OAAV,EAAmB;MACjB,MAAM,IAAIS,KAAJ,CAAU,uDAAV,CAAN;IACD;;IACD,IAAI,KAAKR,MAAT,EAAiB;MACf,MAAM,IAAIQ,KAAJ,CAAU,mDAAV,CAAN;IACD;;IACD,KAAKP,QAAL,GAAgB,IAAhB;IACA,KAAKE,WAAL,GAAmB,IAAnB;EACD;;EAEDM,KAAK,GAAG;IACN,IAAI,CAAC,KAAKV,OAAV,EAAmB;MACjB,MAAM,IAAIS,KAAJ,CAAU,uDAAV,CAAN;IACD;;IACD,IAAI,KAAKP,QAAT,EAAmB;MACjB,MAAM,IAAIO,KAAJ,CAAU,qDAAV,CAAN;IACD;;IACD,KAAKR,MAAL,GAAc,IAAd;IACA,KAAKG,WAAL,GAAmB,IAAnB;EACD;;EAEDO,KAAK,CAAIzD,OAAJ,EAA0C;IAC7C,IAAI,CAAC,KAAK8C,OAAV,EAAmB;MACjB,MAAM,IAAIS,KAAJ,CAAU,uDAAV,CAAN;IACD;;IACD,IAAI,KAAKR,MAAL,IAAe,KAAKC,QAAxB,EAAkC;MAChC,MAAM,IAAIO,KAAJ,CACJ,+DADI,CAAN;IAGD;;IACD,KAAKL,WAAL,GAAmB,IAAnB;IAEA,MAAMQ,GAAG,GAAG1D,OAAO,CAAC,KAAKoD,KAAN,CAAnB;IAEA,MAAMO,EAAE,GAAG,IAAAC,iBAAA,EACT5D,OADS,EAER,wFAFQ,CAAX;;IAKA,IAAI,IAAA6D,iBAAA,EAAWH,GAAX,CAAJ,EAAqB;MAEnB,OAAOA,GAAG,CAACI,IAAJ,CAAUJ,GAAD,IAAkB;QAChC,KAAKP,MAAL,CAAYP,IAAZ,CAAiB,CAACc,GAAD,EAAMC,EAAN,CAAjB;;QACA,OAAOD,GAAP;MACD,CAHM,CAAP;IAID;;IAED,KAAKP,MAAL,CAAYP,IAAZ,CAAiB,CAACc,GAAD,EAAMC,EAAN,CAAjB;;IACA,OAAOD,GAAP;EACD;;EAEDK,UAAU,CAAI/D,OAAJ,EAA0C;IAClD,KAAKiD,WAAL,GAAmB,IAAnB;IACA,OAAO,KAAKQ,KAAL,CAAWzD,OAAX,CAAP;EACD;;EAED2C,SAAS,GAA4C;IACnD,MAAMqB,KAAK,GAAG,KAAKb,MAAnB;IACA,OAAO,WAAWtC,IAAX,EAA8B;MACnC,KAAK,MAAM,CAAC6C,GAAD,EAAMC,EAAN,CAAX,IAAwBK,KAAxB,EAA+B;QAC7B,IAAIN,GAAG,MAAM,OAAOC,EAAE,CAAC9C,IAAD,CAAf,CAAP,EAA+B,OAAO,KAAP;MAChC;;MACD,OAAO,IAAP;IACD,CALD;EAMD;;EAED2B,UAAU,GAAG;IACX,KAAKM,OAAL,GAAe,KAAf;EACD;;EAEDR,UAAU,GAAG;IACX,OAAO,KAAKY,WAAZ;EACD;;AAtGyC;;AAyG5C,SAASI,sBAAT,CACEjC,KADF,EAE2B;EACzB,SAAS4C,OAAT,CAAiBC,GAAjB,EAA2B;IACzB,IAAI,OAAOA,GAAP,KAAe,SAAnB,EAA8B;MAC5B,IAAIA,GAAJ,EAAS7C,KAAK,CAACkB,OAAN,GAAT,KACKlB,KAAK,CAACmC,KAAN;MACL;IACD;;IAED,OAAOnC,KAAK,CAACoC,KAAN,CAAY,MAAMU,gBAAgB,CAACD,GAAG,EAAJ,CAAlC,CAAP;EACD;;EACDD,OAAO,CAAC1B,OAAR,GAAkB,MAAMlB,KAAK,CAACkB,OAAN,EAAxB;;EACA0B,OAAO,CAACT,KAAR,GAAgB,MAAMnC,KAAK,CAACmC,KAAN,EAAtB;;EACAS,OAAO,CAACR,KAAR,GAAiBW,EAAD,IACd/C,KAAK,CAACoC,KAAN,CAAY,MAAMU,gBAAgB,CAACC,EAAE,EAAH,CAAlC,CADF;;EAEAH,OAAO,CAACF,UAAR,GAAsBK,EAAD,IACnB/C,KAAK,CAAC0C,UAAN,CAAiB,MAAMI,gBAAgB,CAACC,EAAE,EAAH,CAAvC,CADF;;EAGA,OAAOH,OAAP;AACD;;AAWM,SAASE,gBAAT,CAA0B/C,KAA1B,EAAsD;EAC3D,IAAI,IAAAyC,iBAAA,EAAWzC,KAAX,CAAJ,EAAuB;IACrB,MAAM,IAAImC,KAAJ,CACH,iDAAD,GACG,wDADH,GAEG,6CAFH,GAGG,oEAHH,GAIG,iFALC,CAAN;EAOD;;EAED,IACEnC,KAAK,IAAI,IAAT,IACA,OAAOA,KAAP,KAAiB,QADjB,IAEA,OAAOA,KAAP,KAAiB,SAFjB,IAGA,OAAOA,KAAP,KAAiB,QAJnB,EAKE;IACA,MAAM,IAAImC,KAAJ,CACJ,wEADI,CAAN;EAGD;;EAGD,OAAOnC,KAAP;AACD;;AAED,MAAMiB,IAAN,CAAc;EAKZQ,WAAW,GAAG;IAAA,KAJdwB,QAIc,GAJM,KAIN;IAAA,KAHdlC,OAGc;IAAA,KAFdmC,QAEc;IACZ,KAAKnC,OAAL,GAAe,IAAIoC,OAAJ,CAAYC,OAAO,IAAI;MACpC,KAAKF,QAAL,GAAgBE,OAAhB;IACD,CAFc,CAAf;EAGD;;EAED1C,OAAO,CAACV,KAAD,EAAW;IAChB,KAAKiD,QAAL,GAAgB,IAAhB;;IACA,KAAKC,QAAL,CAAclD,KAAd;EACD;;AAdW"} \ No newline at end of file diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js new file mode 100644 index 000000000..9f4d1d571 --- /dev/null +++ b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js @@ -0,0 +1,572 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.buildPresetChain = buildPresetChain; +exports.buildPresetChainWalker = void 0; +exports.buildRootChain = buildRootChain; + +function _path() { + const data = require("path"); + + _path = function () { + return data; + }; + + return data; +} + +function _debug() { + const data = require("debug"); + + _debug = function () { + return data; + }; + + return data; +} + +var _options = require("./validation/options"); + +var _patternToRegex = require("./pattern-to-regex"); + +var _printer = require("./printer"); + +var _rewriteStackTrace = require("../errors/rewrite-stack-trace"); + +var _configError = require("../errors/config-error"); + +var _files = require("./files"); + +var _caching = require("./caching"); + +var _configDescriptors = require("./config-descriptors"); + +const debug = _debug()("babel:config:config-chain"); + +function* buildPresetChain(arg, context) { + const chain = yield* buildPresetChainWalker(arg, context); + if (!chain) return null; + return { + plugins: dedupDescriptors(chain.plugins), + presets: dedupDescriptors(chain.presets), + options: chain.options.map(o => normalizeOptions(o)), + files: new Set() + }; +} + +const buildPresetChainWalker = makeChainWalker({ + root: preset => loadPresetDescriptors(preset), + env: (preset, envName) => loadPresetEnvDescriptors(preset)(envName), + overrides: (preset, index) => loadPresetOverridesDescriptors(preset)(index), + overridesEnv: (preset, index, envName) => loadPresetOverridesEnvDescriptors(preset)(index)(envName), + createLogger: () => () => {} +}); +exports.buildPresetChainWalker = buildPresetChainWalker; +const loadPresetDescriptors = (0, _caching.makeWeakCacheSync)(preset => buildRootDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors)); +const loadPresetEnvDescriptors = (0, _caching.makeWeakCacheSync)(preset => (0, _caching.makeStrongCacheSync)(envName => buildEnvDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, envName))); +const loadPresetOverridesDescriptors = (0, _caching.makeWeakCacheSync)(preset => (0, _caching.makeStrongCacheSync)(index => buildOverrideDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, index))); +const loadPresetOverridesEnvDescriptors = (0, _caching.makeWeakCacheSync)(preset => (0, _caching.makeStrongCacheSync)(index => (0, _caching.makeStrongCacheSync)(envName => buildOverrideEnvDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, index, envName)))); + +function* buildRootChain(opts, context) { + let configReport, babelRcReport; + const programmaticLogger = new _printer.ConfigPrinter(); + const programmaticChain = yield* loadProgrammaticChain({ + options: opts, + dirname: context.cwd + }, context, undefined, programmaticLogger); + if (!programmaticChain) return null; + const programmaticReport = yield* programmaticLogger.output(); + let configFile; + + if (typeof opts.configFile === "string") { + configFile = yield* (0, _files.loadConfig)(opts.configFile, context.cwd, context.envName, context.caller); + } else if (opts.configFile !== false) { + configFile = yield* (0, _files.findRootConfig)(context.root, context.envName, context.caller); + } + + let { + babelrc, + babelrcRoots + } = opts; + let babelrcRootsDirectory = context.cwd; + const configFileChain = emptyChain(); + const configFileLogger = new _printer.ConfigPrinter(); + + if (configFile) { + const validatedFile = validateConfigFile(configFile); + const result = yield* loadFileChain(validatedFile, context, undefined, configFileLogger); + if (!result) return null; + configReport = yield* configFileLogger.output(); + + if (babelrc === undefined) { + babelrc = validatedFile.options.babelrc; + } + + if (babelrcRoots === undefined) { + babelrcRootsDirectory = validatedFile.dirname; + babelrcRoots = validatedFile.options.babelrcRoots; + } + + mergeChain(configFileChain, result); + } + + let ignoreFile, babelrcFile; + let isIgnored = false; + const fileChain = emptyChain(); + + if ((babelrc === true || babelrc === undefined) && typeof context.filename === "string") { + const pkgData = yield* (0, _files.findPackageData)(context.filename); + + if (pkgData && babelrcLoadEnabled(context, pkgData, babelrcRoots, babelrcRootsDirectory)) { + ({ + ignore: ignoreFile, + config: babelrcFile + } = yield* (0, _files.findRelativeConfig)(pkgData, context.envName, context.caller)); + + if (ignoreFile) { + fileChain.files.add(ignoreFile.filepath); + } + + if (ignoreFile && shouldIgnore(context, ignoreFile.ignore, null, ignoreFile.dirname)) { + isIgnored = true; + } + + if (babelrcFile && !isIgnored) { + const validatedFile = validateBabelrcFile(babelrcFile); + const babelrcLogger = new _printer.ConfigPrinter(); + const result = yield* loadFileChain(validatedFile, context, undefined, babelrcLogger); + + if (!result) { + isIgnored = true; + } else { + babelRcReport = yield* babelrcLogger.output(); + mergeChain(fileChain, result); + } + } + + if (babelrcFile && isIgnored) { + fileChain.files.add(babelrcFile.filepath); + } + } + } + + if (context.showConfig) { + console.log(`Babel configs on "${context.filename}" (ascending priority):\n` + [configReport, babelRcReport, programmaticReport].filter(x => !!x).join("\n\n") + "\n-----End Babel configs-----"); + } + + const chain = mergeChain(mergeChain(mergeChain(emptyChain(), configFileChain), fileChain), programmaticChain); + return { + plugins: isIgnored ? [] : dedupDescriptors(chain.plugins), + presets: isIgnored ? [] : dedupDescriptors(chain.presets), + options: isIgnored ? [] : chain.options.map(o => normalizeOptions(o)), + fileHandling: isIgnored ? "ignored" : "transpile", + ignore: ignoreFile || undefined, + babelrc: babelrcFile || undefined, + config: configFile || undefined, + files: chain.files + }; +} + +function babelrcLoadEnabled(context, pkgData, babelrcRoots, babelrcRootsDirectory) { + if (typeof babelrcRoots === "boolean") return babelrcRoots; + const absoluteRoot = context.root; + + if (babelrcRoots === undefined) { + return pkgData.directories.indexOf(absoluteRoot) !== -1; + } + + let babelrcPatterns = babelrcRoots; + + if (!Array.isArray(babelrcPatterns)) { + babelrcPatterns = [babelrcPatterns]; + } + + babelrcPatterns = babelrcPatterns.map(pat => { + return typeof pat === "string" ? _path().resolve(babelrcRootsDirectory, pat) : pat; + }); + + if (babelrcPatterns.length === 1 && babelrcPatterns[0] === absoluteRoot) { + return pkgData.directories.indexOf(absoluteRoot) !== -1; + } + + return babelrcPatterns.some(pat => { + if (typeof pat === "string") { + pat = (0, _patternToRegex.default)(pat, babelrcRootsDirectory); + } + + return pkgData.directories.some(directory => { + return matchPattern(pat, babelrcRootsDirectory, directory, context); + }); + }); +} + +const validateConfigFile = (0, _caching.makeWeakCacheSync)(file => ({ + filepath: file.filepath, + dirname: file.dirname, + options: (0, _options.validate)("configfile", file.options, file.filepath) +})); +const validateBabelrcFile = (0, _caching.makeWeakCacheSync)(file => ({ + filepath: file.filepath, + dirname: file.dirname, + options: (0, _options.validate)("babelrcfile", file.options, file.filepath) +})); +const validateExtendFile = (0, _caching.makeWeakCacheSync)(file => ({ + filepath: file.filepath, + dirname: file.dirname, + options: (0, _options.validate)("extendsfile", file.options, file.filepath) +})); +const loadProgrammaticChain = makeChainWalker({ + root: input => buildRootDescriptors(input, "base", _configDescriptors.createCachedDescriptors), + env: (input, envName) => buildEnvDescriptors(input, "base", _configDescriptors.createCachedDescriptors, envName), + overrides: (input, index) => buildOverrideDescriptors(input, "base", _configDescriptors.createCachedDescriptors, index), + overridesEnv: (input, index, envName) => buildOverrideEnvDescriptors(input, "base", _configDescriptors.createCachedDescriptors, index, envName), + createLogger: (input, context, baseLogger) => buildProgrammaticLogger(input, context, baseLogger) +}); +const loadFileChainWalker = makeChainWalker({ + root: file => loadFileDescriptors(file), + env: (file, envName) => loadFileEnvDescriptors(file)(envName), + overrides: (file, index) => loadFileOverridesDescriptors(file)(index), + overridesEnv: (file, index, envName) => loadFileOverridesEnvDescriptors(file)(index)(envName), + createLogger: (file, context, baseLogger) => buildFileLogger(file.filepath, context, baseLogger) +}); + +function* loadFileChain(input, context, files, baseLogger) { + const chain = yield* loadFileChainWalker(input, context, files, baseLogger); + + if (chain) { + chain.files.add(input.filepath); + } + + return chain; +} + +const loadFileDescriptors = (0, _caching.makeWeakCacheSync)(file => buildRootDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors)); +const loadFileEnvDescriptors = (0, _caching.makeWeakCacheSync)(file => (0, _caching.makeStrongCacheSync)(envName => buildEnvDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, envName))); +const loadFileOverridesDescriptors = (0, _caching.makeWeakCacheSync)(file => (0, _caching.makeStrongCacheSync)(index => buildOverrideDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, index))); +const loadFileOverridesEnvDescriptors = (0, _caching.makeWeakCacheSync)(file => (0, _caching.makeStrongCacheSync)(index => (0, _caching.makeStrongCacheSync)(envName => buildOverrideEnvDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, index, envName)))); + +function buildFileLogger(filepath, context, baseLogger) { + if (!baseLogger) { + return () => {}; + } + + return baseLogger.configure(context.showConfig, _printer.ChainFormatter.Config, { + filepath + }); +} + +function buildRootDescriptors({ + dirname, + options +}, alias, descriptors) { + return descriptors(dirname, options, alias); +} + +function buildProgrammaticLogger(_, context, baseLogger) { + var _context$caller; + + if (!baseLogger) { + return () => {}; + } + + return baseLogger.configure(context.showConfig, _printer.ChainFormatter.Programmatic, { + callerName: (_context$caller = context.caller) == null ? void 0 : _context$caller.name + }); +} + +function buildEnvDescriptors({ + dirname, + options +}, alias, descriptors, envName) { + const opts = options.env && options.env[envName]; + return opts ? descriptors(dirname, opts, `${alias}.env["${envName}"]`) : null; +} + +function buildOverrideDescriptors({ + dirname, + options +}, alias, descriptors, index) { + const opts = options.overrides && options.overrides[index]; + if (!opts) throw new Error("Assertion failure - missing override"); + return descriptors(dirname, opts, `${alias}.overrides[${index}]`); +} + +function buildOverrideEnvDescriptors({ + dirname, + options +}, alias, descriptors, index, envName) { + const override = options.overrides && options.overrides[index]; + if (!override) throw new Error("Assertion failure - missing override"); + const opts = override.env && override.env[envName]; + return opts ? descriptors(dirname, opts, `${alias}.overrides[${index}].env["${envName}"]`) : null; +} + +function makeChainWalker({ + root, + env, + overrides, + overridesEnv, + createLogger +}) { + return function* chainWalker(input, context, files = new Set(), baseLogger) { + const { + dirname + } = input; + const flattenedConfigs = []; + const rootOpts = root(input); + + if (configIsApplicable(rootOpts, dirname, context, input.filepath)) { + flattenedConfigs.push({ + config: rootOpts, + envName: undefined, + index: undefined + }); + const envOpts = env(input, context.envName); + + if (envOpts && configIsApplicable(envOpts, dirname, context, input.filepath)) { + flattenedConfigs.push({ + config: envOpts, + envName: context.envName, + index: undefined + }); + } + + (rootOpts.options.overrides || []).forEach((_, index) => { + const overrideOps = overrides(input, index); + + if (configIsApplicable(overrideOps, dirname, context, input.filepath)) { + flattenedConfigs.push({ + config: overrideOps, + index, + envName: undefined + }); + const overrideEnvOpts = overridesEnv(input, index, context.envName); + + if (overrideEnvOpts && configIsApplicable(overrideEnvOpts, dirname, context, input.filepath)) { + flattenedConfigs.push({ + config: overrideEnvOpts, + index, + envName: context.envName + }); + } + } + }); + } + + if (flattenedConfigs.some(({ + config: { + options: { + ignore, + only + } + } + }) => shouldIgnore(context, ignore, only, dirname))) { + return null; + } + + const chain = emptyChain(); + const logger = createLogger(input, context, baseLogger); + + for (const { + config, + index, + envName + } of flattenedConfigs) { + if (!(yield* mergeExtendsChain(chain, config.options, dirname, context, files, baseLogger))) { + return null; + } + + logger(config, index, envName); + yield* mergeChainOpts(chain, config); + } + + return chain; + }; +} + +function* mergeExtendsChain(chain, opts, dirname, context, files, baseLogger) { + if (opts.extends === undefined) return true; + const file = yield* (0, _files.loadConfig)(opts.extends, dirname, context.envName, context.caller); + + if (files.has(file)) { + throw new Error(`Configuration cycle detected loading ${file.filepath}.\n` + `File already loaded following the config chain:\n` + Array.from(files, file => ` - ${file.filepath}`).join("\n")); + } + + files.add(file); + const fileChain = yield* loadFileChain(validateExtendFile(file), context, files, baseLogger); + files.delete(file); + if (!fileChain) return false; + mergeChain(chain, fileChain); + return true; +} + +function mergeChain(target, source) { + target.options.push(...source.options); + target.plugins.push(...source.plugins); + target.presets.push(...source.presets); + + for (const file of source.files) { + target.files.add(file); + } + + return target; +} + +function* mergeChainOpts(target, { + options, + plugins, + presets +}) { + target.options.push(options); + target.plugins.push(...(yield* plugins())); + target.presets.push(...(yield* presets())); + return target; +} + +function emptyChain() { + return { + options: [], + presets: [], + plugins: [], + files: new Set() + }; +} + +function normalizeOptions(opts) { + const options = Object.assign({}, opts); + delete options.extends; + delete options.env; + delete options.overrides; + delete options.plugins; + delete options.presets; + delete options.passPerPreset; + delete options.ignore; + delete options.only; + delete options.test; + delete options.include; + delete options.exclude; + + if (Object.prototype.hasOwnProperty.call(options, "sourceMap")) { + options.sourceMaps = options.sourceMap; + delete options.sourceMap; + } + + return options; +} + +function dedupDescriptors(items) { + const map = new Map(); + const descriptors = []; + + for (const item of items) { + if (typeof item.value === "function") { + const fnKey = item.value; + let nameMap = map.get(fnKey); + + if (!nameMap) { + nameMap = new Map(); + map.set(fnKey, nameMap); + } + + let desc = nameMap.get(item.name); + + if (!desc) { + desc = { + value: item + }; + descriptors.push(desc); + if (!item.ownPass) nameMap.set(item.name, desc); + } else { + desc.value = item; + } + } else { + descriptors.push({ + value: item + }); + } + } + + return descriptors.reduce((acc, desc) => { + acc.push(desc.value); + return acc; + }, []); +} + +function configIsApplicable({ + options +}, dirname, context, configName) { + return (options.test === undefined || configFieldIsApplicable(context, options.test, dirname, configName)) && (options.include === undefined || configFieldIsApplicable(context, options.include, dirname, configName)) && (options.exclude === undefined || !configFieldIsApplicable(context, options.exclude, dirname, configName)); +} + +function configFieldIsApplicable(context, test, dirname, configName) { + const patterns = Array.isArray(test) ? test : [test]; + return matchesPatterns(context, patterns, dirname, configName); +} + +function ignoreListReplacer(_key, value) { + if (value instanceof RegExp) { + return String(value); + } + + return value; +} + +function shouldIgnore(context, ignore, only, dirname) { + if (ignore && matchesPatterns(context, ignore, dirname)) { + var _context$filename; + + const message = `No config is applied to "${(_context$filename = context.filename) != null ? _context$filename : "(unknown)"}" because it matches one of \`ignore: ${JSON.stringify(ignore, ignoreListReplacer)}\` from "${dirname}"`; + debug(message); + + if (context.showConfig) { + console.log(message); + } + + return true; + } + + if (only && !matchesPatterns(context, only, dirname)) { + var _context$filename2; + + const message = `No config is applied to "${(_context$filename2 = context.filename) != null ? _context$filename2 : "(unknown)"}" because it fails to match one of \`only: ${JSON.stringify(only, ignoreListReplacer)}\` from "${dirname}"`; + debug(message); + + if (context.showConfig) { + console.log(message); + } + + return true; + } + + return false; +} + +function matchesPatterns(context, patterns, dirname, configName) { + return patterns.some(pattern => matchPattern(pattern, dirname, context.filename, context, configName)); +} + +function matchPattern(pattern, dirname, pathToTest, context, configName) { + if (typeof pattern === "function") { + return !!(0, _rewriteStackTrace.endHiddenCallStack)(pattern)(pathToTest, { + dirname, + envName: context.envName, + caller: context.caller + }); + } + + if (typeof pathToTest !== "string") { + throw new _configError.default(`Configuration contains string/RegExp pattern, but no filename was passed to Babel`, configName); + } + + if (typeof pattern === "string") { + pattern = (0, _patternToRegex.default)(pattern, dirname); + } + + return pattern.test(pathToTest); +} + +0 && 0; + +//# sourceMappingURL=config-chain.js.map diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js.map b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js.map new file mode 100644 index 000000000..f211c7a5c --- /dev/null +++ b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js.map @@ -0,0 +1 @@ +{"version":3,"names":["debug","buildDebug","buildPresetChain","arg","context","chain","buildPresetChainWalker","plugins","dedupDescriptors","presets","options","map","o","normalizeOptions","files","Set","makeChainWalker","root","preset","loadPresetDescriptors","env","envName","loadPresetEnvDescriptors","overrides","index","loadPresetOverridesDescriptors","overridesEnv","loadPresetOverridesEnvDescriptors","createLogger","makeWeakCacheSync","buildRootDescriptors","alias","createUncachedDescriptors","makeStrongCacheSync","buildEnvDescriptors","buildOverrideDescriptors","buildOverrideEnvDescriptors","buildRootChain","opts","configReport","babelRcReport","programmaticLogger","ConfigPrinter","programmaticChain","loadProgrammaticChain","dirname","cwd","undefined","programmaticReport","output","configFile","loadConfig","caller","findRootConfig","babelrc","babelrcRoots","babelrcRootsDirectory","configFileChain","emptyChain","configFileLogger","validatedFile","validateConfigFile","result","loadFileChain","mergeChain","ignoreFile","babelrcFile","isIgnored","fileChain","filename","pkgData","findPackageData","babelrcLoadEnabled","ignore","config","findRelativeConfig","add","filepath","shouldIgnore","validateBabelrcFile","babelrcLogger","showConfig","console","log","filter","x","join","fileHandling","absoluteRoot","directories","indexOf","babelrcPatterns","Array","isArray","pat","path","resolve","length","some","pathPatternToRegex","directory","matchPattern","file","validate","validateExtendFile","input","createCachedDescriptors","baseLogger","buildProgrammaticLogger","loadFileChainWalker","loadFileDescriptors","loadFileEnvDescriptors","loadFileOverridesDescriptors","loadFileOverridesEnvDescriptors","buildFileLogger","configure","ChainFormatter","Config","descriptors","_","Programmatic","callerName","name","Error","override","chainWalker","flattenedConfigs","rootOpts","configIsApplicable","push","envOpts","forEach","overrideOps","overrideEnvOpts","only","logger","mergeExtendsChain","mergeChainOpts","extends","has","from","delete","target","source","passPerPreset","test","include","exclude","Object","prototype","hasOwnProperty","call","sourceMaps","sourceMap","items","Map","item","value","fnKey","nameMap","get","set","desc","ownPass","reduce","acc","configName","configFieldIsApplicable","patterns","matchesPatterns","ignoreListReplacer","_key","RegExp","String","message","JSON","stringify","pattern","pathToTest","endHiddenCallStack","ConfigError"],"sources":["../../src/config/config-chain.ts"],"sourcesContent":["import path from \"path\";\nimport buildDebug from \"debug\";\nimport type { Handler } from \"gensync\";\nimport { validate } from \"./validation/options\";\nimport type {\n ValidatedOptions,\n IgnoreList,\n ConfigApplicableTest,\n BabelrcSearch,\n CallerMetadata,\n IgnoreItem,\n} from \"./validation/options\";\nimport pathPatternToRegex from \"./pattern-to-regex\";\nimport { ConfigPrinter, ChainFormatter } from \"./printer\";\nimport type { ReadonlyDeepArray } from \"./helpers/deep-array\";\n\nimport { endHiddenCallStack } from \"../errors/rewrite-stack-trace\";\nimport ConfigError from \"../errors/config-error\";\n\nconst debug = buildDebug(\"babel:config:config-chain\");\n\nimport {\n findPackageData,\n findRelativeConfig,\n findRootConfig,\n loadConfig,\n} from \"./files\";\nimport type { ConfigFile, IgnoreFile, FilePackageData } from \"./files\";\n\nimport { makeWeakCacheSync, makeStrongCacheSync } from \"./caching\";\n\nimport {\n createCachedDescriptors,\n createUncachedDescriptors,\n} from \"./config-descriptors\";\nimport type {\n UnloadedDescriptor,\n OptionsAndDescriptors,\n ValidatedFile,\n} from \"./config-descriptors\";\n\nexport type ConfigChain = {\n plugins: Array ;\n presets: Array ;\n options: Array ;\n files: Set ;\n};\n\nexport type PresetInstance = {\n options: ValidatedOptions;\n alias: string;\n dirname: string;\n externalDependencies: ReadonlyDeepArray ;\n};\n\nexport type ConfigContext = {\n filename: string | undefined;\n cwd: string;\n root: string;\n envName: string;\n caller: CallerMetadata | undefined;\n showConfig: boolean;\n};\n\n/**\n * Build a config chain for a given preset.\n */\nexport function* buildPresetChain(\n arg: PresetInstance,\n context: any,\n): Handler {\n const chain = yield* buildPresetChainWalker(arg, context);\n if (!chain) return null;\n\n return {\n plugins: dedupDescriptors(chain.plugins),\n presets: dedupDescriptors(chain.presets),\n options: chain.options.map(o => normalizeOptions(o)),\n files: new Set(),\n };\n}\n\nexport const buildPresetChainWalker = makeChainWalker ({\n root: preset => loadPresetDescriptors(preset),\n env: (preset, envName) => loadPresetEnvDescriptors(preset)(envName),\n overrides: (preset, index) => loadPresetOverridesDescriptors(preset)(index),\n overridesEnv: (preset, index, envName) =>\n loadPresetOverridesEnvDescriptors(preset)(index)(envName),\n createLogger: () => () => {}, // Currently we don't support logging how preset is expanded\n});\nconst loadPresetDescriptors = makeWeakCacheSync((preset: PresetInstance) =>\n buildRootDescriptors(preset, preset.alias, createUncachedDescriptors),\n);\nconst loadPresetEnvDescriptors = makeWeakCacheSync((preset: PresetInstance) =>\n makeStrongCacheSync((envName: string) =>\n buildEnvDescriptors(\n preset,\n preset.alias,\n createUncachedDescriptors,\n envName,\n ),\n ),\n);\nconst loadPresetOverridesDescriptors = makeWeakCacheSync(\n (preset: PresetInstance) =>\n makeStrongCacheSync((index: number) =>\n buildOverrideDescriptors(\n preset,\n preset.alias,\n createUncachedDescriptors,\n index,\n ),\n ),\n);\nconst loadPresetOverridesEnvDescriptors = makeWeakCacheSync(\n (preset: PresetInstance) =>\n makeStrongCacheSync((index: number) =>\n makeStrongCacheSync((envName: string) =>\n buildOverrideEnvDescriptors(\n preset,\n preset.alias,\n createUncachedDescriptors,\n index,\n envName,\n ),\n ),\n ),\n);\n\nexport type FileHandling = \"transpile\" | \"ignored\" | \"unsupported\";\nexport type RootConfigChain = ConfigChain & {\n babelrc: ConfigFile | void;\n config: ConfigFile | void;\n ignore: IgnoreFile | void;\n fileHandling: FileHandling;\n files: Set ;\n};\n\n/**\n * Build a config chain for Babel's full root configuration.\n */\nexport function* buildRootChain(\n opts: ValidatedOptions,\n context: ConfigContext,\n): Handler {\n let configReport, babelRcReport;\n const programmaticLogger = new ConfigPrinter();\n const programmaticChain = yield* loadProgrammaticChain(\n {\n options: opts,\n dirname: context.cwd,\n },\n context,\n undefined,\n programmaticLogger,\n );\n if (!programmaticChain) return null;\n const programmaticReport = yield* programmaticLogger.output();\n\n let configFile;\n if (typeof opts.configFile === \"string\") {\n configFile = yield* loadConfig(\n opts.configFile,\n context.cwd,\n context.envName,\n context.caller,\n );\n } else if (opts.configFile !== false) {\n configFile = yield* findRootConfig(\n context.root,\n context.envName,\n context.caller,\n );\n }\n\n let { babelrc, babelrcRoots } = opts;\n let babelrcRootsDirectory = context.cwd;\n\n const configFileChain = emptyChain();\n const configFileLogger = new ConfigPrinter();\n if (configFile) {\n const validatedFile = validateConfigFile(configFile);\n const result = yield* loadFileChain(\n validatedFile,\n context,\n undefined,\n configFileLogger,\n );\n if (!result) return null;\n configReport = yield* configFileLogger.output();\n\n // Allow config files to toggle `.babelrc` resolution on and off and\n // specify where the roots are.\n if (babelrc === undefined) {\n babelrc = validatedFile.options.babelrc;\n }\n if (babelrcRoots === undefined) {\n babelrcRootsDirectory = validatedFile.dirname;\n babelrcRoots = validatedFile.options.babelrcRoots;\n }\n\n mergeChain(configFileChain, result);\n }\n\n let ignoreFile, babelrcFile;\n let isIgnored = false;\n const fileChain = emptyChain();\n // resolve all .babelrc files\n if (\n (babelrc === true || babelrc === undefined) &&\n typeof context.filename === \"string\"\n ) {\n const pkgData = yield* findPackageData(context.filename);\n\n if (\n pkgData &&\n babelrcLoadEnabled(context, pkgData, babelrcRoots, babelrcRootsDirectory)\n ) {\n ({ ignore: ignoreFile, config: babelrcFile } = yield* findRelativeConfig(\n pkgData,\n context.envName,\n context.caller,\n ));\n\n if (ignoreFile) {\n fileChain.files.add(ignoreFile.filepath);\n }\n\n if (\n ignoreFile &&\n shouldIgnore(context, ignoreFile.ignore, null, ignoreFile.dirname)\n ) {\n isIgnored = true;\n }\n\n if (babelrcFile && !isIgnored) {\n const validatedFile = validateBabelrcFile(babelrcFile);\n const babelrcLogger = new ConfigPrinter();\n const result = yield* loadFileChain(\n validatedFile,\n context,\n undefined,\n babelrcLogger,\n );\n if (!result) {\n isIgnored = true;\n } else {\n babelRcReport = yield* babelrcLogger.output();\n mergeChain(fileChain, result);\n }\n }\n\n if (babelrcFile && isIgnored) {\n fileChain.files.add(babelrcFile.filepath);\n }\n }\n }\n\n if (context.showConfig) {\n console.log(\n `Babel configs on \"${context.filename}\" (ascending priority):\\n` +\n // print config by the order of ascending priority\n [configReport, babelRcReport, programmaticReport]\n .filter(x => !!x)\n .join(\"\\n\\n\") +\n \"\\n-----End Babel configs-----\",\n );\n }\n // Insert file chain in front so programmatic options have priority\n // over configuration file chain items.\n const chain = mergeChain(\n mergeChain(mergeChain(emptyChain(), configFileChain), fileChain),\n programmaticChain,\n );\n\n return {\n plugins: isIgnored ? [] : dedupDescriptors(chain.plugins),\n presets: isIgnored ? [] : dedupDescriptors(chain.presets),\n options: isIgnored ? [] : chain.options.map(o => normalizeOptions(o)),\n fileHandling: isIgnored ? \"ignored\" : \"transpile\",\n ignore: ignoreFile || undefined,\n babelrc: babelrcFile || undefined,\n config: configFile || undefined,\n files: chain.files,\n };\n}\n\nfunction babelrcLoadEnabled(\n context: ConfigContext,\n pkgData: FilePackageData,\n babelrcRoots: BabelrcSearch | undefined,\n babelrcRootsDirectory: string,\n): boolean {\n if (typeof babelrcRoots === \"boolean\") return babelrcRoots;\n\n const absoluteRoot = context.root;\n\n // Fast path to avoid having to match patterns if the babelrc is just\n // loading in the standard root directory.\n if (babelrcRoots === undefined) {\n return pkgData.directories.indexOf(absoluteRoot) !== -1;\n }\n\n let babelrcPatterns = babelrcRoots;\n if (!Array.isArray(babelrcPatterns)) {\n babelrcPatterns = [babelrcPatterns as IgnoreItem];\n }\n babelrcPatterns = babelrcPatterns.map(pat => {\n return typeof pat === \"string\"\n ? path.resolve(babelrcRootsDirectory, pat)\n : pat;\n });\n\n // Fast path to avoid having to match patterns if the babelrc is just\n // loading in the standard root directory.\n if (babelrcPatterns.length === 1 && babelrcPatterns[0] === absoluteRoot) {\n return pkgData.directories.indexOf(absoluteRoot) !== -1;\n }\n\n return babelrcPatterns.some(pat => {\n if (typeof pat === \"string\") {\n pat = pathPatternToRegex(pat, babelrcRootsDirectory);\n }\n\n return pkgData.directories.some(directory => {\n return matchPattern(pat, babelrcRootsDirectory, directory, context);\n });\n });\n}\n\nconst validateConfigFile = makeWeakCacheSync(\n (file: ConfigFile): ValidatedFile => ({\n filepath: file.filepath,\n dirname: file.dirname,\n options: validate(\"configfile\", file.options, file.filepath),\n }),\n);\n\nconst validateBabelrcFile = makeWeakCacheSync(\n (file: ConfigFile): ValidatedFile => ({\n filepath: file.filepath,\n dirname: file.dirname,\n options: validate(\"babelrcfile\", file.options, file.filepath),\n }),\n);\n\nconst validateExtendFile = makeWeakCacheSync(\n (file: ConfigFile): ValidatedFile => ({\n filepath: file.filepath,\n dirname: file.dirname,\n options: validate(\"extendsfile\", file.options, file.filepath),\n }),\n);\n\n/**\n * Build a config chain for just the programmatic options passed into Babel.\n */\nconst loadProgrammaticChain = makeChainWalker({\n root: input => buildRootDescriptors(input, \"base\", createCachedDescriptors),\n env: (input, envName) =>\n buildEnvDescriptors(input, \"base\", createCachedDescriptors, envName),\n overrides: (input, index) =>\n buildOverrideDescriptors(input, \"base\", createCachedDescriptors, index),\n overridesEnv: (input, index, envName) =>\n buildOverrideEnvDescriptors(\n input,\n \"base\",\n createCachedDescriptors,\n index,\n envName,\n ),\n createLogger: (input, context, baseLogger) =>\n buildProgrammaticLogger(input, context, baseLogger),\n});\n\n/**\n * Build a config chain for a given file.\n */\nconst loadFileChainWalker = makeChainWalker ({\n root: file => loadFileDescriptors(file),\n env: (file, envName) => loadFileEnvDescriptors(file)(envName),\n overrides: (file, index) => loadFileOverridesDescriptors(file)(index),\n overridesEnv: (file, index, envName) =>\n loadFileOverridesEnvDescriptors(file)(index)(envName),\n createLogger: (file, context, baseLogger) =>\n buildFileLogger(file.filepath, context, baseLogger),\n});\n\nfunction* loadFileChain(\n input: ValidatedFile,\n context: ConfigContext,\n files: Set ,\n baseLogger: ConfigPrinter,\n) {\n const chain = yield* loadFileChainWalker(input, context, files, baseLogger);\n if (chain) {\n chain.files.add(input.filepath);\n }\n\n return chain;\n}\n\nconst loadFileDescriptors = makeWeakCacheSync((file: ValidatedFile) =>\n buildRootDescriptors(file, file.filepath, createUncachedDescriptors),\n);\nconst loadFileEnvDescriptors = makeWeakCacheSync((file: ValidatedFile) =>\n makeStrongCacheSync((envName: string) =>\n buildEnvDescriptors(\n file,\n file.filepath,\n createUncachedDescriptors,\n envName,\n ),\n ),\n);\nconst loadFileOverridesDescriptors = makeWeakCacheSync((file: ValidatedFile) =>\n makeStrongCacheSync((index: number) =>\n buildOverrideDescriptors(\n file,\n file.filepath,\n createUncachedDescriptors,\n index,\n ),\n ),\n);\nconst loadFileOverridesEnvDescriptors = makeWeakCacheSync(\n (file: ValidatedFile) =>\n makeStrongCacheSync((index: number) =>\n makeStrongCacheSync((envName: string) =>\n buildOverrideEnvDescriptors(\n file,\n file.filepath,\n createUncachedDescriptors,\n index,\n envName,\n ),\n ),\n ),\n);\n\nfunction buildFileLogger(\n filepath: string,\n context: ConfigContext,\n baseLogger: ConfigPrinter | void,\n) {\n if (!baseLogger) {\n return () => {};\n }\n return baseLogger.configure(context.showConfig, ChainFormatter.Config, {\n filepath,\n });\n}\n\nfunction buildRootDescriptors(\n { dirname, options }: Partial ,\n alias: string,\n descriptors: (\n dirname: string,\n options: ValidatedOptions,\n alias: string,\n ) => OptionsAndDescriptors,\n) {\n return descriptors(dirname, options, alias);\n}\n\nfunction buildProgrammaticLogger(\n _: unknown,\n context: ConfigContext,\n baseLogger: ConfigPrinter | void,\n) {\n if (!baseLogger) {\n return () => {};\n }\n return baseLogger.configure(context.showConfig, ChainFormatter.Programmatic, {\n callerName: context.caller?.name,\n });\n}\n\nfunction buildEnvDescriptors(\n { dirname, options }: Partial ,\n alias: string,\n descriptors: (\n dirname: string,\n options: ValidatedOptions,\n alias: string,\n ) => OptionsAndDescriptors,\n envName: string,\n) {\n const opts = options.env && options.env[envName];\n return opts ? descriptors(dirname, opts, `${alias}.env[\"${envName}\"]`) : null;\n}\n\nfunction buildOverrideDescriptors(\n { dirname, options }: Partial ,\n alias: string,\n descriptors: (\n dirname: string,\n options: ValidatedOptions,\n alias: string,\n ) => OptionsAndDescriptors,\n index: number,\n) {\n const opts = options.overrides && options.overrides[index];\n if (!opts) throw new Error(\"Assertion failure - missing override\");\n\n return descriptors(dirname, opts, `${alias}.overrides[${index}]`);\n}\n\nfunction buildOverrideEnvDescriptors(\n { dirname, options }: Partial ,\n alias: string,\n descriptors: (\n dirname: string,\n options: ValidatedOptions,\n alias: string,\n ) => OptionsAndDescriptors,\n index: number,\n envName: string,\n) {\n const override = options.overrides && options.overrides[index];\n if (!override) throw new Error(\"Assertion failure - missing override\");\n\n const opts = override.env && override.env[envName];\n return opts\n ? descriptors(\n dirname,\n opts,\n `${alias}.overrides[${index}].env[\"${envName}\"]`,\n )\n : null;\n}\n\nfunction makeChainWalker<\n ArgT extends {\n options: ValidatedOptions;\n dirname: string;\n filepath?: string;\n },\n>({\n root,\n env,\n overrides,\n overridesEnv,\n createLogger,\n}: {\n root: (configEntry: ArgT) => OptionsAndDescriptors;\n env: (configEntry: ArgT, env: string) => OptionsAndDescriptors | null;\n overrides: (configEntry: ArgT, index: number) => OptionsAndDescriptors;\n overridesEnv: (\n configEntry: ArgT,\n index: number,\n env: string,\n ) => OptionsAndDescriptors | null;\n createLogger: (\n configEntry: ArgT,\n context: ConfigContext,\n printer: ConfigPrinter | void,\n ) => (\n opts: OptionsAndDescriptors,\n index?: number | null,\n env?: string | null,\n ) => void;\n}): (\n configEntry: ArgT,\n context: ConfigContext,\n files?: Set ,\n baseLogger?: ConfigPrinter,\n) => Handler {\n return function* chainWalker(input, context, files = new Set(), baseLogger) {\n const { dirname } = input;\n\n const flattenedConfigs: Array<{\n config: OptionsAndDescriptors;\n index: number | undefined | null;\n envName: string | undefined | null;\n }> = [];\n\n const rootOpts = root(input);\n if (configIsApplicable(rootOpts, dirname, context, input.filepath)) {\n flattenedConfigs.push({\n config: rootOpts,\n envName: undefined,\n index: undefined,\n });\n\n const envOpts = env(input, context.envName);\n if (\n envOpts &&\n configIsApplicable(envOpts, dirname, context, input.filepath)\n ) {\n flattenedConfigs.push({\n config: envOpts,\n envName: context.envName,\n index: undefined,\n });\n }\n\n (rootOpts.options.overrides || []).forEach((_, index) => {\n const overrideOps = overrides(input, index);\n if (configIsApplicable(overrideOps, dirname, context, input.filepath)) {\n flattenedConfigs.push({\n config: overrideOps,\n index,\n envName: undefined,\n });\n\n const overrideEnvOpts = overridesEnv(input, index, context.envName);\n if (\n overrideEnvOpts &&\n configIsApplicable(\n overrideEnvOpts,\n dirname,\n context,\n input.filepath,\n )\n ) {\n flattenedConfigs.push({\n config: overrideEnvOpts,\n index,\n envName: context.envName,\n });\n }\n }\n });\n }\n\n // Process 'ignore' and 'only' before 'extends' items are processed so\n // that we don't do extra work loading extended configs if a file is\n // ignored.\n if (\n flattenedConfigs.some(\n ({\n config: {\n options: { ignore, only },\n },\n }) => shouldIgnore(context, ignore, only, dirname),\n )\n ) {\n return null;\n }\n\n const chain = emptyChain();\n const logger = createLogger(input, context, baseLogger);\n\n for (const { config, index, envName } of flattenedConfigs) {\n if (\n !(yield* mergeExtendsChain(\n chain,\n config.options,\n dirname,\n context,\n files,\n baseLogger,\n ))\n ) {\n return null;\n }\n\n logger(config, index, envName);\n yield* mergeChainOpts(chain, config);\n }\n return chain;\n };\n}\n\nfunction* mergeExtendsChain(\n chain: ConfigChain,\n opts: ValidatedOptions,\n dirname: string,\n context: ConfigContext,\n files: Set ,\n baseLogger?: ConfigPrinter,\n): Handler {\n if (opts.extends === undefined) return true;\n\n const file = yield* loadConfig(\n opts.extends,\n dirname,\n context.envName,\n context.caller,\n );\n\n if (files.has(file)) {\n throw new Error(\n `Configuration cycle detected loading ${file.filepath}.\\n` +\n `File already loaded following the config chain:\\n` +\n Array.from(files, file => ` - ${file.filepath}`).join(\"\\n\"),\n );\n }\n\n files.add(file);\n const fileChain = yield* loadFileChain(\n validateExtendFile(file),\n context,\n files,\n baseLogger,\n );\n files.delete(file);\n\n if (!fileChain) return false;\n\n mergeChain(chain, fileChain);\n\n return true;\n}\n\nfunction mergeChain(target: ConfigChain, source: ConfigChain): ConfigChain {\n target.options.push(...source.options);\n target.plugins.push(...source.plugins);\n target.presets.push(...source.presets);\n for (const file of source.files) {\n target.files.add(file);\n }\n\n return target;\n}\n\nfunction* mergeChainOpts(\n target: ConfigChain,\n { options, plugins, presets }: OptionsAndDescriptors,\n): Handler {\n target.options.push(options);\n target.plugins.push(...(yield* plugins()));\n target.presets.push(...(yield* presets()));\n\n return target;\n}\n\nfunction emptyChain(): ConfigChain {\n return {\n options: [],\n presets: [],\n plugins: [],\n files: new Set(),\n };\n}\n\nfunction normalizeOptions(opts: ValidatedOptions): ValidatedOptions {\n const options = {\n ...opts,\n };\n delete options.extends;\n delete options.env;\n delete options.overrides;\n delete options.plugins;\n delete options.presets;\n delete options.passPerPreset;\n delete options.ignore;\n delete options.only;\n delete options.test;\n delete options.include;\n delete options.exclude;\n\n // \"sourceMap\" is just aliased to sourceMap, so copy it over as\n // we merge the options together.\n if (Object.prototype.hasOwnProperty.call(options, \"sourceMap\")) {\n options.sourceMaps = options.sourceMap;\n delete options.sourceMap;\n }\n return options;\n}\n\nfunction dedupDescriptors(\n items: Array ,\n): Array {\n const map: Map<\n Function,\n Map \n > = new Map();\n\n const descriptors = [];\n\n for (const item of items) {\n if (typeof item.value === \"function\") {\n const fnKey = item.value;\n let nameMap = map.get(fnKey);\n if (!nameMap) {\n nameMap = new Map();\n map.set(fnKey, nameMap);\n }\n let desc = nameMap.get(item.name);\n if (!desc) {\n desc = { value: item };\n descriptors.push(desc);\n\n // Treat passPerPreset presets as unique, skipping them\n // in the merge processing steps.\n if (!item.ownPass) nameMap.set(item.name, desc);\n } else {\n desc.value = item;\n }\n } else {\n descriptors.push({ value: item });\n }\n }\n\n return descriptors.reduce((acc, desc) => {\n acc.push(desc.value);\n return acc;\n }, []);\n}\n\nfunction configIsApplicable(\n { options }: OptionsAndDescriptors,\n dirname: string,\n context: ConfigContext,\n configName: string,\n): boolean {\n return (\n (options.test === undefined ||\n configFieldIsApplicable(context, options.test, dirname, configName)) &&\n (options.include === undefined ||\n configFieldIsApplicable(context, options.include, dirname, configName)) &&\n (options.exclude === undefined ||\n !configFieldIsApplicable(context, options.exclude, dirname, configName))\n );\n}\n\nfunction configFieldIsApplicable(\n context: ConfigContext,\n test: ConfigApplicableTest,\n dirname: string,\n configName: string,\n): boolean {\n const patterns = Array.isArray(test) ? test : [test];\n\n return matchesPatterns(context, patterns, dirname, configName);\n}\n\n/**\n * Print the ignoreList-values in a more helpful way than the default.\n */\nfunction ignoreListReplacer(\n _key: string,\n value: IgnoreList | IgnoreItem,\n): IgnoreList | IgnoreItem | string {\n if (value instanceof RegExp) {\n return String(value);\n }\n\n return value;\n}\n\n/**\n * Tests if a filename should be ignored based on \"ignore\" and \"only\" options.\n */\nfunction shouldIgnore(\n context: ConfigContext,\n ignore: IgnoreList | undefined | null,\n only: IgnoreList | undefined | null,\n dirname: string,\n): boolean {\n if (ignore && matchesPatterns(context, ignore, dirname)) {\n const message = `No config is applied to \"${\n context.filename ?? \"(unknown)\"\n }\" because it matches one of \\`ignore: ${JSON.stringify(\n ignore,\n ignoreListReplacer,\n )}\\` from \"${dirname}\"`;\n debug(message);\n if (context.showConfig) {\n console.log(message);\n }\n return true;\n }\n\n if (only && !matchesPatterns(context, only, dirname)) {\n const message = `No config is applied to \"${\n context.filename ?? \"(unknown)\"\n }\" because it fails to match one of \\`only: ${JSON.stringify(\n only,\n ignoreListReplacer,\n )}\\` from \"${dirname}\"`;\n debug(message);\n if (context.showConfig) {\n console.log(message);\n }\n return true;\n }\n\n return false;\n}\n\n/**\n * Returns result of calling function with filename if pattern is a function.\n * Otherwise returns result of matching pattern Regex with filename.\n */\nfunction matchesPatterns(\n context: ConfigContext,\n patterns: IgnoreList,\n dirname: string,\n configName?: string,\n): boolean {\n return patterns.some(pattern =>\n matchPattern(pattern, dirname, context.filename, context, configName),\n );\n}\n\nfunction matchPattern(\n pattern: IgnoreItem,\n dirname: string,\n pathToTest: string | undefined,\n context: ConfigContext,\n configName?: string,\n): boolean {\n if (typeof pattern === \"function\") {\n return !!endHiddenCallStack(pattern)(pathToTest, {\n dirname,\n envName: context.envName,\n caller: context.caller,\n });\n }\n\n if (typeof pathToTest !== \"string\") {\n throw new ConfigError(\n `Configuration contains string/RegExp pattern, but no filename was passed to Babel`,\n configName,\n );\n }\n\n if (typeof pattern === \"string\") {\n pattern = pathPatternToRegex(pattern, dirname);\n }\n return pattern.test(pathToTest);\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js new file mode 100644 index 000000000..cbadedd90 --- /dev/null +++ b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js @@ -0,0 +1,233 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.createCachedDescriptors = createCachedDescriptors; +exports.createDescriptor = createDescriptor; +exports.createUncachedDescriptors = createUncachedDescriptors; + +function _gensync() { + const data = require("gensync"); + + _gensync = function () { + return data; + }; + + return data; +} + +var _functional = require("../gensync-utils/functional"); + +var _files = require("./files"); + +var _item = require("./item"); + +var _caching = require("./caching"); + +var _resolveTargets = require("./resolve-targets"); + +function isEqualDescriptor(a, b) { + return a.name === b.name && a.value === b.value && a.options === b.options && a.dirname === b.dirname && a.alias === b.alias && a.ownPass === b.ownPass && (a.file && a.file.request) === (b.file && b.file.request) && (a.file && a.file.resolved) === (b.file && b.file.resolved); +} + +function* handlerOf(value) { + return value; +} + +function optionsWithResolvedBrowserslistConfigFile(options, dirname) { + if (typeof options.browserslistConfigFile === "string") { + options.browserslistConfigFile = (0, _resolveTargets.resolveBrowserslistConfigFile)(options.browserslistConfigFile, dirname); + } + + return options; +} + +function createCachedDescriptors(dirname, options, alias) { + const { + plugins, + presets, + passPerPreset + } = options; + return { + options: optionsWithResolvedBrowserslistConfigFile(options, dirname), + plugins: plugins ? () => createCachedPluginDescriptors(plugins, dirname)(alias) : () => handlerOf([]), + presets: presets ? () => createCachedPresetDescriptors(presets, dirname)(alias)(!!passPerPreset) : () => handlerOf([]) + }; +} + +function createUncachedDescriptors(dirname, options, alias) { + return { + options: optionsWithResolvedBrowserslistConfigFile(options, dirname), + plugins: (0, _functional.once)(() => createPluginDescriptors(options.plugins || [], dirname, alias)), + presets: (0, _functional.once)(() => createPresetDescriptors(options.presets || [], dirname, alias, !!options.passPerPreset)) + }; +} + +const PRESET_DESCRIPTOR_CACHE = new WeakMap(); +const createCachedPresetDescriptors = (0, _caching.makeWeakCacheSync)((items, cache) => { + const dirname = cache.using(dir => dir); + return (0, _caching.makeStrongCacheSync)(alias => (0, _caching.makeStrongCache)(function* (passPerPreset) { + const descriptors = yield* createPresetDescriptors(items, dirname, alias, passPerPreset); + return descriptors.map(desc => loadCachedDescriptor(PRESET_DESCRIPTOR_CACHE, desc)); + })); +}); +const PLUGIN_DESCRIPTOR_CACHE = new WeakMap(); +const createCachedPluginDescriptors = (0, _caching.makeWeakCacheSync)((items, cache) => { + const dirname = cache.using(dir => dir); + return (0, _caching.makeStrongCache)(function* (alias) { + const descriptors = yield* createPluginDescriptors(items, dirname, alias); + return descriptors.map(desc => loadCachedDescriptor(PLUGIN_DESCRIPTOR_CACHE, desc)); + }); +}); +const DEFAULT_OPTIONS = {}; + +function loadCachedDescriptor(cache, desc) { + const { + value, + options = DEFAULT_OPTIONS + } = desc; + if (options === false) return desc; + let cacheByOptions = cache.get(value); + + if (!cacheByOptions) { + cacheByOptions = new WeakMap(); + cache.set(value, cacheByOptions); + } + + let possibilities = cacheByOptions.get(options); + + if (!possibilities) { + possibilities = []; + cacheByOptions.set(options, possibilities); + } + + if (possibilities.indexOf(desc) === -1) { + const matches = possibilities.filter(possibility => isEqualDescriptor(possibility, desc)); + + if (matches.length > 0) { + return matches[0]; + } + + possibilities.push(desc); + } + + return desc; +} + +function* createPresetDescriptors(items, dirname, alias, passPerPreset) { + return yield* createDescriptors("preset", items, dirname, alias, passPerPreset); +} + +function* createPluginDescriptors(items, dirname, alias) { + return yield* createDescriptors("plugin", items, dirname, alias); +} + +function* createDescriptors(type, items, dirname, alias, ownPass) { + const descriptors = yield* _gensync().all(items.map((item, index) => createDescriptor(item, dirname, { + type, + alias: `${alias}$${index}`, + ownPass: !!ownPass + }))); + assertNoDuplicates(descriptors); + return descriptors; +} + +function* createDescriptor(pair, dirname, { + type, + alias, + ownPass +}) { + const desc = (0, _item.getItemDescriptor)(pair); + + if (desc) { + return desc; + } + + let name; + let options; + let value = pair; + + if (Array.isArray(value)) { + if (value.length === 3) { + [value, options, name] = value; + } else { + [value, options] = value; + } + } + + let file = undefined; + let filepath = null; + + if (typeof value === "string") { + if (typeof type !== "string") { + throw new Error("To resolve a string-based item, the type of item must be given"); + } + + const resolver = type === "plugin" ? _files.loadPlugin : _files.loadPreset; + const request = value; + ({ + filepath, + value + } = yield* resolver(value, dirname)); + file = { + request, + resolved: filepath + }; + } + + if (!value) { + throw new Error(`Unexpected falsy value: ${String(value)}`); + } + + if (typeof value === "object" && value.__esModule) { + if (value.default) { + value = value.default; + } else { + throw new Error("Must export a default export when using ES6 modules."); + } + } + + if (typeof value !== "object" && typeof value !== "function") { + throw new Error(`Unsupported format: ${typeof value}. Expected an object or a function.`); + } + + if (filepath !== null && typeof value === "object" && value) { + throw new Error(`Plugin/Preset files are not allowed to export objects, only functions. In ${filepath}`); + } + + return { + name, + alias: filepath || alias, + value, + options, + dirname, + ownPass, + file + }; +} + +function assertNoDuplicates(items) { + const map = new Map(); + + for (const item of items) { + if (typeof item.value !== "function") continue; + let nameMap = map.get(item.value); + + if (!nameMap) { + nameMap = new Set(); + map.set(item.value, nameMap); + } + + if (nameMap.has(item.name)) { + const conflicts = items.filter(i => i.value === item.value); + throw new Error([`Duplicate plugin/preset detected.`, `If you'd like to use two separate instances of a plugin,`, `they need separate names, e.g.`, ``, ` plugins: [`, ` ['some-plugin', {}],`, ` ['some-plugin', {}, 'some unique name'],`, ` ]`, ``, `Duplicates detected are:`, `${JSON.stringify(conflicts, null, 2)}`].join("\n")); + } + + nameMap.add(item.name); + } +} + +0 && 0; + +//# sourceMappingURL=config-descriptors.js.map diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js.map b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js.map new file mode 100644 index 000000000..37b2622fb --- /dev/null +++ b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js.map @@ -0,0 +1 @@ +{"version":3,"names":["isEqualDescriptor","a","b","name","value","options","dirname","alias","ownPass","file","request","resolved","handlerOf","optionsWithResolvedBrowserslistConfigFile","browserslistConfigFile","resolveBrowserslistConfigFile","createCachedDescriptors","plugins","presets","passPerPreset","createCachedPluginDescriptors","createCachedPresetDescriptors","createUncachedDescriptors","once","createPluginDescriptors","createPresetDescriptors","PRESET_DESCRIPTOR_CACHE","WeakMap","makeWeakCacheSync","items","cache","using","dir","makeStrongCacheSync","makeStrongCache","descriptors","map","desc","loadCachedDescriptor","PLUGIN_DESCRIPTOR_CACHE","DEFAULT_OPTIONS","cacheByOptions","get","set","possibilities","indexOf","matches","filter","possibility","length","push","createDescriptors","type","gensync","all","item","index","createDescriptor","assertNoDuplicates","pair","getItemDescriptor","Array","isArray","undefined","filepath","Error","resolver","loadPlugin","loadPreset","String","__esModule","default","Map","nameMap","Set","has","conflicts","i","JSON","stringify","join","add"],"sources":["../../src/config/config-descriptors.ts"],"sourcesContent":["import gensync, { type Handler } from \"gensync\";\nimport { once } from \"../gensync-utils/functional\";\n\nimport { loadPlugin, loadPreset } from \"./files\";\n\nimport { getItemDescriptor } from \"./item\";\n\nimport {\n makeWeakCacheSync,\n makeStrongCacheSync,\n makeStrongCache,\n} from \"./caching\";\nimport type { CacheConfigurator } from \"./caching\";\n\nimport type {\n ValidatedOptions,\n PluginList,\n PluginItem,\n} from \"./validation/options\";\n\nimport { resolveBrowserslistConfigFile } from \"./resolve-targets\";\n\n// Represents a config object and functions to lazily load the descriptors\n// for the plugins and presets so we don't load the plugins/presets unless\n// the options object actually ends up being applicable.\nexport type OptionsAndDescriptors = {\n options: ValidatedOptions;\n plugins: () => Handler >;\n presets: () => Handler >;\n};\n\n// Represents a plugin or presets at a given location in a config object.\n// At this point these have been resolved to a specific object or function,\n// but have not yet been executed to call functions with options.\nexport type UnloadedDescriptor = {\n name: string | undefined;\n value: any | Function;\n options: {} | undefined | false;\n dirname: string;\n alias: string;\n ownPass?: boolean;\n file?: {\n request: string;\n resolved: string;\n };\n};\n\nfunction isEqualDescriptor(\n a: UnloadedDescriptor,\n b: UnloadedDescriptor,\n): boolean {\n return (\n a.name === b.name &&\n a.value === b.value &&\n a.options === b.options &&\n a.dirname === b.dirname &&\n a.alias === b.alias &&\n a.ownPass === b.ownPass &&\n (a.file && a.file.request) === (b.file && b.file.request) &&\n (a.file && a.file.resolved) === (b.file && b.file.resolved)\n );\n}\n\nexport type ValidatedFile = {\n filepath: string;\n dirname: string;\n options: ValidatedOptions;\n};\n\n// eslint-disable-next-line require-yield\nfunction* handlerOf (value: T): Handler {\n return value;\n}\n\nfunction optionsWithResolvedBrowserslistConfigFile(\n options: ValidatedOptions,\n dirname: string,\n): ValidatedOptions {\n if (typeof options.browserslistConfigFile === \"string\") {\n options.browserslistConfigFile = resolveBrowserslistConfigFile(\n options.browserslistConfigFile,\n dirname,\n );\n }\n return options;\n}\n\n/**\n * Create a set of descriptors from a given options object, preserving\n * descriptor identity based on the identity of the plugin/preset arrays\n * themselves, and potentially on the identity of the plugins/presets + options.\n */\nexport function createCachedDescriptors(\n dirname: string,\n options: ValidatedOptions,\n alias: string,\n): OptionsAndDescriptors {\n const { plugins, presets, passPerPreset } = options;\n return {\n options: optionsWithResolvedBrowserslistConfigFile(options, dirname),\n plugins: plugins\n ? () =>\n // @ts-expect-error todo(flow->ts) ts complains about incorrect arguments\n createCachedPluginDescriptors(plugins, dirname)(alias)\n : () => handlerOf([]),\n presets: presets\n ? () =>\n // @ts-expect-error todo(flow->ts) ts complains about incorrect arguments\n createCachedPresetDescriptors(presets, dirname)(alias)(\n !!passPerPreset,\n )\n : () => handlerOf([]),\n };\n}\n\n/**\n * Create a set of descriptors from a given options object, with consistent\n * identity for the descriptors, but not caching based on any specific identity.\n */\nexport function createUncachedDescriptors(\n dirname: string,\n options: ValidatedOptions,\n alias: string,\n): OptionsAndDescriptors {\n return {\n options: optionsWithResolvedBrowserslistConfigFile(options, dirname),\n // The returned result here is cached to represent a config object in\n // memory, so we build and memoize the descriptors to ensure the same\n // values are returned consistently.\n plugins: once(() =>\n createPluginDescriptors(options.plugins || [], dirname, alias),\n ),\n presets: once(() =>\n createPresetDescriptors(\n options.presets || [],\n dirname,\n alias,\n !!options.passPerPreset,\n ),\n ),\n };\n}\n\nconst PRESET_DESCRIPTOR_CACHE = new WeakMap();\nconst createCachedPresetDescriptors = makeWeakCacheSync(\n (items: PluginList, cache: CacheConfigurator ) => {\n const dirname = cache.using(dir => dir);\n return makeStrongCacheSync((alias: string) =>\n makeStrongCache(function* (\n passPerPreset: boolean,\n ): Handler > {\n const descriptors = yield* createPresetDescriptors(\n items,\n dirname,\n alias,\n passPerPreset,\n );\n return descriptors.map(\n // Items are cached using the overall preset array identity when\n // possibly, but individual descriptors are also cached if a match\n // can be found in the previously-used descriptor lists.\n desc => loadCachedDescriptor(PRESET_DESCRIPTOR_CACHE, desc),\n );\n }),\n );\n },\n);\n\nconst PLUGIN_DESCRIPTOR_CACHE = new WeakMap();\nconst createCachedPluginDescriptors = makeWeakCacheSync(\n (items: PluginList, cache: CacheConfigurator ) => {\n const dirname = cache.using(dir => dir);\n return makeStrongCache(function* (\n alias: string,\n ): Handler > {\n const descriptors = yield* createPluginDescriptors(items, dirname, alias);\n return descriptors.map(\n // Items are cached using the overall plugin array identity when\n // possibly, but individual descriptors are also cached if a match\n // can be found in the previously-used descriptor lists.\n desc => loadCachedDescriptor(PLUGIN_DESCRIPTOR_CACHE, desc),\n );\n });\n },\n);\n\n/**\n * When no options object is given in a descriptor, this object is used\n * as a WeakMap key in order to have consistent identity.\n */\nconst DEFAULT_OPTIONS = {};\n\n/**\n * Given the cache and a descriptor, returns a matching descriptor from the\n * cache, or else returns the input descriptor and adds it to the cache for\n * next time.\n */\nfunction loadCachedDescriptor(\n cache: WeakMap<{} | Function, WeakMap<{}, Array >>,\n desc: UnloadedDescriptor,\n) {\n const { value, options = DEFAULT_OPTIONS } = desc;\n if (options === false) return desc;\n\n let cacheByOptions = cache.get(value);\n if (!cacheByOptions) {\n cacheByOptions = new WeakMap();\n cache.set(value, cacheByOptions);\n }\n\n let possibilities = cacheByOptions.get(options);\n if (!possibilities) {\n possibilities = [];\n cacheByOptions.set(options, possibilities);\n }\n\n if (possibilities.indexOf(desc) === -1) {\n const matches = possibilities.filter(possibility =>\n isEqualDescriptor(possibility, desc),\n );\n if (matches.length > 0) {\n return matches[0];\n }\n\n possibilities.push(desc);\n }\n\n return desc;\n}\n\nfunction* createPresetDescriptors(\n items: PluginList,\n dirname: string,\n alias: string,\n passPerPreset: boolean,\n): Handler > {\n return yield* createDescriptors(\n \"preset\",\n items,\n dirname,\n alias,\n passPerPreset,\n );\n}\n\nfunction* createPluginDescriptors(\n items: PluginList,\n dirname: string,\n alias: string,\n): Handler > {\n return yield* createDescriptors(\"plugin\", items, dirname, alias);\n}\n\nfunction* createDescriptors(\n type: \"plugin\" | \"preset\",\n items: PluginList,\n dirname: string,\n alias: string,\n ownPass?: boolean,\n): Handler > {\n const descriptors = yield* gensync.all(\n items.map((item, index) =>\n createDescriptor(item, dirname, {\n type,\n alias: `${alias}$${index}`,\n ownPass: !!ownPass,\n }),\n ),\n );\n\n assertNoDuplicates(descriptors);\n\n return descriptors;\n}\n\n/**\n * Given a plugin/preset item, resolve it into a standard format.\n */\nexport function* createDescriptor(\n pair: PluginItem,\n dirname: string,\n {\n type,\n alias,\n ownPass,\n }: {\n type?: \"plugin\" | \"preset\";\n alias: string;\n ownPass?: boolean;\n },\n): Handler {\n const desc = getItemDescriptor(pair);\n if (desc) {\n return desc;\n }\n\n let name;\n let options;\n // todo(flow->ts) better type annotation\n let value: any = pair;\n if (Array.isArray(value)) {\n if (value.length === 3) {\n [value, options, name] = value;\n } else {\n [value, options] = value;\n }\n }\n\n let file = undefined;\n let filepath = null;\n if (typeof value === \"string\") {\n if (typeof type !== \"string\") {\n throw new Error(\n \"To resolve a string-based item, the type of item must be given\",\n );\n }\n const resolver = type === \"plugin\" ? loadPlugin : loadPreset;\n const request = value;\n\n ({ filepath, value } = yield* resolver(value, dirname));\n\n file = {\n request,\n resolved: filepath,\n };\n }\n\n if (!value) {\n throw new Error(`Unexpected falsy value: ${String(value)}`);\n }\n\n if (typeof value === \"object\" && value.__esModule) {\n if (value.default) {\n value = value.default;\n } else {\n throw new Error(\"Must export a default export when using ES6 modules.\");\n }\n }\n\n if (typeof value !== \"object\" && typeof value !== \"function\") {\n throw new Error(\n `Unsupported format: ${typeof value}. Expected an object or a function.`,\n );\n }\n\n if (filepath !== null && typeof value === \"object\" && value) {\n // We allow object values for plugins/presets nested directly within a\n // config object, because it can be useful to define them in nested\n // configuration contexts.\n throw new Error(\n `Plugin/Preset files are not allowed to export objects, only functions. In ${filepath}`,\n );\n }\n\n return {\n name,\n alias: filepath || alias,\n value,\n options,\n dirname,\n ownPass,\n file,\n };\n}\n\nfunction assertNoDuplicates(items: Array ): void {\n const map = new Map();\n\n for (const item of items) {\n if (typeof item.value !== \"function\") continue;\n\n let nameMap = map.get(item.value);\n if (!nameMap) {\n nameMap = new Set();\n map.set(item.value, nameMap);\n }\n\n if (nameMap.has(item.name)) {\n const conflicts = items.filter(i => i.value === item.value);\n throw new Error(\n [\n `Duplicate plugin/preset detected.`,\n `If you'd like to use two separate instances of a plugin,`,\n `they need separate names, e.g.`,\n ``,\n ` plugins: [`,\n ` ['some-plugin', {}],`,\n ` ['some-plugin', {}, 'some unique name'],`,\n ` ]`,\n ``,\n `Duplicates detected are:`,\n `${JSON.stringify(conflicts, null, 2)}`,\n ].join(\"\\n\"),\n );\n }\n\n nameMap.add(item.name);\n }\n}\n"],"mappings":"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"} \ No newline at end of file From fe329b0c64d307eda77cebc4315b19615b653b6c Mon Sep 17 00:00:00 2001 From: Adarsh07rai <115350705+Adarsh07rai@users.noreply.github.com> Date: Mon, 23 Oct 2023 12:06:13 +0000 Subject: [PATCH 2/2] removed sanity files --- .../@babel/core/lib/config/cache-contexts.js | 3 - .../core/lib/config/cache-contexts.js.map | 1 - .../@babel/core/lib/config/caching.js | 328 ---------- .../@babel/core/lib/config/caching.js.map | 1 - .../@babel/core/lib/config/config-chain.js | 572 ------------------ .../core/lib/config/config-chain.js.map | 1 - .../core/lib/config/config-descriptors.js | 233 ------- .../core/lib/config/config-descriptors.js.map | 1 - 8 files changed, 1140 deletions(-) delete mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js delete mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js.map delete mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js delete mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js.map delete mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js delete mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js.map delete mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js delete mode 100644 ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js.map diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js deleted file mode 100644 index d7c091273..000000000 --- a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js +++ /dev/null @@ -1,3 +0,0 @@ -0 && 0; - -//# sourceMappingURL=cache-contexts.js.map diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js.map b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js.map deleted file mode 100644 index 37fb689e2..000000000 --- a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/cache-contexts.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"names":[],"sources":["../../src/config/cache-contexts.ts"],"sourcesContent":["import type { Targets } from \"@babel/helper-compilation-targets\";\n\nimport type { ConfigContext } from \"./config-chain\";\nimport type { CallerMetadata } from \"./validation/options\";\n\nexport type { ConfigContext as FullConfig };\n\nexport type FullPreset = {\n targets: Targets;\n} & ConfigContext;\nexport type FullPlugin = {\n assumptions: { [name: string]: boolean };\n} & FullPreset;\n\n// Context not including filename since it is used in places that cannot\n// process 'ignore'/'only' and other filename-based logic.\nexport type SimpleConfig = {\n envName: string;\n caller: CallerMetadata | undefined;\n};\nexport type SimplePreset = {\n targets: Targets;\n} & SimpleConfig;\nexport type SimplePlugin = {\n assumptions: {\n [name: string]: boolean;\n };\n} & SimplePreset;\n"],"mappings":""} \ No newline at end of file diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js deleted file mode 100644 index 31e7db174..000000000 --- a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js +++ /dev/null @@ -1,328 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.assertSimpleType = assertSimpleType; -exports.makeStrongCache = makeStrongCache; -exports.makeStrongCacheSync = makeStrongCacheSync; -exports.makeWeakCache = makeWeakCache; -exports.makeWeakCacheSync = makeWeakCacheSync; - -function _gensync() { - const data = require("gensync"); - - _gensync = function () { - return data; - }; - - return data; -} - -var _async = require("../gensync-utils/async"); - -var _util = require("./util"); - -const synchronize = gen => { - return _gensync()(gen).sync; -}; - -function* genTrue() { - return true; -} - -function makeWeakCache(handler) { - return makeCachedFunction(WeakMap, handler); -} - -function makeWeakCacheSync(handler) { - return synchronize(makeWeakCache(handler)); -} - -function makeStrongCache(handler) { - return makeCachedFunction(Map, handler); -} - -function makeStrongCacheSync(handler) { - return synchronize(makeStrongCache(handler)); -} - -function makeCachedFunction(CallCache, handler) { - const callCacheSync = new CallCache(); - const callCacheAsync = new CallCache(); - const futureCache = new CallCache(); - return function* cachedFunction(arg, data) { - const asyncContext = yield* (0, _async.isAsync)(); - const callCache = asyncContext ? callCacheAsync : callCacheSync; - const cached = yield* getCachedValueOrWait(asyncContext, callCache, futureCache, arg, data); - if (cached.valid) return cached.value; - const cache = new CacheConfigurator(data); - const handlerResult = handler(arg, cache); - let finishLock; - let value; - - if ((0, _util.isIterableIterator)(handlerResult)) { - value = yield* (0, _async.onFirstPause)(handlerResult, () => { - finishLock = setupAsyncLocks(cache, futureCache, arg); - }); - } else { - value = handlerResult; - } - - updateFunctionCache(callCache, cache, arg, value); - - if (finishLock) { - futureCache.delete(arg); - finishLock.release(value); - } - - return value; - }; -} - -function* getCachedValue(cache, arg, data) { - const cachedValue = cache.get(arg); - - if (cachedValue) { - for (const { - value, - valid - } of cachedValue) { - if (yield* valid(data)) return { - valid: true, - value - }; - } - } - - return { - valid: false, - value: null - }; -} - -function* getCachedValueOrWait(asyncContext, callCache, futureCache, arg, data) { - const cached = yield* getCachedValue(callCache, arg, data); - - if (cached.valid) { - return cached; - } - - if (asyncContext) { - const cached = yield* getCachedValue(futureCache, arg, data); - - if (cached.valid) { - const value = yield* (0, _async.waitFor)(cached.value.promise); - return { - valid: true, - value - }; - } - } - - return { - valid: false, - value: null - }; -} - -function setupAsyncLocks(config, futureCache, arg) { - const finishLock = new Lock(); - updateFunctionCache(futureCache, config, arg, finishLock); - return finishLock; -} - -function updateFunctionCache(cache, config, arg, value) { - if (!config.configured()) config.forever(); - let cachedValue = cache.get(arg); - config.deactivate(); - - switch (config.mode()) { - case "forever": - cachedValue = [{ - value, - valid: genTrue - }]; - cache.set(arg, cachedValue); - break; - - case "invalidate": - cachedValue = [{ - value, - valid: config.validator() - }]; - cache.set(arg, cachedValue); - break; - - case "valid": - if (cachedValue) { - cachedValue.push({ - value, - valid: config.validator() - }); - } else { - cachedValue = [{ - value, - valid: config.validator() - }]; - cache.set(arg, cachedValue); - } - - } -} - -class CacheConfigurator { - constructor(data) { - this._active = true; - this._never = false; - this._forever = false; - this._invalidate = false; - this._configured = false; - this._pairs = []; - this._data = void 0; - this._data = data; - } - - simple() { - return makeSimpleConfigurator(this); - } - - mode() { - if (this._never) return "never"; - if (this._forever) return "forever"; - if (this._invalidate) return "invalidate"; - return "valid"; - } - - forever() { - if (!this._active) { - throw new Error("Cannot change caching after evaluation has completed."); - } - - if (this._never) { - throw new Error("Caching has already been configured with .never()"); - } - - this._forever = true; - this._configured = true; - } - - never() { - if (!this._active) { - throw new Error("Cannot change caching after evaluation has completed."); - } - - if (this._forever) { - throw new Error("Caching has already been configured with .forever()"); - } - - this._never = true; - this._configured = true; - } - - using(handler) { - if (!this._active) { - throw new Error("Cannot change caching after evaluation has completed."); - } - - if (this._never || this._forever) { - throw new Error("Caching has already been configured with .never or .forever()"); - } - - this._configured = true; - const key = handler(this._data); - const fn = (0, _async.maybeAsync)(handler, `You appear to be using an async cache handler, but Babel has been called synchronously`); - - if ((0, _async.isThenable)(key)) { - return key.then(key => { - this._pairs.push([key, fn]); - - return key; - }); - } - - this._pairs.push([key, fn]); - - return key; - } - - invalidate(handler) { - this._invalidate = true; - return this.using(handler); - } - - validator() { - const pairs = this._pairs; - return function* (data) { - for (const [key, fn] of pairs) { - if (key !== (yield* fn(data))) return false; - } - - return true; - }; - } - - deactivate() { - this._active = false; - } - - configured() { - return this._configured; - } - -} - -function makeSimpleConfigurator(cache) { - function cacheFn(val) { - if (typeof val === "boolean") { - if (val) cache.forever();else cache.never(); - return; - } - - return cache.using(() => assertSimpleType(val())); - } - - cacheFn.forever = () => cache.forever(); - - cacheFn.never = () => cache.never(); - - cacheFn.using = cb => cache.using(() => assertSimpleType(cb())); - - cacheFn.invalidate = cb => cache.invalidate(() => assertSimpleType(cb())); - - return cacheFn; -} - -function assertSimpleType(value) { - if ((0, _async.isThenable)(value)) { - throw new Error(`You appear to be using an async cache handler, ` + `which your current version of Babel does not support. ` + `We may add support for this in the future, ` + `but if you're on the most recent version of @babel/core and still ` + `seeing this error, then you'll need to synchronously handle your caching logic.`); - } - - if (value != null && typeof value !== "string" && typeof value !== "boolean" && typeof value !== "number") { - throw new Error("Cache keys must be either string, boolean, number, null, or undefined."); - } - - return value; -} - -class Lock { - constructor() { - this.released = false; - this.promise = void 0; - this._resolve = void 0; - this.promise = new Promise(resolve => { - this._resolve = resolve; - }); - } - - release(value) { - this.released = true; - - this._resolve(value); - } - -} - -0 && 0; - -//# sourceMappingURL=caching.js.map diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js.map b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js.map deleted file mode 100644 index e5d3333d9..000000000 --- a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/caching.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"names":["synchronize","gen","gensync","sync","genTrue","makeWeakCache","handler","makeCachedFunction","WeakMap","makeWeakCacheSync","makeStrongCache","Map","makeStrongCacheSync","CallCache","callCacheSync","callCacheAsync","futureCache","cachedFunction","arg","data","asyncContext","isAsync","callCache","cached","getCachedValueOrWait","valid","value","cache","CacheConfigurator","handlerResult","finishLock","isIterableIterator","onFirstPause","setupAsyncLocks","updateFunctionCache","delete","release","getCachedValue","cachedValue","get","waitFor","promise","config","Lock","configured","forever","deactivate","mode","set","validator","push","constructor","_active","_never","_forever","_invalidate","_configured","_pairs","_data","simple","makeSimpleConfigurator","Error","never","using","key","fn","maybeAsync","isThenable","then","invalidate","pairs","cacheFn","val","assertSimpleType","cb","released","_resolve","Promise","resolve"],"sources":["../../src/config/caching.ts"],"sourcesContent":["import gensync from \"gensync\";\nimport type { Handler } from \"gensync\";\nimport {\n maybeAsync,\n isAsync,\n onFirstPause,\n waitFor,\n isThenable,\n} from \"../gensync-utils/async\";\nimport { isIterableIterator } from \"./util\";\n\nexport type { CacheConfigurator };\n\nexport type SimpleCacheConfigurator = {\n (forever: boolean): void;\n (handler: () => T): T;\n\n forever: () => void;\n never: () => void;\n using: (handler: () => T) => T;\n invalidate: (handler: () => T) => T;\n};\n\nexport type CacheEntry = Array<{\n value: ResultT;\n valid: (channel: SideChannel) => Handler ;\n}>;\n\nconst synchronize = (\n gen: (...args: ArgsT) => Handler ,\n): ((...args: ArgsT) => ResultT) => {\n return gensync(gen).sync;\n};\n\n// eslint-disable-next-line require-yield\nfunction* genTrue() {\n return true;\n}\n\nexport function makeWeakCache (\n handler: (\n arg: ArgT,\n cache: CacheConfigurator ,\n ) => Handler | ResultT,\n): (arg: ArgT, data: SideChannel) => Handler {\n return makeCachedFunction (WeakMap, handler);\n}\n\nexport function makeWeakCacheSync (\n handler: (arg: ArgT, cache?: CacheConfigurator ) => ResultT,\n): (arg: ArgT, data?: SideChannel) => ResultT {\n return synchronize<[ArgT, SideChannel], ResultT>(\n makeWeakCache (handler),\n );\n}\n\nexport function makeStrongCache (\n handler: (\n arg: ArgT,\n cache: CacheConfigurator ,\n ) => Handler | ResultT,\n): (arg: ArgT, data: SideChannel) => Handler {\n return makeCachedFunction (Map, handler);\n}\n\nexport function makeStrongCacheSync (\n handler: (arg: ArgT, cache?: CacheConfigurator ) => ResultT,\n): (arg: ArgT, data?: SideChannel) => ResultT {\n return synchronize<[ArgT, SideChannel], ResultT>(\n makeStrongCache (handler),\n );\n}\n\n/* NOTE: Part of the logic explained in this comment is explained in the\n * getCachedValueOrWait and setupAsyncLocks functions.\n *\n * > There are only two hard things in Computer Science: cache invalidation and naming things.\n * > -- Phil Karlton\n *\n * I don't know if Phil was also thinking about handling a cache whose invalidation function is\n * defined asynchronously is considered, but it is REALLY hard to do correctly.\n *\n * The implemented logic (only when gensync is run asynchronously) is the following:\n * 1. If there is a valid cache associated to the current \"arg\" parameter,\n * a. RETURN the cached value\n * 3. If there is a FinishLock associated to the current \"arg\" parameter representing a valid cache,\n * a. Wait for that lock to be released\n * b. RETURN the value associated with that lock\n * 5. Start executing the function to be cached\n * a. If it pauses on a promise, then\n * i. Let FinishLock be a new lock\n * ii. Store FinishLock as associated to the current \"arg\" parameter\n * iii. Wait for the function to finish executing\n * iv. Release FinishLock\n * v. Send the function result to anyone waiting on FinishLock\n * 6. Store the result in the cache\n * 7. RETURN the result\n */\nfunction makeCachedFunction (\n CallCache: new () => CacheMap ,\n handler: (\n arg: ArgT,\n cache: CacheConfigurator ,\n ) => Handler | ResultT,\n): (arg: ArgT, data: SideChannel) => Handler {\n const callCacheSync = new CallCache ();\n const callCacheAsync = new CallCache ();\n const futureCache = new CallCache >();\n\n return function* cachedFunction(arg: ArgT, data: SideChannel) {\n const asyncContext = yield* isAsync();\n const callCache = asyncContext ? callCacheAsync : callCacheSync;\n\n const cached = yield* getCachedValueOrWait (\n asyncContext,\n callCache,\n futureCache,\n arg,\n data,\n );\n if (cached.valid) return cached.value;\n\n const cache = new CacheConfigurator(data);\n\n const handlerResult: Handler | ResultT = handler(arg, cache);\n\n let finishLock: Lock ;\n let value: ResultT;\n\n if (isIterableIterator(handlerResult)) {\n value = yield* onFirstPause(handlerResult, () => {\n finishLock = setupAsyncLocks(cache, futureCache, arg);\n });\n } else {\n value = handlerResult;\n }\n\n updateFunctionCache(callCache, cache, arg, value);\n\n if (finishLock) {\n futureCache.delete(arg);\n finishLock.release(value);\n }\n\n return value;\n };\n}\n\ntype CacheMap =\n | Map >\n // @ts-expect-error todo(flow->ts): add `extends object` constraint to ArgT\n | WeakMap >;\n\nfunction* getCachedValue (\n cache: CacheMap ,\n arg: ArgT,\n data: SideChannel,\n): Handler<{ valid: true; value: ResultT } | { valid: false; value: null }> {\n const cachedValue: CacheEntry | void = cache.get(arg);\n\n if (cachedValue) {\n for (const { value, valid } of cachedValue) {\n if (yield* valid(data)) return { valid: true, value };\n }\n }\n\n return { valid: false, value: null };\n}\n\nfunction* getCachedValueOrWait (\n asyncContext: boolean,\n callCache: CacheMap ,\n futureCache: CacheMap , SideChannel>,\n arg: ArgT,\n data: SideChannel,\n): Handler<{ valid: true; value: ResultT } | { valid: false; value: null }> {\n const cached = yield* getCachedValue(callCache, arg, data);\n if (cached.valid) {\n return cached;\n }\n\n if (asyncContext) {\n const cached = yield* getCachedValue(futureCache, arg, data);\n if (cached.valid) {\n const value = yield* waitFor (cached.value.promise);\n return { valid: true, value };\n }\n }\n\n return { valid: false, value: null };\n}\n\nfunction setupAsyncLocks (\n config: CacheConfigurator ,\n futureCache: CacheMap , SideChannel>,\n arg: ArgT,\n): Lock {\n const finishLock = new Lock ();\n\n updateFunctionCache(futureCache, config, arg, finishLock);\n\n return finishLock;\n}\n\nfunction updateFunctionCache<\n ArgT,\n ResultT,\n SideChannel,\n Cache extends CacheMap ,\n>(\n cache: Cache,\n config: CacheConfigurator ,\n arg: ArgT,\n value: ResultT,\n) {\n if (!config.configured()) config.forever();\n\n let cachedValue: CacheEntry | void = cache.get(arg);\n\n config.deactivate();\n\n switch (config.mode()) {\n case \"forever\":\n cachedValue = [{ value, valid: genTrue }];\n cache.set(arg, cachedValue);\n break;\n case \"invalidate\":\n cachedValue = [{ value, valid: config.validator() }];\n cache.set(arg, cachedValue);\n break;\n case \"valid\":\n if (cachedValue) {\n cachedValue.push({ value, valid: config.validator() });\n } else {\n cachedValue = [{ value, valid: config.validator() }];\n cache.set(arg, cachedValue);\n }\n }\n}\n\nclass CacheConfigurator {\n _active: boolean = true;\n _never: boolean = false;\n _forever: boolean = false;\n _invalidate: boolean = false;\n\n _configured: boolean = false;\n\n _pairs: Array<\n [cachedValue: unknown, handler: (data: SideChannel) => Handler ]\n > = [];\n\n _data: SideChannel;\n\n constructor(data: SideChannel) {\n this._data = data;\n }\n\n simple() {\n return makeSimpleConfigurator(this);\n }\n\n mode() {\n if (this._never) return \"never\";\n if (this._forever) return \"forever\";\n if (this._invalidate) return \"invalidate\";\n return \"valid\";\n }\n\n forever() {\n if (!this._active) {\n throw new Error(\"Cannot change caching after evaluation has completed.\");\n }\n if (this._never) {\n throw new Error(\"Caching has already been configured with .never()\");\n }\n this._forever = true;\n this._configured = true;\n }\n\n never() {\n if (!this._active) {\n throw new Error(\"Cannot change caching after evaluation has completed.\");\n }\n if (this._forever) {\n throw new Error(\"Caching has already been configured with .forever()\");\n }\n this._never = true;\n this._configured = true;\n }\n\n using (handler: (data: SideChannel) => T): T {\n if (!this._active) {\n throw new Error(\"Cannot change caching after evaluation has completed.\");\n }\n if (this._never || this._forever) {\n throw new Error(\n \"Caching has already been configured with .never or .forever()\",\n );\n }\n this._configured = true;\n\n const key = handler(this._data);\n\n const fn = maybeAsync(\n handler,\n `You appear to be using an async cache handler, but Babel has been called synchronously`,\n );\n\n if (isThenable(key)) {\n // @ts-expect-error todo(flow->ts): improve function return type annotation\n return key.then((key: unknown) => {\n this._pairs.push([key, fn]);\n return key;\n });\n }\n\n this._pairs.push([key, fn]);\n return key;\n }\n\n invalidate (handler: (data: SideChannel) => T): T {\n this._invalidate = true;\n return this.using(handler);\n }\n\n validator(): (data: SideChannel) => Handler {\n const pairs = this._pairs;\n return function* (data: SideChannel) {\n for (const [key, fn] of pairs) {\n if (key !== (yield* fn(data))) return false;\n }\n return true;\n };\n }\n\n deactivate() {\n this._active = false;\n }\n\n configured() {\n return this._configured;\n }\n}\n\nfunction makeSimpleConfigurator(\n cache: CacheConfigurator ,\n): SimpleCacheConfigurator {\n function cacheFn(val: any) {\n if (typeof val === \"boolean\") {\n if (val) cache.forever();\n else cache.never();\n return;\n }\n\n return cache.using(() => assertSimpleType(val()));\n }\n cacheFn.forever = () => cache.forever();\n cacheFn.never = () => cache.never();\n cacheFn.using = (cb: { (): SimpleType }) =>\n cache.using(() => assertSimpleType(cb()));\n cacheFn.invalidate = (cb: { (): SimpleType }) =>\n cache.invalidate(() => assertSimpleType(cb()));\n\n return cacheFn as any;\n}\n\n// Types are limited here so that in the future these values can be used\n// as part of Babel's caching logic.\nexport type SimpleType =\n | string\n | boolean\n | number\n | null\n | void\n | Promise ;\nexport function assertSimpleType(value: unknown): SimpleType {\n if (isThenable(value)) {\n throw new Error(\n `You appear to be using an async cache handler, ` +\n `which your current version of Babel does not support. ` +\n `We may add support for this in the future, ` +\n `but if you're on the most recent version of @babel/core and still ` +\n `seeing this error, then you'll need to synchronously handle your caching logic.`,\n );\n }\n\n if (\n value != null &&\n typeof value !== \"string\" &&\n typeof value !== \"boolean\" &&\n typeof value !== \"number\"\n ) {\n throw new Error(\n \"Cache keys must be either string, boolean, number, null, or undefined.\",\n );\n }\n // @ts-expect-error Type 'unknown' is not assignable to type 'SimpleType'. This can be removed\n // when strictNullCheck is enabled\n return value;\n}\n\nclass Lock {\n released: boolean = false;\n promise: Promise ;\n _resolve: (value: T) => void;\n\n constructor() {\n this.promise = new Promise(resolve => {\n this._resolve = resolve;\n });\n }\n\n release(value: T) {\n this.released = true;\n this._resolve(value);\n }\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js deleted file mode 100644 index 9f4d1d571..000000000 --- a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js +++ /dev/null @@ -1,572 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.buildPresetChain = buildPresetChain; -exports.buildPresetChainWalker = void 0; -exports.buildRootChain = buildRootChain; - -function _path() { - const data = require("path"); - - _path = function () { - return data; - }; - - return data; -} - -function _debug() { - const data = require("debug"); - - _debug = function () { - return data; - }; - - return data; -} - -var _options = require("./validation/options"); - -var _patternToRegex = require("./pattern-to-regex"); - -var _printer = require("./printer"); - -var _rewriteStackTrace = require("../errors/rewrite-stack-trace"); - -var _configError = require("../errors/config-error"); - -var _files = require("./files"); - -var _caching = require("./caching"); - -var _configDescriptors = require("./config-descriptors"); - -const debug = _debug()("babel:config:config-chain"); - -function* buildPresetChain(arg, context) { - const chain = yield* buildPresetChainWalker(arg, context); - if (!chain) return null; - return { - plugins: dedupDescriptors(chain.plugins), - presets: dedupDescriptors(chain.presets), - options: chain.options.map(o => normalizeOptions(o)), - files: new Set() - }; -} - -const buildPresetChainWalker = makeChainWalker({ - root: preset => loadPresetDescriptors(preset), - env: (preset, envName) => loadPresetEnvDescriptors(preset)(envName), - overrides: (preset, index) => loadPresetOverridesDescriptors(preset)(index), - overridesEnv: (preset, index, envName) => loadPresetOverridesEnvDescriptors(preset)(index)(envName), - createLogger: () => () => {} -}); -exports.buildPresetChainWalker = buildPresetChainWalker; -const loadPresetDescriptors = (0, _caching.makeWeakCacheSync)(preset => buildRootDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors)); -const loadPresetEnvDescriptors = (0, _caching.makeWeakCacheSync)(preset => (0, _caching.makeStrongCacheSync)(envName => buildEnvDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, envName))); -const loadPresetOverridesDescriptors = (0, _caching.makeWeakCacheSync)(preset => (0, _caching.makeStrongCacheSync)(index => buildOverrideDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, index))); -const loadPresetOverridesEnvDescriptors = (0, _caching.makeWeakCacheSync)(preset => (0, _caching.makeStrongCacheSync)(index => (0, _caching.makeStrongCacheSync)(envName => buildOverrideEnvDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, index, envName)))); - -function* buildRootChain(opts, context) { - let configReport, babelRcReport; - const programmaticLogger = new _printer.ConfigPrinter(); - const programmaticChain = yield* loadProgrammaticChain({ - options: opts, - dirname: context.cwd - }, context, undefined, programmaticLogger); - if (!programmaticChain) return null; - const programmaticReport = yield* programmaticLogger.output(); - let configFile; - - if (typeof opts.configFile === "string") { - configFile = yield* (0, _files.loadConfig)(opts.configFile, context.cwd, context.envName, context.caller); - } else if (opts.configFile !== false) { - configFile = yield* (0, _files.findRootConfig)(context.root, context.envName, context.caller); - } - - let { - babelrc, - babelrcRoots - } = opts; - let babelrcRootsDirectory = context.cwd; - const configFileChain = emptyChain(); - const configFileLogger = new _printer.ConfigPrinter(); - - if (configFile) { - const validatedFile = validateConfigFile(configFile); - const result = yield* loadFileChain(validatedFile, context, undefined, configFileLogger); - if (!result) return null; - configReport = yield* configFileLogger.output(); - - if (babelrc === undefined) { - babelrc = validatedFile.options.babelrc; - } - - if (babelrcRoots === undefined) { - babelrcRootsDirectory = validatedFile.dirname; - babelrcRoots = validatedFile.options.babelrcRoots; - } - - mergeChain(configFileChain, result); - } - - let ignoreFile, babelrcFile; - let isIgnored = false; - const fileChain = emptyChain(); - - if ((babelrc === true || babelrc === undefined) && typeof context.filename === "string") { - const pkgData = yield* (0, _files.findPackageData)(context.filename); - - if (pkgData && babelrcLoadEnabled(context, pkgData, babelrcRoots, babelrcRootsDirectory)) { - ({ - ignore: ignoreFile, - config: babelrcFile - } = yield* (0, _files.findRelativeConfig)(pkgData, context.envName, context.caller)); - - if (ignoreFile) { - fileChain.files.add(ignoreFile.filepath); - } - - if (ignoreFile && shouldIgnore(context, ignoreFile.ignore, null, ignoreFile.dirname)) { - isIgnored = true; - } - - if (babelrcFile && !isIgnored) { - const validatedFile = validateBabelrcFile(babelrcFile); - const babelrcLogger = new _printer.ConfigPrinter(); - const result = yield* loadFileChain(validatedFile, context, undefined, babelrcLogger); - - if (!result) { - isIgnored = true; - } else { - babelRcReport = yield* babelrcLogger.output(); - mergeChain(fileChain, result); - } - } - - if (babelrcFile && isIgnored) { - fileChain.files.add(babelrcFile.filepath); - } - } - } - - if (context.showConfig) { - console.log(`Babel configs on "${context.filename}" (ascending priority):\n` + [configReport, babelRcReport, programmaticReport].filter(x => !!x).join("\n\n") + "\n-----End Babel configs-----"); - } - - const chain = mergeChain(mergeChain(mergeChain(emptyChain(), configFileChain), fileChain), programmaticChain); - return { - plugins: isIgnored ? [] : dedupDescriptors(chain.plugins), - presets: isIgnored ? [] : dedupDescriptors(chain.presets), - options: isIgnored ? [] : chain.options.map(o => normalizeOptions(o)), - fileHandling: isIgnored ? "ignored" : "transpile", - ignore: ignoreFile || undefined, - babelrc: babelrcFile || undefined, - config: configFile || undefined, - files: chain.files - }; -} - -function babelrcLoadEnabled(context, pkgData, babelrcRoots, babelrcRootsDirectory) { - if (typeof babelrcRoots === "boolean") return babelrcRoots; - const absoluteRoot = context.root; - - if (babelrcRoots === undefined) { - return pkgData.directories.indexOf(absoluteRoot) !== -1; - } - - let babelrcPatterns = babelrcRoots; - - if (!Array.isArray(babelrcPatterns)) { - babelrcPatterns = [babelrcPatterns]; - } - - babelrcPatterns = babelrcPatterns.map(pat => { - return typeof pat === "string" ? _path().resolve(babelrcRootsDirectory, pat) : pat; - }); - - if (babelrcPatterns.length === 1 && babelrcPatterns[0] === absoluteRoot) { - return pkgData.directories.indexOf(absoluteRoot) !== -1; - } - - return babelrcPatterns.some(pat => { - if (typeof pat === "string") { - pat = (0, _patternToRegex.default)(pat, babelrcRootsDirectory); - } - - return pkgData.directories.some(directory => { - return matchPattern(pat, babelrcRootsDirectory, directory, context); - }); - }); -} - -const validateConfigFile = (0, _caching.makeWeakCacheSync)(file => ({ - filepath: file.filepath, - dirname: file.dirname, - options: (0, _options.validate)("configfile", file.options, file.filepath) -})); -const validateBabelrcFile = (0, _caching.makeWeakCacheSync)(file => ({ - filepath: file.filepath, - dirname: file.dirname, - options: (0, _options.validate)("babelrcfile", file.options, file.filepath) -})); -const validateExtendFile = (0, _caching.makeWeakCacheSync)(file => ({ - filepath: file.filepath, - dirname: file.dirname, - options: (0, _options.validate)("extendsfile", file.options, file.filepath) -})); -const loadProgrammaticChain = makeChainWalker({ - root: input => buildRootDescriptors(input, "base", _configDescriptors.createCachedDescriptors), - env: (input, envName) => buildEnvDescriptors(input, "base", _configDescriptors.createCachedDescriptors, envName), - overrides: (input, index) => buildOverrideDescriptors(input, "base", _configDescriptors.createCachedDescriptors, index), - overridesEnv: (input, index, envName) => buildOverrideEnvDescriptors(input, "base", _configDescriptors.createCachedDescriptors, index, envName), - createLogger: (input, context, baseLogger) => buildProgrammaticLogger(input, context, baseLogger) -}); -const loadFileChainWalker = makeChainWalker({ - root: file => loadFileDescriptors(file), - env: (file, envName) => loadFileEnvDescriptors(file)(envName), - overrides: (file, index) => loadFileOverridesDescriptors(file)(index), - overridesEnv: (file, index, envName) => loadFileOverridesEnvDescriptors(file)(index)(envName), - createLogger: (file, context, baseLogger) => buildFileLogger(file.filepath, context, baseLogger) -}); - -function* loadFileChain(input, context, files, baseLogger) { - const chain = yield* loadFileChainWalker(input, context, files, baseLogger); - - if (chain) { - chain.files.add(input.filepath); - } - - return chain; -} - -const loadFileDescriptors = (0, _caching.makeWeakCacheSync)(file => buildRootDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors)); -const loadFileEnvDescriptors = (0, _caching.makeWeakCacheSync)(file => (0, _caching.makeStrongCacheSync)(envName => buildEnvDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, envName))); -const loadFileOverridesDescriptors = (0, _caching.makeWeakCacheSync)(file => (0, _caching.makeStrongCacheSync)(index => buildOverrideDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, index))); -const loadFileOverridesEnvDescriptors = (0, _caching.makeWeakCacheSync)(file => (0, _caching.makeStrongCacheSync)(index => (0, _caching.makeStrongCacheSync)(envName => buildOverrideEnvDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, index, envName)))); - -function buildFileLogger(filepath, context, baseLogger) { - if (!baseLogger) { - return () => {}; - } - - return baseLogger.configure(context.showConfig, _printer.ChainFormatter.Config, { - filepath - }); -} - -function buildRootDescriptors({ - dirname, - options -}, alias, descriptors) { - return descriptors(dirname, options, alias); -} - -function buildProgrammaticLogger(_, context, baseLogger) { - var _context$caller; - - if (!baseLogger) { - return () => {}; - } - - return baseLogger.configure(context.showConfig, _printer.ChainFormatter.Programmatic, { - callerName: (_context$caller = context.caller) == null ? void 0 : _context$caller.name - }); -} - -function buildEnvDescriptors({ - dirname, - options -}, alias, descriptors, envName) { - const opts = options.env && options.env[envName]; - return opts ? descriptors(dirname, opts, `${alias}.env["${envName}"]`) : null; -} - -function buildOverrideDescriptors({ - dirname, - options -}, alias, descriptors, index) { - const opts = options.overrides && options.overrides[index]; - if (!opts) throw new Error("Assertion failure - missing override"); - return descriptors(dirname, opts, `${alias}.overrides[${index}]`); -} - -function buildOverrideEnvDescriptors({ - dirname, - options -}, alias, descriptors, index, envName) { - const override = options.overrides && options.overrides[index]; - if (!override) throw new Error("Assertion failure - missing override"); - const opts = override.env && override.env[envName]; - return opts ? descriptors(dirname, opts, `${alias}.overrides[${index}].env["${envName}"]`) : null; -} - -function makeChainWalker({ - root, - env, - overrides, - overridesEnv, - createLogger -}) { - return function* chainWalker(input, context, files = new Set(), baseLogger) { - const { - dirname - } = input; - const flattenedConfigs = []; - const rootOpts = root(input); - - if (configIsApplicable(rootOpts, dirname, context, input.filepath)) { - flattenedConfigs.push({ - config: rootOpts, - envName: undefined, - index: undefined - }); - const envOpts = env(input, context.envName); - - if (envOpts && configIsApplicable(envOpts, dirname, context, input.filepath)) { - flattenedConfigs.push({ - config: envOpts, - envName: context.envName, - index: undefined - }); - } - - (rootOpts.options.overrides || []).forEach((_, index) => { - const overrideOps = overrides(input, index); - - if (configIsApplicable(overrideOps, dirname, context, input.filepath)) { - flattenedConfigs.push({ - config: overrideOps, - index, - envName: undefined - }); - const overrideEnvOpts = overridesEnv(input, index, context.envName); - - if (overrideEnvOpts && configIsApplicable(overrideEnvOpts, dirname, context, input.filepath)) { - flattenedConfigs.push({ - config: overrideEnvOpts, - index, - envName: context.envName - }); - } - } - }); - } - - if (flattenedConfigs.some(({ - config: { - options: { - ignore, - only - } - } - }) => shouldIgnore(context, ignore, only, dirname))) { - return null; - } - - const chain = emptyChain(); - const logger = createLogger(input, context, baseLogger); - - for (const { - config, - index, - envName - } of flattenedConfigs) { - if (!(yield* mergeExtendsChain(chain, config.options, dirname, context, files, baseLogger))) { - return null; - } - - logger(config, index, envName); - yield* mergeChainOpts(chain, config); - } - - return chain; - }; -} - -function* mergeExtendsChain(chain, opts, dirname, context, files, baseLogger) { - if (opts.extends === undefined) return true; - const file = yield* (0, _files.loadConfig)(opts.extends, dirname, context.envName, context.caller); - - if (files.has(file)) { - throw new Error(`Configuration cycle detected loading ${file.filepath}.\n` + `File already loaded following the config chain:\n` + Array.from(files, file => ` - ${file.filepath}`).join("\n")); - } - - files.add(file); - const fileChain = yield* loadFileChain(validateExtendFile(file), context, files, baseLogger); - files.delete(file); - if (!fileChain) return false; - mergeChain(chain, fileChain); - return true; -} - -function mergeChain(target, source) { - target.options.push(...source.options); - target.plugins.push(...source.plugins); - target.presets.push(...source.presets); - - for (const file of source.files) { - target.files.add(file); - } - - return target; -} - -function* mergeChainOpts(target, { - options, - plugins, - presets -}) { - target.options.push(options); - target.plugins.push(...(yield* plugins())); - target.presets.push(...(yield* presets())); - return target; -} - -function emptyChain() { - return { - options: [], - presets: [], - plugins: [], - files: new Set() - }; -} - -function normalizeOptions(opts) { - const options = Object.assign({}, opts); - delete options.extends; - delete options.env; - delete options.overrides; - delete options.plugins; - delete options.presets; - delete options.passPerPreset; - delete options.ignore; - delete options.only; - delete options.test; - delete options.include; - delete options.exclude; - - if (Object.prototype.hasOwnProperty.call(options, "sourceMap")) { - options.sourceMaps = options.sourceMap; - delete options.sourceMap; - } - - return options; -} - -function dedupDescriptors(items) { - const map = new Map(); - const descriptors = []; - - for (const item of items) { - if (typeof item.value === "function") { - const fnKey = item.value; - let nameMap = map.get(fnKey); - - if (!nameMap) { - nameMap = new Map(); - map.set(fnKey, nameMap); - } - - let desc = nameMap.get(item.name); - - if (!desc) { - desc = { - value: item - }; - descriptors.push(desc); - if (!item.ownPass) nameMap.set(item.name, desc); - } else { - desc.value = item; - } - } else { - descriptors.push({ - value: item - }); - } - } - - return descriptors.reduce((acc, desc) => { - acc.push(desc.value); - return acc; - }, []); -} - -function configIsApplicable({ - options -}, dirname, context, configName) { - return (options.test === undefined || configFieldIsApplicable(context, options.test, dirname, configName)) && (options.include === undefined || configFieldIsApplicable(context, options.include, dirname, configName)) && (options.exclude === undefined || !configFieldIsApplicable(context, options.exclude, dirname, configName)); -} - -function configFieldIsApplicable(context, test, dirname, configName) { - const patterns = Array.isArray(test) ? test : [test]; - return matchesPatterns(context, patterns, dirname, configName); -} - -function ignoreListReplacer(_key, value) { - if (value instanceof RegExp) { - return String(value); - } - - return value; -} - -function shouldIgnore(context, ignore, only, dirname) { - if (ignore && matchesPatterns(context, ignore, dirname)) { - var _context$filename; - - const message = `No config is applied to "${(_context$filename = context.filename) != null ? _context$filename : "(unknown)"}" because it matches one of \`ignore: ${JSON.stringify(ignore, ignoreListReplacer)}\` from "${dirname}"`; - debug(message); - - if (context.showConfig) { - console.log(message); - } - - return true; - } - - if (only && !matchesPatterns(context, only, dirname)) { - var _context$filename2; - - const message = `No config is applied to "${(_context$filename2 = context.filename) != null ? _context$filename2 : "(unknown)"}" because it fails to match one of \`only: ${JSON.stringify(only, ignoreListReplacer)}\` from "${dirname}"`; - debug(message); - - if (context.showConfig) { - console.log(message); - } - - return true; - } - - return false; -} - -function matchesPatterns(context, patterns, dirname, configName) { - return patterns.some(pattern => matchPattern(pattern, dirname, context.filename, context, configName)); -} - -function matchPattern(pattern, dirname, pathToTest, context, configName) { - if (typeof pattern === "function") { - return !!(0, _rewriteStackTrace.endHiddenCallStack)(pattern)(pathToTest, { - dirname, - envName: context.envName, - caller: context.caller - }); - } - - if (typeof pathToTest !== "string") { - throw new _configError.default(`Configuration contains string/RegExp pattern, but no filename was passed to Babel`, configName); - } - - if (typeof pattern === "string") { - pattern = (0, _patternToRegex.default)(pattern, dirname); - } - - return pattern.test(pathToTest); -} - -0 && 0; - -//# sourceMappingURL=config-chain.js.map diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js.map b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js.map deleted file mode 100644 index f211c7a5c..000000000 --- a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-chain.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"names":["debug","buildDebug","buildPresetChain","arg","context","chain","buildPresetChainWalker","plugins","dedupDescriptors","presets","options","map","o","normalizeOptions","files","Set","makeChainWalker","root","preset","loadPresetDescriptors","env","envName","loadPresetEnvDescriptors","overrides","index","loadPresetOverridesDescriptors","overridesEnv","loadPresetOverridesEnvDescriptors","createLogger","makeWeakCacheSync","buildRootDescriptors","alias","createUncachedDescriptors","makeStrongCacheSync","buildEnvDescriptors","buildOverrideDescriptors","buildOverrideEnvDescriptors","buildRootChain","opts","configReport","babelRcReport","programmaticLogger","ConfigPrinter","programmaticChain","loadProgrammaticChain","dirname","cwd","undefined","programmaticReport","output","configFile","loadConfig","caller","findRootConfig","babelrc","babelrcRoots","babelrcRootsDirectory","configFileChain","emptyChain","configFileLogger","validatedFile","validateConfigFile","result","loadFileChain","mergeChain","ignoreFile","babelrcFile","isIgnored","fileChain","filename","pkgData","findPackageData","babelrcLoadEnabled","ignore","config","findRelativeConfig","add","filepath","shouldIgnore","validateBabelrcFile","babelrcLogger","showConfig","console","log","filter","x","join","fileHandling","absoluteRoot","directories","indexOf","babelrcPatterns","Array","isArray","pat","path","resolve","length","some","pathPatternToRegex","directory","matchPattern","file","validate","validateExtendFile","input","createCachedDescriptors","baseLogger","buildProgrammaticLogger","loadFileChainWalker","loadFileDescriptors","loadFileEnvDescriptors","loadFileOverridesDescriptors","loadFileOverridesEnvDescriptors","buildFileLogger","configure","ChainFormatter","Config","descriptors","_","Programmatic","callerName","name","Error","override","chainWalker","flattenedConfigs","rootOpts","configIsApplicable","push","envOpts","forEach","overrideOps","overrideEnvOpts","only","logger","mergeExtendsChain","mergeChainOpts","extends","has","from","delete","target","source","passPerPreset","test","include","exclude","Object","prototype","hasOwnProperty","call","sourceMaps","sourceMap","items","Map","item","value","fnKey","nameMap","get","set","desc","ownPass","reduce","acc","configName","configFieldIsApplicable","patterns","matchesPatterns","ignoreListReplacer","_key","RegExp","String","message","JSON","stringify","pattern","pathToTest","endHiddenCallStack","ConfigError"],"sources":["../../src/config/config-chain.ts"],"sourcesContent":["import path from \"path\";\nimport buildDebug from \"debug\";\nimport type { Handler } from \"gensync\";\nimport { validate } from \"./validation/options\";\nimport type {\n ValidatedOptions,\n IgnoreList,\n ConfigApplicableTest,\n BabelrcSearch,\n CallerMetadata,\n IgnoreItem,\n} from \"./validation/options\";\nimport pathPatternToRegex from \"./pattern-to-regex\";\nimport { ConfigPrinter, ChainFormatter } from \"./printer\";\nimport type { ReadonlyDeepArray } from \"./helpers/deep-array\";\n\nimport { endHiddenCallStack } from \"../errors/rewrite-stack-trace\";\nimport ConfigError from \"../errors/config-error\";\n\nconst debug = buildDebug(\"babel:config:config-chain\");\n\nimport {\n findPackageData,\n findRelativeConfig,\n findRootConfig,\n loadConfig,\n} from \"./files\";\nimport type { ConfigFile, IgnoreFile, FilePackageData } from \"./files\";\n\nimport { makeWeakCacheSync, makeStrongCacheSync } from \"./caching\";\n\nimport {\n createCachedDescriptors,\n createUncachedDescriptors,\n} from \"./config-descriptors\";\nimport type {\n UnloadedDescriptor,\n OptionsAndDescriptors,\n ValidatedFile,\n} from \"./config-descriptors\";\n\nexport type ConfigChain = {\n plugins: Array ;\n presets: Array ;\n options: Array ;\n files: Set ;\n};\n\nexport type PresetInstance = {\n options: ValidatedOptions;\n alias: string;\n dirname: string;\n externalDependencies: ReadonlyDeepArray ;\n};\n\nexport type ConfigContext = {\n filename: string | undefined;\n cwd: string;\n root: string;\n envName: string;\n caller: CallerMetadata | undefined;\n showConfig: boolean;\n};\n\n/**\n * Build a config chain for a given preset.\n */\nexport function* buildPresetChain(\n arg: PresetInstance,\n context: any,\n): Handler {\n const chain = yield* buildPresetChainWalker(arg, context);\n if (!chain) return null;\n\n return {\n plugins: dedupDescriptors(chain.plugins),\n presets: dedupDescriptors(chain.presets),\n options: chain.options.map(o => normalizeOptions(o)),\n files: new Set(),\n };\n}\n\nexport const buildPresetChainWalker = makeChainWalker ({\n root: preset => loadPresetDescriptors(preset),\n env: (preset, envName) => loadPresetEnvDescriptors(preset)(envName),\n overrides: (preset, index) => loadPresetOverridesDescriptors(preset)(index),\n overridesEnv: (preset, index, envName) =>\n loadPresetOverridesEnvDescriptors(preset)(index)(envName),\n createLogger: () => () => {}, // Currently we don't support logging how preset is expanded\n});\nconst loadPresetDescriptors = makeWeakCacheSync((preset: PresetInstance) =>\n buildRootDescriptors(preset, preset.alias, createUncachedDescriptors),\n);\nconst loadPresetEnvDescriptors = makeWeakCacheSync((preset: PresetInstance) =>\n makeStrongCacheSync((envName: string) =>\n buildEnvDescriptors(\n preset,\n preset.alias,\n createUncachedDescriptors,\n envName,\n ),\n ),\n);\nconst loadPresetOverridesDescriptors = makeWeakCacheSync(\n (preset: PresetInstance) =>\n makeStrongCacheSync((index: number) =>\n buildOverrideDescriptors(\n preset,\n preset.alias,\n createUncachedDescriptors,\n index,\n ),\n ),\n);\nconst loadPresetOverridesEnvDescriptors = makeWeakCacheSync(\n (preset: PresetInstance) =>\n makeStrongCacheSync((index: number) =>\n makeStrongCacheSync((envName: string) =>\n buildOverrideEnvDescriptors(\n preset,\n preset.alias,\n createUncachedDescriptors,\n index,\n envName,\n ),\n ),\n ),\n);\n\nexport type FileHandling = \"transpile\" | \"ignored\" | \"unsupported\";\nexport type RootConfigChain = ConfigChain & {\n babelrc: ConfigFile | void;\n config: ConfigFile | void;\n ignore: IgnoreFile | void;\n fileHandling: FileHandling;\n files: Set ;\n};\n\n/**\n * Build a config chain for Babel's full root configuration.\n */\nexport function* buildRootChain(\n opts: ValidatedOptions,\n context: ConfigContext,\n): Handler {\n let configReport, babelRcReport;\n const programmaticLogger = new ConfigPrinter();\n const programmaticChain = yield* loadProgrammaticChain(\n {\n options: opts,\n dirname: context.cwd,\n },\n context,\n undefined,\n programmaticLogger,\n );\n if (!programmaticChain) return null;\n const programmaticReport = yield* programmaticLogger.output();\n\n let configFile;\n if (typeof opts.configFile === \"string\") {\n configFile = yield* loadConfig(\n opts.configFile,\n context.cwd,\n context.envName,\n context.caller,\n );\n } else if (opts.configFile !== false) {\n configFile = yield* findRootConfig(\n context.root,\n context.envName,\n context.caller,\n );\n }\n\n let { babelrc, babelrcRoots } = opts;\n let babelrcRootsDirectory = context.cwd;\n\n const configFileChain = emptyChain();\n const configFileLogger = new ConfigPrinter();\n if (configFile) {\n const validatedFile = validateConfigFile(configFile);\n const result = yield* loadFileChain(\n validatedFile,\n context,\n undefined,\n configFileLogger,\n );\n if (!result) return null;\n configReport = yield* configFileLogger.output();\n\n // Allow config files to toggle `.babelrc` resolution on and off and\n // specify where the roots are.\n if (babelrc === undefined) {\n babelrc = validatedFile.options.babelrc;\n }\n if (babelrcRoots === undefined) {\n babelrcRootsDirectory = validatedFile.dirname;\n babelrcRoots = validatedFile.options.babelrcRoots;\n }\n\n mergeChain(configFileChain, result);\n }\n\n let ignoreFile, babelrcFile;\n let isIgnored = false;\n const fileChain = emptyChain();\n // resolve all .babelrc files\n if (\n (babelrc === true || babelrc === undefined) &&\n typeof context.filename === \"string\"\n ) {\n const pkgData = yield* findPackageData(context.filename);\n\n if (\n pkgData &&\n babelrcLoadEnabled(context, pkgData, babelrcRoots, babelrcRootsDirectory)\n ) {\n ({ ignore: ignoreFile, config: babelrcFile } = yield* findRelativeConfig(\n pkgData,\n context.envName,\n context.caller,\n ));\n\n if (ignoreFile) {\n fileChain.files.add(ignoreFile.filepath);\n }\n\n if (\n ignoreFile &&\n shouldIgnore(context, ignoreFile.ignore, null, ignoreFile.dirname)\n ) {\n isIgnored = true;\n }\n\n if (babelrcFile && !isIgnored) {\n const validatedFile = validateBabelrcFile(babelrcFile);\n const babelrcLogger = new ConfigPrinter();\n const result = yield* loadFileChain(\n validatedFile,\n context,\n undefined,\n babelrcLogger,\n );\n if (!result) {\n isIgnored = true;\n } else {\n babelRcReport = yield* babelrcLogger.output();\n mergeChain(fileChain, result);\n }\n }\n\n if (babelrcFile && isIgnored) {\n fileChain.files.add(babelrcFile.filepath);\n }\n }\n }\n\n if (context.showConfig) {\n console.log(\n `Babel configs on \"${context.filename}\" (ascending priority):\\n` +\n // print config by the order of ascending priority\n [configReport, babelRcReport, programmaticReport]\n .filter(x => !!x)\n .join(\"\\n\\n\") +\n \"\\n-----End Babel configs-----\",\n );\n }\n // Insert file chain in front so programmatic options have priority\n // over configuration file chain items.\n const chain = mergeChain(\n mergeChain(mergeChain(emptyChain(), configFileChain), fileChain),\n programmaticChain,\n );\n\n return {\n plugins: isIgnored ? [] : dedupDescriptors(chain.plugins),\n presets: isIgnored ? [] : dedupDescriptors(chain.presets),\n options: isIgnored ? [] : chain.options.map(o => normalizeOptions(o)),\n fileHandling: isIgnored ? \"ignored\" : \"transpile\",\n ignore: ignoreFile || undefined,\n babelrc: babelrcFile || undefined,\n config: configFile || undefined,\n files: chain.files,\n };\n}\n\nfunction babelrcLoadEnabled(\n context: ConfigContext,\n pkgData: FilePackageData,\n babelrcRoots: BabelrcSearch | undefined,\n babelrcRootsDirectory: string,\n): boolean {\n if (typeof babelrcRoots === \"boolean\") return babelrcRoots;\n\n const absoluteRoot = context.root;\n\n // Fast path to avoid having to match patterns if the babelrc is just\n // loading in the standard root directory.\n if (babelrcRoots === undefined) {\n return pkgData.directories.indexOf(absoluteRoot) !== -1;\n }\n\n let babelrcPatterns = babelrcRoots;\n if (!Array.isArray(babelrcPatterns)) {\n babelrcPatterns = [babelrcPatterns as IgnoreItem];\n }\n babelrcPatterns = babelrcPatterns.map(pat => {\n return typeof pat === \"string\"\n ? path.resolve(babelrcRootsDirectory, pat)\n : pat;\n });\n\n // Fast path to avoid having to match patterns if the babelrc is just\n // loading in the standard root directory.\n if (babelrcPatterns.length === 1 && babelrcPatterns[0] === absoluteRoot) {\n return pkgData.directories.indexOf(absoluteRoot) !== -1;\n }\n\n return babelrcPatterns.some(pat => {\n if (typeof pat === \"string\") {\n pat = pathPatternToRegex(pat, babelrcRootsDirectory);\n }\n\n return pkgData.directories.some(directory => {\n return matchPattern(pat, babelrcRootsDirectory, directory, context);\n });\n });\n}\n\nconst validateConfigFile = makeWeakCacheSync(\n (file: ConfigFile): ValidatedFile => ({\n filepath: file.filepath,\n dirname: file.dirname,\n options: validate(\"configfile\", file.options, file.filepath),\n }),\n);\n\nconst validateBabelrcFile = makeWeakCacheSync(\n (file: ConfigFile): ValidatedFile => ({\n filepath: file.filepath,\n dirname: file.dirname,\n options: validate(\"babelrcfile\", file.options, file.filepath),\n }),\n);\n\nconst validateExtendFile = makeWeakCacheSync(\n (file: ConfigFile): ValidatedFile => ({\n filepath: file.filepath,\n dirname: file.dirname,\n options: validate(\"extendsfile\", file.options, file.filepath),\n }),\n);\n\n/**\n * Build a config chain for just the programmatic options passed into Babel.\n */\nconst loadProgrammaticChain = makeChainWalker({\n root: input => buildRootDescriptors(input, \"base\", createCachedDescriptors),\n env: (input, envName) =>\n buildEnvDescriptors(input, \"base\", createCachedDescriptors, envName),\n overrides: (input, index) =>\n buildOverrideDescriptors(input, \"base\", createCachedDescriptors, index),\n overridesEnv: (input, index, envName) =>\n buildOverrideEnvDescriptors(\n input,\n \"base\",\n createCachedDescriptors,\n index,\n envName,\n ),\n createLogger: (input, context, baseLogger) =>\n buildProgrammaticLogger(input, context, baseLogger),\n});\n\n/**\n * Build a config chain for a given file.\n */\nconst loadFileChainWalker = makeChainWalker ({\n root: file => loadFileDescriptors(file),\n env: (file, envName) => loadFileEnvDescriptors(file)(envName),\n overrides: (file, index) => loadFileOverridesDescriptors(file)(index),\n overridesEnv: (file, index, envName) =>\n loadFileOverridesEnvDescriptors(file)(index)(envName),\n createLogger: (file, context, baseLogger) =>\n buildFileLogger(file.filepath, context, baseLogger),\n});\n\nfunction* loadFileChain(\n input: ValidatedFile,\n context: ConfigContext,\n files: Set ,\n baseLogger: ConfigPrinter,\n) {\n const chain = yield* loadFileChainWalker(input, context, files, baseLogger);\n if (chain) {\n chain.files.add(input.filepath);\n }\n\n return chain;\n}\n\nconst loadFileDescriptors = makeWeakCacheSync((file: ValidatedFile) =>\n buildRootDescriptors(file, file.filepath, createUncachedDescriptors),\n);\nconst loadFileEnvDescriptors = makeWeakCacheSync((file: ValidatedFile) =>\n makeStrongCacheSync((envName: string) =>\n buildEnvDescriptors(\n file,\n file.filepath,\n createUncachedDescriptors,\n envName,\n ),\n ),\n);\nconst loadFileOverridesDescriptors = makeWeakCacheSync((file: ValidatedFile) =>\n makeStrongCacheSync((index: number) =>\n buildOverrideDescriptors(\n file,\n file.filepath,\n createUncachedDescriptors,\n index,\n ),\n ),\n);\nconst loadFileOverridesEnvDescriptors = makeWeakCacheSync(\n (file: ValidatedFile) =>\n makeStrongCacheSync((index: number) =>\n makeStrongCacheSync((envName: string) =>\n buildOverrideEnvDescriptors(\n file,\n file.filepath,\n createUncachedDescriptors,\n index,\n envName,\n ),\n ),\n ),\n);\n\nfunction buildFileLogger(\n filepath: string,\n context: ConfigContext,\n baseLogger: ConfigPrinter | void,\n) {\n if (!baseLogger) {\n return () => {};\n }\n return baseLogger.configure(context.showConfig, ChainFormatter.Config, {\n filepath,\n });\n}\n\nfunction buildRootDescriptors(\n { dirname, options }: Partial ,\n alias: string,\n descriptors: (\n dirname: string,\n options: ValidatedOptions,\n alias: string,\n ) => OptionsAndDescriptors,\n) {\n return descriptors(dirname, options, alias);\n}\n\nfunction buildProgrammaticLogger(\n _: unknown,\n context: ConfigContext,\n baseLogger: ConfigPrinter | void,\n) {\n if (!baseLogger) {\n return () => {};\n }\n return baseLogger.configure(context.showConfig, ChainFormatter.Programmatic, {\n callerName: context.caller?.name,\n });\n}\n\nfunction buildEnvDescriptors(\n { dirname, options }: Partial ,\n alias: string,\n descriptors: (\n dirname: string,\n options: ValidatedOptions,\n alias: string,\n ) => OptionsAndDescriptors,\n envName: string,\n) {\n const opts = options.env && options.env[envName];\n return opts ? descriptors(dirname, opts, `${alias}.env[\"${envName}\"]`) : null;\n}\n\nfunction buildOverrideDescriptors(\n { dirname, options }: Partial ,\n alias: string,\n descriptors: (\n dirname: string,\n options: ValidatedOptions,\n alias: string,\n ) => OptionsAndDescriptors,\n index: number,\n) {\n const opts = options.overrides && options.overrides[index];\n if (!opts) throw new Error(\"Assertion failure - missing override\");\n\n return descriptors(dirname, opts, `${alias}.overrides[${index}]`);\n}\n\nfunction buildOverrideEnvDescriptors(\n { dirname, options }: Partial ,\n alias: string,\n descriptors: (\n dirname: string,\n options: ValidatedOptions,\n alias: string,\n ) => OptionsAndDescriptors,\n index: number,\n envName: string,\n) {\n const override = options.overrides && options.overrides[index];\n if (!override) throw new Error(\"Assertion failure - missing override\");\n\n const opts = override.env && override.env[envName];\n return opts\n ? descriptors(\n dirname,\n opts,\n `${alias}.overrides[${index}].env[\"${envName}\"]`,\n )\n : null;\n}\n\nfunction makeChainWalker<\n ArgT extends {\n options: ValidatedOptions;\n dirname: string;\n filepath?: string;\n },\n>({\n root,\n env,\n overrides,\n overridesEnv,\n createLogger,\n}: {\n root: (configEntry: ArgT) => OptionsAndDescriptors;\n env: (configEntry: ArgT, env: string) => OptionsAndDescriptors | null;\n overrides: (configEntry: ArgT, index: number) => OptionsAndDescriptors;\n overridesEnv: (\n configEntry: ArgT,\n index: number,\n env: string,\n ) => OptionsAndDescriptors | null;\n createLogger: (\n configEntry: ArgT,\n context: ConfigContext,\n printer: ConfigPrinter | void,\n ) => (\n opts: OptionsAndDescriptors,\n index?: number | null,\n env?: string | null,\n ) => void;\n}): (\n configEntry: ArgT,\n context: ConfigContext,\n files?: Set ,\n baseLogger?: ConfigPrinter,\n) => Handler {\n return function* chainWalker(input, context, files = new Set(), baseLogger) {\n const { dirname } = input;\n\n const flattenedConfigs: Array<{\n config: OptionsAndDescriptors;\n index: number | undefined | null;\n envName: string | undefined | null;\n }> = [];\n\n const rootOpts = root(input);\n if (configIsApplicable(rootOpts, dirname, context, input.filepath)) {\n flattenedConfigs.push({\n config: rootOpts,\n envName: undefined,\n index: undefined,\n });\n\n const envOpts = env(input, context.envName);\n if (\n envOpts &&\n configIsApplicable(envOpts, dirname, context, input.filepath)\n ) {\n flattenedConfigs.push({\n config: envOpts,\n envName: context.envName,\n index: undefined,\n });\n }\n\n (rootOpts.options.overrides || []).forEach((_, index) => {\n const overrideOps = overrides(input, index);\n if (configIsApplicable(overrideOps, dirname, context, input.filepath)) {\n flattenedConfigs.push({\n config: overrideOps,\n index,\n envName: undefined,\n });\n\n const overrideEnvOpts = overridesEnv(input, index, context.envName);\n if (\n overrideEnvOpts &&\n configIsApplicable(\n overrideEnvOpts,\n dirname,\n context,\n input.filepath,\n )\n ) {\n flattenedConfigs.push({\n config: overrideEnvOpts,\n index,\n envName: context.envName,\n });\n }\n }\n });\n }\n\n // Process 'ignore' and 'only' before 'extends' items are processed so\n // that we don't do extra work loading extended configs if a file is\n // ignored.\n if (\n flattenedConfigs.some(\n ({\n config: {\n options: { ignore, only },\n },\n }) => shouldIgnore(context, ignore, only, dirname),\n )\n ) {\n return null;\n }\n\n const chain = emptyChain();\n const logger = createLogger(input, context, baseLogger);\n\n for (const { config, index, envName } of flattenedConfigs) {\n if (\n !(yield* mergeExtendsChain(\n chain,\n config.options,\n dirname,\n context,\n files,\n baseLogger,\n ))\n ) {\n return null;\n }\n\n logger(config, index, envName);\n yield* mergeChainOpts(chain, config);\n }\n return chain;\n };\n}\n\nfunction* mergeExtendsChain(\n chain: ConfigChain,\n opts: ValidatedOptions,\n dirname: string,\n context: ConfigContext,\n files: Set ,\n baseLogger?: ConfigPrinter,\n): Handler {\n if (opts.extends === undefined) return true;\n\n const file = yield* loadConfig(\n opts.extends,\n dirname,\n context.envName,\n context.caller,\n );\n\n if (files.has(file)) {\n throw new Error(\n `Configuration cycle detected loading ${file.filepath}.\\n` +\n `File already loaded following the config chain:\\n` +\n Array.from(files, file => ` - ${file.filepath}`).join(\"\\n\"),\n );\n }\n\n files.add(file);\n const fileChain = yield* loadFileChain(\n validateExtendFile(file),\n context,\n files,\n baseLogger,\n );\n files.delete(file);\n\n if (!fileChain) return false;\n\n mergeChain(chain, fileChain);\n\n return true;\n}\n\nfunction mergeChain(target: ConfigChain, source: ConfigChain): ConfigChain {\n target.options.push(...source.options);\n target.plugins.push(...source.plugins);\n target.presets.push(...source.presets);\n for (const file of source.files) {\n target.files.add(file);\n }\n\n return target;\n}\n\nfunction* mergeChainOpts(\n target: ConfigChain,\n { options, plugins, presets }: OptionsAndDescriptors,\n): Handler {\n target.options.push(options);\n target.plugins.push(...(yield* plugins()));\n target.presets.push(...(yield* presets()));\n\n return target;\n}\n\nfunction emptyChain(): ConfigChain {\n return {\n options: [],\n presets: [],\n plugins: [],\n files: new Set(),\n };\n}\n\nfunction normalizeOptions(opts: ValidatedOptions): ValidatedOptions {\n const options = {\n ...opts,\n };\n delete options.extends;\n delete options.env;\n delete options.overrides;\n delete options.plugins;\n delete options.presets;\n delete options.passPerPreset;\n delete options.ignore;\n delete options.only;\n delete options.test;\n delete options.include;\n delete options.exclude;\n\n // \"sourceMap\" is just aliased to sourceMap, so copy it over as\n // we merge the options together.\n if (Object.prototype.hasOwnProperty.call(options, \"sourceMap\")) {\n options.sourceMaps = options.sourceMap;\n delete options.sourceMap;\n }\n return options;\n}\n\nfunction dedupDescriptors(\n items: Array ,\n): Array {\n const map: Map<\n Function,\n Map \n > = new Map();\n\n const descriptors = [];\n\n for (const item of items) {\n if (typeof item.value === \"function\") {\n const fnKey = item.value;\n let nameMap = map.get(fnKey);\n if (!nameMap) {\n nameMap = new Map();\n map.set(fnKey, nameMap);\n }\n let desc = nameMap.get(item.name);\n if (!desc) {\n desc = { value: item };\n descriptors.push(desc);\n\n // Treat passPerPreset presets as unique, skipping them\n // in the merge processing steps.\n if (!item.ownPass) nameMap.set(item.name, desc);\n } else {\n desc.value = item;\n }\n } else {\n descriptors.push({ value: item });\n }\n }\n\n return descriptors.reduce((acc, desc) => {\n acc.push(desc.value);\n return acc;\n }, []);\n}\n\nfunction configIsApplicable(\n { options }: OptionsAndDescriptors,\n dirname: string,\n context: ConfigContext,\n configName: string,\n): boolean {\n return (\n (options.test === undefined ||\n configFieldIsApplicable(context, options.test, dirname, configName)) &&\n (options.include === undefined ||\n configFieldIsApplicable(context, options.include, dirname, configName)) &&\n (options.exclude === undefined ||\n !configFieldIsApplicable(context, options.exclude, dirname, configName))\n );\n}\n\nfunction configFieldIsApplicable(\n context: ConfigContext,\n test: ConfigApplicableTest,\n dirname: string,\n configName: string,\n): boolean {\n const patterns = Array.isArray(test) ? test : [test];\n\n return matchesPatterns(context, patterns, dirname, configName);\n}\n\n/**\n * Print the ignoreList-values in a more helpful way than the default.\n */\nfunction ignoreListReplacer(\n _key: string,\n value: IgnoreList | IgnoreItem,\n): IgnoreList | IgnoreItem | string {\n if (value instanceof RegExp) {\n return String(value);\n }\n\n return value;\n}\n\n/**\n * Tests if a filename should be ignored based on \"ignore\" and \"only\" options.\n */\nfunction shouldIgnore(\n context: ConfigContext,\n ignore: IgnoreList | undefined | null,\n only: IgnoreList | undefined | null,\n dirname: string,\n): boolean {\n if (ignore && matchesPatterns(context, ignore, dirname)) {\n const message = `No config is applied to \"${\n context.filename ?? \"(unknown)\"\n }\" because it matches one of \\`ignore: ${JSON.stringify(\n ignore,\n ignoreListReplacer,\n )}\\` from \"${dirname}\"`;\n debug(message);\n if (context.showConfig) {\n console.log(message);\n }\n return true;\n }\n\n if (only && !matchesPatterns(context, only, dirname)) {\n const message = `No config is applied to \"${\n context.filename ?? \"(unknown)\"\n }\" because it fails to match one of \\`only: ${JSON.stringify(\n only,\n ignoreListReplacer,\n )}\\` from \"${dirname}\"`;\n debug(message);\n if (context.showConfig) {\n console.log(message);\n }\n return true;\n }\n\n return false;\n}\n\n/**\n * Returns result of calling function with filename if pattern is a function.\n * Otherwise returns result of matching pattern Regex with filename.\n */\nfunction matchesPatterns(\n context: ConfigContext,\n patterns: IgnoreList,\n dirname: string,\n configName?: string,\n): boolean {\n return patterns.some(pattern =>\n matchPattern(pattern, dirname, context.filename, context, configName),\n );\n}\n\nfunction matchPattern(\n pattern: IgnoreItem,\n dirname: string,\n pathToTest: string | undefined,\n context: ConfigContext,\n configName?: string,\n): boolean {\n if (typeof pattern === \"function\") {\n return !!endHiddenCallStack(pattern)(pathToTest, {\n dirname,\n envName: context.envName,\n caller: context.caller,\n });\n }\n\n if (typeof pathToTest !== \"string\") {\n throw new ConfigError(\n `Configuration contains string/RegExp pattern, but no filename was passed to Babel`,\n configName,\n );\n }\n\n if (typeof pattern === \"string\") {\n pattern = pathPatternToRegex(pattern, dirname);\n }\n return pattern.test(pathToTest);\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js deleted file mode 100644 index cbadedd90..000000000 --- a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js +++ /dev/null @@ -1,233 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.createCachedDescriptors = createCachedDescriptors; -exports.createDescriptor = createDescriptor; -exports.createUncachedDescriptors = createUncachedDescriptors; - -function _gensync() { - const data = require("gensync"); - - _gensync = function () { - return data; - }; - - return data; -} - -var _functional = require("../gensync-utils/functional"); - -var _files = require("./files"); - -var _item = require("./item"); - -var _caching = require("./caching"); - -var _resolveTargets = require("./resolve-targets"); - -function isEqualDescriptor(a, b) { - return a.name === b.name && a.value === b.value && a.options === b.options && a.dirname === b.dirname && a.alias === b.alias && a.ownPass === b.ownPass && (a.file && a.file.request) === (b.file && b.file.request) && (a.file && a.file.resolved) === (b.file && b.file.resolved); -} - -function* handlerOf(value) { - return value; -} - -function optionsWithResolvedBrowserslistConfigFile(options, dirname) { - if (typeof options.browserslistConfigFile === "string") { - options.browserslistConfigFile = (0, _resolveTargets.resolveBrowserslistConfigFile)(options.browserslistConfigFile, dirname); - } - - return options; -} - -function createCachedDescriptors(dirname, options, alias) { - const { - plugins, - presets, - passPerPreset - } = options; - return { - options: optionsWithResolvedBrowserslistConfigFile(options, dirname), - plugins: plugins ? () => createCachedPluginDescriptors(plugins, dirname)(alias) : () => handlerOf([]), - presets: presets ? () => createCachedPresetDescriptors(presets, dirname)(alias)(!!passPerPreset) : () => handlerOf([]) - }; -} - -function createUncachedDescriptors(dirname, options, alias) { - return { - options: optionsWithResolvedBrowserslistConfigFile(options, dirname), - plugins: (0, _functional.once)(() => createPluginDescriptors(options.plugins || [], dirname, alias)), - presets: (0, _functional.once)(() => createPresetDescriptors(options.presets || [], dirname, alias, !!options.passPerPreset)) - }; -} - -const PRESET_DESCRIPTOR_CACHE = new WeakMap(); -const createCachedPresetDescriptors = (0, _caching.makeWeakCacheSync)((items, cache) => { - const dirname = cache.using(dir => dir); - return (0, _caching.makeStrongCacheSync)(alias => (0, _caching.makeStrongCache)(function* (passPerPreset) { - const descriptors = yield* createPresetDescriptors(items, dirname, alias, passPerPreset); - return descriptors.map(desc => loadCachedDescriptor(PRESET_DESCRIPTOR_CACHE, desc)); - })); -}); -const PLUGIN_DESCRIPTOR_CACHE = new WeakMap(); -const createCachedPluginDescriptors = (0, _caching.makeWeakCacheSync)((items, cache) => { - const dirname = cache.using(dir => dir); - return (0, _caching.makeStrongCache)(function* (alias) { - const descriptors = yield* createPluginDescriptors(items, dirname, alias); - return descriptors.map(desc => loadCachedDescriptor(PLUGIN_DESCRIPTOR_CACHE, desc)); - }); -}); -const DEFAULT_OPTIONS = {}; - -function loadCachedDescriptor(cache, desc) { - const { - value, - options = DEFAULT_OPTIONS - } = desc; - if (options === false) return desc; - let cacheByOptions = cache.get(value); - - if (!cacheByOptions) { - cacheByOptions = new WeakMap(); - cache.set(value, cacheByOptions); - } - - let possibilities = cacheByOptions.get(options); - - if (!possibilities) { - possibilities = []; - cacheByOptions.set(options, possibilities); - } - - if (possibilities.indexOf(desc) === -1) { - const matches = possibilities.filter(possibility => isEqualDescriptor(possibility, desc)); - - if (matches.length > 0) { - return matches[0]; - } - - possibilities.push(desc); - } - - return desc; -} - -function* createPresetDescriptors(items, dirname, alias, passPerPreset) { - return yield* createDescriptors("preset", items, dirname, alias, passPerPreset); -} - -function* createPluginDescriptors(items, dirname, alias) { - return yield* createDescriptors("plugin", items, dirname, alias); -} - -function* createDescriptors(type, items, dirname, alias, ownPass) { - const descriptors = yield* _gensync().all(items.map((item, index) => createDescriptor(item, dirname, { - type, - alias: `${alias}$${index}`, - ownPass: !!ownPass - }))); - assertNoDuplicates(descriptors); - return descriptors; -} - -function* createDescriptor(pair, dirname, { - type, - alias, - ownPass -}) { - const desc = (0, _item.getItemDescriptor)(pair); - - if (desc) { - return desc; - } - - let name; - let options; - let value = pair; - - if (Array.isArray(value)) { - if (value.length === 3) { - [value, options, name] = value; - } else { - [value, options] = value; - } - } - - let file = undefined; - let filepath = null; - - if (typeof value === "string") { - if (typeof type !== "string") { - throw new Error("To resolve a string-based item, the type of item must be given"); - } - - const resolver = type === "plugin" ? _files.loadPlugin : _files.loadPreset; - const request = value; - ({ - filepath, - value - } = yield* resolver(value, dirname)); - file = { - request, - resolved: filepath - }; - } - - if (!value) { - throw new Error(`Unexpected falsy value: ${String(value)}`); - } - - if (typeof value === "object" && value.__esModule) { - if (value.default) { - value = value.default; - } else { - throw new Error("Must export a default export when using ES6 modules."); - } - } - - if (typeof value !== "object" && typeof value !== "function") { - throw new Error(`Unsupported format: ${typeof value}. Expected an object or a function.`); - } - - if (filepath !== null && typeof value === "object" && value) { - throw new Error(`Plugin/Preset files are not allowed to export objects, only functions. In ${filepath}`); - } - - return { - name, - alias: filepath || alias, - value, - options, - dirname, - ownPass, - file - }; -} - -function assertNoDuplicates(items) { - const map = new Map(); - - for (const item of items) { - if (typeof item.value !== "function") continue; - let nameMap = map.get(item.value); - - if (!nameMap) { - nameMap = new Set(); - map.set(item.value, nameMap); - } - - if (nameMap.has(item.name)) { - const conflicts = items.filter(i => i.value === item.value); - throw new Error([`Duplicate plugin/preset detected.`, `If you'd like to use two separate instances of a plugin,`, `they need separate names, e.g.`, ``, ` plugins: [`, ` ['some-plugin', {}],`, ` ['some-plugin', {}, 'some unique name'],`, ` ]`, ``, `Duplicates detected are:`, `${JSON.stringify(conflicts, null, 2)}`].join("\n")); - } - - nameMap.add(item.name); - } -} - -0 && 0; - -//# sourceMappingURL=config-descriptors.js.map diff --git a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js.map b/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js.map deleted file mode 100644 index 37b2622fb..000000000 --- a/ecommerce2/sanity_ecommerce2/node_modules/@babel/core/lib/config/config-descriptors.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"names":["isEqualDescriptor","a","b","name","value","options","dirname","alias","ownPass","file","request","resolved","handlerOf","optionsWithResolvedBrowserslistConfigFile","browserslistConfigFile","resolveBrowserslistConfigFile","createCachedDescriptors","plugins","presets","passPerPreset","createCachedPluginDescriptors","createCachedPresetDescriptors","createUncachedDescriptors","once","createPluginDescriptors","createPresetDescriptors","PRESET_DESCRIPTOR_CACHE","WeakMap","makeWeakCacheSync","items","cache","using","dir","makeStrongCacheSync","makeStrongCache","descriptors","map","desc","loadCachedDescriptor","PLUGIN_DESCRIPTOR_CACHE","DEFAULT_OPTIONS","cacheByOptions","get","set","possibilities","indexOf","matches","filter","possibility","length","push","createDescriptors","type","gensync","all","item","index","createDescriptor","assertNoDuplicates","pair","getItemDescriptor","Array","isArray","undefined","filepath","Error","resolver","loadPlugin","loadPreset","String","__esModule","default","Map","nameMap","Set","has","conflicts","i","JSON","stringify","join","add"],"sources":["../../src/config/config-descriptors.ts"],"sourcesContent":["import gensync, { type Handler } from \"gensync\";\nimport { once } from \"../gensync-utils/functional\";\n\nimport { loadPlugin, loadPreset } from \"./files\";\n\nimport { getItemDescriptor } from \"./item\";\n\nimport {\n makeWeakCacheSync,\n makeStrongCacheSync,\n makeStrongCache,\n} from \"./caching\";\nimport type { CacheConfigurator } from \"./caching\";\n\nimport type {\n ValidatedOptions,\n PluginList,\n PluginItem,\n} from \"./validation/options\";\n\nimport { resolveBrowserslistConfigFile } from \"./resolve-targets\";\n\n// Represents a config object and functions to lazily load the descriptors\n// for the plugins and presets so we don't load the plugins/presets unless\n// the options object actually ends up being applicable.\nexport type OptionsAndDescriptors = {\n options: ValidatedOptions;\n plugins: () => Handler >;\n presets: () => Handler >;\n};\n\n// Represents a plugin or presets at a given location in a config object.\n// At this point these have been resolved to a specific object or function,\n// but have not yet been executed to call functions with options.\nexport type UnloadedDescriptor = {\n name: string | undefined;\n value: any | Function;\n options: {} | undefined | false;\n dirname: string;\n alias: string;\n ownPass?: boolean;\n file?: {\n request: string;\n resolved: string;\n };\n};\n\nfunction isEqualDescriptor(\n a: UnloadedDescriptor,\n b: UnloadedDescriptor,\n): boolean {\n return (\n a.name === b.name &&\n a.value === b.value &&\n a.options === b.options &&\n a.dirname === b.dirname &&\n a.alias === b.alias &&\n a.ownPass === b.ownPass &&\n (a.file && a.file.request) === (b.file && b.file.request) &&\n (a.file && a.file.resolved) === (b.file && b.file.resolved)\n );\n}\n\nexport type ValidatedFile = {\n filepath: string;\n dirname: string;\n options: ValidatedOptions;\n};\n\n// eslint-disable-next-line require-yield\nfunction* handlerOf (value: T): Handler {\n return value;\n}\n\nfunction optionsWithResolvedBrowserslistConfigFile(\n options: ValidatedOptions,\n dirname: string,\n): ValidatedOptions {\n if (typeof options.browserslistConfigFile === \"string\") {\n options.browserslistConfigFile = resolveBrowserslistConfigFile(\n options.browserslistConfigFile,\n dirname,\n );\n }\n return options;\n}\n\n/**\n * Create a set of descriptors from a given options object, preserving\n * descriptor identity based on the identity of the plugin/preset arrays\n * themselves, and potentially on the identity of the plugins/presets + options.\n */\nexport function createCachedDescriptors(\n dirname: string,\n options: ValidatedOptions,\n alias: string,\n): OptionsAndDescriptors {\n const { plugins, presets, passPerPreset } = options;\n return {\n options: optionsWithResolvedBrowserslistConfigFile(options, dirname),\n plugins: plugins\n ? () =>\n // @ts-expect-error todo(flow->ts) ts complains about incorrect arguments\n createCachedPluginDescriptors(plugins, dirname)(alias)\n : () => handlerOf([]),\n presets: presets\n ? () =>\n // @ts-expect-error todo(flow->ts) ts complains about incorrect arguments\n createCachedPresetDescriptors(presets, dirname)(alias)(\n !!passPerPreset,\n )\n : () => handlerOf([]),\n };\n}\n\n/**\n * Create a set of descriptors from a given options object, with consistent\n * identity for the descriptors, but not caching based on any specific identity.\n */\nexport function createUncachedDescriptors(\n dirname: string,\n options: ValidatedOptions,\n alias: string,\n): OptionsAndDescriptors {\n return {\n options: optionsWithResolvedBrowserslistConfigFile(options, dirname),\n // The returned result here is cached to represent a config object in\n // memory, so we build and memoize the descriptors to ensure the same\n // values are returned consistently.\n plugins: once(() =>\n createPluginDescriptors(options.plugins || [], dirname, alias),\n ),\n presets: once(() =>\n createPresetDescriptors(\n options.presets || [],\n dirname,\n alias,\n !!options.passPerPreset,\n ),\n ),\n };\n}\n\nconst PRESET_DESCRIPTOR_CACHE = new WeakMap();\nconst createCachedPresetDescriptors = makeWeakCacheSync(\n (items: PluginList, cache: CacheConfigurator ) => {\n const dirname = cache.using(dir => dir);\n return makeStrongCacheSync((alias: string) =>\n makeStrongCache(function* (\n passPerPreset: boolean,\n ): Handler > {\n const descriptors = yield* createPresetDescriptors(\n items,\n dirname,\n alias,\n passPerPreset,\n );\n return descriptors.map(\n // Items are cached using the overall preset array identity when\n // possibly, but individual descriptors are also cached if a match\n // can be found in the previously-used descriptor lists.\n desc => loadCachedDescriptor(PRESET_DESCRIPTOR_CACHE, desc),\n );\n }),\n );\n },\n);\n\nconst PLUGIN_DESCRIPTOR_CACHE = new WeakMap();\nconst createCachedPluginDescriptors = makeWeakCacheSync(\n (items: PluginList, cache: CacheConfigurator ) => {\n const dirname = cache.using(dir => dir);\n return makeStrongCache(function* (\n alias: string,\n ): Handler > {\n const descriptors = yield* createPluginDescriptors(items, dirname, alias);\n return descriptors.map(\n // Items are cached using the overall plugin array identity when\n // possibly, but individual descriptors are also cached if a match\n // can be found in the previously-used descriptor lists.\n desc => loadCachedDescriptor(PLUGIN_DESCRIPTOR_CACHE, desc),\n );\n });\n },\n);\n\n/**\n * When no options object is given in a descriptor, this object is used\n * as a WeakMap key in order to have consistent identity.\n */\nconst DEFAULT_OPTIONS = {};\n\n/**\n * Given the cache and a descriptor, returns a matching descriptor from the\n * cache, or else returns the input descriptor and adds it to the cache for\n * next time.\n */\nfunction loadCachedDescriptor(\n cache: WeakMap<{} | Function, WeakMap<{}, Array >>,\n desc: UnloadedDescriptor,\n) {\n const { value, options = DEFAULT_OPTIONS } = desc;\n if (options === false) return desc;\n\n let cacheByOptions = cache.get(value);\n if (!cacheByOptions) {\n cacheByOptions = new WeakMap();\n cache.set(value, cacheByOptions);\n }\n\n let possibilities = cacheByOptions.get(options);\n if (!possibilities) {\n possibilities = [];\n cacheByOptions.set(options, possibilities);\n }\n\n if (possibilities.indexOf(desc) === -1) {\n const matches = possibilities.filter(possibility =>\n isEqualDescriptor(possibility, desc),\n );\n if (matches.length > 0) {\n return matches[0];\n }\n\n possibilities.push(desc);\n }\n\n return desc;\n}\n\nfunction* createPresetDescriptors(\n items: PluginList,\n dirname: string,\n alias: string,\n passPerPreset: boolean,\n): Handler > {\n return yield* createDescriptors(\n \"preset\",\n items,\n dirname,\n alias,\n passPerPreset,\n );\n}\n\nfunction* createPluginDescriptors(\n items: PluginList,\n dirname: string,\n alias: string,\n): Handler > {\n return yield* createDescriptors(\"plugin\", items, dirname, alias);\n}\n\nfunction* createDescriptors(\n type: \"plugin\" | \"preset\",\n items: PluginList,\n dirname: string,\n alias: string,\n ownPass?: boolean,\n): Handler > {\n const descriptors = yield* gensync.all(\n items.map((item, index) =>\n createDescriptor(item, dirname, {\n type,\n alias: `${alias}$${index}`,\n ownPass: !!ownPass,\n }),\n ),\n );\n\n assertNoDuplicates(descriptors);\n\n return descriptors;\n}\n\n/**\n * Given a plugin/preset item, resolve it into a standard format.\n */\nexport function* createDescriptor(\n pair: PluginItem,\n dirname: string,\n {\n type,\n alias,\n ownPass,\n }: {\n type?: \"plugin\" | \"preset\";\n alias: string;\n ownPass?: boolean;\n },\n): Handler {\n const desc = getItemDescriptor(pair);\n if (desc) {\n return desc;\n }\n\n let name;\n let options;\n // todo(flow->ts) better type annotation\n let value: any = pair;\n if (Array.isArray(value)) {\n if (value.length === 3) {\n [value, options, name] = value;\n } else {\n [value, options] = value;\n }\n }\n\n let file = undefined;\n let filepath = null;\n if (typeof value === \"string\") {\n if (typeof type !== \"string\") {\n throw new Error(\n \"To resolve a string-based item, the type of item must be given\",\n );\n }\n const resolver = type === \"plugin\" ? loadPlugin : loadPreset;\n const request = value;\n\n ({ filepath, value } = yield* resolver(value, dirname));\n\n file = {\n request,\n resolved: filepath,\n };\n }\n\n if (!value) {\n throw new Error(`Unexpected falsy value: ${String(value)}`);\n }\n\n if (typeof value === \"object\" && value.__esModule) {\n if (value.default) {\n value = value.default;\n } else {\n throw new Error(\"Must export a default export when using ES6 modules.\");\n }\n }\n\n if (typeof value !== \"object\" && typeof value !== \"function\") {\n throw new Error(\n `Unsupported format: ${typeof value}. Expected an object or a function.`,\n );\n }\n\n if (filepath !== null && typeof value === \"object\" && value) {\n // We allow object values for plugins/presets nested directly within a\n // config object, because it can be useful to define them in nested\n // configuration contexts.\n throw new Error(\n `Plugin/Preset files are not allowed to export objects, only functions. In ${filepath}`,\n );\n }\n\n return {\n name,\n alias: filepath || alias,\n value,\n options,\n dirname,\n ownPass,\n file,\n };\n}\n\nfunction assertNoDuplicates(items: Array ): void {\n const map = new Map();\n\n for (const item of items) {\n if (typeof item.value !== \"function\") continue;\n\n let nameMap = map.get(item.value);\n if (!nameMap) {\n nameMap = new Set();\n map.set(item.value, nameMap);\n }\n\n if (nameMap.has(item.name)) {\n const conflicts = items.filter(i => i.value === item.value);\n throw new Error(\n [\n `Duplicate plugin/preset detected.`,\n `If you'd like to use two separate instances of a plugin,`,\n `they need separate names, e.g.`,\n ``,\n ` plugins: [`,\n ` ['some-plugin', {}],`,\n ` ['some-plugin', {}, 'some unique name'],`,\n ` ]`,\n ``,\n `Duplicates detected are:`,\n `${JSON.stringify(conflicts, null, 2)}`,\n ].join(\"\\n\"),\n );\n }\n\n nameMap.add(item.name);\n }\n}\n"],"mappings":"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"} \ No newline at end of file