@shopify/cli-hydrogen 4.0.0-alpha.1 → 4.0.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/templates/demo-store/.cache/content-v2/sha512/00/cf/2691ba3b4253dc803282219fc108c6d7b3fb03e318729ee568216e8a13af36614948c5a215992ba7b5222cc1055cf81b6a752c3597e261a8c8095f55eb9d +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/02/76/13bbea15bb42b81a204b0dc5f14726e0bfa8d012a7b284f887cc2e3c92195d6b07a78f199f990b311ca5fafa9079563503cdd81808cd9b7e496d86c72732 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/08/3c/f2108d415b1474e3e7fee6684b9f1c4b99249c5d4178686b1632d19209f6782c86d7b04abe3873d955bb9e353cca92d8ae7324f374eb691bfd8729ce8407 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/0c/da/c6f091fb614d96e6d0a533733b487011ab615ad5983823c7085320ec2ea2ee8e020ae2646f4772d350f253abb4f8a2489c843a8b873a90bfed3c27c5fd0b +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/11/0c/195071c290a61e22dd825b300c9f93e5315b2effefc3e5545440ac704d629e177bc877333ce73232ac72703bcc69fb425632d84b3caefe7f5c0fd12537ee +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/17/08/03dabbacd40d4a2b132018a520d1dbcf29ffb2c659bbe01cb91f700202d5016ab4104831b95a05b98535549be4a6520ddcd6504ba361692549a5cd0458ee +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/25/f3/97b4dddda618ca4621d4a8da779269ba2f2eae1fc35cb0cc394e5fb909bb4825e10ca37a4115d69fdd5551be5d64bdb75e0bf0199794f473c25f4ae7aa1a +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/27/a0/d277ff364ced6a2d01639f1e2b8675ef95eff3a4aa4d2fda0990392526e0f18def66116a8623096d1bdafabe1dc8efc56ef0956054b3370dfa9ad6596a29 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/28/53/96d2a5c3d4b08a7191e545d4d961f7690f814a331dc8efcc11e45854fbccd04f825ec8d3a1070b05aca51dd63e06c778316395446055cc3cfc90c8b30615 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/28/7c/c71b0c6367bdf7307a8061fe1c4568c9f1e9603d835b6fc917fe8042535a867c37154e35376a01ad6bdb3c2d6f29b88b41902fd6f20b1227e02081682d01 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/29/2e/db501d168869cc6b7d5e51bfbf399e920773ed905b9e2b782ebfb29c5260f05b67d0b7d4599e8c5666253789d545ecfdfdb9e020da8ac262d99d0e69e5b0 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/2b/71/b06448186eeafe74e7e29de9fb188013acc513af9d0d4eeff66650385fce9f77f5f2ccea51806c8449cf25c7825ee4c3ac428822d4e3b8b3f1b010adb7aa +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/2d/e9/141465ed1c16a93073fe5602f300dc3d8a5246fe045abffa4ac277550e4b365c30629224f328540a36d470ef4d69d8f80d6aeadfbd4a07872a66c40143df +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/2d/ec/a65ff18546d88746d8d74b60cd34137005996ded9afd4877b74cba36e9a4dd1829992dbb37ec13b296f39cfeef462c6f12a4c6913577504fec6d7d5611aa +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/30/9f/f03a3dcdd3a5f1116ab710595deb552c1564bd8295bff71f62b3d95be656a6ef53e8ceaee21cbcb880cc06270c3db2327ab1ddef2fc09d6cba4436f470e7 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/35/3c/f46f8adbcf210210bac8ab00267ab16c16393ab4a95920f69c4452b298a83c9785d3d2c2bb4a63937cb4eed028197a18f0d2929024ebae18b0751f07ebf5 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/36/3e/ece5cc6633a23301aa4f05fc1efddd8876aec2d8bf7afe504526e2866ed67263e99bffbb1e0d99a65622a7246f9d662217032aca47f70b6f0f13b75e7df1 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/37/19/de54f68ea7b2a79f86d12ec1107e99d04217817fb6de9a5ba2dc5cdd16d16e1dda4cc9f7cf2b6ece5a6330f47ca20fa27a08aeffc17eb23fd11399e601fd +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/46/04/af285aee74d96b28b24f75d7911de65e6c7bb26475ab5219fe5308028fda55060cf45650dfa09c0731ec73ece453c1e24e0c38715e8d4c5c80fd6365a1f4 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/46/1c/c69c5b9150a9f76dff13c0d6a768540636e6569f4f3f56795d1b4c494045d5908674f292815212ac52e6d8a597b4ad35783506113f195a09f1057f09f00c +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/4b/48/ca635670e7d1b1a5550d32f51389a5754234da55c6d7c900f348c8bf1ccc84bdcefc620e08979b7aa1d04a49a1138b46346f126d20c0126eb0c3261deb5b +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/50/75/609ace481c5e148698b91afca04bd995ab360802c5f8961228eceb891236836cab54c7fddd97a62e4ca19a03e5863fd0999c68849cf37b30a4fe32e1397f +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/50/cd/4f809a5b4a52449879ecf0b061e00f36f5e2df284fddb5c9c75e13ab1db6e85931fb82d211f1699eed3fe308ffd5d2e69dc2d261fdea58f8224acc278143 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/51/ab/e165384df6374c7b2d0ebebc8642ecb0e0c14f7c5b57970ec5d2e17f7d1643e0b01eda69e5ffbefde85ecba6d613bcc5175c5564e36bfb73d966c8ea4153 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/54/86/917224aeb3e04e19a51534244f5ed28f3529d85276452f52af9af3657798246c97a0948bcf62c707394ab80f0062a87e7079bd71c05e0d16f927091617d2 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/6a/9d/a99dc2fae7981ecb35b0dadc0acddd23e65ae6590f70743d824c36697fd10610ffafa9aa63c09a7861a701c1d52400050d9b562dc4f6bdba8e0de362b486 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/6b/6d/71211d4cebfd1e1c86788ede5784a53cf366a85f4e2646a300c820958a5219bfa5492b169d1cca1b431e946b41d15a526ee7f77db65a6e730dead281f777 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/6e/25/d2212e576c7d9684f5237bd1ee363dfe5cf0ad5f9acbeeded47a531c7d3444d2144684e310c8d4d4200ee5b142671bc2be887dc8d3244377d645813e048c +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/73/40/c822831f11f08a9ceea944d0145b072ba6164a3e2e75f98fda5437cda6dfddf9ca9450445c1f3236228d6259ac95e4cde9bb6e5996490ed00b7b13b06121 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/73/4c/bf7dfa31c1d17f57e5fdabc0bd79ce133d3ea7562f494615c8bd4369b58c29963090577cd70c6ab2bb8af6ae92915ce20bb0bf1925cccb961aeeed9c8703 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/7b/15/d1749be8fa73f2f123e5e9a0807f343cdfa14fd263f9073fe7cd73352b7318b976a43687096a06acbbed2a2f0f86119d45cdd1e9ad6d09208c06b6232db2 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/88/76/d18fdfbb05293909609d42368642fc6da4bd138c5864ec2f721212b52e595b84ae46f48021ed3e6240edf443f78bdea557d56d700e3da848459ea3077a80 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/8a/d1/ca384452cdc8a2fb92fa1c70a4db303dd5f9887475e0e4ddf4bc711b5ebceb684ba5fd8bf596c3d491ab8598bd52ffe20f98564f8110da0730f46f39e790 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/8b/ae/5793cc875f8fa5fe744c72c07b09ead40386e23a89cb2b77957c61413eb4afc993f70eee071a00aeff74bfe63cfcd91385e45094338c0fc05aedaca91917 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/8c/51/88e1fc4d8365cb6ad1a755e8bca81fbb64abb1c8ef08a8314471952910e0e29eadfa283d482233d500893a57b57470171ab98ebacb4b93780b37e7a87c93 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/8f/81/8e238bb1d4654dcc554d661194c9415fe36dc6f20624dd26e47c0043f06ee69d1abd49947b11954508bfd01823fdf97a3ca9196521f05cb471473095c5c5 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/91/39/2d6842760bb34dde16e9aad46162f546e8cab25d2440a69cb01bf4b2ed8fb3122490666d3eb9b70225259f7ed47e182bc6b83fe455647dde30d61cefa07d +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/91/ef/9fc44c6b88d8614b31058550efddfc49a43aeef50cf16d7ade5087e6b13c3f5ca743b1a10c72993a806db4ddf093c2216a853e0dbf6c002c61507e60bfee +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/93/6b/e60098157f6bff8ba570cab2ffd97a14983109006f7fa87e4432728366f96dfb19e957d28754daa45f1b6cb2421d26ab59bbd5ce5a448d6102e8e662403d +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/94/4a/a539de5a6348e4ecc4e05ea18301c0077a30ed452550660f8b13440a40f7e3858a03ef0aad25b559c49dbbe51455cc5d8e2a7b6c2b0c57e31875b5f8e6be +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/94/6b/572828348790e114213fd3502aba2781cdb87da48f9a16bc6c407d5e12ec888c3fd144f699f50c26934255feee621b2e81aa9156d1afd4e838698fd7be94 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/9c/93/917e1b17263467c1baa4f0ef3e5f0a24cf28fc88f290532df19a48d5364d0ca64ef4b5296581cec1e94c5b9a896174e7dd67f42c44ab0482ecbbedf46b3a +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/9e/2e/945fdc4a4fb8c2186645c71b48ef341e6f0da2a6b3ddd38761210fcf713c2249160f87387ac66547fa30732269fbf9ad6b24b6c6a50ae914284b96be8571 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/9f/e5/f8840af1702b9e2e9005708f2513779d889a88d8d7379d5d93cf28390fd6c0300ba5cac0fe429d67a22ddeb884f85917c73f4ae286328a5cf437f568b73f +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/a0/92/dc5bc315864cebde3ccd84e2a2e4228d8f467aa14efdcc3ef13b8815abbf495afeccb531cc4e049fe4d81d0b3e5afc0139b4450fb2cfca2b2c82cdd450ac +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/aa/85/daa1447b7715eafed15469bb5fdce67152d71416d2c40db224480ca151019a7ee86ea5b81ddeb85f7bdae453dab2021886ba63e85b0303ab20bc7b712ea4 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/ad/44/f00b1b89c5d7778be4cd40cff421c77e97a937e945491777256fafa6ac80cc334b7118b4248fd13c3cb7fb37d86e1b54afaf688b295542694f276d359082 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/b0/02/9ef55507e114e4391048df8e43101c006d5b3852e33450030d3ba974d438dd3ac489b084b15445ff5e1747e642eda2d969a13c8ba5a778669f9ab019789a +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/ba/08/9238d2f1bec0536eed757ab6583e384da966814a1c83896409f032bb673a056d62bb6f3b8a5bef36d61daf0e15617154b106b3bbc721354690bc930bb649 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/bc/33/6e26ece5ac53d9eac9ac8a192ef39faf2a587a5808253c659fb1d371c477fc8074d428c8d1929b0d85dd1fec66fc79ea6b9fcb01507e2efec75fb7fbc2cc +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/be/33/7a64881c125a7ff913866bb1818d3fd54d10d837c5a66b6e8f39b9be9e12d352d060f365a62b070414995afb4e90ce70e3d0d31423e6f6fa4e02141e9e9d +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/c5/5a/e35359eb2d580bc01b459208e8911fb606223ae88c095db8174d0400824626bc8cf02c869c11d3b751774fafc52555243ed0ea6d6e3c072ef990a4f41461 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/cd/6c/8525b5108666cbe3305a4ad413c0ea863878337b0621eaff9443c170e2f4afe6a0b0ece9ea5ee6777f37b483dede689e86734350430416bde47553bdaf7c +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/d4/79/8b69e57b3c37d1b04f2734fef377858aaa753467733fc2545b45556e0ae2d066c0180fa34c3a93b625db353ee070b82ad24f3b8dd2a2513aac4fcdc55154 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/d5/f6/e56af7190da8a8ba31ae458ad2b1cbfc0cd10a449248348eb92dd8a7de2819c284525513e3082fcd3b1bfdddbe2135bda8bf827cef58bc95abb8a3c83278 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/d7/9e/450b29d4cb47831fc3235642c3f4c461d3fb8f8c0ee567aeed2d51d3c0eb6d2e0cfabcf0dbe709ff99d3ba04ead42c75b06efe396aae4939163884cbfec5 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/da/84/b6d27e02f9b109d7cff3095b08e2e2ed1802c8b6829c98f6e297d1c404059f8bacfdc278afd07e2f81cbc487318396a3775037b678ab6aff9a5231c94c0d +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/dc/0a/58f1301ab9de7b2c6b01d5d5b3676416048c9a42e4140ce4149d242da4d1d7b009bd9f911cf5860628ede86c7d30f4e827c502b8b4f365de6d7e7378ca94 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/dd/b0/b95c68e126e3b0ceeb4c28f6d9cfd165597001d03c7287a9d2fe632cd166c442a578b55ddbb757b72202dcdd49586de80d54cb98ec439d0bd99c0023d6f6 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/e2/6e/b769bab909900c19709f3779dde41268bd5bad463f233c1a4934aefc4af01ba532b0ec73776e874427e110710069e5c2c0aeb4debeef9827a21cc8d3364d +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/e8/ae/9b467e1d23913d4584d9417875b3cdc25f6dfed8b228f3a0c818129010b778aae1af1eb200b015ab428e79afe0ef1061262392fbdb96ed7da95efbe7f758 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/ec/08/68aa37fb6cee7b8ad4e1c4ee9d352d626db39c1f6b1ed71530e5943d1575127e82f636bdab2fa00b90581c3829db9bf4d3ef4130024ef224c8a48b4d7df2 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/ed/74/dda12abc4e0e3d645725a3b240b3874262c153ae37fe7a2991d5b6aa7564b5adf8080d262c0be4f841747ca359db51d58b004b7eed8330f27a739b9e3a46 +1 -0
- package/dist/templates/demo-store/.cache/content-v2/sha512/fd/f3/986b7ee5ea5ad1d89af5c08de69d43c025b54381092e0a19fd7e7a1e0352552aa85c056315ce5e11a46ec75a252b1a44e2083abb73cd6df8407dfdb0ac48 +1 -0
- package/dist/templates/demo-store/.cache/index-v5/06/7e/7376a38676aa7f0543ab03fc451602dab8ad66e6ddebc44d94ee6f5c1df2 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/06/84/719070270981ac7d003eefa98569d499d2d93dd2f1828da9825b87d03160 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/08/b4/0d9cf6db265587df0990c07ef4bc1e61fa9fe85d6cfe4d6cbbf839c2313c +2 -0
- package/dist/templates/demo-store/.cache/index-v5/09/f6/fe4b05c4157320b8b59b3f84116195be0437d87357d743d21acd638a4606 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/0a/75/d3baf53012b62018cb60557f47601d810ec57c564bdc0b24c4990c73a833 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/0c/43/721b2c2b054af973286c2ea3c51c612d347365682b5aae5b9e98554f91e1 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/12/83/1a44e36774d9014fe186e18a3691e1ec3f37f2c30c22d38787a3cd157d7f +2 -0
- package/dist/templates/demo-store/.cache/index-v5/13/bd/14a326bd4cb6fb280eb85ecca60d6519738bf7e80df5285ec626d129baf3 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/19/b1/b0877b4141a2ee6f7c173e2407c0b26958c0919238934a89a03049397aec +2 -0
- package/dist/templates/demo-store/.cache/index-v5/1b/6a/418ff1309326b48db3963d5ad40eacb0728d138b7f24896390e484b34c50 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/24/d9/e0e8006f3c8deb17314475a674698161e207f116d9056bf0e1aabfa6c430 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/28/f4/466108ec4c6619222c94f178cc3962ed49f5f9a1e3783ad55335de0cdad3 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/2e/ae/45167cd92f49c852d660e05a29b7484c886b3c0579fb9c148162b1a88fb6 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/35/95/be51ab071b6bd2259e4acb91185c5e0affeee223c15a822ba226607d5616 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/36/74/12368a4a642be74c83dfdb5eaca244dc624ca78c3528edc49262807f9f96 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/37/56/4cbfef349acf26ffb05aa7f17742913d7bd956c920a5bb1941ca0dda3a22 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/3b/e5/5841b3445af43a34c7b560d6cf329ade1bfb64584b85fbb10ac4a7313ef4 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/40/67/0807c50d176836338cf5fe4864622d377a143dc97f0a86a702bf11dd7d72 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/45/4b/1a3af253b3e2ef123d3872ad54d71865cc788ff5373a00414d2ae0243421 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/4f/8a/4672c73b9b76b90b7b378fbf9bc1a09426d0b5dbe97404e1f1f5a354013c +2 -0
- package/dist/templates/demo-store/.cache/index-v5/51/da/70f3331e7c62bab563cf9f86297b1bda6f6215420807d7710aaee0b8ca5d +2 -0
- package/dist/templates/demo-store/.cache/index-v5/55/0e/4666f091383137a5168d8052b246b3a7a28e05215dc7d8ff7f6b921f0142 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/58/93/287077465c80a2bfba306f218e51893019895137562df4a116326a0b222a +2 -0
- package/dist/templates/demo-store/.cache/index-v5/61/d4/edd3f3713e7e144ff99d6920736fddfa8676eb5ab824f3f97cf65fa250ea +2 -0
- package/dist/templates/demo-store/.cache/index-v5/68/63/f781b7764101dfe1c192f68e1083513974e2396c9db609adf220a983bd88 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/68/f1/4a98caa6e2ab43e78781b99c7833cab4e722cd716bf9718e001a43efb27b +2 -0
- package/dist/templates/demo-store/.cache/index-v5/7d/de/0d76288297eecd2ad4b07dd881631b481b19a83f7c9d36cfa4f967332943 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/7e/12/528dc5a6aebfe1fb1d5b4b7d56097f25291dd9454e0ab8faa0a26f296815 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/7e/bf/17c5f07b52df7946e14e733afa8f3880a40c1032bd3fb307cae4319e0fa8 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/81/59/14da935263d86e18f99d2391d6731d29cd2d5c0d8c81c65293816e6ad32a +2 -0
- package/dist/templates/demo-store/.cache/index-v5/85/85/0475166b36ce12e75c5a6352b12ea2fa872f696b8161dd08fdfab09a7273 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/88/bd/84904435de02c12b5b01c5aadd782e65a48d44006d98b864e01961a109dc +2 -0
- package/dist/templates/demo-store/.cache/index-v5/88/f6/729e4bad26ebd2b792dee6d1f96f87546ff9c4fa95518f603627fdd1126f +2 -0
- package/dist/templates/demo-store/.cache/index-v5/8a/7c/f5287da63fd3884889fef7019b2679f9a53ce5a268097295682ddad5131b +2 -0
- package/dist/templates/demo-store/.cache/index-v5/95/40/bed10ab9e6081915bc6dc1ffb23a589f407c22ab7d254453f0b3ce53e5f5 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/96/b8/090abc56d6e9489d08af9564fb75d34477730aa1ece14ad85ba516549f2b +2 -0
- package/dist/templates/demo-store/.cache/index-v5/9b/e4/8aa4e95d52644490afdb862c05cb2dccb9f5c1aa45157f3af5c37aad080a +2 -0
- package/dist/templates/demo-store/.cache/index-v5/a1/e7/85ee850c85c329791d2123dd8231464fa27317290756b459012830d0f57e +2 -0
- package/dist/templates/demo-store/.cache/index-v5/a2/27/f2e299e50a8a3b2b54a89bb3be85f3118081b3c6cfed704bb7d2802e2a49 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/a2/88/971871174c14875c70ca7bc9cea8d6b01465c1716d99440b059fa493947c +2 -0
- package/dist/templates/demo-store/.cache/index-v5/aa/57/05b67f08f71909d263fe9c357786097f5683394dbd65b0e4da2f9aa25288 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/ac/25/d778b282ab78dbafcc1b4fb19695aed368081c76fa680140b89af08b07b1 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/ad/f9/09a060689bb686417e37a22fcf4866b6188f58eff7128f7979a4a68a6b2d +2 -0
- package/dist/templates/demo-store/.cache/index-v5/af/79/e80586a8b4bd0086246d97823d95bd64c77ad44b1fae591fdcd3883f776e +2 -0
- package/dist/templates/demo-store/.cache/index-v5/b8/22/805af62bf21b63052b47f2f85322cb615ee786c214c0abc63b593a9f80ac +2 -0
- package/dist/templates/demo-store/.cache/index-v5/b8/67/17d551f86553b2a3a30c80b1d9797cbfcaa3d00f5239f39c1727c4d4fe8e +2 -0
- package/dist/templates/demo-store/.cache/index-v5/bc/52/538f70c9e2857f944f17c9121f6018d5c26ba916801b78d75484b130cd78 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/c1/77/182e74b8e456fd321a98e8b23f5616eaf2968ccc0dd0eeff016624a89534 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/c2/b6/58c9b05294374187ca9a342d46ed1b1f9e0afaf619acf88014f7f1a5dd8b +2 -0
- package/dist/templates/demo-store/.cache/index-v5/c6/72/887059f60c91b6fa41fbdab6bc1e1b6f4e3596cadd7a22457466fc1c2f67 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/c8/52/09bfbca72b45aec745fc339c27986edefa85e40bd69113275a6ecd6495e9 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/cb/f3/c8983d3f6b148ff6b70a42e0c3ccc4ca2f368df0aca086b8f0279d49f5be +2 -0
- package/dist/templates/demo-store/.cache/index-v5/d0/c4/d960260ece228d28f70e317741b3f3f3df05c53956d870235837ae2b73b4 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/d2/7b/9476cfbc06c75a311a1951bcdea3b843d3f8763c916468901c3cd85ae7a4 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/d7/2f/11fb6fd9a383d1edb40e2a774ca2de45a4f4b2c02e3f10d772427ef813d1 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/d7/a8/e21243c97a68bff4874453358b21815d4dc4c804b63fce7cba9cc567c3d6 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/db/34/e258d66ddeae0e8df2f3a92f0fc0a0472adc9b48c8d2f38087a828da4bc0 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/de/8a/31224d2c63a17ccc13c25e35f4e5882c9a5f5553a3ffeb916c84aa73a15d +2 -0
- package/dist/templates/demo-store/.cache/index-v5/e0/9c/a50143959e2a05f23db12f6e7f9982a0889c4105004c9f58115f9fdb19e0 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/f3/45/ed5a71628f7babbcd96f9d316ba1a9a7cdea5be1ef54d931ed5d6fcbfc21 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/f4/20/fefac33b4499a27824ee7ef5a84779df38eca55b00ec3046fcb028efb593 +2 -0
- package/dist/templates/demo-store/.cache/index-v5/f6/1d/25c4d10714262d4559d2c43d3e64ebfc038d37b0edbbf02246bdd6dcdacb +2 -0
- package/dist/templates/demo-store/.cache/index-v5/f8/f2/017d33a8105299b5a1d72ea80b7cce0d4bafbcd8409437a212735325631a +2 -0
- package/dist/templates/demo-store/.cache/index-v5/fd/f2/f7f55dae9bf6b65ea883eb44dc2fd24a2d2a97c5b68cb559255c6574d239 +2 -0
- package/dist/templates/demo-store/.hydrogen/routes/[route-manifest.json].tsx +54 -0
- package/dist/templates/demo-store/.hydrogen/routes/admin.tsx +15 -0
- package/dist/templates/demo-store/_env +6 -0
- package/dist/templates/demo-store/_gitignore +14 -0
- package/dist/templates/demo-store/app/styles/app.css +4203 -0
- package/dist/templates/demo-store/dist/client/build/_.._/.hydrogen/routes/[route-manifest.json]-BIPZTJVN.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_.._/.hydrogen/routes/[route-manifest.json]-BIPZTJVN.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_.._/.hydrogen/routes/admin-G2IKFE47.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_.._/.hydrogen/routes/admin-G2IKFE47.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_assets/app-QCTC5PWY.css +4203 -0
- package/dist/templates/demo-store/dist/client/build/_assets/custom-font-COCMVHUB.css +13 -0
- package/dist/templates/demo-store/dist/client/build/_assets/favicon-5FIZBM2K.svg +28 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-3CERGUQT.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-3CERGUQT.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-3RYZL4SD.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-3RYZL4SD.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-4GXS2URF.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-4GXS2URF.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-4ROFW2VH.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-4ROFW2VH.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-63VE24M5.js +133 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-63VE24M5.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-6IZ7NY57.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-6IZ7NY57.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-6RKYTPO7.js +27 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-6RKYTPO7.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-ALSZP6XO.js +83 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-ALSZP6XO.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-AOOMA6GB.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-AOOMA6GB.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-AYHDHSL7.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-AYHDHSL7.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-BY6S7IS7.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-BY6S7IS7.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-C4WAPTNR.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-C4WAPTNR.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-GV33UIO4.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-GV33UIO4.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-HX34UWFZ.js +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-HX34UWFZ.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-JV4GUPYG.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-JV4GUPYG.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-KSKV5IK6.js +20 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-KSKV5IK6.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-LNLOHMUB.js +32 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-LNLOHMUB.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-LSI6EG4I.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-LSI6EG4I.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-LYYN6DNQ.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-LYYN6DNQ.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-MIBUUBFO.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-MIBUUBFO.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-NJK6XHPK.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-NJK6XHPK.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-OC3377HQ.js +105 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-OC3377HQ.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-RBLOPOSG.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-RBLOPOSG.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-RTZIY6AR.js +68 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-RTZIY6AR.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-S4E36YX5.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-S4E36YX5.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-UCP7TDFX.js +24 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-UCP7TDFX.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-V5EUNG45.js +25 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-V5EUNG45.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-WYHUKY3H.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-WYHUKY3H.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-X2L7EU2T.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-X2L7EU2T.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-X4LCECW4.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-X4LCECW4.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-XDBJQDOE.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-XDBJQDOE.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-XJLYC4WF.js +54 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-XJLYC4WF.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-YGLSE5Z5.js +2 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-YGLSE5Z5.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-ZNLABNO4.js +66 -0
- package/dist/templates/demo-store/dist/client/build/_shared/chunk-ZNLABNO4.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/entry.client-UGG4BFNY.js +2 -0
- package/dist/templates/demo-store/dist/client/build/entry.client-UGG4BFNY.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/manifest-78BD90E6.js +1 -0
- package/dist/templates/demo-store/dist/client/build/root-LDM5SSFY.js +32 -0
- package/dist/templates/demo-store/dist/client/build/root-LDM5SSFY.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$-T6CCBQXB.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$-T6CCBQXB.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/$-RML44FPI.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/$-RML44FPI.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/[robots.txt]-Q6A4ELVO.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/[robots.txt]-Q6A4ELVO.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/[sitemap.xml]-XRXAWWFM.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/[sitemap.xml]-XRXAWWFM.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__private/address/$id-3CPMYDWB.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__private/address/$id-3CPMYDWB.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__private/edit-KUSSPNLG.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__private/edit-KUSSPNLG.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__private/logout-W2VRZWGS.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__private/logout-W2VRZWGS.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__private/orders.$id-6XB7QE3Z.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__private/orders.$id-6XB7QE3Z.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__public/activate.$id.$activationToken-XURZGKY5.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__public/activate.$id.$activationToken-XURZGKY5.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__public/login-ICCBTETC.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__public/login-ICCBTETC.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__public/recover-NCBS3PRT.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__public/recover-NCBS3PRT.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__public/register-OQDSIXDB.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__public/register-OQDSIXDB.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__public/reset.$id.$resetToken-BC773EWT.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account/__public/reset.$id.$resetToken-BC773EWT.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account-UCAHSQYN.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/account-UCAHSQYN.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/api/countries-D74K7HOY.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/api/countries-D74K7HOY.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/api/products-LVMWKMBH.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/api/products-LVMWKMBH.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/cart-UVXZT4M5.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/cart-UVXZT4M5.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/collections/$collectionHandle-IXHYLA76.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/collections/$collectionHandle-IXHYLA76.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/collections/all-I3ZQ3MBD.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/collections/all-I3ZQ3MBD.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/collections/index-LFW7EEWJ.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/collections/index-LFW7EEWJ.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/featured-products-UU24CXMU.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/featured-products-UU24CXMU.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/index-C53BLYRE.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/index-C53BLYRE.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/journal/$journalHandle-JIHENEIT.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/journal/$journalHandle-JIHENEIT.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/journal/index-Y3BHQBEG.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/journal/index-Y3BHQBEG.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/og-image-JHBOIC2Z.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/og-image-JHBOIC2Z.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/pages/$pageHandle-UAXAZ3DG.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/pages/$pageHandle-UAXAZ3DG.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/policies/$policyHandle-6OJWYHRC.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/policies/$policyHandle-6OJWYHRC.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/policies/index-NSX5XJI5.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/policies/index-NSX5XJI5.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/products/$productHandle-2Y4OD7YF.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/products/$productHandle-2Y4OD7YF.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/products/index-7DNEY6RA.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/products/index-7DNEY6RA.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/search-FFWHIHND.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/$lang/search-FFWHIHND.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/[robots.txt]-JOBE7OD7.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/[robots.txt]-JOBE7OD7.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/[sitemap.xml]-UQB7RN5M.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/[sitemap.xml]-UQB7RN5M.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__private/address/$id-7UWEFJPQ.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__private/address/$id-7UWEFJPQ.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__private/edit-P6H3SMMC.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__private/edit-P6H3SMMC.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__private/logout-MRH6DVPZ.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__private/logout-MRH6DVPZ.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__private/orders.$id-WRZR7KFX.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__private/orders.$id-WRZR7KFX.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__public/activate.$id.$activationToken-MQJ7UCXL.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__public/activate.$id.$activationToken-MQJ7UCXL.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__public/login-PV6QK5VR.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__public/login-PV6QK5VR.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__public/recover-BPPSDCFU.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__public/recover-BPPSDCFU.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__public/register-FOWQ2VDD.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__public/register-FOWQ2VDD.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__public/reset.$id.$resetToken-HEH66LNH.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/account/__public/reset.$id.$resetToken-HEH66LNH.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/account-OVETQ7UE.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/account-OVETQ7UE.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/api/countries-FOQSZPCF.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/api/countries-FOQSZPCF.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/api/products-JQONOX4V.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/api/products-JQONOX4V.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/cart-CX5DA2OD.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/cart-CX5DA2OD.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/collections/$collectionHandle-S6W3L6G5.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/collections/$collectionHandle-S6W3L6G5.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/collections/all-EXLOY5Y6.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/collections/all-EXLOY5Y6.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/collections/index-LE6BMYRV.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/collections/index-LE6BMYRV.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/discounts.$code-ORRT2Y6X.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/discounts.$code-ORRT2Y6X.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/featured-products-ECR7IJXB.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/featured-products-ECR7IJXB.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/index-DPGHJVAI.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/index-DPGHJVAI.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/journal/$journalHandle-GK4XP5IH.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/journal/$journalHandle-GK4XP5IH.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/journal/index-DZH346LQ.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/journal/index-DZH346LQ.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/og-image-DYICG2WR.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/og-image-DYICG2WR.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/pages/$pageHandle-FSWWJUZK.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/pages/$pageHandle-FSWWJUZK.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/policies/$policyHandle-U2LKNOPS.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/policies/$policyHandle-U2LKNOPS.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/policies/index-OHYNKKT6.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/policies/index-OHYNKKT6.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/products/$productHandle-UNLU3NW6.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/products/$productHandle-UNLU3NW6.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/products/index-XFDNNZYK.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/products/index-XFDNNZYK.js.map +7 -0
- package/dist/templates/demo-store/dist/client/build/routes/search-KWI45NMS.js +2 -0
- package/dist/templates/demo-store/dist/client/build/routes/search-KWI45NMS.js.map +7 -0
- package/dist/templates/demo-store/dist/client/favicon.svg +28 -0
- package/dist/templates/demo-store/dist/client/fonts/IBMPlexSerif-Text.woff2 +0 -0
- package/dist/templates/demo-store/dist/client/fonts/IBMPlexSerif-TextItalic.woff2 +0 -0
- package/dist/templates/demo-store/dist/worker/_assets/app-QCTC5PWY.css +4203 -0
- package/dist/templates/demo-store/dist/worker/_assets/custom-font-COCMVHUB.css +13 -0
- package/dist/templates/demo-store/dist/worker/_assets/favicon-5FIZBM2K.svg +28 -0
- package/dist/templates/demo-store/dist/worker/index.js +1572 -0
- package/dist/templates/demo-store/dist/worker/index.js.map +7 -0
- package/dist/templates/demo-store/package.json +1 -1
- package/dist/templates/demo-store/remix.init/index.mjs +25 -0
- package/dist/templates/hello-world/.cache/content-v2/sha512/34/81/da34a44efefe809149ec1298fc4031563cb2702c00c70fbd1d0392afa44e5a6bc535cbe5c34a6f379361a5991327c2023fb915b0f94940d21c42cc38a368 +1 -0
- package/dist/templates/hello-world/.cache/content-v2/sha512/fa/dd/9bc10a1cb1f145eabd96bdba509178e20484197fefd8469ace9f53bf277e875751db3c4dddf229807c48cbe8db19494fe2a5aab7d2a4b7ae8bebbd67509c +1 -0
- package/dist/templates/hello-world/.cache/index-v5/09/f6/fe4b05c4157320b8b59b3f84116195be0437d87357d743d21acd638a4606 +2 -0
- package/dist/templates/hello-world/.cache/index-v5/d0/c4/d960260ece228d28f70e317741b3f3f3df05c53956d870235837ae2b73b4 +2 -0
- package/dist/templates/hello-world/_env +6 -0
- package/dist/templates/hello-world/_gitignore +8 -0
- package/dist/templates/hello-world/dist/client/build/_assets/app-2MJQXVFI.css +38 -0
- package/dist/templates/hello-world/dist/client/build/_assets/favicon-5FIZBM2K.svg +28 -0
- package/dist/templates/hello-world/dist/client/build/_shared/chunk-P5MXKSMH.js +66 -0
- package/dist/templates/hello-world/dist/client/build/_shared/chunk-P5MXKSMH.js.map +7 -0
- package/dist/templates/hello-world/dist/client/build/_shared/chunk-UFW4O55J.js +20 -0
- package/dist/templates/hello-world/dist/client/build/_shared/chunk-UFW4O55J.js.map +7 -0
- package/dist/templates/hello-world/dist/client/build/entry.client-AX7FWGNS.js +27 -0
- package/dist/templates/hello-world/dist/client/build/entry.client-AX7FWGNS.js.map +7 -0
- package/dist/templates/hello-world/dist/client/build/manifest-7F090344.js +1 -0
- package/dist/templates/hello-world/dist/client/build/root-IVDOAS2B.js +2 -0
- package/dist/templates/hello-world/dist/client/build/root-IVDOAS2B.js.map +7 -0
- package/dist/templates/hello-world/dist/client/build/routes/index-TUNWZ4RV.js +2 -0
- package/dist/templates/hello-world/dist/client/build/routes/index-TUNWZ4RV.js.map +7 -0
- package/dist/templates/hello-world/dist/client/favicon.svg +28 -0
- package/dist/templates/hello-world/dist/worker/_assets/app-2MJQXVFI.css +38 -0
- package/dist/templates/hello-world/dist/worker/_assets/favicon-5FIZBM2K.svg +28 -0
- package/dist/templates/hello-world/dist/worker/index.js +257 -0
- package/dist/templates/hello-world/dist/worker/index.js.map +7 -0
- package/dist/templates/hello-world/package.json +1 -1
- package/dist/templates/hello-world/remix.init/index.mjs +25 -0
- package/dist/templates/hello-world/remix.init/package.json +7 -0
- package/package.json +1 -1
- package/tmp-create-app.mjs +7 -1
- package/dist/templates/demo-store/.turbo/turbo-build.log +0 -13
- package/dist/templates/demo-store/package-lock.json +0 -25515
- package/dist/templates/demo-store/remix.init/index.ts +0 -15
- package/dist/templates/hello-world/.turbo/turbo-build.log +0 -9
- package/dist/templates/hello-world/package-lock.json +0 -27641
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import{a as Ae,b as $e,c as Me}from"/build/_shared/chunk-63VE24M5.js";import{a as Fe}from"/build/_shared/chunk-4ROFW2VH.js";import{A as m,B as G,D as M,E as F,F as W,G as Ie,L as Le,O as Te,Q as Ne,Y as X,a as L,b as ce,c as j,d as z,da as we,e as x,ea as De,f as V,fa as ke,g as T,ga as Ee,h as pe,i as me,j as fe,k as ve,l as be,m as ge,n as E,o as C,p as ye,q as Y,r as A,s as $,t as xe,u as he,v as Re,w as Pe,x as q,y as Se,z as Oe}from"/build/_shared/chunk-HX34UWFZ.js";import{c as Z}from"/build/_shared/chunk-WYHUKY3H.js";import{e as J,f as Ce}from"/build/_shared/chunk-6IZ7NY57.js";import{a as ie,g as se,i as le,q as K,s as de}from"/build/_shared/chunk-ZNLABNO4.js";import{a as Q,b as ue}from"/build/_shared/chunk-KSKV5IK6.js";import{b as k}from"/build/_shared/chunk-X4LCECW4.js";var D=k(Q());var Ue=k(Q(),1);function ee(e,o){let[r,t]=(0,Ue.useState)(e),a=ce(e);return L(()=>t(a.current),[a,t,...o]),r}function te(e={},o=null,r=[]){for(let[t,a]of Object.entries(e))Ve(r,Be(o,t),a);return r}function Be(e,o){return e?e+"["+o+"]":o}function Ve(e,o,r){if(Array.isArray(r))for(let[t,a]of r.entries())Ve(e,Be(o,t.toString()),a);else r instanceof Date?e.push([o,r.toISOString()]):typeof r=="boolean"?e.push([o,r?"1":"0"]):typeof r=="string"?e.push([o,r]):typeof r=="number"?e.push([o,`${r}`]):r==null?e.push([o,""]):te(r,o,e)}var He=k(Q(),1);function _e(e,o,r){let[t,a]=(0,He.useState)(r),i=e!==void 0;return[i?e:t,x(s=>(i||a(s),o?.(s)))]}var u=k(Q(),1);var ze=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(ze||{}),qe=(e=>(e[e.Single=0]="Single",e[e.Multi=1]="Multi",e))(qe||{}),Ge=(e=>(e[e.Pointer=0]="Pointer",e[e.Other=1]="Other",e))(Ge||{}),Ke=(e=>(e[e.OpenListbox=0]="OpenListbox",e[e.CloseListbox=1]="CloseListbox",e[e.SetDisabled=2]="SetDisabled",e[e.SetOrientation=3]="SetOrientation",e[e.GoToOption=4]="GoToOption",e[e.Search=5]="Search",e[e.ClearSearch=6]="ClearSearch",e[e.RegisterOption=7]="RegisterOption",e[e.UnregisterOption=8]="UnregisterOption",e))(Ke||{});function re(e,o=r=>r){let r=e.activeOptionIndex!==null?e.options[e.activeOptionIndex]:null,t=ve(o(e.options.slice()),i=>i.dataRef.current.domRef.current),a=r?t.indexOf(r):null;return a===-1&&(a=null),{options:t,activeOptionIndex:a}}var Ze={[1](e){return e.disabled||e.listboxState===1?e:{...e,activeOptionIndex:null,listboxState:1}},[0](e){if(e.disabled||e.listboxState===0)return e;let o=e.activeOptionIndex,{value:r,mode:t,compare:a}=e.propsRef.current,i=e.options.findIndex(s=>{let l=s.dataRef.current.value;return T(t,{[1]:()=>r.some(c=>a(c,l)),[0]:()=>a(r,l)})});return i!==-1&&(o=i),{...e,listboxState:0,activeOptionIndex:o}},[2](e,o){return e.disabled===o.disabled?e:{...e,disabled:o.disabled}},[3](e,o){return e.orientation===o.orientation?e:{...e,orientation:o.orientation}},[4](e,o){var r;if(e.disabled||e.listboxState===1)return e;let t=re(e),a=ye(o,{resolveItems:()=>t.options,resolveActiveIndex:()=>t.activeOptionIndex,resolveId:i=>i.id,resolveDisabled:i=>i.dataRef.current.disabled});return{...e,...t,searchQuery:"",activeOptionIndex:a,activationTrigger:(r=o.trigger)!=null?r:1}},[5]:(e,o)=>{if(e.disabled||e.listboxState===1)return e;let r=e.searchQuery!==""?0:1,t=e.searchQuery+o.value.toLowerCase(),a=(e.activeOptionIndex!==null?e.options.slice(e.activeOptionIndex+r).concat(e.options.slice(0,e.activeOptionIndex+r)):e.options).find(s=>{var l;return!s.dataRef.current.disabled&&((l=s.dataRef.current.textValue)==null?void 0:l.startsWith(t))}),i=a?e.options.indexOf(a):-1;return i===-1||i===e.activeOptionIndex?{...e,searchQuery:t}:{...e,searchQuery:t,activeOptionIndex:i,activationTrigger:1}},[6](e){return e.disabled||e.listboxState===1||e.searchQuery===""?e:{...e,searchQuery:""}},[7]:(e,o)=>{let r={id:o.id,dataRef:o.dataRef},t=re(e,a=>[...a,r]);if(e.activeOptionIndex===null){let{value:a,mode:i,compare:s}=e.propsRef.current,l=o.dataRef.current.value;T(i,{[1]:()=>a.some(c=>s(c,l)),[0]:()=>s(a,l)})&&(t.activeOptionIndex=t.options.indexOf(r))}return{...e,...t}},[8]:(e,o)=>{let r=re(e,t=>{let a=t.findIndex(i=>i.id===o.id);return a!==-1&&t.splice(a,1),t});return{...e,...r,activationTrigger:1}}},oe=(0,u.createContext)(null);oe.displayName="ListboxContext";function H(e){let o=(0,u.useContext)(oe);if(o===null){let r=new Error(`<${e} /> is missing a parent <Listbox /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(r,H),r}return o}function Ye(e,o){return T(o.type,Ze,e,o)}var We=u.Fragment,Je=$(function(e,o){let{value:r,defaultValue:t,name:a,onChange:i,by:s=(b,R)=>b===R,disabled:l=!1,horizontal:c=!1,multiple:h=!1,...S}=e,g=c?"horizontal":"vertical",y=E(o),[P,f]=_e(r,i,t),v=(0,u.useReducer)(Ye,{listboxState:1,propsRef:{current:{value:P,onChange:f,mode:h?1:0,compare:x(typeof s=="string"?(b,R)=>{let w=s;return b?.[w]===R?.[w]}:s)}},labelRef:(0,u.createRef)(),buttonRef:(0,u.createRef)(),optionsRef:(0,u.createRef)(),disabled:l,orientation:g,options:[],searchQuery:"",activeOptionIndex:null,activationTrigger:1}),[{listboxState:d,propsRef:p,optionsRef:N,buttonRef:U},B]=v;p.current.value=P,p.current.mode=h?1:0,L(()=>{p.current.onChange=b=>T(p.current.mode,{[0](){return f(b)},[1](){let R=p.current.value.slice(),{compare:w}=p.current,ne=R.findIndex(je=>w(je,b));return ne===-1?R.push(b):R.splice(ne,1),f(R)}})},[f,p]),L(()=>B({type:2,disabled:l}),[l]),L(()=>B({type:3,orientation:g}),[g]),be([U,N],(b,R)=>{var w;B({type:1}),fe(R,me.Loose)||(b.preventDefault(),(w=U.current)==null||w.focus())},d===0);let O=(0,u.useMemo)(()=>({open:d===0,disabled:l,value:P}),[d,l,P]),I={ref:y};return u.default.createElement(oe.Provider,{value:v},u.default.createElement(Oe,{value:T(d,{[0]:q.Open,[1]:q.Closed})},a!=null&&P!=null&&te({[a]:P}).map(([b,R])=>u.default.createElement(Pe,{features:Re.Hidden,...xe({key:b,as:"input",type:"hidden",hidden:!0,readOnly:!0,name:b,value:R})})),A({ourProps:I,theirProps:S,slot:O,defaultTag:We,name:"Listbox"})))}),Xe="button",et=$(function(e,o){var r;let[t,a]=H("Listbox.Button"),i=E(t.buttonRef,o),s=`headlessui-listbox-button-${V()}`,l=z(),c=x(v=>{switch(v.key){case m.Space:case m.Enter:case m.ArrowDown:v.preventDefault(),a({type:0}),l.nextFrame(()=>{t.propsRef.current.value||a({type:4,focus:C.First})});break;case m.ArrowUp:v.preventDefault(),a({type:0}),l.nextFrame(()=>{t.propsRef.current.value||a({type:4,focus:C.Last})});break}}),h=x(v=>{switch(v.key){case m.Space:v.preventDefault();break}}),S=x(v=>{if(he(v.currentTarget))return v.preventDefault();t.listboxState===0?(a({type:1}),l.nextFrame(()=>{var d;return(d=t.buttonRef.current)==null?void 0:d.focus({preventScroll:!0})})):(v.preventDefault(),a({type:0}))}),g=ee(()=>{if(t.labelRef.current)return[t.labelRef.current.id,s].join(" ")},[t.labelRef.current,s]),y=(0,u.useMemo)(()=>({open:t.listboxState===0,disabled:t.disabled,value:t.propsRef.current.value}),[t]),P=e,f={ref:i,id:s,type:ge(e,t.buttonRef),"aria-haspopup":!0,"aria-controls":(r=t.optionsRef.current)==null?void 0:r.id,"aria-expanded":t.disabled?void 0:t.listboxState===0,"aria-labelledby":g,disabled:t.disabled,onKeyDown:c,onKeyUp:h,onClick:S};return A({ourProps:f,theirProps:P,slot:y,defaultTag:Xe,name:"Listbox.Button"})}),tt="label",rt=$(function(e,o){let[r]=H("Listbox.Label"),t=`headlessui-listbox-label-${V()}`,a=E(r.labelRef,o),i=x(()=>{var l;return(l=r.buttonRef.current)==null?void 0:l.focus({preventScroll:!0})}),s=(0,u.useMemo)(()=>({open:r.listboxState===0,disabled:r.disabled}),[r]);return A({ourProps:{ref:a,id:t,onClick:i},theirProps:e,slot:s,defaultTag:tt,name:"Listbox.Label"})}),ot="ul",at=Y.RenderStrategy|Y.Static,nt=$(function(e,o){var r;let[t,a]=H("Listbox.Options"),i=E(t.optionsRef,o),s=`headlessui-listbox-options-${V()}`,l=z(),c=z(),h=Se(),S=(()=>h!==null?h===q.Open:t.listboxState===0)();(0,u.useEffect)(()=>{var d;let p=t.optionsRef.current;!p||t.listboxState===0&&p!==((d=pe(p))==null?void 0:d.activeElement)&&p.focus({preventScroll:!0})},[t.listboxState,t.optionsRef]);let g=x(d=>{switch(c.dispose(),d.key){case m.Space:if(t.searchQuery!=="")return d.preventDefault(),d.stopPropagation(),a({type:5,value:d.key});case m.Enter:if(d.preventDefault(),d.stopPropagation(),t.activeOptionIndex!==null){let{dataRef:p}=t.options[t.activeOptionIndex];t.propsRef.current.onChange(p.current.value)}t.propsRef.current.mode===0&&(a({type:1}),j().nextFrame(()=>{var p;return(p=t.buttonRef.current)==null?void 0:p.focus({preventScroll:!0})}));break;case T(t.orientation,{vertical:m.ArrowDown,horizontal:m.ArrowRight}):return d.preventDefault(),d.stopPropagation(),a({type:4,focus:C.Next});case T(t.orientation,{vertical:m.ArrowUp,horizontal:m.ArrowLeft}):return d.preventDefault(),d.stopPropagation(),a({type:4,focus:C.Previous});case m.Home:case m.PageUp:return d.preventDefault(),d.stopPropagation(),a({type:4,focus:C.First});case m.End:case m.PageDown:return d.preventDefault(),d.stopPropagation(),a({type:4,focus:C.Last});case m.Escape:return d.preventDefault(),d.stopPropagation(),a({type:1}),l.nextFrame(()=>{var p;return(p=t.buttonRef.current)==null?void 0:p.focus({preventScroll:!0})});case m.Tab:d.preventDefault(),d.stopPropagation();break;default:d.key.length===1&&(a({type:5,value:d.key}),c.setTimeout(()=>a({type:6}),350));break}}),y=ee(()=>{var d,p,N;return(N=(d=t.labelRef.current)==null?void 0:d.id)!=null?N:(p=t.buttonRef.current)==null?void 0:p.id},[t.labelRef.current,t.buttonRef.current]),P=(0,u.useMemo)(()=>({open:t.listboxState===0}),[t]),f=e,v={"aria-activedescendant":t.activeOptionIndex===null||(r=t.options[t.activeOptionIndex])==null?void 0:r.id,"aria-multiselectable":t.propsRef.current.mode===1?!0:void 0,"aria-labelledby":y,"aria-orientation":t.orientation,id:s,onKeyDown:g,role:"listbox",tabIndex:0,ref:i};return A({ourProps:v,theirProps:f,slot:P,defaultTag:ot,features:at,visible:S,name:"Listbox.Options"})}),it="li",st=$(function(e,o){let{disabled:r=!1,value:t,...a}=e,[i,s]=H("Listbox.Option"),l=`headlessui-listbox-option-${V()}`,c=i.activeOptionIndex!==null?i.options[i.activeOptionIndex].id===l:!1,{value:h,compare:S}=i.propsRef.current,g=T(i.propsRef.current.mode,{[1]:()=>h.some(O=>S(O,t)),[0]:()=>S(h,t)}),y=(0,u.useRef)(null),P=E(o,y);L(()=>{if(i.listboxState!==0||!c||i.activationTrigger===0)return;let O=j();return O.requestAnimationFrame(()=>{var I,b;(b=(I=y.current)==null?void 0:I.scrollIntoView)==null||b.call(I,{block:"nearest"})}),O.dispose},[y,c,i.listboxState,i.activationTrigger,i.activeOptionIndex]);let f=(0,u.useRef)({disabled:r,value:t,domRef:y});L(()=>{f.current.disabled=r},[f,r]),L(()=>{f.current.value=t},[f,t]),L(()=>{var O,I;f.current.textValue=(I=(O=y.current)==null?void 0:O.textContent)==null?void 0:I.toLowerCase()},[f,y]);let v=x(()=>i.propsRef.current.onChange(t));L(()=>(s({type:7,id:l,dataRef:f}),()=>s({type:8,id:l})),[f,l]);let d=x(O=>{if(r)return O.preventDefault();v(),i.propsRef.current.mode===0&&(s({type:1}),j().nextFrame(()=>{var I;return(I=i.buttonRef.current)==null?void 0:I.focus({preventScroll:!0})}))}),p=x(()=>{if(r)return s({type:4,focus:C.Nothing});s({type:4,focus:C.Specific,id:l})}),N=x(()=>{r||c||s({type:4,focus:C.Specific,id:l,trigger:0})}),U=x(()=>{r||!c||s({type:4,focus:C.Nothing})}),B=(0,u.useMemo)(()=>({active:c,selected:g,disabled:r}),[c,g,r]);return A({ourProps:{id:l,ref:P,role:"option",tabIndex:r===!0?void 0:-1,"aria-disabled":r===!0?!0:void 0,"aria-selected":g,disabled:void 0,onClick:d,onFocus:p,onPointerMove:N,onMouseMove:N,onPointerLeave:U,onMouseLeave:U},theirProps:a,slot:B,defaultTag:it,name:"Listbox.Option"})}),_=Object.assign(Je,{Button:et,Label:rt,Options:nt,Option:st});var n=k(ue());var Yt={hydrogen:{resourceType:Fe.PRODUCT}};function lt(){let{product:e,shop:o,recommended:r}=K(),{media:t,title:a,vendor:i,descriptionHtml:s}=e,{shippingPolicy:l,refundPolicy:c}=o;return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(Ie,{padding:"x",className:"px-0",children:(0,n.jsxs)("div",{className:"grid items-start md:gap-6 lg:gap-20 md:grid-cols-2 lg:grid-cols-3",children:[(0,n.jsx)(Le,{media:t.nodes,className:"w-screen md:w-full lg:col-span-2"}),(0,n.jsx)("div",{className:"sticky md:-mb-nav md:top-nav md:-translate-y-nav md:h-screen md:pt-nav hiddenScroll md:overflow-y-scroll",children:(0,n.jsxs)("section",{className:"flex flex-col w-full max-w-xl gap-8 p-6 md:mx-auto md:max-w-sm md:px-0",children:[(0,n.jsxs)("div",{className:"grid gap-2",children:[(0,n.jsx)(W,{as:"h1",format:!0,className:"whitespace-normal",children:a}),i&&(0,n.jsx)(F,{className:"opacity-50 font-medium",children:i})]}),(0,n.jsx)(dt,{}),(0,n.jsxs)("div",{className:"grid gap-4 py-4",children:[s&&(0,n.jsx)(ae,{title:"Product Details",content:s}),l?.body&&(0,n.jsx)(ae,{title:"Shipping",content:Z(l.body),learnMore:`/policies/${l.handle}`}),c?.body&&(0,n.jsx)(ae,{title:"Returns",content:Z(c.body),learnMore:`/policies/${c.handle}`})]})]})})]})}),(0,n.jsx)(D.Suspense,{fallback:(0,n.jsx)(Ne,{className:"h-32"}),children:(0,n.jsx)(le,{errorElement:"There was a problem loading related products",resolve:r,children:h=>(0,n.jsx)(Te,{title:"Related Products",products:h})})})]})}function dt(){let{product:e}=K(),[o]=se(),r=de(),t=(0,D.useMemo)(()=>r.location?new URLSearchParams(r.location.search):o,[o,r]),a=e.variants.nodes[0],i=(0,D.useMemo)(()=>{let S=new URLSearchParams(t);for(let{name:g,value:y}of a.selectedOptions)t.has(g)||S.set(g,y);return S},[t,a.selectedOptions]),s=e.selectedVariant??a,l=!s?.availableForSale,c=s?.price?.amount&&s?.compareAtPrice?.amount&&s?.price?.amount<s?.compareAtPrice?.amount,h=[{merchandiseId:s.id,quantity:1}];return(0,n.jsx)("div",{className:"grid gap-10",children:(0,n.jsxs)("div",{className:"grid gap-4",children:[(0,n.jsx)(ut,{options:e.options,searchParamsWithDefaults:i}),s&&(0,n.jsxs)("div",{className:"grid items-stretch gap-4",children:[(0,n.jsx)(we,{lines:[{merchandiseId:s.id,quantity:1}],variant:l?"secondary":"primary","data-test":"add-to-cart",children:l?(0,n.jsx)(F,{children:"Sold out"}):(0,n.jsxs)(F,{as:"span",className:"flex items-center justify-center gap-2",children:[(0,n.jsx)("span",{children:"Add to Bag"})," ",(0,n.jsx)("span",{children:"\xB7"})," ",(0,n.jsx)(J,{withoutTrailingZeros:!0,data:s?.price,as:"span"}),c&&(0,n.jsx)(J,{withoutTrailingZeros:!0,data:s?.compareAtPrice,as:"span",className:"opacity-50 strike"})]})}),!l&&(0,n.jsx)(Ce,{variantIds:[s?.id]})]})]})})}function ut({options:e,searchParamsWithDefaults:o}){let r=(0,D.useRef)(null);return(0,n.jsx)(n.Fragment,{children:e.filter(t=>t.values.length>1).map(t=>(0,n.jsxs)("div",{className:"flex flex-col flex-wrap mb-4 gap-y-2 last:mb-0",children:[(0,n.jsx)(W,{as:"legend",size:"lead",className:"min-w-[4rem]",children:t.name}),(0,n.jsx)("div",{className:"flex flex-wrap items-baseline gap-4",children:t.values.length>7?(0,n.jsx)("div",{className:"relative w-full",children:(0,n.jsx)(_,{children:({open:a})=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(_.Button,{ref:r,className:M("flex items-center justify-between w-full py-3 px-4 border border-primary",a?"rounded-b md:rounded-t md:rounded-b-none":"rounded"),children:[(0,n.jsx)("span",{children:o.get(t.name)}),(0,n.jsx)(ke,{direction:a?"up":"down"})]}),(0,n.jsx)(_.Options,{className:M("border-primary bg-contrast absolute bottom-12 z-30 grid h-48 w-full overflow-y-scroll rounded-t border px-2 py-2 transition-[max-height] duration-150 sm:bottom-auto md:rounded-b md:rounded-t-none md:border-t-0 md:border-b",a?"max-h-48":"max-h-0"),children:t.values.map(i=>(0,n.jsx)(_.Option,{value:i,children:({active:s})=>(0,n.jsxs)(Qe,{optionName:t.name,optionValue:i,className:M("text-primary w-full p-2 transition rounded flex justify-start items-center text-left cursor-pointer",s&&"bg-primary/10"),searchParams:o,onClick:()=>{!r?.current||r.current.click()},children:[i,o.get(t.name)===i&&(0,n.jsx)("span",{className:"ml-2",children:(0,n.jsx)(Ee,{})})]})},`option-${t.name}-${i}`))})]})})}):(0,n.jsx)(n.Fragment,{children:t.values.map(a=>{let i=o.get(t.name)===a,s=`option-${t.name}-${a}`;return(0,n.jsx)(F,{children:(0,n.jsx)(Qe,{optionName:t.name,optionValue:a,searchParams:o,className:M("leading-none py-1 border-b-[1.5px] cursor-pointer transition-all duration-200",i?"border-primary/50":"border-primary/0")})},s)})})})]},t.name))})}function Qe({optionName:e,optionValue:o,searchParams:r,children:t,...a}){let{pathname:i}=ie(),l=/\/[a-zA-Z]{2}-[a-zA-Z]{2}\//g.test(i)?`/${i.split("/").slice(2).join("/")}`:i,c=new URLSearchParams(r);return c.set(e,o),(0,n.jsx)(X,{...a,prefetch:"intent",replace:!0,to:`${l}?${c.toString()}`,children:t??o})}function ae({title:e,content:o,learnMore:r}){return(0,n.jsx)(G,{as:"div",className:"grid w-full gap-2",children:({open:t})=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(G.Button,{className:"text-left",children:(0,n.jsxs)("div",{className:"flex justify-between",children:[(0,n.jsx)(F,{size:"lead",as:"h4",children:e}),(0,n.jsx)(De,{className:M("transition-transform transform-gpu duration-200",!t&&"rotate-[45deg]")})]})}),(0,n.jsxs)(G.Panel,{className:"pb-4 pt-2 grid gap-2",children:[(0,n.jsx)("div",{className:"prose dark:prose-invert",dangerouslySetInnerHTML:{__html:o}}),r&&(0,n.jsx)("div",{className:"",children:(0,n.jsx)(X,{className:"pb-px border-b border-primary/30 text-primary/50",to:r,children:"Learn more"})})]})]})},e)}var Wt=`#graphql
|
|
2
|
+
${Ae}
|
|
3
|
+
${Me}
|
|
4
|
+
query Product(
|
|
5
|
+
$country: CountryCode
|
|
6
|
+
$language: LanguageCode
|
|
7
|
+
$handle: String!
|
|
8
|
+
$selectedOptions: [SelectedOptionInput!]!
|
|
9
|
+
) @inContext(country: $country, language: $language) {
|
|
10
|
+
product(handle: $handle) {
|
|
11
|
+
id
|
|
12
|
+
title
|
|
13
|
+
vendor
|
|
14
|
+
handle
|
|
15
|
+
descriptionHtml
|
|
16
|
+
options {
|
|
17
|
+
name
|
|
18
|
+
values
|
|
19
|
+
}
|
|
20
|
+
selectedVariant: variantBySelectedOptions(selectedOptions: $selectedOptions) {
|
|
21
|
+
...ProductVariantFragment
|
|
22
|
+
}
|
|
23
|
+
media(first: 7) {
|
|
24
|
+
nodes {
|
|
25
|
+
...Media
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
variants(first: 1) {
|
|
29
|
+
nodes {
|
|
30
|
+
...ProductVariantFragment
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
seo {
|
|
34
|
+
description
|
|
35
|
+
title
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
shop {
|
|
39
|
+
name
|
|
40
|
+
shippingPolicy {
|
|
41
|
+
body
|
|
42
|
+
handle
|
|
43
|
+
}
|
|
44
|
+
refundPolicy {
|
|
45
|
+
body
|
|
46
|
+
handle
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
`,Jt=`#graphql
|
|
51
|
+
${$e}
|
|
52
|
+
query productRecommendations(
|
|
53
|
+
$productId: ID!
|
|
54
|
+
$count: Int
|
|
55
|
+
$country: CountryCode
|
|
56
|
+
$language: LanguageCode
|
|
57
|
+
) @inContext(country: $country, language: $language) {
|
|
58
|
+
recommended: productRecommendations(productId: $productId) {
|
|
59
|
+
...ProductCard
|
|
60
|
+
}
|
|
61
|
+
additional: products(first: $count, sortKey: BEST_SELLING) {
|
|
62
|
+
nodes {
|
|
63
|
+
...ProductCard
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
`;export{Yt as a,lt as b};
|
|
68
|
+
//# sourceMappingURL=/build/_shared/chunk-RTZIY6AR.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../app/routes/products/$productHandle.tsx", "../../../../../../node_modules/@headlessui/react/dist/hooks/use-computed.js", "../../../../../../node_modules/@headlessui/react/dist/utils/form.js", "../../../../../../node_modules/@headlessui/react/dist/hooks/use-controllable.js", "../../../../../../node_modules/@headlessui/react/dist/components/listbox/listbox.js"],
|
|
4
|
+
"sourcesContent": ["import {type ReactNode, useRef, Suspense, useMemo} from 'react';\nimport {Disclosure, Listbox} from '@headlessui/react';\nimport {defer, type LoaderArgs} from '@shopify/remix-oxygen';\nimport {notFoundMaybeRedirect, RESOURCE_TYPES} from '@shopify/hydrogen';\nimport {\n useLoaderData,\n Await,\n useSearchParams,\n useLocation,\n useTransition,\n useMatches,\n useFetcher,\n} from '@remix-run/react';\nimport {Money, ShopPayButton} from '@shopify/hydrogen-react';\nimport {\n Heading,\n IconCaret,\n IconCheck,\n IconClose,\n ProductGallery,\n ProductSwimlane,\n Section,\n Skeleton,\n Text,\n Link,\n Button,\n AddToCartButton,\n} from '~/components';\nimport {getExcerpt} from '~/lib/utils';\nimport invariant from 'tiny-invariant';\nimport clsx from 'clsx';\nimport type {\n ProductVariant,\n SelectedOptionInput,\n Product as ProductType,\n Shop,\n ProductConnection,\n} from '@shopify/hydrogen-react/storefront-api-types';\nimport {\n MEDIA_FRAGMENT,\n PRODUCT_CARD_FRAGMENT,\n PRODUCT_VARIANT_FRAGMENT,\n} from '~/data'; /* @todo: we move these to app/graphql ? */\n\nexport async function loader({params, request, context}: LoaderArgs) {\n const {productHandle} = params;\n invariant(productHandle, 'Missing productHandle param, check route filename');\n\n const searchParams = new URL(request.url).searchParams;\n\n const selectedOptions: SelectedOptionInput[] = [];\n searchParams.forEach((value, name) => {\n selectedOptions.push({name, value});\n });\n\n const {shop, product} = await context.storefront.query<{\n product: ProductType & {selectedVariant?: ProductVariant};\n shop: Shop;\n }>(PRODUCT_QUERY, {\n variables: {\n handle: productHandle,\n selectedOptions,\n country: context.storefront.i18n?.country,\n language: context.storefront.i18n?.language,\n },\n });\n\n if (!product?.id) {\n throw await notFoundMaybeRedirect(request, context);\n }\n\n const recommended = getRecommendedProducts(context.storefront, product.id);\n\n return defer({\n product,\n shop,\n recommended,\n });\n}\n\nexport const handle = {\n hydrogen: {\n resourceType: RESOURCE_TYPES.PRODUCT,\n },\n};\n\nexport default function Product() {\n const {product, shop, recommended} = useLoaderData<typeof loader>();\n const {media, title, vendor, descriptionHtml} = product;\n const {shippingPolicy, refundPolicy} = shop;\n\n return (\n <>\n <Section padding=\"x\" className=\"px-0\">\n <div className=\"grid items-start md:gap-6 lg:gap-20 md:grid-cols-2 lg:grid-cols-3\">\n <ProductGallery\n media={media.nodes}\n className=\"w-screen md:w-full lg:col-span-2\"\n />\n <div className=\"sticky md:-mb-nav md:top-nav md:-translate-y-nav md:h-screen md:pt-nav hiddenScroll md:overflow-y-scroll\">\n <section className=\"flex flex-col w-full max-w-xl gap-8 p-6 md:mx-auto md:max-w-sm md:px-0\">\n <div className=\"grid gap-2\">\n <Heading as=\"h1\" format className=\"whitespace-normal\">\n {title}\n </Heading>\n {vendor && (\n <Text className={'opacity-50 font-medium'}>{vendor}</Text>\n )}\n </div>\n <ProductForm />\n <div className=\"grid gap-4 py-4\">\n {descriptionHtml && (\n <ProductDetail\n title=\"Product Details\"\n content={descriptionHtml}\n />\n )}\n {shippingPolicy?.body && (\n <ProductDetail\n title=\"Shipping\"\n content={getExcerpt(shippingPolicy.body)}\n learnMore={`/policies/${shippingPolicy.handle}`}\n />\n )}\n {refundPolicy?.body && (\n <ProductDetail\n title=\"Returns\"\n content={getExcerpt(refundPolicy.body)}\n learnMore={`/policies/${refundPolicy.handle}`}\n />\n )}\n </div>\n </section>\n </div>\n </div>\n </Section>\n <Suspense fallback={<Skeleton className=\"h-32\" />}>\n <Await\n errorElement=\"There was a problem loading related products\"\n resolve={recommended}\n >\n {(products) => (\n <ProductSwimlane title=\"Related Products\" products={products} />\n )}\n </Await>\n </Suspense>\n </>\n );\n}\n\nexport function ProductForm() {\n const {product} = useLoaderData<typeof loader>();\n\n const [currentSearchParams] = useSearchParams();\n const transition = useTransition();\n\n /**\n * We update `searchParams` with in-flight request data from `transition` (if available)\n * to create an optimistic UI, e.g. check the product option before the\n * request has completed.\n */\n const searchParams = useMemo(() => {\n return transition.location\n ? new URLSearchParams(transition.location.search)\n : currentSearchParams;\n }, [currentSearchParams, transition]);\n\n const firstVariant = product.variants.nodes[0];\n\n /**\n * We're making an explicit choice here to display the product options\n * UI with a default variant, rather than wait for the user to select\n * options first. Developers are welcome to opt-out of this behavior.\n * By default, the first variant's options are used.\n */\n const searchParamsWithDefaults = useMemo<URLSearchParams>(() => {\n const clonedParams = new URLSearchParams(searchParams);\n\n for (const {name, value} of firstVariant.selectedOptions) {\n if (!searchParams.has(name)) {\n clonedParams.set(name, value);\n }\n }\n\n return clonedParams;\n }, [searchParams, firstVariant.selectedOptions]);\n\n /**\n * Likewise, we're defaulting to the first variant for purposes\n * of add to cart if there is none returned from the loader.\n * A developer can opt out of this, too.\n */\n const selectedVariant = product.selectedVariant ?? firstVariant;\n const isOutOfStock = !selectedVariant?.availableForSale;\n\n const isOnSale =\n selectedVariant?.price?.amount &&\n selectedVariant?.compareAtPrice?.amount &&\n selectedVariant?.price?.amount < selectedVariant?.compareAtPrice?.amount;\n\n const lines = [\n {\n merchandiseId: selectedVariant.id,\n quantity: 1,\n },\n ];\n\n return (\n <div className=\"grid gap-10\">\n <div className=\"grid gap-4\">\n <ProductOptions\n options={product.options}\n searchParamsWithDefaults={searchParamsWithDefaults}\n />\n {selectedVariant && (\n <div className=\"grid items-stretch gap-4\">\n <AddToCartButton\n lines={[\n {\n merchandiseId: selectedVariant.id,\n quantity: 1,\n },\n ]}\n variant={isOutOfStock ? 'secondary' : 'primary'}\n data-test=\"add-to-cart\"\n >\n {isOutOfStock ? (\n <Text>Sold out</Text>\n ) : (\n <Text\n as=\"span\"\n className=\"flex items-center justify-center gap-2\"\n >\n <span>Add to Bag</span> <span>\u00B7</span>{' '}\n <Money\n withoutTrailingZeros\n data={selectedVariant?.price!}\n as=\"span\"\n />\n {isOnSale && (\n <Money\n withoutTrailingZeros\n data={selectedVariant?.compareAtPrice!}\n as=\"span\"\n className=\"opacity-50 strike\"\n />\n )}\n </Text>\n )}\n </AddToCartButton>\n {!isOutOfStock && (\n <ShopPayButton variantIds={[selectedVariant?.id!]} />\n )}\n </div>\n )}\n </div>\n </div>\n );\n}\n\nfunction ProductOptions({\n options,\n searchParamsWithDefaults,\n}: {\n options: ProductType['options'];\n searchParamsWithDefaults: URLSearchParams;\n}) {\n const closeRef = useRef<HTMLButtonElement>(null);\n return (\n <>\n {options\n .filter((option) => option.values.length > 1)\n .map((option) => (\n <div\n key={option.name}\n className=\"flex flex-col flex-wrap mb-4 gap-y-2 last:mb-0\"\n >\n <Heading as=\"legend\" size=\"lead\" className=\"min-w-[4rem]\">\n {option.name}\n </Heading>\n <div className=\"flex flex-wrap items-baseline gap-4\">\n {/**\n * First, we render a bunch of <Link> elements for each option value.\n * When the user clicks one of these buttons, it will hit the loader\n * to get the new data.\n *\n * If there are more than 7 values, we render a dropdown.\n * Otherwise, we just render plain links.\n */}\n {option.values.length > 7 ? (\n <div className=\"relative w-full\">\n <Listbox>\n {({open}) => (\n <>\n <Listbox.Button\n ref={closeRef}\n className={clsx(\n 'flex items-center justify-between w-full py-3 px-4 border border-primary',\n open\n ? 'rounded-b md:rounded-t md:rounded-b-none'\n : 'rounded',\n )}\n >\n <span>\n {searchParamsWithDefaults.get(option.name)}\n </span>\n <IconCaret direction={open ? 'up' : 'down'} />\n </Listbox.Button>\n <Listbox.Options\n className={clsx(\n 'border-primary bg-contrast absolute bottom-12 z-30 grid h-48 w-full overflow-y-scroll rounded-t border px-2 py-2 transition-[max-height] duration-150 sm:bottom-auto md:rounded-b md:rounded-t-none md:border-t-0 md:border-b',\n open ? 'max-h-48' : 'max-h-0',\n )}\n >\n {option.values.map((value) => (\n <Listbox.Option\n key={`option-${option.name}-${value}`}\n value={value}\n >\n {({active}) => (\n <ProductOptionLink\n optionName={option.name}\n optionValue={value}\n className={clsx(\n 'text-primary w-full p-2 transition rounded flex justify-start items-center text-left cursor-pointer',\n active && 'bg-primary/10',\n )}\n searchParams={searchParamsWithDefaults}\n onClick={() => {\n if (!closeRef?.current) return;\n closeRef.current.click();\n }}\n >\n {value}\n {searchParamsWithDefaults.get(option.name) ===\n value && (\n <span className=\"ml-2\">\n <IconCheck />\n </span>\n )}\n </ProductOptionLink>\n )}\n </Listbox.Option>\n ))}\n </Listbox.Options>\n </>\n )}\n </Listbox>\n </div>\n ) : (\n <>\n {option.values.map((value) => {\n const checked =\n searchParamsWithDefaults.get(option.name) === value;\n const id = `option-${option.name}-${value}`;\n\n return (\n <Text key={id}>\n <ProductOptionLink\n optionName={option.name}\n optionValue={value}\n searchParams={searchParamsWithDefaults}\n className={clsx(\n 'leading-none py-1 border-b-[1.5px] cursor-pointer transition-all duration-200',\n checked ? 'border-primary/50' : 'border-primary/0',\n )}\n />\n </Text>\n );\n })}\n </>\n )}\n </div>\n </div>\n ))}\n </>\n );\n}\n\nfunction ProductOptionLink({\n optionName,\n optionValue,\n searchParams,\n children,\n ...props\n}: {\n optionName: string;\n optionValue: string;\n searchParams: URLSearchParams;\n children?: ReactNode;\n [key: string]: any;\n}) {\n const {pathname} = useLocation();\n const isLangPathname = /\\/[a-zA-Z]{2}-[a-zA-Z]{2}\\//g.test(pathname);\n // fixes internalized pathname\n const path = isLangPathname\n ? `/${pathname.split('/').slice(2).join('/')}`\n : pathname;\n\n const clonedSearchParams = new URLSearchParams(searchParams);\n clonedSearchParams.set(optionName, optionValue);\n\n return (\n <Link\n {...props}\n prefetch=\"intent\"\n replace\n to={`${path}?${clonedSearchParams.toString()}`}\n >\n {children ?? optionValue}\n </Link>\n );\n}\n\nfunction ProductDetail({\n title,\n content,\n learnMore,\n}: {\n title: string;\n content: string;\n learnMore?: string;\n}) {\n return (\n <Disclosure key={title} as=\"div\" className=\"grid w-full gap-2\">\n {({open}) => (\n <>\n <Disclosure.Button className=\"text-left\">\n <div className=\"flex justify-between\">\n <Text size=\"lead\" as=\"h4\">\n {title}\n </Text>\n <IconClose\n className={clsx(\n 'transition-transform transform-gpu duration-200',\n !open && 'rotate-[45deg]',\n )}\n />\n </div>\n </Disclosure.Button>\n\n <Disclosure.Panel className={'pb-4 pt-2 grid gap-2'}>\n <div\n className=\"prose dark:prose-invert\"\n dangerouslySetInnerHTML={{__html: content}}\n />\n {learnMore && (\n <div className=\"\">\n <Link\n className=\"pb-px border-b border-primary/30 text-primary/50\"\n to={learnMore}\n >\n Learn more\n </Link>\n </div>\n )}\n </Disclosure.Panel>\n </>\n )}\n </Disclosure>\n );\n}\n\nconst PRODUCT_QUERY = `#graphql\n ${MEDIA_FRAGMENT}\n ${PRODUCT_VARIANT_FRAGMENT}\n query Product(\n $country: CountryCode\n $language: LanguageCode\n $handle: String!\n $selectedOptions: [SelectedOptionInput!]!\n ) @inContext(country: $country, language: $language) {\n product(handle: $handle) {\n id\n title\n vendor\n handle\n descriptionHtml\n options {\n name\n values\n }\n selectedVariant: variantBySelectedOptions(selectedOptions: $selectedOptions) {\n ...ProductVariantFragment\n }\n media(first: 7) {\n nodes {\n ...Media\n }\n }\n variants(first: 1) {\n nodes {\n ...ProductVariantFragment\n }\n }\n seo {\n description\n title\n }\n }\n shop {\n name\n shippingPolicy {\n body\n handle\n }\n refundPolicy {\n body\n handle\n }\n }\n }\n`;\n\nconst RECOMMENDED_PRODUCTS_QUERY = `#graphql\n ${PRODUCT_CARD_FRAGMENT}\n query productRecommendations(\n $productId: ID!\n $count: Int\n $country: CountryCode\n $language: LanguageCode\n ) @inContext(country: $country, language: $language) {\n recommended: productRecommendations(productId: $productId) {\n ...ProductCard\n }\n additional: products(first: $count, sortKey: BEST_SELLING) {\n nodes {\n ...ProductCard\n }\n }\n }\n`;\n\nasync function getRecommendedProducts(\n storefront: LoaderArgs['context']['storefront'],\n productId: string,\n) {\n const products = await storefront.query<{\n recommended: ProductType[];\n additional: ProductConnection;\n }>(RECOMMENDED_PRODUCTS_QUERY, {\n variables: {productId, count: 12},\n });\n\n invariant(products, 'No data returned from Shopify API');\n\n const mergedProducts = products.recommended\n .concat(products.additional.nodes)\n .filter(\n (value, index, array) =>\n array.findIndex((value2) => value2.id === value.id) === index,\n );\n\n const originalProduct = mergedProducts\n .map((item: ProductType) => item.id)\n .indexOf(productId);\n\n mergedProducts.splice(originalProduct, 1);\n\n return mergedProducts;\n}\n", "import{useState as s}from\"react\";import{useIsoMorphicEffect as f}from'./use-iso-morphic-effect.js';import{useLatestValue as m}from'./use-latest-value.js';function i(e,o){let[u,t]=s(e),r=m(e);return f(()=>t(r.current),[r,t,...o]),u}export{i as useComputed};\n", "function e(n={},r=null,t=[]){for(let[i,o]of Object.entries(n))f(t,s(r,i),o);return t}function s(n,r){return n?n+\"[\"+r+\"]\":r}function f(n,r,t){if(Array.isArray(t))for(let[i,o]of t.entries())f(n,s(r,i.toString()),o);else t instanceof Date?n.push([r,t.toISOString()]):typeof t==\"boolean\"?n.push([r,t?\"1\":\"0\"]):typeof t==\"string\"?n.push([r,t]):typeof t==\"number\"?n.push([r,`${t}`]):t==null?n.push([r,\"\"]):e(t,r,n)}function p(n){var t;let r=(t=n==null?void 0:n.form)!=null?t:n.closest(\"form\");if(!!r){for(let i of r.elements)if(i.tagName===\"INPUT\"&&i.type===\"submit\"||i.tagName===\"BUTTON\"&&i.type===\"submit\"||i.nodeName===\"INPUT\"&&i.type===\"image\"){i.click();return}}}export{p as attemptSubmit,e as objectToFormEntries};\n", "import{useState as f}from\"react\";import{useEvent as d}from'./use-event.js';function p(e,t,u){let[l,s]=f(u),i=e!==void 0;return[i?e:l,d(r=>(i||s(r),t==null?void 0:t(r)))]}export{p as useControllable};\n", "import G,{Fragment as q,createContext as J,createRef as V,useContext as Y,useEffect as Z,useMemo as E,useReducer as ee,useRef as Q}from\"react\";import{useDisposables as B}from'../../hooks/use-disposables.js';import{useId as U}from'../../hooks/use-id.js';import{useIsoMorphicEffect as A}from'../../hooks/use-iso-morphic-effect.js';import{useComputed as z}from'../../hooks/use-computed.js';import{useSyncRefs as I}from'../../hooks/use-sync-refs.js';import{Features as $,forwardRefWithAs as F,render as k,compact as te}from'../../utils/render.js';import{match as h}from'../../utils/match.js';import{disposables as _}from'../../utils/disposables.js';import{Keys as y}from'../keyboard.js';import{Focus as L,calculateActiveIndex as oe}from'../../utils/calculate-active-index.js';import{isDisabledReactIssue7711 as ne}from'../../utils/bugs.js';import{isFocusableElement as re,FocusableMode as ie,sortByDomNode as ae}from'../../utils/focus-management.js';import{useOpenClosed as le,State as H,OpenClosedProvider as se}from'../../internal/open-closed.js';import{useResolveButtonType as pe}from'../../hooks/use-resolve-button-type.js';import{useOutsideClick as ue}from'../../hooks/use-outside-click.js';import{Hidden as de,Features as ce}from'../../internal/hidden.js';import{objectToFormEntries as fe}from'../../utils/form.js';import{getOwnerDocument as be}from'../../utils/owner.js';import{useEvent as v}from'../../hooks/use-event.js';import{useControllable as Te}from'../../hooks/use-controllable.js';var ye=(n=>(n[n.Open=0]=\"Open\",n[n.Closed=1]=\"Closed\",n))(ye||{}),xe=(n=>(n[n.Single=0]=\"Single\",n[n.Multi=1]=\"Multi\",n))(xe||{}),Oe=(n=>(n[n.Pointer=0]=\"Pointer\",n[n.Other=1]=\"Other\",n))(Oe||{}),me=(r=>(r[r.OpenListbox=0]=\"OpenListbox\",r[r.CloseListbox=1]=\"CloseListbox\",r[r.SetDisabled=2]=\"SetDisabled\",r[r.SetOrientation=3]=\"SetOrientation\",r[r.GoToOption=4]=\"GoToOption\",r[r.Search=5]=\"Search\",r[r.ClearSearch=6]=\"ClearSearch\",r[r.RegisterOption=7]=\"RegisterOption\",r[r.UnregisterOption=8]=\"UnregisterOption\",r))(me||{});function j(t,i=n=>n){let n=t.activeOptionIndex!==null?t.options[t.activeOptionIndex]:null,e=ae(i(t.options.slice()),u=>u.dataRef.current.domRef.current),o=n?e.indexOf(n):null;return o===-1&&(o=null),{options:e,activeOptionIndex:o}}let ge={[1](t){return t.disabled||t.listboxState===1?t:{...t,activeOptionIndex:null,listboxState:1}},[0](t){if(t.disabled||t.listboxState===0)return t;let i=t.activeOptionIndex,{value:n,mode:e,compare:o}=t.propsRef.current,u=t.options.findIndex(l=>{let s=l.dataRef.current.value;return h(e,{[1]:()=>n.some(r=>o(r,s)),[0]:()=>o(n,s)})});return u!==-1&&(i=u),{...t,listboxState:0,activeOptionIndex:i}},[2](t,i){return t.disabled===i.disabled?t:{...t,disabled:i.disabled}},[3](t,i){return t.orientation===i.orientation?t:{...t,orientation:i.orientation}},[4](t,i){var o;if(t.disabled||t.listboxState===1)return t;let n=j(t),e=oe(i,{resolveItems:()=>n.options,resolveActiveIndex:()=>n.activeOptionIndex,resolveId:u=>u.id,resolveDisabled:u=>u.dataRef.current.disabled});return{...t,...n,searchQuery:\"\",activeOptionIndex:e,activationTrigger:(o=i.trigger)!=null?o:1}},[5]:(t,i)=>{if(t.disabled||t.listboxState===1)return t;let e=t.searchQuery!==\"\"?0:1,o=t.searchQuery+i.value.toLowerCase(),l=(t.activeOptionIndex!==null?t.options.slice(t.activeOptionIndex+e).concat(t.options.slice(0,t.activeOptionIndex+e)):t.options).find(d=>{var r;return!d.dataRef.current.disabled&&((r=d.dataRef.current.textValue)==null?void 0:r.startsWith(o))}),s=l?t.options.indexOf(l):-1;return s===-1||s===t.activeOptionIndex?{...t,searchQuery:o}:{...t,searchQuery:o,activeOptionIndex:s,activationTrigger:1}},[6](t){return t.disabled||t.listboxState===1||t.searchQuery===\"\"?t:{...t,searchQuery:\"\"}},[7]:(t,i)=>{let n={id:i.id,dataRef:i.dataRef},e=j(t,o=>[...o,n]);if(t.activeOptionIndex===null){let{value:o,mode:u,compare:l}=t.propsRef.current,s=i.dataRef.current.value;h(u,{[1]:()=>o.some(r=>l(r,s)),[0]:()=>l(o,s)})&&(e.activeOptionIndex=e.options.indexOf(n))}return{...t,...e}},[8]:(t,i)=>{let n=j(t,e=>{let o=e.findIndex(u=>u.id===i.id);return o!==-1&&e.splice(o,1),e});return{...t,...n,activationTrigger:1}}},K=J(null);K.displayName=\"ListboxContext\";function w(t){let i=Y(K);if(i===null){let n=new Error(`<${t} /> is missing a parent <Listbox /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(n,w),n}return i}function Re(t,i){return h(i.type,ge,t,i)}let ve=q,Le=F(function(i,n){let{value:e,defaultValue:o,name:u,onChange:l,by:s=(p,T)=>p===T,disabled:d=!1,horizontal:r=!1,multiple:x=!1,...S}=i;const g=r?\"horizontal\":\"vertical\";let O=I(n),[m,f]=Te(e,l,o),b=ee(Re,{listboxState:1,propsRef:{current:{value:m,onChange:f,mode:x?1:0,compare:v(typeof s==\"string\"?(p,T)=>{let C=s;return(p==null?void 0:p[C])===(T==null?void 0:T[C])}:s)}},labelRef:V(),buttonRef:V(),optionsRef:V(),disabled:d,orientation:g,options:[],searchQuery:\"\",activeOptionIndex:null,activationTrigger:1}),[{listboxState:a,propsRef:c,optionsRef:P,buttonRef:D},M]=b;c.current.value=m,c.current.mode=x?1:0,A(()=>{c.current.onChange=p=>h(c.current.mode,{[0](){return f(p)},[1](){let T=c.current.value.slice(),{compare:C}=c.current,W=T.findIndex(X=>C(X,p));return W===-1?T.push(p):T.splice(W,1),f(T)}})},[f,c]),A(()=>M({type:2,disabled:d}),[d]),A(()=>M({type:3,orientation:g}),[g]),ue([D,P],(p,T)=>{var C;M({type:1}),re(T,ie.Loose)||(p.preventDefault(),(C=D.current)==null||C.focus())},a===0);let N=E(()=>({open:a===0,disabled:d,value:m}),[a,d,m]),R={ref:O};return G.createElement(K.Provider,{value:b},G.createElement(se,{value:h(a,{[0]:H.Open,[1]:H.Closed})},u!=null&&m!=null&&fe({[u]:m}).map(([p,T])=>G.createElement(de,{features:ce.Hidden,...te({key:p,as:\"input\",type:\"hidden\",hidden:!0,readOnly:!0,name:p,value:T})})),k({ourProps:R,theirProps:S,slot:N,defaultTag:ve,name:\"Listbox\"})))}),Se=\"button\",Ae=F(function(i,n){var f;let[e,o]=w(\"Listbox.Button\"),u=I(e.buttonRef,n),l=`headlessui-listbox-button-${U()}`,s=B(),d=v(b=>{switch(b.key){case y.Space:case y.Enter:case y.ArrowDown:b.preventDefault(),o({type:0}),s.nextFrame(()=>{e.propsRef.current.value||o({type:4,focus:L.First})});break;case y.ArrowUp:b.preventDefault(),o({type:0}),s.nextFrame(()=>{e.propsRef.current.value||o({type:4,focus:L.Last})});break}}),r=v(b=>{switch(b.key){case y.Space:b.preventDefault();break}}),x=v(b=>{if(ne(b.currentTarget))return b.preventDefault();e.listboxState===0?(o({type:1}),s.nextFrame(()=>{var a;return(a=e.buttonRef.current)==null?void 0:a.focus({preventScroll:!0})})):(b.preventDefault(),o({type:0}))}),S=z(()=>{if(!!e.labelRef.current)return[e.labelRef.current.id,l].join(\" \")},[e.labelRef.current,l]),g=E(()=>({open:e.listboxState===0,disabled:e.disabled,value:e.propsRef.current.value}),[e]),O=i,m={ref:u,id:l,type:pe(i,e.buttonRef),\"aria-haspopup\":!0,\"aria-controls\":(f=e.optionsRef.current)==null?void 0:f.id,\"aria-expanded\":e.disabled?void 0:e.listboxState===0,\"aria-labelledby\":S,disabled:e.disabled,onKeyDown:d,onKeyUp:r,onClick:x};return k({ourProps:m,theirProps:O,slot:g,defaultTag:Se,name:\"Listbox.Button\"})}),he=\"label\",Pe=F(function(i,n){let[e]=w(\"Listbox.Label\"),o=`headlessui-listbox-label-${U()}`,u=I(e.labelRef,n),l=v(()=>{var x;return(x=e.buttonRef.current)==null?void 0:x.focus({preventScroll:!0})}),s=E(()=>({open:e.listboxState===0,disabled:e.disabled}),[e]);return k({ourProps:{ref:u,id:o,onClick:l},theirProps:i,slot:s,defaultTag:he,name:\"Listbox.Label\"})}),Ce=\"ul\",De=$.RenderStrategy|$.Static,Me=F(function(i,n){var b;let[e,o]=w(\"Listbox.Options\"),u=I(e.optionsRef,n),l=`headlessui-listbox-options-${U()}`,s=B(),d=B(),r=le(),x=(()=>r!==null?r===H.Open:e.listboxState===0)();Z(()=>{var c;let a=e.optionsRef.current;!a||e.listboxState===0&&a!==((c=be(a))==null?void 0:c.activeElement)&&a.focus({preventScroll:!0})},[e.listboxState,e.optionsRef]);let S=v(a=>{switch(d.dispose(),a.key){case y.Space:if(e.searchQuery!==\"\")return a.preventDefault(),a.stopPropagation(),o({type:5,value:a.key});case y.Enter:if(a.preventDefault(),a.stopPropagation(),e.activeOptionIndex!==null){let{dataRef:c}=e.options[e.activeOptionIndex];e.propsRef.current.onChange(c.current.value)}e.propsRef.current.mode===0&&(o({type:1}),_().nextFrame(()=>{var c;return(c=e.buttonRef.current)==null?void 0:c.focus({preventScroll:!0})}));break;case h(e.orientation,{vertical:y.ArrowDown,horizontal:y.ArrowRight}):return a.preventDefault(),a.stopPropagation(),o({type:4,focus:L.Next});case h(e.orientation,{vertical:y.ArrowUp,horizontal:y.ArrowLeft}):return a.preventDefault(),a.stopPropagation(),o({type:4,focus:L.Previous});case y.Home:case y.PageUp:return a.preventDefault(),a.stopPropagation(),o({type:4,focus:L.First});case y.End:case y.PageDown:return a.preventDefault(),a.stopPropagation(),o({type:4,focus:L.Last});case y.Escape:return a.preventDefault(),a.stopPropagation(),o({type:1}),s.nextFrame(()=>{var c;return(c=e.buttonRef.current)==null?void 0:c.focus({preventScroll:!0})});case y.Tab:a.preventDefault(),a.stopPropagation();break;default:a.key.length===1&&(o({type:5,value:a.key}),d.setTimeout(()=>o({type:6}),350));break}}),g=z(()=>{var a,c,P;return(P=(a=e.labelRef.current)==null?void 0:a.id)!=null?P:(c=e.buttonRef.current)==null?void 0:c.id},[e.labelRef.current,e.buttonRef.current]),O=E(()=>({open:e.listboxState===0}),[e]),m=i,f={\"aria-activedescendant\":e.activeOptionIndex===null||(b=e.options[e.activeOptionIndex])==null?void 0:b.id,\"aria-multiselectable\":e.propsRef.current.mode===1?!0:void 0,\"aria-labelledby\":g,\"aria-orientation\":e.orientation,id:l,onKeyDown:S,role:\"listbox\",tabIndex:0,ref:u};return k({ourProps:f,theirProps:m,slot:O,defaultTag:Ce,features:De,visible:x,name:\"Listbox.Options\"})}),Ee=\"li\",Ie=F(function(i,n){let{disabled:e=!1,value:o,...u}=i,[l,s]=w(\"Listbox.Option\"),d=`headlessui-listbox-option-${U()}`,r=l.activeOptionIndex!==null?l.options[l.activeOptionIndex].id===d:!1,{value:x,compare:S}=l.propsRef.current,g=h(l.propsRef.current.mode,{[1]:()=>x.some(R=>S(R,o)),[0]:()=>S(x,o)}),O=Q(null),m=I(n,O);A(()=>{if(l.listboxState!==0||!r||l.activationTrigger===0)return;let R=_();return R.requestAnimationFrame(()=>{var p,T;(T=(p=O.current)==null?void 0:p.scrollIntoView)==null||T.call(p,{block:\"nearest\"})}),R.dispose},[O,r,l.listboxState,l.activationTrigger,l.activeOptionIndex]);let f=Q({disabled:e,value:o,domRef:O});A(()=>{f.current.disabled=e},[f,e]),A(()=>{f.current.value=o},[f,o]),A(()=>{var R,p;f.current.textValue=(p=(R=O.current)==null?void 0:R.textContent)==null?void 0:p.toLowerCase()},[f,O]);let b=v(()=>l.propsRef.current.onChange(o));A(()=>(s({type:7,id:d,dataRef:f}),()=>s({type:8,id:d})),[f,d]);let a=v(R=>{if(e)return R.preventDefault();b(),l.propsRef.current.mode===0&&(s({type:1}),_().nextFrame(()=>{var p;return(p=l.buttonRef.current)==null?void 0:p.focus({preventScroll:!0})}))}),c=v(()=>{if(e)return s({type:4,focus:L.Nothing});s({type:4,focus:L.Specific,id:d})}),P=v(()=>{e||r||s({type:4,focus:L.Specific,id:d,trigger:0})}),D=v(()=>{e||!r||s({type:4,focus:L.Nothing})}),M=E(()=>({active:r,selected:g,disabled:e}),[r,g,e]);return k({ourProps:{id:d,ref:m,role:\"option\",tabIndex:e===!0?void 0:-1,\"aria-disabled\":e===!0?!0:void 0,\"aria-selected\":g,disabled:void 0,onClick:a,onFocus:c,onPointerMove:P,onMouseMove:P,onPointerLeave:D,onMouseLeave:D},theirProps:u,slot:M,defaultTag:Ee,name:\"Listbox.Option\"})}),pt=Object.assign(Le,{Button:Ae,Label:Pe,Options:Me,Option:Ie});export{pt as Listbox};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_react", "import_react", "i", "u", "s", "r", "e", "n", "r", "t", "i", "o", "f", "s", "import_react", "p", "t", "u", "l", "s", "f", "o", "r", "import_react", "ye", "n", "xe", "Oe", "me", "r", "j", "t", "i", "e", "S", "u", "o", "ge", "l", "s", "x", "d", "K", "J", "w", "Y", "Re", "ve", "q", "Le", "C", "p", "T", "O", "y", "m", "b", "ee", "V", "a", "c", "P", "D", "M", "W", "X", "L", "F", "N", "E", "R", "G", "h", "$", "Se", "Ae", "f", "I", "g", "he", "Pe", "Ce", "De", "Me", "Z", "Ee", "Ie", "Q", "pt", "import_jsx_runtime", "handle", "x", "Product", "product", "shop", "recommended", "useLoaderData", "media", "title", "vendor", "descriptionHtml", "shippingPolicy", "refundPolicy", "Section", "ProductGallery", "Heading", "Text", "ProductForm", "ProductDetail", "getExcerpt", "Skeleton", "Await", "products", "ProductSwimlane", "currentSearchParams", "useSearchParams", "transition", "useTransition", "searchParams", "firstVariant", "searchParamsWithDefaults", "clonedParams", "name", "value", "selectedVariant", "isOutOfStock", "isOnSale", "lines", "ProductOptions", "AddToCartButton", "Money", "ShopPayButton", "options", "closeRef", "option", "pt", "open", "clsx_m_default", "IconCaret", "active", "ProductOptionLink", "IconCheck", "checked", "id", "optionName", "optionValue", "children", "props", "pathname", "useLocation", "path", "clonedSearchParams", "Link", "content", "learnMore", "Oe", "IconClose", "PRODUCT_QUERY", "MEDIA_FRAGMENT", "PRODUCT_VARIANT_FRAGMENT", "RECOMMENDED_PRODUCTS_QUERY", "PRODUCT_CARD_FRAGMENT"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as p}from"/build/_shared/chunk-4ROFW2VH.js";import{F as a,G as s,H as c,Y as l}from"/build/_shared/chunk-HX34UWFZ.js";import{q as r}from"/build/_shared/chunk-ZNLABNO4.js";import{b as n}from"/build/_shared/chunk-KSKV5IK6.js";import{b as t}from"/build/_shared/chunk-X4LCECW4.js";var e=t(n());var P=({data:i})=>({title:"Policies",description:"Policies"}),h={hydrogen:{resourceType:p.POLICIES}};function d(){let{policies:i}=r();return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(c,{heading:"Policies"}),(0,e.jsx)(s,{padding:"x",className:"mb-24",children:i.map(o=>o&&(0,e.jsx)(a,{className:"font-normal text-heading",children:(0,e.jsx)(l,{to:`/policies/${o.handle}`,children:o.title})},o.id))})]})}export{P as a,h as b,d as c};
|
|
2
|
+
//# sourceMappingURL=/build/_shared/chunk-S4E36YX5.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../app/routes/policies/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import {\n json,\n type MetaFunction,\n type SerializeFrom,\n type LoaderArgs,\n} from '@shopify/remix-oxygen';\nimport {RESOURCE_TYPES} from '@shopify/hydrogen';\nimport {useLoaderData} from '@remix-run/react';\nimport type {ShopPolicy} from '@shopify/hydrogen-react/storefront-api-types';\nimport invariant from 'tiny-invariant';\n\nimport {PageHeader, Section, Heading, Link} from '~/components';\n\nexport async function loader({context: {storefront}}: LoaderArgs) {\n const data = await storefront.query<{\n shop: Record<string, ShopPolicy>;\n }>(POLICIES_QUERY);\n\n invariant(data, 'No data returned from Shopify API');\n const policies = Object.values(data.shop || {});\n\n if (policies.length === 0) {\n throw new Response('Not found', {status: 404});\n }\n\n return json(\n {\n policies,\n },\n {\n headers: {\n // TODO cacheLong()\n },\n },\n );\n}\n\nexport const meta: MetaFunction = ({\n data,\n}: {\n data: SerializeFrom<typeof loader> | undefined;\n}) => {\n return {\n title: 'Policies',\n description: 'Policies',\n };\n};\n\nexport const handle = {\n hydrogen: {\n resourceType: RESOURCE_TYPES.POLICIES,\n },\n};\n\nexport default function Policies() {\n const {policies} = useLoaderData<typeof loader>();\n\n return (\n <>\n <PageHeader heading=\"Policies\" />\n <Section padding=\"x\" className=\"mb-24\">\n {policies.map((policy) => {\n return (\n policy && (\n <Heading className=\"font-normal text-heading\" key={policy.id}>\n <Link to={`/policies/${policy.handle}`}>{policy.title}</Link>\n </Heading>\n )\n );\n })}\n </Section>\n </>\n );\n}\n\nconst POLICIES_QUERY = `#graphql\n fragment Policy on ShopPolicy {\n id\n title\n handle\n }\n\n query PoliciesQuery {\n shop {\n privacyPolicy {\n ...Policy\n }\n shippingPolicy {\n ...Policy\n }\n termsOfService {\n ...Policy\n }\n refundPolicy {\n ...Policy\n }\n subscriptionPolicy {\n id\n title\n handle\n }\n }\n }\n`;\n"],
|
|
5
|
+
"mappings": "8RAAA,IAAAA,EAAA,OAqCO,IAAMC,EAAqB,CAAC,CACjC,KAAAC,CACF,KAGS,CACL,MAAO,WACP,YAAa,UACf,GAGWC,EAAS,CACpB,SAAU,CACR,aAAcC,EAAe,QAC/B,CACF,EAEe,SAARC,GAA4B,CACjC,GAAM,CAAC,SAAAC,CAAQ,EAAIC,EAA6B,EAEhD,SACE,oBACE,oBAACC,EAAA,CAAW,QAAQ,WAAW,KAC/B,OAACC,EAAA,CAAQ,QAAQ,IAAI,UAAU,QAC5B,SAAAH,EAAS,IAAKI,GAEXA,MACE,OAACC,EAAA,CAAQ,UAAU,2BACjB,mBAACC,EAAA,CAAK,GAAI,aAAaF,EAAO,SAAW,SAAAA,EAAO,MAAM,GADLA,EAAO,EAE1D,CAGL,EACH,GACF,CAEJ",
|
|
6
|
+
"names": ["import_jsx_runtime", "meta", "data", "handle", "x", "Policies", "policies", "useLoaderData", "PageHeader", "Section", "policy", "Heading", "Link"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import{b as C}from"/build/_shared/chunk-63VE24M5.js";import{a as A}from"/build/_shared/chunk-4ROFW2VH.js";import{G as p,H as g,K as f,N as m,R as o,ba as y,ca as P}from"/build/_shared/chunk-HX34UWFZ.js";import{q as u}from"/build/_shared/chunk-ZNLABNO4.js";import{b as l}from"/build/_shared/chunk-KSKV5IK6.js";import{b as s}from"/build/_shared/chunk-X4LCECW4.js";var t=s(l());var N=()=>({title:"All Products",description:"All Products"}),B={hydrogen:{resourceType:A.CATALOG}};function L(){let $=u();return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(g,{heading:"All Products",variant:"allCollections"}),(0,t.jsx)(p,{children:(0,t.jsx)(P,{connection:$,children:({endCursor:n,hasNextPage:a,hasPreviousPage:i,nextPageUrl:h,nodes:e,prevPageUrl:v,startCursor:c,nextLinkRef:x,isLoading:r})=>{let S=e.map((d,I)=>(0,t.jsx)(m,{product:d,loading:f(I)},d.id));return(0,t.jsxs)(t.Fragment,{children:[i&&(0,t.jsx)("div",{className:"flex items-center justify-center mt-6",children:(0,t.jsx)(o,{to:v,variant:"secondary",prefetch:"intent",width:"full",disabled:!r,state:{pageInfo:{endCursor:n,hasNextPage:a,startCursor:c},nodes:e},children:r?"Loading...":"Previous"})}),(0,t.jsx)(y,{"data-test":"product-grid",children:S}),a&&(0,t.jsx)("div",{className:"flex items-center justify-center mt-6",children:(0,t.jsx)(o,{ref:x,to:h,variant:"secondary",prefetch:"intent",width:"full",disabled:!r,state:{pageInfo:{endCursor:n,hasPreviousPage:i,startCursor:c},nodes:e},children:r?"Loading...":"Next"})})]})}})})]})}var D=`#graphql
|
|
2
|
+
${C}
|
|
3
|
+
query AllProducts(
|
|
4
|
+
$country: CountryCode
|
|
5
|
+
$language: LanguageCode
|
|
6
|
+
$first: Int
|
|
7
|
+
$last: Int
|
|
8
|
+
$startCursor: String
|
|
9
|
+
$endCursor: String
|
|
10
|
+
) @inContext(country: $country, language: $language) {
|
|
11
|
+
products(first: $first, last: $last, before: $startCursor, after: $endCursor) {
|
|
12
|
+
nodes {
|
|
13
|
+
...ProductCard
|
|
14
|
+
}
|
|
15
|
+
pageInfo {
|
|
16
|
+
hasPreviousPage
|
|
17
|
+
hasNextPage
|
|
18
|
+
startCursor
|
|
19
|
+
endCursor
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
`;export{N as a,B as b,L as c};
|
|
24
|
+
//# sourceMappingURL=/build/_shared/chunk-UCP7TDFX.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../app/routes/products/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import {type MetaFunction, type LoaderArgs} from '@shopify/remix-oxygen';\nimport {RESOURCE_TYPES} from '@shopify/hydrogen';\nimport {useLoaderData} from '@remix-run/react';\nimport type {ProductConnection} from '@shopify/hydrogen-react/storefront-api-types';\nimport invariant from 'tiny-invariant';\nimport {\n PageHeader,\n Section,\n ProductCard,\n Grid,\n Pagination,\n getPaginationVariables,\n Button,\n} from '~/components';\nimport {PRODUCT_CARD_FRAGMENT} from '~/data';\nimport {getImageLoadingPriority} from '~/lib/const';\n\nconst PAGE_BY = 8;\n\nexport async function loader({request, context: {storefront}}: LoaderArgs) {\n const variables = getPaginationVariables(request, PAGE_BY);\n\n const data = await storefront.query<{\n products: ProductConnection;\n }>(ALL_PRODUCTS_QUERY, {\n variables: {\n ...variables,\n country: storefront.i18n?.country,\n language: storefront.i18n?.language,\n },\n });\n\n invariant(data, 'No data returned from Shopify API');\n\n return data.products;\n}\n\nexport const meta: MetaFunction = () => {\n return {\n title: 'All Products',\n description: 'All Products',\n };\n};\n\nexport const handle = {\n hydrogen: {\n resourceType: RESOURCE_TYPES.CATALOG,\n },\n};\n\nexport default function AllProducts() {\n const products = useLoaderData<typeof loader>();\n\n return (\n <>\n <PageHeader heading=\"All Products\" variant=\"allCollections\" />\n <Section>\n <Pagination connection={products}>\n {({\n endCursor,\n hasNextPage,\n hasPreviousPage,\n nextPageUrl,\n nodes,\n prevPageUrl,\n startCursor,\n nextLinkRef,\n isLoading,\n }) => {\n const itemsMarkup = nodes.map((product, i) => (\n <ProductCard\n key={product.id}\n product={product}\n loading={getImageLoadingPriority(i)}\n />\n ));\n\n return (\n <>\n {hasPreviousPage && (\n <div className=\"flex items-center justify-center mt-6\">\n <Button\n to={prevPageUrl}\n variant=\"secondary\"\n prefetch=\"intent\"\n width=\"full\"\n disabled={!isLoading}\n state={{\n pageInfo: {\n endCursor,\n hasNextPage,\n startCursor,\n },\n nodes,\n }}\n >\n {isLoading ? 'Loading...' : 'Previous'}\n </Button>\n </div>\n )}\n <Grid data-test=\"product-grid\">{itemsMarkup}</Grid>\n {hasNextPage && (\n <div className=\"flex items-center justify-center mt-6\">\n <Button\n ref={nextLinkRef}\n to={nextPageUrl}\n variant=\"secondary\"\n prefetch=\"intent\"\n width=\"full\"\n disabled={!isLoading}\n state={{\n pageInfo: {\n endCursor,\n hasPreviousPage,\n startCursor,\n },\n nodes,\n }}\n >\n {isLoading ? 'Loading...' : 'Next'}\n </Button>\n </div>\n )}\n </>\n );\n }}\n </Pagination>\n </Section>\n </>\n );\n}\n\nconst ALL_PRODUCTS_QUERY = `#graphql\n ${PRODUCT_CARD_FRAGMENT}\n query AllProducts(\n $country: CountryCode\n $language: LanguageCode\n $first: Int\n $last: Int\n $startCursor: String\n $endCursor: String\n ) @inContext(country: $country, language: $language) {\n products(first: $first, last: $last, before: $startCursor, after: $endCursor) {\n nodes {\n ...ProductCard\n }\n pageInfo {\n hasPreviousPage\n hasNextPage\n startCursor\n endCursor\n }\n }\n }\n`;\n"],
|
|
5
|
+
"mappings": "0WAAA,IAAAA,EAAA,OAqCO,IAAMC,EAAqB,KACzB,CACL,MAAO,eACP,YAAa,cACf,GAGWC,EAAS,CACpB,SAAU,CACR,aAAcC,EAAe,OAC/B,CACF,EAEe,SAARC,GAA+B,CACpC,IAAMC,EAAWC,EAA6B,EAE9C,SACE,oBACE,oBAACC,EAAA,CAAW,QAAQ,eAAe,QAAQ,iBAAiB,KAC5D,OAACC,EAAA,CACC,mBAACC,EAAA,CAAW,WAAYJ,EACrB,UAAC,CACA,UAAAK,EACA,YAAAC,EACA,gBAAAC,EACA,YAAAC,EACA,MAAAC,EACA,YAAAC,EACA,YAAAC,EACA,YAAAC,EACA,UAAAC,CACF,IAAM,CACJ,IAAMC,EAAcL,EAAM,IAAI,CAACM,EAASC,OACtC,OAACC,EAAA,CAEC,QAASF,EACT,QAASG,EAAwBF,CAAC,GAF7BD,EAAQ,EAGf,CACD,EAED,SACE,oBACG,UAAAR,MACC,OAAC,OAAI,UAAU,wCACb,mBAACY,EAAA,CACC,GAAIT,EACJ,QAAQ,YACR,SAAS,SACT,MAAM,OACN,SAAU,CAACG,EACX,MAAO,CACL,SAAU,CACR,UAAAR,EACA,YAAAC,EACA,YAAAK,CACF,EACA,MAAAF,CACF,EAEC,SAAAI,EAAY,aAAe,WAC9B,EACF,KAEF,OAACO,EAAA,CAAK,YAAU,eAAgB,SAAAN,EAAY,EAC3CR,MACC,OAAC,OAAI,UAAU,wCACb,mBAACa,EAAA,CACC,IAAKP,EACL,GAAIJ,EACJ,QAAQ,YACR,SAAS,SACT,MAAM,OACN,SAAU,CAACK,EACX,MAAO,CACL,SAAU,CACR,UAAAR,EACA,gBAAAE,EACA,YAAAI,CACF,EACA,MAAAF,CACF,EAEC,SAAAI,EAAY,aAAe,OAC9B,EACF,GAEJ,CAEJ,EACF,EACF,GACF,CAEJ,CAEA,IAAMQ,EAAqB;AAAA,IACvBC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;",
|
|
6
|
+
"names": ["import_jsx_runtime", "meta", "handle", "x", "AllProducts", "products", "useLoaderData", "PageHeader", "Section", "Pagination", "endCursor", "hasNextPage", "hasPreviousPage", "nextPageUrl", "nodes", "prevPageUrl", "startCursor", "nextLinkRef", "isLoading", "itemsMarkup", "product", "i", "ProductCard", "getImageLoadingPriority", "Button", "Grid", "ALL_PRODUCTS_QUERY", "PRODUCT_CARD_FRAGMENT"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import{b as x}from"/build/_shared/chunk-63VE24M5.js";import{E as p,H as y,O as h,R as A,U as C,V as w,W as P,X as O,Z as v}from"/build/_shared/chunk-HX34UWFZ.js";import{d as i,f as r,i as u,o as l,p as m,q as f}from"/build/_shared/chunk-ZNLABNO4.js";import{a as T,b as g}from"/build/_shared/chunk-KSKV5IK6.js";import{b as s}from"/build/_shared/chunk-X4LCECW4.js";var N=s(T());var F=`#graphql
|
|
2
|
+
${x}
|
|
3
|
+
query homepage($country: CountryCode, $language: LanguageCode)
|
|
4
|
+
@inContext(country: $country, language: $language) {
|
|
5
|
+
featuredCollections: collections(first: 3, sortKey: UPDATED_AT) {
|
|
6
|
+
nodes {
|
|
7
|
+
id
|
|
8
|
+
title
|
|
9
|
+
handle
|
|
10
|
+
image {
|
|
11
|
+
altText
|
|
12
|
+
width
|
|
13
|
+
height
|
|
14
|
+
url
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
featuredProducts: products(first: 12) {
|
|
19
|
+
nodes {
|
|
20
|
+
...ProductCard
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
`;var e=s(g());function M(){let t=f(),o=i(),a=m().some(n=>n?.handle?.renderInModal);return t.isAuthenticated?o?a?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(O,{cancelLink:"/account",children:(0,e.jsx)(r,{context:{customer:t.customer}})}),(0,e.jsx)(D,{...t})]}):(0,e.jsx)(r,{context:{customer:t.customer}}):(0,e.jsx)(D,{...t}):(0,e.jsx)(r,{})}function D({customer:t,orders:o,heading:c,addresses:a,featuredData:n}){return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(y,{heading:c,children:(0,e.jsx)(l,{method:"post",action:"/account/logout",children:(0,e.jsx)("button",{type:"submit",className:"text-primary/50",children:"Sign out"})})}),o&&(0,e.jsx)(L,{orders:o}),(0,e.jsx)(w,{customer:t}),(0,e.jsx)(P,{addresses:a,customer:t}),!o.length&&(0,e.jsx)(N.Suspense,{children:(0,e.jsx)(u,{resolve:n,errorElement:"There was a problem loading featured products.",children:d=>(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(v,{title:"Popular Collections",collections:d.featuredCollections}),(0,e.jsx)(h,{products:d.featuredProducts})]})})})]})}function L({orders:t}){return(0,e.jsx)("div",{className:"mt-6",children:(0,e.jsxs)("div",{className:"grid w-full gap-4 p-4 py-6 md:gap-8 md:p-8 lg:p-12",children:[(0,e.jsx)("h2",{className:"font-bold text-lead",children:"Order History"}),t?.length?(0,e.jsx)(b,{orders:t}):(0,e.jsx)($,{})]})})}function $(){return(0,e.jsxs)("div",{children:[(0,e.jsx)(p,{className:"mb-1",size:"fine",width:"narrow",as:"p",children:"You haven't placed any orders yet."}),(0,e.jsx)("div",{className:"w-48",children:(0,e.jsx)(A,{className:"text-sm mt-2 w-full",variant:"secondary",to:"/",children:"Start Shopping"})})]})}function b({orders:t}){return(0,e.jsx)("ul",{className:"grid-flow-row grid gap-2 gap-y-6 md:gap-4 lg:gap-6 grid-cols-1 false sm:grid-cols-3",children:t.map(o=>(0,e.jsx)(C,{order:o},o.id))})}export{M as a};
|
|
25
|
+
//# sourceMappingURL=/build/_shared/chunk-V5EUNG45.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../app/routes/account.tsx", "../../../../app/routes/featured-products.tsx"],
|
|
4
|
+
"sourcesContent": ["import {\n Await,\n Form,\n Outlet,\n useLoaderData,\n useMatches,\n useOutlet,\n} from '@remix-run/react';\nimport type {\n Collection,\n Customer,\n MailingAddress,\n Order,\n} from '@shopify/hydrogen-react/storefront-api-types';\nimport {Suspense} from 'react';\nimport {\n Button,\n OrderCard,\n PageHeader,\n Text,\n AccountDetails,\n AccountAddressBook,\n Modal,\n ProductSwimlane,\n} from '~/components';\nimport {FeaturedCollections} from '~/components/FeaturedCollections';\nimport {redirect, json, defer, type LoaderArgs} from '@shopify/remix-oxygen';\nimport {flattenConnection} from '@shopify/hydrogen-react';\nimport {getCustomer} from '~/data';\nimport {getFeaturedData} from './featured-products';\n\nexport async function loader({request, context, params}: LoaderArgs) {\n const {pathname} = new URL(request.url);\n const lang = params.lang;\n const customerAccessToken = await context.session.get('customerAccessToken');\n const isAuthenticated = Boolean(customerAccessToken);\n const loginPath = lang ? `${lang}/account/login` : '/account/login';\n\n if (!isAuthenticated) {\n if (/\\/account\\/login$/.test(pathname)) {\n return json({\n isAuthenticated,\n });\n }\n return redirect(loginPath);\n }\n\n const customer = await getCustomer(context, {\n customerAccessToken,\n request,\n });\n\n const heading = customer\n ? customer.firstName\n ? `Welcome, ${customer.firstName}.`\n : `Welcome to your account.`\n : 'Account Details';\n\n const orders = flattenConnection(customer?.orders) as Order[];\n\n return defer({\n isAuthenticated,\n customer,\n heading,\n orders,\n addresses: flattenConnection(customer.addresses) as MailingAddress[],\n featuredData: getFeaturedData(context.storefront),\n });\n}\n\nexport default function Authenticated() {\n const data = useLoaderData<typeof loader>();\n const outlet = useOutlet();\n const matches = useMatches();\n\n // routes that export handle { renderInModal: true }\n const renderOutletInModal = matches.some((match) => {\n return match?.handle?.renderInModal;\n });\n\n // Public routes\n if (!data.isAuthenticated) {\n return <Outlet />;\n }\n\n // Authenticated routes\n if (outlet) {\n if (renderOutletInModal) {\n return (\n <>\n <Modal cancelLink=\"/account\">\n <Outlet context={{customer: data.customer} as any} />\n </Modal>\n <Account {...data} />\n </>\n );\n } else {\n return <Outlet context={{customer: data.customer} as any} />;\n }\n }\n\n return <Account {...data} />;\n}\n\ninterface Account {\n customer: Customer;\n orders: Order[];\n heading: string;\n addresses: MailingAddress[];\n featuredData: any; // @todo: help please\n}\n\nfunction Account({\n customer,\n orders,\n heading,\n addresses,\n featuredData,\n}: Account) {\n return (\n <>\n <PageHeader heading={heading}>\n <Form method=\"post\" action=\"/account/logout\">\n <button type=\"submit\" className=\"text-primary/50\">\n Sign out\n </button>\n </Form>\n </PageHeader>\n {orders && <AccountOrderHistory orders={orders as Order[]} />}\n <AccountDetails customer={customer as Customer} />\n <AccountAddressBook\n addresses={addresses as MailingAddress[]}\n customer={customer as Customer}\n />\n {!orders.length && (\n <Suspense>\n <Await\n resolve={featuredData}\n errorElement=\"There was a problem loading featured products.\"\n >\n {(data) => (\n <>\n <FeaturedCollections\n title=\"Popular Collections\"\n collections={data.featuredCollections as Collection[]}\n />\n <ProductSwimlane products={data.featuredProducts} />\n </>\n )}\n </Await>\n </Suspense>\n )}\n </>\n );\n}\n\nfunction AccountOrderHistory({orders}: {orders: Order[]}) {\n return (\n <div className=\"mt-6\">\n <div className=\"grid w-full gap-4 p-4 py-6 md:gap-8 md:p-8 lg:p-12\">\n <h2 className=\"font-bold text-lead\">Order History</h2>\n {orders?.length ? <Orders orders={orders} /> : <EmptyOrders />}\n </div>\n </div>\n );\n}\n\nfunction EmptyOrders() {\n return (\n <div>\n <Text className=\"mb-1\" size=\"fine\" width=\"narrow\" as=\"p\">\n You haven't placed any orders yet.\n </Text>\n <div className=\"w-48\">\n <Button className=\"text-sm mt-2 w-full\" variant=\"secondary\" to={'/'}>\n Start Shopping\n </Button>\n </div>\n </div>\n );\n}\n\nfunction Orders({orders}: {orders: Order[]}) {\n return (\n <ul className=\"grid-flow-row grid gap-2 gap-y-6 md:gap-4 lg:gap-6 grid-cols-1 false sm:grid-cols-3\">\n {orders.map((order) => (\n <OrderCard order={order} key={order.id} />\n ))}\n </ul>\n );\n}\n", "import {json, type LoaderArgs} from '@shopify/remix-oxygen';\nimport {flattenConnection} from '@shopify/hydrogen-react';\nimport type {\n CollectionConnection,\n ProductConnection,\n} from '@shopify/hydrogen-react/storefront-api-types';\nimport invariant from 'tiny-invariant';\nimport {PRODUCT_CARD_FRAGMENT} from '~/data';\n\nexport async function loader({context: {storefront}}: LoaderArgs) {\n return json(await getFeaturedData(storefront));\n}\n\nexport async function getFeaturedData(\n storefront: LoaderArgs['context']['storefront'],\n) {\n const data = await storefront.query<{\n featuredCollections: CollectionConnection;\n featuredProducts: ProductConnection;\n }>(FEATURED_QUERY, {\n variables: {\n country: storefront.i18n?.country,\n language: storefront.i18n?.language,\n },\n });\n\n invariant(data, 'No data returned from Shopify API');\n\n return {\n featuredCollections: flattenConnection(data.featuredCollections),\n featuredProducts: flattenConnection(data.featuredProducts),\n };\n}\n\nconst FEATURED_QUERY = `#graphql\n ${PRODUCT_CARD_FRAGMENT}\n query homepage($country: CountryCode, $language: LanguageCode)\n @inContext(country: $country, language: $language) {\n featuredCollections: collections(first: 3, sortKey: UPDATED_AT) {\n nodes {\n id\n title\n handle\n image {\n altText\n width\n height\n url\n }\n }\n }\n featuredProducts: products(first: 12) {\n nodes {\n ...ProductCard\n }\n }\n }\n`;\n"],
|
|
5
|
+
"mappings": "2WAcA,IAAAA,EAAuB,OCoBvB,IAAMC,EAAiB;AAAA,IACnBC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EDnCJ,IAAAC,EAAA,OAsEe,SAARC,GAAiC,CACtC,IAAMC,EAAOC,EAA6B,EACpCC,EAASC,EAAU,EAInBC,EAHUC,EAAW,EAGS,KAAMC,GACjCA,GAAO,QAAQ,aACvB,EAGD,OAAKN,EAAK,gBAKNE,EACEE,KAEA,oBACE,oBAACG,EAAA,CAAM,WAAW,WAChB,mBAACC,EAAA,CAAO,QAAS,CAAC,SAAUR,EAAK,QAAQ,EAAU,EACrD,KACA,OAACS,EAAA,CAAS,GAAGT,EAAM,GACrB,KAGK,OAACQ,EAAA,CAAO,QAAS,CAAC,SAAUR,EAAK,QAAQ,EAAU,KAIvD,OAACS,EAAA,CAAS,GAAGT,EAAM,KAnBjB,OAACQ,EAAA,EAAO,CAoBnB,CAUA,SAASC,EAAQ,CACf,SAAAC,EACA,OAAAC,EACA,QAAAC,EACA,UAAAC,EACA,aAAAC,CACF,EAAY,CACV,SACE,oBACE,oBAACC,EAAA,CAAW,QAASH,EACnB,mBAACI,EAAA,CAAK,OAAO,OAAO,OAAO,kBACzB,mBAAC,UAAO,KAAK,SAAS,UAAU,kBAAkB,oBAElD,EACF,EACF,EACCL,MAAU,OAACM,EAAA,CAAoB,OAAQN,EAAmB,KAC3D,OAACO,EAAA,CAAe,SAAUR,EAAsB,KAChD,OAACS,EAAA,CACC,UAAWN,EACX,SAAUH,EACZ,EACC,CAACC,EAAO,WACP,OAAC,YACC,mBAACS,EAAA,CACC,QAASN,EACT,aAAa,iDAEZ,SAACd,MACA,oBACE,oBAACqB,EAAA,CACC,MAAM,sBACN,YAAarB,EAAK,oBACpB,KACA,OAACsB,EAAA,CAAgB,SAAUtB,EAAK,iBAAkB,GACpD,EAEJ,EACF,GAEJ,CAEJ,CAEA,SAASiB,EAAoB,CAAC,OAAAN,CAAM,EAAsB,CACxD,SACE,OAAC,OAAI,UAAU,OACb,oBAAC,OAAI,UAAU,qDACb,oBAAC,MAAG,UAAU,sBAAsB,yBAAa,EAChDA,GAAQ,UAAS,OAACY,EAAA,CAAO,OAAQZ,EAAQ,KAAK,OAACa,EAAA,EAAY,GAC9D,EACF,CAEJ,CAEA,SAASA,GAAc,CACrB,SACE,QAAC,OACC,oBAACC,EAAA,CAAK,UAAU,OAAO,KAAK,OAAO,MAAM,SAAS,GAAG,IAAI,8CAEzD,KACA,OAAC,OAAI,UAAU,OACb,mBAACC,EAAA,CAAO,UAAU,sBAAsB,QAAQ,YAAY,GAAI,IAAK,0BAErE,EACF,GACF,CAEJ,CAEA,SAASH,EAAO,CAAC,OAAAZ,CAAM,EAAsB,CAC3C,SACE,OAAC,MAAG,UAAU,uFACX,SAAAA,EAAO,IAAKgB,MACX,OAACC,EAAA,CAAU,MAAOD,GAAYA,EAAM,EAAI,CACzC,EACH,CAEJ",
|
|
6
|
+
"names": ["import_react", "FEATURED_QUERY", "PRODUCT_CARD_FRAGMENT", "import_jsx_runtime", "Authenticated", "data", "useLoaderData", "outlet", "useOutlet", "renderOutletInModal", "useMatches", "match", "Modal", "Outlet", "Account", "customer", "orders", "heading", "addresses", "featuredData", "PageHeader", "Form", "AccountOrderHistory", "AccountDetails", "AccountAddressBook", "Await", "FeaturedCollections", "ProductSwimlane", "Orders", "EmptyOrders", "Text", "Button", "order", "OrderCard"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as D}from"/build/_shared/chunk-AYHDHSL7.js";import{a as R,p as L}from"/build/_shared/chunk-ZNLABNO4.js";import{a,b as de}from"/build/_shared/chunk-X4LCECW4.js";var A=a((er,I)=>{"use strict";I.exports=function(r){var t=[];r=r||{};function u(){return s.apply(null,arguments)}return u.exec=s,u.use=l,u.mws=t,u;function s(o,i){i=fe(r,i);for(var P=t.length,c=0;c<P;c++)o=t[c].apply(o,[o,i])||o;return o}function l(){return[].push.apply(t,arguments),u}};function fe(){for(var e={},r=arguments.length,t=0;t<r;t++){var u=arguments[t];for(var s in u)e[s]=u[s]}return e}});var M=a((rr,O)=>{"use strict";O.exports=function(e){return e.replace(/ 'n' /gim," \u2019n\u2019 ").replace(/'n'/gim,"\u2019n\u2019").replace(/(\S)'(\S)/gim,"$1\u2019$2").replace(/'(\d0s)/gim,"\u2019$1")}});var T=a((tr,C)=>{C.exports={af:"\u201C\u201D\u2018\u2019",sq:"\u201E\u201C\u2018\u2019",az:"\xAB\xBB\u2039\u203A",eu:"\xAB\xBB\u2039\u203A",be:"\xAB\xBB\u201C\u201D",bg:"\u201E\u201C\u2019\u2019",ca:"\xAB\xBB\u201C\u201D","zh-Hans":"\u201C\u201D\u2018\u2019",hr:"\u201E\u201D\u2018\u2019",cs:"\u201E\u201C\u201A\u2018",da:"\xBB\xAB\u203A\u2039",nl:"\u2018\u2019\u201C\u201D","en-uk":"\u2018\u2019\u201C\u201D","en-us":"\u201C\u201D\u2018\u2019",eo:"\u201C\u201D\u2018\u2019",et:"\u201E\u201C\xAB\xBB",fil:"\u201C\u201D\u2018\u2019",fi:"\u201D\u201D\u2019\u2019",fr:"\xAB\xBB\u201C\u201D","fr-sw":"\xAB\xBB\u2039\u203A",ka:"\u201E\u201C\u201C\u201D",de:"\u201E\u201C\u201A\u2018","de-sw":"\xAB\xBB\u2039\u203A",el:"\xAB\xBB\u201C\u201D",he:`""''`,hu:"\u201E\u201D\xBB\xAB",is:"\u201E\u201C\u201A\u2018",id:"\u201C\u201D\u2018\u2019",ga:"\u201C\u201D\u2018\u2019",it:"\xAB\xBB\u201C\u201D","it-sw":"\xAB\xBB\u2039\u203A",ko:"\u201C\u201D\u2018\u2019",lv:"\xAB\xBB\u201E\u201C",mk:"\u201E\u201C\u2019\u2018",no:"\xAB\xBB\u2019\u2019",pl:"\u201E\u201D\xAB\xBB","pt-br":"\u201C\u201D\u2018\u2019","pt-pl":"\xAB\xBB\u201C\u201D",ro:"\u201E\u201D\xAB\xBB",ru:"\xAB\xBB\u201E\u201C",sr:"\u201E\u201D\u2019\u2019",sk:"\u201E\u201C\u201A\u2018",sl:"\u201E\u201C\u201A\u2018",es:"\xAB\xBB\u201C\u201D",sv:"\u201D\u201D\u2019\u2019",th:"\u201C\u201D\u2018\u2019",tr:"\u201C\u201D\u2018\u2019",uk:"\xAB\xBB\u201E\u201C",cy:"\u2018\u2019\u201C\u201D"}});var S=a((p,$)=>{"use strict";Object.defineProperty(p,"__esModule",{value:!0});p.default=_e;function ge(e){return e&&e.__esModule?e:{default:e}}var me=T(),he=ge(me);function _e(){var e=arguments.length<=0||arguments[0]===void 0?"":arguments[0],r=arguments.length<=1||arguments[1]===void 0?{}:arguments[1],t=r.locale,u=t===void 0?"en-us":t,s="",l=he.default[u],o=/(^|\s)(?:"(.*?)"|'(.*?)')(\s|$|\.|,|\?|!)/gim,i=function(c,x){return function(Xe){var ie=arguments.length<=1||arguments[1]===void 0?"":arguments[1],ce=arguments.length<=2||arguments[2]===void 0?"":arguments[2],le=arguments.length<=3||arguments[3]===void 0?"":arguments[3],pe=arguments.length<=4||arguments[4]===void 0?"":arguments[4],y=ce+le;return x&&(y=y.replace(o,x)),u==="fr"&&(s="\xA0"),""+ie+c[0]+s+y+s+c[1]+pe}};return e.replace(o,i(l.slice(0,2),i(l.slice(2,4))))}$.exports=p.default});var N=a((ar,w)=>{"use strict";w.exports=function(e){return e.replace(/s'(\s|$)/gim,"s\u2019$1")}});var F=a((d,b)=>{"use strict";Object.defineProperty(d,"__esModule",{value:!0});d.default=ve;function ve(e){return e.replace(/<->/gim,"\u2194").replace(/<=>/gim,"\u21D4").replace(/<-/gim,"\u2190").replace(/->/gim,"\u2192").replace(/<=/gim,"\u21D0").replace(/=>/gim,"\u21D2")}b.exports=d.default});var q=a((f,U)=>{"use strict";Object.defineProperty(f,"__esModule",{value:!0});f.default=function(e){return e.replace(/\(c\)/gim,"\xA9").replace(/© *(\d)/gim,"\xA9\xA0$1")};U.exports=f.default});var H=a((nr,G)=>{"use strict";G.exports={AFN:"\u060B",AMD:"\u058F",ANG:"\u0192",AWG:"\u0192",AZN:"\u20BC",BDT:"\u09F3",BTC:"\u0243",CNY:"\xA5",CRC:"\u20A1",EUR:"\u20AC",FKP:"\xA3",GBP:"\xA3",GHS:"\u20B5",GIP:"\xA3",ILS:"\u20AA",INR:"\u20B9",IRR:"\uFDFC",JPY:"\xA5",KHR:"\u17DB",KPW:"\u20A9",KRW:"\u20A9",KZT:"\u20B8",LAK:"\u20AD",LKR:"\u20A8",MNT:"\u20AE",MTL:"\u20A4",MUR:"\u20A8",NGN:"\u20A6",NPR:"\u20A8",OMR:"\uFDFC",PHP:"\u20B1",PKR:"\u20A8",PYG:"\u20B2",QAR:"\uFDFC",RUB:"\u20BD",SAR:"\uFDFC",SCR:"\u20A8",SDG:"\xA3",SHP:"\xA3",SVC:"\u20A1",SYP:"\xA3",THB:"\u0E3F",UAH:"\u20B4",USD:"$",VND:"\u20AB",YER:"\uFDFC"}});var B=a(E=>{"use strict";Object.defineProperty(E,"__esModule",{value:!0});E.default=Pe;var ye=H(),k=Le(ye);function Le(e){return e&&e.__esModule?e:{default:e}}var Ee=function(r){return new RegExp("([^a-z]|\\b)("+r+")\\b","gi")};function Pe(e){if(!!e)return Object.keys(k.default).reduce(function(r,t){return r.replace(Ee(t),"$1"+k.default[t])},e)}});var Y=a((sr,K)=>{"use strict";K.exports=function(e){return e.replace(/\.{3}/gim,"\u2026")}});var Q=a((or,V)=>{"use strict";V.exports=function(e){return e.replace(/--/gim,"\u2014").replace(/ — /gim,"\u200A\u2014\u200A")}});var z=a((g,W)=>{"use strict";Object.defineProperty(g,"__esModule",{value:!0});g.default=function(e){return e.replace(/(\d)-(\d)/gim,"$1\u2013$2")};W.exports=g.default});var j=a((m,Z)=>{"use strict";Object.defineProperty(m,"__esModule",{value:!0});m.default=function(e){return e.replace(/(\d) x (\d)/gim,"$1 \xD7 $2").replace(/(\d) - (\d)/gim,"$1 \u2212 $2").replace(/(\w) >> (\w)/gim,"$1 \u226B $2").replace(/(\w) << (\w)/gim,"$1 \u226A $2").replace(/(\w) >= (\w)/gim,"$1 \u2265 $2").replace(/(\w) <= (\w)/gim,"$1 \u2264 $2").replace(/\+-/gim,"\xB1").replace(/-\+/gim,"\u2213")};Z.exports=m.default});var X=a((h,J)=>{"use strict";Object.defineProperty(h,"__esModule",{value:!0});h.default=function(e){return e.replace(/\(r\)/gim,"\xAE")};J.exports=h.default});var re=a((ir,ee)=>{"use strict";ee.exports=function(e){return e.replace(/ +/gim," ")}});var ae=a((_,te)=>{"use strict";Object.defineProperty(_,"__esModule",{value:!0});_.default=function(e){return e.replace(/ *\(tm\)/gim,"\u2122")};te.exports=_.default});var ue=a((v,ne)=>{"use strict";Object.defineProperty(v,"__esModule",{value:!0});var xe=A(),Re=n(xe),De=M(),Ie=n(De),Ae=S(),Oe=n(Ae),Me=N(),Ce=n(Me),Te=F(),$e=n(Te),Se=q(),we=n(Se),Ne=B(),be=n(Ne),Fe=Y(),Ue=n(Fe),qe=Q(),Ge=n(qe),He=z(),ke=n(He),Be=j(),Ke=n(Be),Ye=X(),Ve=n(Ye),Qe=re(),We=n(Qe),ze=ae(),Ze=n(ze);function n(e){return e&&e.__esModule?e:{default:e}}var je=(0,Re.default)().use(Ie.default,Oe.default,Ce.default,$e.default,we.default,be.default,Ue.default,Ge.default,ke.default,Ke.default,Ve.default,We.default,Ze.default);v.default=je;ne.exports=v.default});var se=de(ue());function pr(e,r){if(!e)return!0;let t=new RegExp(` ?${r}`,"g");return e.match(t)===null}function dr(e){if(!!e)return typeof e!="string"?e:(0,se.default)(e,{locale:"en-us"}).replace(/\s([^\s<]+)\s*$/g,"\xA0$1")}function fr(e){let t=/<p.*>(.*?)<\/p>/.exec(e);return t?.length?t[0]:e}function gr(e,r=30){return new Date(e).valueOf()>new Date().setDate(new Date().getDate()-r).valueOf()}function mr(e,r){return r?.amount>e?.amount}var Je="appearance-none rounded dark:bg-transparent border focus:border-primary/50 focus:ring-0 w-full py-2 px-3 text-primary/90 placeholder:text-primary/50 leading-tight focus:shadow-outline",hr=e=>`${Je} ${e?"border-red-500":"border-primary/20"}`;function _r(e){let r={ATTEMPTED_DELIVERY:"Attempted delivery",CANCELED:"Canceled",CONFIRMED:"Confirmed",DELIVERED:"Delivered",FAILURE:"Failure",FULFILLED:"Fulfilled",IN_PROGRESS:"In Progress",IN_TRANSIT:"In transit",LABEL_PRINTED:"Label printed",LABEL_PURCHASED:"Label purchased",LABEL_VOIDED:"Label voided",MARKED_AS_FULFILLED:"Marked as fulfilled",NOT_DELIVERED:"Not delivered",ON_HOLD:"On Hold",OPEN:"Open",OUT_FOR_DELIVERY:"Out for delivery",PARTIALLY_FULFILLED:"Partially Fulfilled",PENDING_FULFILLMENT:"Pending",PICKED_UP:"Displayed as Picked up",READY_FOR_PICKUP:"Ready for pickup",RESTOCKED:"Restocked",SCHEDULED:"Scheduled",SUBMITTED:"Submitted",UNFULFILLED:"Unfulfilled"};try{return r?.[e]}catch{return e}}var oe=Object.freeze({...D.default,pathPrefix:""});function vr(e){let[r]=L();return`${(r.data?.selectedLocale??oe).pathPrefix}${e.startsWith("/")?e:"/"+e}`}function yr(){let{pathname:e}=R(),[r]=L(),t=r.data?.selectedLocale??oe;return e.replace(t.pathPrefix,"")==="/"}export{pr as a,dr as b,fr as c,gr as d,mr as e,hr as f,_r as g,oe as h,vr as i,yr as j};
|
|
2
|
+
//# sourceMappingURL=/build/_shared/chunk-WYHUKY3H.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../node_modules/textr/index.js", "../../../../../../node_modules/typographic-apostrophes/index.es5.js", "../../../../../../node_modules/typographic-quotes-l10n-db/index.js", "../../../../../../node_modules/typographic-quotes/index.es5.js", "../../../../../../node_modules/typographic-apostrophes-for-possessive-plurals/index.es5.js", "../../../../../../node_modules/typographic-arrows/index.es5.js", "../../../../../../node_modules/typographic-copyright/index.es5.js", "../../../../../../node_modules/typographic-currency-db/index.es5.js", "../../../../../../node_modules/typographic-currency/index.es5.js", "../../../../../../node_modules/typographic-ellipses/index.es5.js", "../../../../../../node_modules/typographic-em-dashes/index.es5.js", "../../../../../../node_modules/typographic-en-dashes/index.es5.js", "../../../../../../node_modules/typographic-math-symbols/index.es5.js", "../../../../../../node_modules/typographic-registered-trademark/index.es5.js", "../../../../../../node_modules/typographic-single-spaces/index.es5.js", "../../../../../../node_modules/typographic-trademark/index.es5.js", "../../../../../../node_modules/typographic-base/index.es5.js", "../../../../app/lib/utils.ts"],
|
|
4
|
+
"sourcesContent": ["'use strict';\n\n/**\n * Create new transform function\n *\n * @constructor\n * @return {object:{exec:fn,use:fn}}\n * @return {fn:exec}\n * @api public\n */\nmodule.exports = function textr(defaults) {\n\n /**\n * list of registred middlewares\n * @api public\n */\n var mws = [];\n\n /**\n * Default options will be passed to either of the middlewares as second param.\n * You can redefine props by passing your options to `tf.exec()` as second arg.\n * @api private\n */\n defaults = defaults || {};\n\n /**\n * expose public interface of the textr\n *\n * @example\n *\n * // functional style\n * text = textr()\n * // register plugins\n * .use(quotes)\n * .use(capitalize)\n * .exec(text)\n *\n * // save transformer to reuse\n * tf = textr()\n * // register plugins\n * .use(quotes, elipses, capitalize)\n * ;\n * return ['Hello', 'world'].map(tf);\n *\n * @constructor\n * @alias exec\n */\n function api() {\n return exec.apply(null, arguments);\n }\n\n /**\n * Expose `exec`, `use` and `mws` as properties\n * of the `api`\n *\n * @alias exec\n * @alias use\n * @alias mws\n */\n api.exec = exec;\n api.use = use;\n api.mws = mws;\n\n return api;\n\n /**\n * process given text by the middlewares\n * @param {string} text\n * @param {Object} options Options to merge with defaults\n * @return {string} text\n * @api public\n */\n function exec(text, options) {\n options = clone(defaults, options);\n var l = mws.length;\n for (var i = 0; i < l; i++) {\n text = mws[i].apply(text, [text, options]) || text;\n }\n return text;\n }\n\n /**\n * Register either middleware and array of middlewares\n * @param {...fn} ...middlewares\n * @return {api}\n * @api public\n */\n function use() {\n [].push.apply(mws, arguments);\n return api;\n }\n\n};\n\n/**\n * merge given objects to new one. Returns clone\n * @param {Object} ...objects Objects to clone into the one new\n * @return {Object}\n */\nfunction clone() {\n var res = {};\n var length = arguments.length;\n for (var i = 0; i < length; i++) {\n var obj = arguments[i];\n for (var k in obj) { res[k] = obj[k]; }\n }\n return res;\n}\n", "\"use strict\";\n\nmodule.exports = function (input) {\n return input.replace(/ 'n' /gim, \" \u2019n\u2019 \").replace(/'n'/gim, \"\u2019n\u2019\").replace(/(\\S)'(\\S)/gim, \"$1\u2019$2\").replace(/'(\\d0s)/gim, \"\u2019$1\");\n};\n\n", "// Quotes https://en.wikipedia.org/wiki/Quotation_mark\n// Language codes: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes\nmodule.exports = {\n 'af': '\u201C\u201D\u2018\u2019', // Afrikaans\n 'sq': '\u201E\u201C\u2018\u2019', // Albanian\n 'az': '\u00AB\u00BB\u2039\u203A', // Azerbaijani\n 'eu': '\u00AB\u00BB\u2039\u203A', // Basque\n 'be': '\u00AB\u00BB\u201C\u201D', // Belarusian\n 'bg': '\u201E\u201C\u2019\u2019', // Bulgarian\n 'ca': '\u00AB\u00BB\u201C\u201D', // Catalan\n 'zh-Hans': '\u201C\u201D\u2018\u2019', // Chinese, simplified\n 'hr': '\u201E\u201D\u2018\u2019', // Croatian\n 'cs': '\u201E\u201C\u201A\u2018', // Czech\n 'da': '\u00BB\u00AB\u203A\u2039', // Danish\n 'nl': '\u2018\u2019\u201C\u201D', // Dutch\n 'en-uk': '\u2018\u2019\u201C\u201D', // English, UK\n 'en-us': '\u201C\u201D\u2018\u2019', // English, US; English, Canada\n 'eo': '\u201C\u201D\u2018\u2019', // Esperanto\n 'et': '\u201E\u201C\u00AB\u00BB', // Estonian\n 'fil': '\u201C\u201D\u2018\u2019', // Filipino\n 'fi': '\u201D\u201D\u2019\u2019', // Finnish\n 'fr': '\u00AB\u00BB\u201C\u201D', // French\n 'fr-sw': '\u00AB\u00BB\u2039\u203A', // French, Swiss\n 'ka': '\u201E\u201C\u201C\u201D', // Georgian\n 'de': '\u201E\u201C\u201A\u2018', // German\n 'de-sw': '\u00AB\u00BB\u2039\u203A', // German, Swiss\n 'el': '\u00AB\u00BB\u201C\u201D', // Greek\n 'he': '\"\"\\'\\'', // Hebrew\n 'hu': '\u201E\u201D\u00BB\u00AB', // Hungarian\n 'is': '\u201E\u201C\u201A\u2018', // Icelandic\n 'id': '\u201C\u201D\u2018\u2019', // Indonesian\n 'ga': '\u201C\u201D\u2018\u2019', // Irish\n 'it': '\u00AB\u00BB\u201C\u201D', // Italian\n 'it-sw': '\u00AB\u00BB\u2039\u203A', // Italian, Swiss\n 'ko': '\u201C\u201D\u2018\u2019', // Korean\n 'lv': '\u00AB\u00BB\u201E\u201C', // Latvian\n 'mk': '\u201E\u201C\u2019\u2018', // Macedonian\n 'no': '\u00AB\u00BB\u2019\u2019', // Norwegian\n 'pl': '\u201E\u201D\u00AB\u00BB', // Polish\n 'pt-br': '\u201C\u201D\u2018\u2019', // Portuguese, Brazil\n 'pt-pl': '\u00AB\u00BB\u201C\u201D', // Portuguese, Portugal\n 'ro': '\u201E\u201D\u00AB\u00BB', // Romanian\n 'ru': '\u00AB\u00BB\u201E\u201C', // Russian\n 'sr': '\u201E\u201D\u2019\u2019', // Serbian\n 'sk': '\u201E\u201C\u201A\u2018', // Slovak\n 'sl': '\u201E\u201C\u201A\u2018', // Slovene\n 'es': '\u00AB\u00BB\u201C\u201D', // Spanish\n 'sv': '\u201D\u201D\u2019\u2019', // Swedish\n 'th': '\u201C\u201D\u2018\u2019', // Thai\n 'tr': '\u201C\u201D\u2018\u2019', // Turkish\n 'uk': '\u00AB\u00BB\u201E\u201C', // Ukrainian\n 'cy': '\u2018\u2019\u201C\u201D' // Welsh\n};\n", "'use strict';\n\nObject.defineProperty(exports, '__esModule', {\n value: true\n});\nexports['default'] = typographicQuotes;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _typographicQuotesL10nDb = require('typographic-quotes-l10n-db');\n\nvar _typographicQuotesL10nDb2 = _interopRequireDefault(_typographicQuotesL10nDb);\n\nfunction typographicQuotes() {\n var input = arguments.length <= 0 || arguments[0] === undefined ? '' : arguments[0];\n\n var _ref = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];\n\n var _ref$locale = _ref.locale;\n var locale = _ref$locale === undefined ? 'en-us' : _ref$locale;\n\n var separator = '';\n var localeQuotes = _typographicQuotesL10nDb2['default'][locale];\n var pattern = /(^|\\s)(?:\"(.*?)\"|'(.*?)')(\\s|$|\\.|,|\\?|!)/gim;\n var handleQuotes = function handleQuotes(quotes, cb) {\n return function (match) {\n var before = arguments.length <= 1 || arguments[1] === undefined ? '' : arguments[1];\n var part1 = arguments.length <= 2 || arguments[2] === undefined ? '' : arguments[2];\n var part2 = arguments.length <= 3 || arguments[3] === undefined ? '' : arguments[3];\n var after = arguments.length <= 4 || arguments[4] === undefined ? '' : arguments[4];\n\n var text = part1 + part2;\n if (cb) {\n text = text.replace(pattern, cb);\n }\n if (locale === 'fr') {\n separator = '\u00A0';\n }\n return '' + before + quotes[0] + separator + text + separator + quotes[1] + after;\n };\n };\n\n return input.replace(pattern, handleQuotes(localeQuotes.slice(0, 2), handleQuotes(localeQuotes.slice(2, 4))));\n}\n\nmodule.exports = exports['default'];\n\n", "\"use strict\";\n\nmodule.exports = function (input) {\n return input.replace(/s'(\\s|$)/gim, \"s\u2019$1\");\n};\n\n", "'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = typographicArrows;\nfunction typographicArrows(input) {\n return input.replace(/<->/gim, '\u2194').replace(/<=>/gim, '\u21D4').replace(/<-/gim, '\u2190').replace(/->/gim, '\u2192').replace(/<=/gim, '\u21D0').replace(/=>/gim, '\u21D2');\n}\nmodule.exports = exports['default'];\n", "'use strict';\n\nObject.defineProperty(exports, '__esModule', {\n value: true\n});\n\nexports['default'] = function (input) {\n return input.replace(/\\(c\\)/gim, '\u00A9').replace(/\u00A9 *(\\d)/gim, '\u00A9\u00A0$1');\n};\n\nmodule.exports = exports['default'];\n\n", "// ISO_4217: unicode // symbol\n// http://www.unicode.org/charts/PDF/U20A0.pdf\n\n'use strict';\n\nmodule.exports = {\n 'AFN': '\u060B', // \u060B\n 'AMD': '\u058F', // \u058F\n 'ANG': '\u0192', // \u0192\n 'AWG': '\u0192', // \u0192\n 'AZN': '\u20BC', // \u20BC\n 'BDT': '\u09F3', // \u09F3\n 'BTC': '\u0243', // \u0243\n 'CNY': '\u00A5', // \u00A5\n 'CRC': '\u20A1', // \u20A1\n 'EUR': '\u20AC', // \u20AC\n 'FKP': '\u00A3', // \u00A3\n 'GBP': '\u00A3', // \u00A3\n 'GHS': '\u20B5', // \u20B5\n 'GIP': '\u00A3', // \u00A3\n 'ILS': '\u20AA', // \u20AA\n 'INR': '\u20B9', // \u20B9\n 'IRR': '\uFDFC', // \uFDFC\n 'JPY': '\u00A5', // \u00A5\n 'KHR': '\u17DB', // \u17DB\n 'KPW': '\u20A9', // \u20A9\n 'KRW': '\u20A9', // \u20A9\n 'KZT': '\u20B8', // \u20B8\n 'LAK': '\u20AD', // \u20AD\n 'LKR': '\u20A8', // \u20A8\n 'MNT': '\u20AE', // \u20AE\n 'MTL': '\u20A4', // \u20A4\n 'MUR': '\u20A8', // \u20A8\n 'NGN': '\u20A6', // \u20A6\n 'NPR': '\u20A8', // \u20A8\n 'OMR': '\uFDFC', // \uFDFC\n 'PHP': '\u20B1', // \u20B1\n 'PKR': '\u20A8', // \u20A8\n 'PYG': '\u20B2', // \u20B2\n 'QAR': '\uFDFC', // \uFDFC\n 'RUB': '\u20BD', // \u20BD\n 'SAR': '\uFDFC', // \uFDFC\n 'SCR': '\u20A8', // \u20A8\n 'SDG': '\u00A3', // \u00A3\n 'SHP': '\u00A3', // \u00A3\n 'SVC': '\u20A1', // \u20A1\n 'SYP': '\u00A3', // \u00A3\n 'THB': '\u0E3F', // \u0E3F\n 'UAH': '\u20B4', // \u20B4\n 'USD': '$', // $\n 'VND': '\u20AB', // \u20AB\n 'YER': '\uFDFC' // \uFDFC\n};\n\n", "'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = typographicCurrency;\n\nvar _typographicCurrencyDb = require('typographic-currency-db');\n\nvar _typographicCurrencyDb2 = _interopRequireDefault(_typographicCurrencyDb);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar pattern = function pattern(key) {\n return new RegExp('([^a-z]|\\\\b)(' + key + ')\\\\b', 'gi');\n};\n\nfunction typographicCurrency(input) {\n if (!input) return;\n return Object.keys(_typographicCurrencyDb2.default).reduce(function (state, key) {\n return state.replace(pattern(key), '$1' + _typographicCurrencyDb2.default[key]);\n }, input);\n};\n", "'use strict';\n\nmodule.exports = function (input) {\n return input.replace(/\\.{3}/gim, '\u2026');\n};\n\n", "\"use strict\";\n\nmodule.exports = function (input) {\n return input.replace(/--/gim, \"\u2014\").replace(/ \u2014 /gim, \"\u200A\u2014\u200A\");\n};\n\n", "'use strict';\n\nObject.defineProperty(exports, '__esModule', {\n value: true\n});\n\nexports['default'] = function (input) {\n return input.replace(/(\\d)-(\\d)/gim, '$1\u2013$2');\n};\n\nmodule.exports = exports['default'];\n\n", "'use strict';\n\nObject.defineProperty(exports, '__esModule', {\n value: true\n});\n\nexports['default'] = function (input) {\n return input.replace(/(\\d) x (\\d)/gim, '$1 \u00D7 $2').replace(/(\\d) - (\\d)/gim, '$1 \u2212 $2').replace(/(\\w) >> (\\w)/gim, '$1 \u226B $2').replace(/(\\w) << (\\w)/gim, '$1 \u226A $2').replace(/(\\w) >= (\\w)/gim, '$1 \u2265 $2').replace(/(\\w) <= (\\w)/gim, '$1 \u2264 $2').replace(/\\+-/gim, '\u00B1').replace(/-\\+/gim, '\u2213');\n};\n\nmodule.exports = exports['default'];\n\n", "'use strict';\n\nObject.defineProperty(exports, '__esModule', {\n value: true\n});\n\nexports['default'] = function (input) {\n return input.replace(/\\(r\\)/gim, '\u00AE');\n};\n\nmodule.exports = exports['default'];\n\n", "\"use strict\";\n\nmodule.exports = function (input) {\n return input.replace(/ +/gim, \" \");\n};\n\n", "'use strict';\n\nObject.defineProperty(exports, '__esModule', {\n value: true\n});\n\nexports['default'] = function (input) {\n return input.replace(/ *\\(tm\\)/gim, '\u2122');\n};\n\nmodule.exports = exports['default'];\n\n", "'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _textr = require('textr');\n\nvar _textr2 = _interopRequireDefault(_textr);\n\nvar _typographicApostrophes = require('typographic-apostrophes');\n\nvar _typographicApostrophes2 = _interopRequireDefault(_typographicApostrophes);\n\nvar _typographicQuotes = require('typographic-quotes');\n\nvar _typographicQuotes2 = _interopRequireDefault(_typographicQuotes);\n\nvar _typographicApostrophesForPossessivePlurals = require('typographic-apostrophes-for-possessive-plurals');\n\nvar _typographicApostrophesForPossessivePlurals2 = _interopRequireDefault(_typographicApostrophesForPossessivePlurals);\n\nvar _typographicArrows = require('typographic-arrows');\n\nvar _typographicArrows2 = _interopRequireDefault(_typographicArrows);\n\nvar _typographicCopyright = require('typographic-copyright');\n\nvar _typographicCopyright2 = _interopRequireDefault(_typographicCopyright);\n\nvar _typographicCurrency = require('typographic-currency');\n\nvar _typographicCurrency2 = _interopRequireDefault(_typographicCurrency);\n\nvar _typographicEllipses = require('typographic-ellipses');\n\nvar _typographicEllipses2 = _interopRequireDefault(_typographicEllipses);\n\nvar _typographicEmDashes = require('typographic-em-dashes');\n\nvar _typographicEmDashes2 = _interopRequireDefault(_typographicEmDashes);\n\nvar _typographicEnDashes = require('typographic-en-dashes');\n\nvar _typographicEnDashes2 = _interopRequireDefault(_typographicEnDashes);\n\nvar _typographicMathSymbols = require('typographic-math-symbols');\n\nvar _typographicMathSymbols2 = _interopRequireDefault(_typographicMathSymbols);\n\nvar _typographicRegisteredTrademark = require('typographic-registered-trademark');\n\nvar _typographicRegisteredTrademark2 = _interopRequireDefault(_typographicRegisteredTrademark);\n\nvar _typographicSingleSpaces = require('typographic-single-spaces');\n\nvar _typographicSingleSpaces2 = _interopRequireDefault(_typographicSingleSpaces);\n\nvar _typographicTrademark = require('typographic-trademark');\n\nvar _typographicTrademark2 = _interopRequireDefault(_typographicTrademark);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar base = (0, _textr2.default)().use(_typographicApostrophes2.default, _typographicQuotes2.default, _typographicApostrophesForPossessivePlurals2.default, _typographicArrows2.default, _typographicCopyright2.default, _typographicCurrency2.default, _typographicEllipses2.default, _typographicEmDashes2.default, _typographicEnDashes2.default, _typographicMathSymbols2.default, _typographicRegisteredTrademark2.default, _typographicSingleSpaces2.default, _typographicTrademark2.default);\n\nexports.default = base;\nmodule.exports = exports['default'];\n", "import {useLocation, useMatches} from '@remix-run/react';\nimport type {\n MenuItem,\n Menu,\n MoneyV2,\n} from '@shopify/hydrogen-react/storefront-api-types';\n\n// @ts-expect-error types not available\nimport typographicBase from 'typographic-base';\nimport {countries} from '~/data/countries';\nimport {Locale} from './type';\n\nexport interface EnhancedMenuItem extends MenuItem {\n to: string;\n target: string;\n isExternal?: boolean;\n items: EnhancedMenuItem[];\n}\n\nexport interface EnhancedMenu extends Menu {\n items: EnhancedMenuItem[];\n}\n\nexport function missingClass(string?: string, prefix?: string) {\n if (!string) {\n return true;\n }\n\n const regex = new RegExp(` ?${prefix}`, 'g');\n return string.match(regex) === null;\n}\n\nexport function formatText(input?: string | React.ReactNode) {\n if (!input) {\n return;\n }\n\n if (typeof input !== 'string') {\n return input;\n }\n\n return typographicBase(input, {locale: 'en-us'}).replace(\n /\\s([^\\s<]+)\\s*$/g,\n '\\u00A0$1',\n );\n}\n\nexport function getExcerpt(text: string) {\n const regex = /<p.*>(.*?)<\\/p>/;\n const match = regex.exec(text);\n return match?.length ? match[0] : text;\n}\n\nexport function isNewArrival(date: string, daysOld = 30) {\n return (\n new Date(date).valueOf() >\n new Date().setDate(new Date().getDate() - daysOld).valueOf()\n );\n}\n\nexport function isDiscounted(price: MoneyV2, compareAtPrice: MoneyV2) {\n if (compareAtPrice?.amount > price?.amount) {\n return true;\n }\n return false;\n}\n\nfunction resolveToFromType(\n {\n customPrefixes,\n pathname,\n type,\n }: {\n customPrefixes: Record<string, string>;\n pathname?: string;\n type?: string;\n } = {\n customPrefixes: {},\n },\n) {\n if (!pathname || !type) return '';\n\n /*\n MenuItemType enum\n @see: https://shopify.dev/api/storefront/unstable/enums/MenuItemType\n */\n const defaultPrefixes = {\n BLOG: 'blogs',\n COLLECTION: 'collections',\n COLLECTIONS: 'collections', // Collections All (not documented)\n FRONTPAGE: 'frontpage',\n HTTP: '',\n PAGE: 'pages',\n CATALOG: 'collections/all', // Products All\n PRODUCT: 'products',\n SEARCH: 'search',\n SHOP_POLICY: 'policies',\n };\n\n const pathParts = pathname.split('/');\n const handle = pathParts.pop() || '';\n const routePrefix: Record<string, string> = {\n ...defaultPrefixes,\n ...customPrefixes,\n };\n\n switch (true) {\n // special cases\n case type === 'FRONTPAGE':\n return '/';\n\n case type === 'ARTICLE': {\n const blogHandle = pathParts.pop();\n return routePrefix.BLOG\n ? `/${routePrefix.BLOG}/${blogHandle}/${handle}/`\n : `/${blogHandle}/${handle}/`;\n }\n\n case type === 'COLLECTIONS':\n return `/${routePrefix.COLLECTIONS}`;\n\n case type === 'SEARCH':\n return `/${routePrefix.SEARCH}`;\n\n case type === 'CATALOG':\n return `/${routePrefix.CATALOG}`;\n\n // common cases: BLOG, PAGE, COLLECTION, PRODUCT, SHOP_POLICY, HTTP\n default:\n return routePrefix[type]\n ? `/${routePrefix[type]}/${handle}`\n : `/${handle}`;\n }\n}\n\n/*\n Parse each menu link and adding, isExternal, to and target\n*/\nfunction parseItem(customPrefixes = {}) {\n return function (item: MenuItem): EnhancedMenuItem {\n if (!item?.url || !item?.type) {\n // eslint-disable-next-line no-console\n console.warn('Invalid menu item. Must include a url and type.');\n // @ts-ignore\n return;\n }\n\n // extract path from url because we don't need the origin on internal to attributes\n const {pathname} = new URL(item.url);\n\n /*\n Currently the MenuAPI only returns online store urls e.g \u2014 xyz.myshopify.com/..\n Note: update logic when API is updated to include the active qualified domain\n */\n const isInternalLink = /\\.myshopify\\.com/g.test(item.url);\n\n const parsedItem = isInternalLink\n ? // internal links\n {\n ...item,\n isExternal: false,\n target: '_self',\n to: resolveToFromType({type: item.type, customPrefixes, pathname}),\n }\n : // external links\n {\n ...item,\n isExternal: true,\n target: '_blank',\n to: item.url,\n };\n\n return {\n ...parsedItem,\n items: item.items?.map(parseItem(customPrefixes)),\n };\n };\n}\n\n/*\n Recursively adds `to` and `target` attributes to links based on their url\n and resource type.\n It optionally overwrites url paths based on item.type\n*/\nexport function parseMenu(menu: Menu, customPrefixes = {}): EnhancedMenu {\n if (!menu?.items) {\n // eslint-disable-next-line no-console\n console.warn('Invalid menu passed to parseMenu');\n // @ts-ignore\n return menu;\n }\n\n return {\n ...menu,\n items: menu.items.map(parseItem(customPrefixes)),\n };\n}\n\nexport const INPUT_STYLE_CLASSES =\n 'appearance-none rounded dark:bg-transparent border focus:border-primary/50 focus:ring-0 w-full py-2 px-3 text-primary/90 placeholder:text-primary/50 leading-tight focus:shadow-outline';\n\nexport const getInputStyleClasses = (isError?: string | null) => {\n return `${INPUT_STYLE_CLASSES} ${\n isError ? 'border-red-500' : 'border-primary/20'\n }`;\n};\n\nexport function statusMessage(status: string) {\n const translations: Record<string, string> = {\n ATTEMPTED_DELIVERY: 'Attempted delivery',\n CANCELED: 'Canceled',\n CONFIRMED: 'Confirmed',\n DELIVERED: 'Delivered',\n FAILURE: 'Failure',\n FULFILLED: 'Fulfilled',\n IN_PROGRESS: 'In Progress',\n IN_TRANSIT: 'In transit',\n LABEL_PRINTED: 'Label printed',\n LABEL_PURCHASED: 'Label purchased',\n LABEL_VOIDED: 'Label voided',\n MARKED_AS_FULFILLED: 'Marked as fulfilled',\n NOT_DELIVERED: 'Not delivered',\n ON_HOLD: 'On Hold',\n OPEN: 'Open',\n OUT_FOR_DELIVERY: 'Out for delivery',\n PARTIALLY_FULFILLED: 'Partially Fulfilled',\n PENDING_FULFILLMENT: 'Pending',\n PICKED_UP: 'Displayed as Picked up',\n READY_FOR_PICKUP: 'Ready for pickup',\n RESTOCKED: 'Restocked',\n SCHEDULED: 'Scheduled',\n SUBMITTED: 'Submitted',\n UNFULFILLED: 'Unfulfilled',\n };\n try {\n return translations?.[status];\n } catch (error) {\n return status;\n }\n}\n\n/**\n * Errors can exist in an errors object, or nested in a data field.\n */\nexport function assertApiErrors(data: Record<string, any> | null | undefined) {\n const errorMessage = data?.customerUserErrors?.[0]?.message;\n if (errorMessage) {\n throw new Error(errorMessage);\n }\n}\n\nexport const DEFAULT_LOCALE: Locale & {pathPrefix: string} = Object.freeze({\n ...countries.default,\n pathPrefix: '',\n});\n\nexport function getLocaleFromRequest(request: Request): Locale & {\n pathPrefix: string;\n} {\n const url = new URL(request.url);\n const firstPathPart =\n '/' + url.pathname.substring(1).split('/')[0].toLowerCase();\n\n return countries[firstPathPart]\n ? {\n ...countries[firstPathPart],\n pathPrefix: firstPathPart,\n }\n : {\n ...countries['default'],\n pathPrefix: '',\n };\n}\n\nexport function usePrefixPathWithLocale(path: string) {\n const [root] = useMatches();\n const selectedLocale = root.data?.selectedLocale ?? DEFAULT_LOCALE;\n\n return `${selectedLocale.pathPrefix}${\n path.startsWith('/') ? path : '/' + path\n }`;\n}\n\nexport function useIsHomePath() {\n const {pathname} = useLocation();\n const [root] = useMatches();\n const selectedLocale = root.data?.selectedLocale ?? DEFAULT_LOCALE;\n const strippedPathname = pathname.replace(selectedLocale.pathPrefix, '');\n return strippedPathname === '/';\n}\n\n/**\n * Validates that a url is local\n * @param url\n * @returns `true` if local `false`if external domain\n */\nexport function isLocalPath(url: string) {\n try {\n // We don't want to redirect cross domain,\n // doing so could create fishing vulnerability\n // If `new URL()` succeeds, it's a fully qualified\n // url which is cross domain. If it fails, it's just\n // a path, which will be the current domain.\n new URL(url);\n } catch (e) {\n return true;\n }\n\n return false;\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["require_textr", "__commonJSMin", "exports", "module", "defaults", "mws", "api", "exec", "use", "text", "options", "clone", "l", "i", "res", "length", "obj", "k", "require_index_es5", "__commonJSMin", "exports", "module", "input", "require_typographic_quotes_l10n_db", "__commonJSMin", "exports", "module", "require_index_es5", "__commonJSMin", "exports", "module", "typographicQuotes", "_interopRequireDefault", "obj", "_typographicQuotesL10nDb", "_typographicQuotesL10nDb2", "input", "_ref", "_ref$locale", "locale", "separator", "localeQuotes", "pattern", "handleQuotes", "quotes", "cb", "match", "before", "part1", "part2", "after", "text", "require_index_es5", "__commonJSMin", "exports", "module", "input", "require_index_es5", "__commonJSMin", "exports", "module", "typographicArrows", "input", "require_index_es5", "__commonJSMin", "exports", "module", "input", "require_index_es5", "__commonJSMin", "exports", "module", "require_index_es5", "__commonJSMin", "exports", "typographicCurrency", "_typographicCurrencyDb", "_typographicCurrencyDb2", "_interopRequireDefault", "obj", "pattern", "key", "input", "state", "require_index_es5", "__commonJSMin", "exports", "module", "input", "require_index_es5", "__commonJSMin", "exports", "module", "input", "require_index_es5", "__commonJSMin", "exports", "module", "input", "require_index_es5", "__commonJSMin", "exports", "module", "input", "require_index_es5", "__commonJSMin", "exports", "module", "input", "require_index_es5", "__commonJSMin", "exports", "module", "input", "require_index_es5", "__commonJSMin", "exports", "module", "input", "require_index_es5", "__commonJSMin", "exports", "module", "_textr", "_textr2", "_interopRequireDefault", "_typographicApostrophes", "_typographicApostrophes2", "_typographicQuotes", "_typographicQuotes2", "_typographicApostrophesForPossessivePlurals", "_typographicApostrophesForPossessivePlurals2", "_typographicArrows", "_typographicArrows2", "_typographicCopyright", "_typographicCopyright2", "_typographicCurrency", "_typographicCurrency2", "_typographicEllipses", "_typographicEllipses2", "_typographicEmDashes", "_typographicEmDashes2", "_typographicEnDashes", "_typographicEnDashes2", "_typographicMathSymbols", "_typographicMathSymbols2", "_typographicRegisteredTrademark", "_typographicRegisteredTrademark2", "_typographicSingleSpaces", "_typographicSingleSpaces2", "_typographicTrademark", "_typographicTrademark2", "obj", "base", "import_typographic_base", "missingClass", "string", "prefix", "regex", "formatText", "input", "typographicBase", "getExcerpt", "text", "match", "isNewArrival", "date", "daysOld", "isDiscounted", "price", "compareAtPrice", "INPUT_STYLE_CLASSES", "getInputStyleClasses", "isError", "statusMessage", "status", "translations", "DEFAULT_LOCALE", "countries", "usePrefixPathWithLocale", "path", "root", "useMatches", "DEFAULT_LOCALE", "useIsHomePath", "pathname", "useLocation", "selectedLocale"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../app/routes/api/countries.tsx"],
|
|
4
|
+
"sourcesContent": ["import {json, type LoaderArgs} from '@shopify/remix-oxygen';\nimport {countries} from '~/data/countries';\n\nexport async function loader({context: {storefront}}: LoaderArgs) {\n return json(\n {\n ...countries,\n },\n {\n headers: {\n 'cache-control': storefront.generateCacheControlHeader(\n storefront.CacheLong(),\n ),\n },\n },\n );\n}\n\n// no-op\nexport default function CountriesApiRoute() {\n return null;\n}\n"],
|
|
5
|
+
"mappings": "AAmBe,SAARA,GAAqC,CAC1C,OAAO,IACT",
|
|
6
|
+
"names": ["CountriesApiRoute"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var g=Object.create;var f=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var j=Object.getPrototypeOf,k=Object.prototype.hasOwnProperty;var m=(b,a)=>()=>(a||b((a={exports:{}}).exports,a),a.exports);var l=(b,a,c,e)=>{if(a&&typeof a=="object"||typeof a=="function")for(let d of i(a))!k.call(b,d)&&d!==c&&f(b,d,{get:()=>a[d],enumerable:!(e=h(a,d))||e.enumerable});return b};var n=(b,a,c)=>(c=b!=null?g(j(b)):{},l(a||!b||!b.__esModule?f(c,"default",{value:b,enumerable:!0}):c,b));export{m as a,n as b};
|
|
2
|
+
//# sourceMappingURL=/build/_shared/chunk-X4LCECW4.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{f as c}from"/build/_shared/chunk-WYHUKY3H.js";import{o as p,r as f}from"/build/_shared/chunk-ZNLABNO4.js";import{a as v,b as w}from"/build/_shared/chunk-KSKV5IK6.js";import{b as i}from"/build/_shared/chunk-X4LCECW4.js";var r=i(v());var t=i(w());var N={isPublic:!0};var A=()=>({title:"Activate Account"});function y(){let l=f(),[s,u]=(0,r.useState)(null),[a,o]=(0,r.useState)(null),m=(0,r.useRef)(null),e=(0,r.useRef)(null),d=()=>{!e.current||(e.current.value.length&&e.current.value!==m.current?.value?o("The two passwords entered did not match."):e.current.validity.valid||!e.current.value.length?o(null):o(e.current.validity.valueMissing?"Please re-enter the password":"Passwords must be at least 8 characters"))};return(0,t.jsx)("div",{className:"flex justify-center my-24 px-4",children:(0,t.jsxs)("div",{className:"max-w-md w-full",children:[(0,t.jsx)("h1",{className:"text-4xl",children:"Activate Account."}),(0,t.jsx)("p",{className:"mt-4",children:"Create your password to activate your account."}),(0,t.jsxs)(p,{method:"post",noValidate:!0,className:"pt-6 pb-8 mt-4 mb-4 space-y-3",children:[l?.formError&&(0,t.jsx)("div",{className:"flex items-center justify-center mb-6 bg-zinc-500",children:(0,t.jsx)("p",{className:"m-4 text-s text-contrast",children:l.formError})}),(0,t.jsxs)("div",{className:"mb-3",children:[(0,t.jsx)("input",{ref:m,className:`mb-1 ${c(s)}`,id:"password",name:"password",type:"password",autoComplete:"current-password",placeholder:"Password","aria-label":"Password",minLength:8,required:!0,autoFocus:!0,onBlur:n=>{n.currentTarget.validity.valid||!n.currentTarget.value.length?(u(null),d()):u(n.currentTarget.validity.valueMissing?"Please enter a password":"Passwords must be at least 8 characters")}}),s&&(0,t.jsxs)("p",{className:"text-red-500 text-xs",children:[" ",s," \xA0"]})]}),(0,t.jsxs)("div",{className:"mb-3",children:[(0,t.jsx)("input",{ref:e,className:`mb-1 ${c(a)}`,id:"passwordConfirm",name:"passwordConfirm",type:"password",autoComplete:"current-password",placeholder:"Re-enter password","aria-label":"Re-enter password",minLength:8,required:!0,autoFocus:!0,onBlur:d}),a&&(0,t.jsxs)("p",{className:"text-red-500 text-xs",children:[" ",a," \xA0"]})]}),(0,t.jsx)("div",{className:"flex items-center justify-between",children:(0,t.jsx)("button",{className:"bg-primary text-contrast rounded py-2 px-4 focus:shadow-outline block w-full",type:"submit",children:"Save"})})]})]})})}export{N as a,A as b,y as c};
|
|
2
|
+
//# sourceMappingURL=/build/_shared/chunk-XDBJQDOE.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../app/routes/account/__public/activate.$id.$activationToken.tsx"],
|
|
4
|
+
"sourcesContent": ["import {\n type MetaFunction,\n redirect,\n json,\n type ActionFunction,\n} from '@shopify/remix-oxygen';\nimport {Form, useActionData} from '@remix-run/react';\nimport {useRef, useState} from 'react';\nimport {activateAccount} from '~/data';\nimport {getInputStyleClasses} from '~/lib/utils';\n\ntype ActionData = {\n formError?: string;\n};\n\nconst badRequest = (data: ActionData) => json(data, {status: 400});\n\nexport const handle = {\n isPublic: true,\n};\n\nexport const action: ActionFunction = async ({\n request,\n context,\n params: {lang, id, activationToken},\n}) => {\n if (\n !id ||\n !activationToken ||\n typeof id !== 'string' ||\n typeof activationToken !== 'string'\n ) {\n return badRequest({\n formError: 'Wrong token. The link you followed might be wrong.',\n });\n }\n\n const formData = await request.formData();\n\n const password = formData.get('password');\n const passwordConfirm = formData.get('passwordConfirm');\n\n if (\n !password ||\n !passwordConfirm ||\n typeof password !== 'string' ||\n typeof passwordConfirm !== 'string' ||\n password !== passwordConfirm\n ) {\n return badRequest({\n formError: 'Please provide matching passwords',\n });\n }\n\n const {session, storefront} = context;\n\n try {\n const {accessToken} = await activateAccount(context, {\n id,\n activationToken,\n password,\n });\n\n session.set('customerAccessToken', accessToken);\n\n return redirect(lang ? `${lang}/account` : '/account', {\n headers: {\n 'Set-Cookie': await session.commit(),\n },\n });\n } catch (error: any) {\n if (storefront.isApiError(error)) {\n return badRequest({\n formError: 'Something went wrong. Please try again later.',\n });\n }\n\n /**\n * The user did something wrong, but the raw error from the API is not super friendly.\n * Let's make one up.\n */\n return badRequest({\n formError: 'Sorry. We could not activate your account.',\n });\n }\n};\n\nexport const meta: MetaFunction = () => {\n return {\n title: 'Activate Account',\n };\n};\n\nexport default function Activate() {\n const actionData = useActionData<ActionData>();\n const [nativePasswordError, setNativePasswordError] = useState<null | string>(\n null,\n );\n const [nativePasswordConfirmError, setNativePasswordConfirmError] = useState<\n null | string\n >(null);\n\n const passwordInput = useRef<HTMLInputElement>(null);\n const passwordConfirmInput = useRef<HTMLInputElement>(null);\n\n const validatePasswordConfirm = () => {\n if (!passwordConfirmInput.current) return;\n\n if (\n passwordConfirmInput.current.value.length &&\n passwordConfirmInput.current.value !== passwordInput.current?.value\n ) {\n setNativePasswordConfirmError('The two passwords entered did not match.');\n } else if (\n passwordConfirmInput.current.validity.valid ||\n !passwordConfirmInput.current.value.length\n ) {\n setNativePasswordConfirmError(null);\n } else {\n setNativePasswordConfirmError(\n passwordConfirmInput.current.validity.valueMissing\n ? 'Please re-enter the password'\n : 'Passwords must be at least 8 characters',\n );\n }\n };\n\n return (\n <div className=\"flex justify-center my-24 px-4\">\n <div className=\"max-w-md w-full\">\n <h1 className=\"text-4xl\">Activate Account.</h1>\n <p className=\"mt-4\">Create your password to activate your account.</p>\n {/* TODO: Add onSubmit to validate _before_ submission with native? */}\n <Form\n method=\"post\"\n noValidate\n className=\"pt-6 pb-8 mt-4 mb-4 space-y-3\"\n >\n {actionData?.formError && (\n <div className=\"flex items-center justify-center mb-6 bg-zinc-500\">\n <p className=\"m-4 text-s text-contrast\">{actionData.formError}</p>\n </div>\n )}\n <div className=\"mb-3\">\n <input\n ref={passwordInput}\n className={`mb-1 ${getInputStyleClasses(nativePasswordError)}`}\n id=\"password\"\n name=\"password\"\n type=\"password\"\n autoComplete=\"current-password\"\n placeholder=\"Password\"\n aria-label=\"Password\"\n minLength={8}\n required\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus\n onBlur={(event) => {\n if (\n event.currentTarget.validity.valid ||\n !event.currentTarget.value.length\n ) {\n setNativePasswordError(null);\n validatePasswordConfirm();\n } else {\n setNativePasswordError(\n event.currentTarget.validity.valueMissing\n ? 'Please enter a password'\n : 'Passwords must be at least 8 characters',\n );\n }\n }}\n />\n {nativePasswordError && (\n <p className=\"text-red-500 text-xs\">\n {' '}\n {nativePasswordError} \n </p>\n )}\n </div>\n <div className=\"mb-3\">\n <input\n ref={passwordConfirmInput}\n className={`mb-1 ${getInputStyleClasses(\n nativePasswordConfirmError,\n )}`}\n id=\"passwordConfirm\"\n name=\"passwordConfirm\"\n type=\"password\"\n autoComplete=\"current-password\"\n placeholder=\"Re-enter password\"\n aria-label=\"Re-enter password\"\n minLength={8}\n required\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus\n onBlur={validatePasswordConfirm}\n />\n {nativePasswordConfirmError && (\n <p className=\"text-red-500 text-xs\">\n {' '}\n {nativePasswordConfirmError} \n </p>\n )}\n </div>\n <div className=\"flex items-center justify-between\">\n <button\n className=\"bg-primary text-contrast rounded py-2 px-4 focus:shadow-outline block w-full\"\n type=\"submit\"\n >\n Save\n </button>\n </div>\n </Form>\n </div>\n </div>\n );\n}\n"],
|
|
5
|
+
"mappings": "kOAOA,IAAAA,EAA+B,OAP/B,IAAAC,EAAA,OAiBO,IAAMC,EAAS,CACpB,SAAU,EACZ,EAoEO,IAAMC,EAAqB,KACzB,CACL,MAAO,kBACT,GAGa,SAARC,GAA4B,CACjC,IAAMC,EAAaC,EAA0B,EACvC,CAACC,EAAqBC,CAAsB,KAAI,YACpD,IACF,EACM,CAACC,EAA4BC,CAA6B,KAAI,YAElE,IAAI,EAEAC,KAAgB,UAAyB,IAAI,EAC7CC,KAAuB,UAAyB,IAAI,EAEpDC,EAA0B,IAAM,CAChC,CAACD,EAAqB,UAGxBA,EAAqB,QAAQ,MAAM,QACnCA,EAAqB,QAAQ,QAAUD,EAAc,SAAS,MAE9DD,EAA8B,0CAA0C,EAExEE,EAAqB,QAAQ,SAAS,OACtC,CAACA,EAAqB,QAAQ,MAAM,OAEpCF,EAA8B,IAAI,EAElCA,EACEE,EAAqB,QAAQ,SAAS,aAClC,+BACA,yCACN,EAEJ,EAEA,SACE,OAAC,OAAI,UAAU,iCACb,oBAAC,OAAI,UAAU,kBACb,oBAAC,MAAG,UAAU,WAAW,6BAAiB,KAC1C,OAAC,KAAE,UAAU,OAAO,0DAA8C,KAElE,QAACE,EAAA,CACC,OAAO,OACP,WAAU,GACV,UAAU,gCAET,UAAAT,GAAY,cACX,OAAC,OAAI,UAAU,oDACb,mBAAC,KAAE,UAAU,2BAA4B,SAAAA,EAAW,UAAU,EAChE,KAEF,QAAC,OAAI,UAAU,OACb,oBAAC,SACC,IAAKM,EACL,UAAW,QAAQI,EAAqBR,CAAmB,IAC3D,GAAG,WACH,KAAK,WACL,KAAK,WACL,aAAa,mBACb,YAAY,WACZ,aAAW,WACX,UAAW,EACX,SAAQ,GAER,UAAS,GACT,OAASS,GAAU,CAEfA,EAAM,cAAc,SAAS,OAC7B,CAACA,EAAM,cAAc,MAAM,QAE3BR,EAAuB,IAAI,EAC3BK,EAAwB,GAExBL,EACEQ,EAAM,cAAc,SAAS,aACzB,0BACA,yCACN,CAEJ,EACF,EACCT,MACC,QAAC,KAAE,UAAU,uBACV,cACAA,EAAoB,SACvB,GAEJ,KACA,QAAC,OAAI,UAAU,OACb,oBAAC,SACC,IAAKK,EACL,UAAW,QAAQG,EACjBN,CACF,IACA,GAAG,kBACH,KAAK,kBACL,KAAK,WACL,aAAa,mBACb,YAAY,oBACZ,aAAW,oBACX,UAAW,EACX,SAAQ,GAER,UAAS,GACT,OAAQI,EACV,EACCJ,MACC,QAAC,KAAE,UAAU,uBACV,cACAA,EAA2B,SAC9B,GAEJ,KACA,OAAC,OAAI,UAAU,oCACb,mBAAC,UACC,UAAU,+EACV,KAAK,SACN,gBAED,EACF,GACF,GACF,EACF,CAEJ",
|
|
6
|
+
"names": ["import_react", "import_jsx_runtime", "handle", "meta", "Activate", "actionData", "useActionData", "nativePasswordError", "setNativePasswordError", "nativePasswordConfirmError", "setNativePasswordConfirmError", "passwordInput", "passwordConfirmInput", "validatePasswordConfirm", "Form", "getInputStyleClasses", "event"]
|
|
7
|
+
}
|