<?xml version="1.0" encoding="UTF-8"?>
<!-- This sitemap was dynamically generated on September 29, 2026 at 4:28 am by All in One SEO Pro v5.0.2 - the original SEO plugin for WordPress. -->

<?xml-stylesheet type="text/xsl" href="https://fredsfarm.store/default-sitemap.xsl"?>

<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Fred&#039;s Farm</title>
		<link><![CDATA[https://fredsfarm.store]]></link>
		<description><![CDATA[Fred&#039;s Farm]]></description>
		<lastBuildDate><![CDATA[Mon, 28 Sep 2026 22:25:36 +0000]]></lastBuildDate>
		<docs>https://validator.w3.org/feed/docs/rss2.html</docs>
		<atom:link href="https://fredsfarm.store/sitemap.rss" rel="self" type="application/rss+xml" />
		<ttl><![CDATA[60]]></ttl>

		<item>
			<guid><![CDATA[https://fredsfarm.store/products/ground-beef/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/ground-beef/]]></link>
			<title>Ground Beef</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 22:25:36 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/beef-liver/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/beef-liver/]]></link>
			<title>Beef Liver</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 22:25:36 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/chicken-breast-boneless-skinless-2-per-pkg/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/chicken-breast-boneless-skinless-2-per-pkg/]]></link>
			<title>Chicken Breast | Boneless/Skinless | 2 per Pkg</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 22:25:36 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/chicken-tenders-6-per-pkg/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/chicken-tenders-6-per-pkg/]]></link>
			<title>Chicken Tenders | 6 per Pkg</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 22:25:36 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/skirt-steak/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/skirt-steak/]]></link>
			<title>Skirt Steak</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 22:25:36 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/4-oz-ground-beef-patties-pack-of-4/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/4-oz-ground-beef-patties-pack-of-4/]]></link>
			<title>4 oz Ground Beef Patties &#8211; Pack of 4</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 20:40:30 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/beef-cubes-stew-meat/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/beef-cubes-stew-meat/]]></link>
			<title>Beef Cubes (Stew Meat)</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 20:40:30 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/boneless-pork-chops-pack-of-2/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/boneless-pork-chops-pack-of-2/]]></link>
			<title>Boneless Pork Chops &#8211; Pack of 2</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 20:40:30 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/chicken-drumsticks-4-per-pkg/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/chicken-drumsticks-4-per-pkg/]]></link>
			<title>Chicken Drumsticks | 4 per Pkg</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 20:40:30 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/chicken-thighs-boneless-skinless-4-per-pkg/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/chicken-thighs-boneless-skinless-4-per-pkg/]]></link>
			<title>Chicken Thighs | Boneless/Skinless | 4 per Pkg</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 20:40:30 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/round-roast/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/round-roast/]]></link>
			<title>Round Roast</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 20:40:30 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/country-sausage-grillers-4-pkg/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/country-sausage-grillers-4-pkg/]]></link>
			<title>Country Sausage Grillers | 4/pkg</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 18:35:04 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/pos/]]></guid>
			<link><![CDATA[https://fredsfarm.store/pos/]]></link>
			<title>YITH POS</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 14:24:13 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/4-oz-country-sausage-patties-pack-of-4/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/4-oz-country-sausage-patties-pack-of-4/]]></link>
			<title>4 oz Country Sausage Patties &#8211; Pack of 4</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 12:14:12 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/flat-iron-steak/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/flat-iron-steak/]]></link>
			<title>Flat Iron Steak</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 12:14:12 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/new-york-strip-steak/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/new-york-strip-steak/]]></link>
			<title>New York Strip Steak</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 12:14:12 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/sirloin-steak/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/sirloin-steak/]]></link>
			<title>Sirloin Steak</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 12:14:12 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/smoked-uncured-sliced-bacon/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/smoked-uncured-sliced-bacon/]]></link>
			<title>Smoked Uncured Sliced Bacon</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 12:14:12 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/best-of-beef-box/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/best-of-beef-box/]]></link>
			<title>Best of Beef Box</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 11:48:14 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/sweet-italian-grillers-4-pk/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/sweet-italian-grillers-4-pk/]]></link>
			<title>Sweet Italian Grillers | 4/pk</title>
			<pubDate><![CDATA[Mon, 28 Sep 2026 11:48:14 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/chicken-bone-broth/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/chicken-bone-broth/]]></link>
			<title>Chicken Bone Broth</title>
			<pubDate><![CDATA[Sun, 27 Sep 2026 20:54:14 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/bratwurst-grillers-4-pk/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/bratwurst-grillers-4-pk/]]></link>
			<title>Bratwurst Grillers | 4/pk</title>
			<pubDate><![CDATA[Sun, 27 Sep 2026 20:54:13 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/country-breakfast-links-pack-of-10/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/country-breakfast-links-pack-of-10/]]></link>
			<title>Country Breakfast Links &#8211; Pack of 10</title>
			<pubDate><![CDATA[Sun, 27 Sep 2026 20:54:13 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/sweet-italian-bulk-sausage/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/sweet-italian-bulk-sausage/]]></link>
			<title>Sweet Italian Bulk Sausage</title>
			<pubDate><![CDATA[Sun, 27 Sep 2026 20:54:13 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/taste-of-the-farm-gift-box-sampler/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/taste-of-the-farm-gift-box-sampler/]]></link>
			<title>Taste of the Farm Gift Box | Sampler</title>
			<pubDate><![CDATA[Sun, 27 Sep 2026 20:54:13 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/delmonico-steak-ribeye/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/delmonico-steak-ribeye/]]></link>
			<title>Delmonico Steak (Ribeye)</title>
			<pubDate><![CDATA[Sun, 27 Sep 2026 14:40:18 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/whole-hog-smoked-sausage-grillers-4-pack/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/whole-hog-smoked-sausage-grillers-4-pack/]]></link>
			<title>Whole Hog Smoked Sausage Grillers | 4 Pack</title>
			<pubDate><![CDATA[Sun, 27 Sep 2026 14:40:18 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/ground-turkey/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/ground-turkey/]]></link>
			<title>Ground Turkey</title>
			<pubDate><![CDATA[Sat, 26 Sep 2026 22:46:15 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/pork-shoulder-roast/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/pork-shoulder-roast/]]></link>
			<title>Pork Shoulder Roast</title>
			<pubDate><![CDATA[Sat, 26 Sep 2026 22:46:15 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/sirloin-tip-roast/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/sirloin-tip-roast/]]></link>
			<title>Sirloin Tip Roast</title>
			<pubDate><![CDATA[Sat, 26 Sep 2026 22:46:15 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/chuck-roast/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/chuck-roast/]]></link>
			<title>Chuck Roast</title>
			<pubDate><![CDATA[Sat, 26 Sep 2026 22:46:15 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/filet-mignon-steak/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/filet-mignon-steak/]]></link>
			<title>Filet Mignon Steak</title>
			<pubDate><![CDATA[Sat, 26 Sep 2026 22:46:14 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/bratwurst-grillers-pack-5-pkg-of-4-pkg/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/bratwurst-grillers-pack-5-pkg-of-4-pkg/]]></link>
			<title>Bratwurst Grillers Pack | 5 Pkg of 4/pkg</title>
			<pubDate><![CDATA[Sat, 26 Sep 2026 22:46:14 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/beef-hot-dogs/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/beef-hot-dogs/]]></link>
			<title>Beef Hot Dogs</title>
			<pubDate><![CDATA[Sat, 26 Sep 2026 14:02:37 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/beef-tallow/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/beef-tallow/]]></link>
			<title>Beef Tallow</title>
			<pubDate><![CDATA[Thu, 24 Sep 2026 20:47:46 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/maple-flavored-grillers-4-pk/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/maple-flavored-grillers-4-pk/]]></link>
			<title>Maple Flavored Grillers | 4 pk</title>
			<pubDate><![CDATA[Thu, 24 Sep 2026 20:47:46 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/ground-pork/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/ground-pork/]]></link>
			<title>Ground Pork</title>
			<pubDate><![CDATA[Thu, 24 Sep 2026 20:34:07 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/pastured-chicken-hearts/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/pastured-chicken-hearts/]]></link>
			<title>Pastured Chicken Hearts</title>
			<pubDate><![CDATA[Thu, 24 Sep 2026 20:34:07 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/hickory-smoked-pulled-pork/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/hickory-smoked-pulled-pork/]]></link>
			<title>Hickory Smoked Pulled Pork</title>
			<pubDate><![CDATA[Thu, 24 Sep 2026 16:21:31 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/whole-smoked-uncurred-chicken/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/whole-smoked-uncurred-chicken/]]></link>
			<title>Whole Smoked Uncurred Chicken</title>
			<pubDate><![CDATA[Thu, 24 Sep 2026 16:19:35 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/return-policy/]]></guid>
			<link><![CDATA[https://fredsfarm.store/return-policy/]]></link>
			<title>Return Policy</title>
			<pubDate><![CDATA[Thu, 24 Sep 2026 16:17:31 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/smoked-uncured-beef-bacon/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/smoked-uncured-beef-bacon/]]></link>
			<title>Smoked Uncured Beef Bacon</title>
			<pubDate><![CDATA[Thu, 24 Sep 2026 16:00:08 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/flank-steak/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/flank-steak/]]></link>
			<title>Flank Steak</title>
			<pubDate><![CDATA[Wed, 23 Sep 2026 18:59:36 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/pork-tenderloin/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/pork-tenderloin/]]></link>
			<title>Pork Tenderloin</title>
			<pubDate><![CDATA[Wed, 23 Sep 2026 18:59:36 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/whole-chicken-precut/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/whole-chicken-precut/]]></link>
			<title>Whole Chicken Precut</title>
			<pubDate><![CDATA[Wed, 23 Sep 2026 14:28:45 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/5-whole-chickens-precut-bundle/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/5-whole-chickens-precut-bundle/]]></link>
			<title>5 Whole Chickens Precut Bundle</title>
			<pubDate><![CDATA[Wed, 23 Sep 2026 14:28:45 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/beef-bone-broth/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/beef-bone-broth/]]></link>
			<title>Beef Bone Broth</title>
			<pubDate><![CDATA[Wed, 23 Sep 2026 12:38:39 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/pastured-turkey-drumsticks-2-per-package/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/pastured-turkey-drumsticks-2-per-package/]]></link>
			<title>Pastured Turkey Drumsticks (2 per package)</title>
			<pubDate><![CDATA[Wed, 23 Sep 2026 12:38:39 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/products/turkey-bone-broth/]]></guid>
			<link><![CDATA[https://fredsfarm.store/products/turkey-bone-broth/]]></link>
			<title>Turkey Bone Broth</title>
			<pubDate><![CDATA[Wed, 23 Sep 2026 12:38:39 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://fredsfarm.store/]]></guid>
			<link><![CDATA[https://fredsfarm.store/]]></link>
			<title>Home</title>
			<pubDate><![CDATA[Mon, 24 Aug 2026 19:54:37 +0000]]></pubDate>
		</item>
				</channel>
</rss>
	<script id="freds-yith-pos-exact-weight">
	(function () {
		"use strict";

		if (window.fredsYithExactWeightLoaded) return;

		window.fredsYithExactWeightLoaded = true;

		const products = {"4951":{"shipping_weight":1.7,"product_price":6.78,"price_per_lb":3.99},"4533":{"shipping_weight":4.5,"product_price":31.46,"price_per_lb":6.99},"3595":{"shipping_weight":15,"product_price":74.85,"price_per_lb":4.99},"3591":{"shipping_weight":5,"product_price":36.25,"price_per_lb":7.25},"3588":{"shipping_weight":36,"product_price":186.3,"price_per_lb":5.18},"3581":{"shipping_weight":6,"product_price":34.5,"price_per_lb":5.75},"3570":{"shipping_weight":1.5,"product_price":22.13,"price_per_lb":14.75},"3542":{"shipping_weight":15,"product_price":104.85,"price_per_lb":6.99},"3539":{"shipping_weight":4.5,"product_price":31.46,"price_per_lb":6.99},"3526":{"shipping_weight":1,"product_price":13.75,"price_per_lb":13.75},"3522":{"shipping_weight":2.5,"product_price":34.38,"price_per_lb":13.75},"3518":{"shipping_weight":1,"product_price":18.99,"price_per_lb":18.99},"3514":{"shipping_weight":2.5,"product_price":32.5,"price_per_lb":13},"3511":{"shipping_weight":2,"product_price":26,"price_per_lb":13},"3496":{"shipping_weight":1,"product_price":15,"price_per_lb":15},"3492":{"shipping_weight":1,"product_price":7,"price_per_lb":7},"3488":{"shipping_weight":2.5,"product_price":17.5,"price_per_lb":7},"3476":{"shipping_weight":5,"product_price":10,"price_per_lb":2},"3462":{"shipping_weight":1.5,"product_price":10.5,"price_per_lb":7},"3450":{"shipping_weight":2,"product_price":22.5,"price_per_lb":11.25},"3446":{"shipping_weight":1.5,"product_price":12.5,"price_per_lb":8.33},"3441":{"shipping_weight":0.5,"product_price":15.63,"price_per_lb":31.26},"3391":{"shipping_weight":2,"product_price":17,"price_per_lb":8.5},"3380":{"shipping_weight":8,"product_price":57.6,"price_per_lb":7.2},"3360":{"shipping_weight":10,"product_price":92.8,"price_per_lb":9.28},"3356":{"shipping_weight":0.5,"product_price":10.63,"price_per_lb":21.26},"3352":{"shipping_weight":1,"product_price":22.75,"price_per_lb":22.75},"3348":{"shipping_weight":0.4,"product_price":18.5,"price_per_lb":46.25},"3344":{"shipping_weight":2,"product_price":27,"price_per_lb":13.5},"3339":{"shipping_weight":0.6,"product_price":19.95,"price_per_lb":33.25},"3320":{"shipping_weight":100,"product_price":5,"price_per_lb":0.05},"3280":{"shipping_weight":2.3,"product_price":29.33,"price_per_lb":12.75},"3264":{"shipping_weight":1.85,"product_price":3.5,"price_per_lb":1.89},"3246":{"shipping_weight":1.4,"product_price":12.59,"price_per_lb":8.99},"3241":{"shipping_weight":1.51,"product_price":6.25,"price_per_lb":4.14},"3232":{"shipping_weight":1.05,"product_price":12.59,"price_per_lb":11.99},"3229":{"shipping_weight":5,"product_price":35.96,"price_per_lb":7.19},"3225":{"shipping_weight":1,"product_price":7.99,"price_per_lb":7.99},"3221":{"shipping_weight":1,"product_price":7,"price_per_lb":7},"3210":{"shipping_weight":8.4,"product_price":33.55,"price_per_lb":3.99},"3206":{"shipping_weight":1.4,"product_price":6.99,"price_per_lb":4.99},"3202":{"shipping_weight":1.3,"product_price":13.33,"price_per_lb":10.25},"3184":{"shipping_weight":3.5,"product_price":30.63,"price_per_lb":8.75},"3168":{"shipping_weight":2.5,"product_price":17.5,"price_per_lb":7},"3164":{"shipping_weight":1,"product_price":12.75,"price_per_lb":12.75},"3148":{"shipping_weight":2,"product_price":20.5,"price_per_lb":10.25},"3141":{"shipping_weight":1.5,"product_price":20.63,"price_per_lb":13.75},"3133":{"shipping_weight":3,"product_price":37.5,"price_per_lb":12.5},"3130":{"shipping_weight":10,"product_price":50,"price_per_lb":5},"3110":{"shipping_weight":1.5,"product_price":20.63,"price_per_lb":13.75},"3106":{"shipping_weight":2.5,"product_price":33.13,"price_per_lb":13.25},"3088":{"shipping_weight":20,"product_price":181.25,"price_per_lb":9.06}};
		const currency = "$";
		const weightUnit = "lbs";

		window.fredsYithExactWeights = window.fredsYithExactWeights || {};

		const style = document.createElement("style");
		style.textContent = `
			.freds-yith-exact-weight-box {
				display:flex!important;
				align-items:center!important;
				justify-content:flex-end!important;
				flex-wrap:wrap!important;
				gap:6px!important;
				width:max-content!important;
				margin:8px 10px 10px auto!important;
				padding:8px 10px!important;
				background:#e5f5fa!important;
				border:1px solid #00a0d2!important;
				border-radius:4px!important;
				box-sizing:border-box!important;
			}

			.freds-yith-exact-weight-box strong {
				color:#007cba!important;
				font-size:12px!important;
				font-weight:600!important;
				white-space:nowrap!important;
			}

			.freds-yith-exact-weight-input {
				width:80px!important;
				height:28px!important;
				padding:0 5px!important;
				margin:0!important;
				background:#fff!important;
				border:1px solid #8c8f94!important;
				border-radius:2px!important;
				box-sizing:border-box!important;
			}

			.freds-yith-exact-weight-input.filled {
				border-color:#46b450!important;
				box-shadow:0 0 0 1px #46b450!important;
			}

			.freds-yith-weight-details {
				flex-basis:100%!important;
				color:#444!important;
				font-size:11px!important;
				line-height:1.7!important;
				text-align:right!important;
			}

			.freds-yith-update-weights {
				background:#00a0d2!important;
				color:#fff!important;
				border:0!important;
				cursor:pointer!important;
				font-weight:700!important;
				font-size:13px!important;
				padding:12px 16px!important;
				margin:0 10px 10px auto!important;
			}

			.freds-yith-update-weights:hover {
				background:#007cba!important;
			}
		`;

		document.head.appendChild(style);

		function money(value) {
			return currency + Number(value).toFixed(2);
		}

		function getWeight(productId) {
			return parseFloat(window.fredsYithExactWeights[productId]) || 0;
		}

		function lineTotal(productId) {
			const weight = getWeight(productId);

			if (!weight || !products[productId]) return 0;

			return weight * Number(products[productId].price_per_lb);
		}

		function detailText(productId) {
			const product = products[productId];
			const weight = getWeight(productId);

			let text =
				"Shipping weight: " + product.shipping_weight + " " + weightUnit +
				" &nbsp; | &nbsp; WooCommerce price: " + money(product.product_price) +
				" &nbsp; | &nbsp; Price/lb: " + money(product.price_per_lb);

			if (weight > 0) {
				text +=
					"<br>Exact weight: " + weight.toFixed(2) + " lb" +
					" &nbsp; | &nbsp; New total: " + money(lineTotal(productId));
			}

			return text;
		}

		function getYithApplication() {
			const root = document.getElementById("yith-pos-root");

			if (!root) return null;

			const reactKey = Object.keys(root).find(function (key) {
				return key.indexOf("__reactFiber$") === 0 ||
					key.indexOf("__reactContainer$") === 0;
			});

			if (!reactKey) return null;

			let start = root[reactKey];

			if (start && start.current) {
				start = start.current;
			}

			const stack = [start];
			const visited = new Set();

			while (stack.length) {
				const fiber = stack.pop();

				if (!fiber || visited.has(fiber)) continue;

				visited.add(fiber);

				const instance = fiber.stateNode;

				if (
					instance &&
					typeof instance.editCartItemPrice === "function" &&
					instance.cartManager
				) {
					return instance;
				}

				if (fiber.child) stack.push(fiber.child);
				if (fiber.sibling) stack.push(fiber.sibling);
			}

			return null;
		}

		function addWeightBox(cartItem) {
			const productId = String(cartItem.getAttribute("data-product-id") || "");

			if (!products[productId]) return;
			if (cartItem.querySelector(".freds-yith-exact-weight-box")) return;

			const row = cartItem.querySelector(".cart-item__row");

			if (!row) return;

			const box = document.createElement("div");
			box.className = "freds-yith-exact-weight-box";
			box.innerHTML =
				"<strong>Exact Weight (lbs):</strong>" +
				"<input type='number' min='0' step='0.01' inputmode='decimal' autocomplete='off' class='freds-yith-exact-weight-input'>" +
				"<div class='freds-yith-weight-details'></div>";

			row.insertAdjacentElement("afterend", box);

			const input = box.querySelector(".freds-yith-exact-weight-input");
			const details = box.querySelector(".freds-yith-weight-details");
			const savedWeight = getWeight(productId);

			if (savedWeight > 0) {
				input.value = savedWeight.toFixed(2);
				input.classList.add("filled");
			}

			details.innerHTML = detailText(productId);

			input.addEventListener("input", function () {
				const weight = parseFloat(input.value);

				if (!weight || weight <= 0) {
					delete window.fredsYithExactWeights[productId];
					input.classList.remove("filled");
				} else {
					window.fredsYithExactWeights[productId] = weight;
					input.classList.add("filled");
				}

				details.innerHTML = detailText(productId);
			});
		}

		function addUpdateButton(cart) {
			const actions = cart.querySelector(".cart-actions");

			if (!actions || actions.querySelector(".freds-yith-update-weights")) {
				return;
			}

			const button = document.createElement("button");
			button.type = "button";
			button.className = "freds-yith-update-weights";
			button.textContent = "UPDATE WEIGHTS & PRICES";

			const pay = actions.querySelector(".cart-action--pay");

			if (pay) {
				actions.insertBefore(button, pay);
			} else {
				actions.appendChild(button);
			}
		}

		function scanCart() {
			document.querySelectorAll(".yith-pos-cart").forEach(function (cart) {
				cart.querySelectorAll(
					".cart-item[data-product-id]"
				).forEach(addWeightBox);

				addUpdateButton(cart);
			});
		}

		function updateYithCartPrices() {
			const app = getYithApplication();

			if (!app) {
				alert("YITH POS is still loading. Please click Update again.");
				return false;
			}

			let updated = 0;

			document.querySelectorAll(
				".yith-pos-cart .cart-item[data-product-id]"
			).forEach(function (cartItem) {
				const productId = String(
					cartItem.getAttribute("data-product-id") || ""
				);

				const cartItemKey = String(
					cartItem.getAttribute("data-cart-item-key") || ""
				);

				const weight = getWeight(productId);

				if (!cartItemKey || !products[productId] || weight <= 0) {
					return;
				}

				const quantityInput = cartItem.querySelector(".quantity__qty");
				const quantity = quantityInput
					? parseFloat(quantityInput.value) || 1
					: 1;

				app.editCartItemPrice(
					cartItemKey,
					lineTotal(productId) / quantity,
					false
				);

				updated++;
			});

			return updated > 0;
		}

		document.addEventListener("click", function (event) {
			const button = event.target.closest(".freds-yith-update-weights");

			if (!button) return;

			event.preventDefault();

			if (updateYithCartPrices()) {
				button.textContent = "PRICES UPDATED";

				setTimeout(function () {
					button.textContent = "UPDATE WEIGHTS & PRICES";
				}, 1600);
			}
		});

		function registerYithOrderFilter() {
			if (
				!window.wp ||
				!window.wp.hooks ||
				typeof window.wp.hooks.addFilter !== "function"
			) {
				return;
			}

			window.wp.hooks.addFilter(
				"yith_pos_cart_generated_order",
				"freds-farm/exact-weight",
				function (order) {
					if (!order || !Array.isArray(order.line_items)) {
						return order;
					}

					order.line_items.forEach(function (item) {
						const productId = String(
							item.variation_id || item.product_id || ""
						);

						const weight = getWeight(productId);

						if (!products[productId] || weight <= 0) return;

						const product = products[productId];

						item.meta_data = Array.isArray(item.meta_data)
							? item.meta_data
							: [];

						item.meta_data = item.meta_data.filter(function (meta) {
							return ![
								"Actual Weight",
								"Shipping Weight",
								"Price Per Unit"
							].includes(meta.key);
						});

						item.meta_data.push(
							{
								key: "Actual Weight",
								value: weight.toFixed(2) + " lb"
							},
							{
								key: "Shipping Weight",
								value: product.shipping_weight + " " + weightUnit
							},
							{
								key: "Price Per Unit",
								value: money(product.price_per_lb) + " / lb"
							}
						);
					});

					return order;
				}
			);
		}

		registerYithOrderFilter();

		new MutationObserver(scanCart).observe(document.documentElement, {
			childList: true,
			subtree: true
		});

		setInterval(scanCart, 300);
		scanCart();
	})();
	</script>
	