PageSourceSearch

https://briggsbeardco.com/_static/??-eJytz0sOwjAMBNALkYYiRGGBOEvip…4tEPx1jiWEQbQuS07PlQ9jXzW5ZbzerZn0FP8ucPw==

js briggsbeardco.com collected 2026-10-06 12:48:45 UTC 69,661 bytes, 960 lines download raw bytes

1/**
2 * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved
3 *
4 * This source code is licensed under the license found in the
5 * LICENSE file in the root directory of this source tree.
6 *
7 * @package FacebookCommerce
8 */
9
10/**
11 * Facebook for WooCommerce - Signals helper.
12 *
13 * Exposes `window.fbwcsignal` so a CMP or theme integration can hold or
14 * release signal delivery while keeping the plugin loaded.
15 *
16 * @package FacebookCommerce
17 */
18( function () {
19	'use strict';
20
21	var COOKIE_NAME = 'wc_facebook_signals_state';
22	var STATE_ACTIVE = 'active';
23	var STATE_HELD = 'held';
24
25	/**
26	 * Minimal cookie setter.
27	 *
28	 * @param {string} name
29	 * @param {string} value
30	 * @param {number} days
31	 */
32	function setCookie( name, value, days ) {
33		var d = new Date();
34		d.setTime( d.getTime() + days * 86400000 );
35		document.cookie =
36			name +
37			'=' +
38			encodeURIComponent( value ) +
39			';expires=' +
40			d.toUTCString() +
41			';path=/;SameSite=Lax';
42	}
43
44	/**
45	 * Read a cookie value.
46	 *
47	 * @param {string} name
48	 * @return {string|null}
49	 */
50	function getCookie( name ) {
51		var match = document.cookie.match(
52			new RegExp( '(?:^|;\\s*)' + name + '=([^;]*)' )
53		);
54		return match ? decodeURIComponent( match[ 1 ] ) : null;
55	}
56
57	/**
58	 * Update the stored signal state and sync it to PHP.
59	 *
60	 * @param {string} state `active` or `held`.
61	 * @return {Promise} Resolves with the backend response.
62	 */
63	function updateState( state ) {
64		setCookie( COOKIE_NAME, state, 365 );
65
66		var params = wc_facebook_signals_params; // localized by PHP.
67
68		return new Promise( function ( resolve, reject ) {
69			var xhr = new XMLHttpRequest();
70			xhr.open( 'POST', params.ajax_url, true );
71			xhr.setRequestHeader(
72				'Content-Type',
73				'application/x-www-form-urlencoded; charset=UTF-8'
74			);
75			xhr.onload = function () {
76				if ( xhr.status >= 200 && xhr.status < 300 ) {
77					try {
78						var data = JSON.parse( xhr.responseText );
79						resolve( data );
80					} catch ( e ) {
81						reject( e );
82					}
83				} else {
84					reject( new Error( 'AJAX failed: ' + xhr.status ) );
85				}
86			};
87			xhr.onerror = function () {
88				reject( new Error( 'Network error' ) );
89			};
90			xhr.send(
91				'action=' +
92					encodeURIComponent( params.action ) +
93					'&security=' +
94					encodeURIComponent( params.nonce ) +
95					'&state=' +
96					encodeURIComponent( state )
97			);
98		} );
99	}
100
101	/**
102	 * Hold browser/server signals for subsequent requests.
103	 *
104	 * @return {Promise}
105	 */
106	function hold() {
107		return updateState( STATE_HELD );
108	}
109
110	/**
111	 * Release held signals and flush any queued browser events.
112	 *
113	 * @return {Promise}
114	 */
115	function release() {
116		return updateState( STATE_ACTIVE ).then( function ( data ) {
117			if (
118				window.FacebookSignals &&
119				window.FacebookSignals._held
120			) {
121				return window.FacebookSignals.release().then(
122					function () {
123						return data;
124					},
125					function () {
126						return data;
127					}
128				);
129			}
130
131			return data;
132		} );
133	}
134
135	/**
136	 * Read the current signal state from the cookie.
137	 *
138	 * @return {string|null} `active`, `held`, or `null`.
139	 */
140	function getState() {
141		var val = getCookie( COOKIE_NAME );
142		if ( val === null ) {
143			return null;
144		}
145
146		return val === STATE_ACTIVE ? STATE_ACTIVE : STATE_HELD;
147	}
148
149	window.fbwcsignal = window.fbwcsignal || {};
150	window.fbwcsignal.hold = hold;
151	window.fbwcsignal.release = release;
152	window.fbwcsignal.getState = getState;
153} )();
154;
155var mailchimp,mailchimp_cart,mailchimp_billing_email,mailchimp_username_email,mailchimp_registration_email,mailchimp_submitted_email=false,mailchimpReady=function(a){/in/.test(document.readyState)?setTimeout(()=>{mailchimpReady(a)},9):a()};function mailchimpHandleBillingEmail(selector){try{if(!mailchimp_public_data.allowed_to_set_cookies)return;if(mailchimp_public_data.disable_carts)return;var subscribed=document.querySelector("#mailchimp_woocommerce_newsletter");if(!subscribed)subscribed=document.querySelector("#subscribe-to-newsletter");if(!selector)selector="#billing_email";var a=document.querySelector(selector);var b=void 0!==a?a.value:"";if(!mailchimp_cart.valueEmail(b)||mailchimp_submitted_email===b){return false}mailchimp_cart.setEmail(b);var c=mailchimp_public_data.ajax_url+"?action=mailchimp_set_user_by_email";var d=new XMLHttpRequest;d.open("POST",c,!0);d.onload=function(){var successful=d.status>=200&&d.status<400;var msg=successful?"mailchimp.handle_billing_email.request.success":"mailchimp.handle_billing_email.request.error";if(successful){mailchimp_submitted_email=b}console.log(msg,d.responseText)};d.onerror=function(){console.log("mailchimp.handle_billing_email.request.error",d.responseText)};d.setRequestHeader("Content-Type","application/x-www-form-urlencoded");d.setRequestHeader("Accept","application/json");d.send("email="+b+"&mc_language="+mailchimp_public_data.language+"&subscribed="+(subscribed&&subscribed.checked?"1":"0"));return true}catch(a){console.log("mailchimp.handle_billing_email.error",a);mailchimp_submitted_email=!1}}!function(){"use strict";function mailchimpCart(){this.email_types="input[type=email]";this.regex_email=/^([A-Za-z0-9_+\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;this.current_email=null;this.previous_email=null;this.expireUser=function(){this.current_email=null;
155if(!mailchimp_public_data.allowed_to_set_cookies)return;mailchimp.storage.expire("mailchimp.cart.current_email")};this.expireSaved=function(){if(!mailchimp_public_data.allowed_to_set_cookies)return;mailchimp.storage.expire("mailchimp.cart.items")};this.setEmail=function(a){if(!mailchimp_public_data.allowed_to_set_cookies)return;if(!this.valueEmail(a))return false;this.setPreviousEmail(this.getEmail());mailchimp.storage.set("mailchimp.cart.current_email",this.current_email=a)};this.getEmail=function(){if(!mailchimp_public_data.allowed_to_set_cookies)return;if(this.current_email)return this.current_email;var a=mailchimp.storage.get("mailchimp.cart.current_email",!1);if(!a||!this.valueEmail(a))return false;return this.current_email=a};this.setPreviousEmail=function(a){if(!mailchimp_public_data.allowed_to_set_cookies)return;if(!this.valueEmail(a))return false;mailchimp.storage.set("mailchimp.cart.previous_email",this.previous_email=a)};this.valueEmail=function(a){return this.regex_email.test(a)};return this}var g={extend:function(a,b){for(var c in b||{})b.hasOwnProperty(c)&&(a[c]=b[c]);return a},getQueryStringVars:function(){var a=window.location.search||"",b=[],c={};if(a=a.substr(1),a.length){b=a.split("&");for(var d in b){var e=b[d];if("string"==typeof e){var f=e.split("="),g=f[0],h=f[1];g.length&&("undefined"==typeof c[g]&&(c[g]=[]),c[g].push(h))}}}return c},unEscape:function(a){return decodeURIComponent(a)},escape:function(a){return encodeURIComponent(a)},createDate:function(a,b){a||(a=0);var c=new Date,d=b?c.getDate()-a:c.getDate()+a;return c.setDate(d),c},arrayUnique:function(a){for(var b=a.concat(),c=0;c<b.length;++c)for(var d=c+1;d<b.length;++d)b[c]===b[d]&&b.splice(d,1);return b},objectCombineUnique:function(a){for(var b=a[0],c=1;c<a.length;c++){var d=a[c];for(var e in d)b[e]=d[e]}return b}},h=function(a,b){var c=function(a,b,d){return 1===arguments.length?c.get(a):c.set(a,b,d)};return c.get=function(b,d){return a.cookie!==c._cacheString&&c._populateCache(),void 0==c._cache[b]?d:c._cache[b]},c.defaults={path:"/",secure:true,samesite:"strict"},c.set=function(d,e,f){switch(f={path:f&&f.path||c.defaults.path,domain:f&&f.domain||c.defaults.domain,expires:f&&f.expires||c.defaults.expires,secure:f&&f.secure!==b?f.secure:c.defaults.secure,samesite:f&&f.samesite||c.defaults.samesite},e===b&&(f.expires=-1),typeof f.expires){case"number":f.expires=new Date((new Date).getTime()+1e3*f.expires);break;case"string":f.expires=new Date(f.expires)}return d=encodeURIComponent(d)+"="+(e+"").replace(/[^!#-+\--:<-\[\]-~]/g,encodeURIComponent),d+=f.path?";path="+f.path:"",d+=f.domain?";domain="+f.domain:"",d+=f.expires?";expires="+f.expires.toGMTString():"",d+=f.secure?";secure":"",d+=f.samesite?";samesite="+f.samesite:"",a.cookie=d,c},c.expire=function(a,d){return c.set(a,b,d)},c._populateCache=function(){c._cache={};try{c._cacheString=a.cookie;for(var d=c._cacheString.split("; "),e=0;e<d.length;e++){var f=d[e].indexOf("="),g=decodeURIComponent(d[e].substr(0,f)),f=decodeURIComponent(d[e].substr(f+1));c._cache[g]===b&&(c._cache[g]=f)}}catch(a){console.log(a)}},c.enabled=function(){var a="1"===c.set("cookies.js","1").get("cookies.js");return c.expire("cookies.js"),a}(),c}(document);mailchimp={storage:h,utils:g};mailchimp_cart=new mailchimpCart}();mailchimpReady(function(){if(!mailchimp_public_data.allowed_to_set_cookies)return;if(mailchimp_public_data.disable_carts)return;if(void 0===a){var a={site_url:document.location.origin,defaulted:!0,ajax_url:document.location.origin+"/wp-admin?admin-ajax.php"}}try{var b=mailchimp.utils.getQueryStringVars();var subscribed=document.querySelector("#mailchimp_woocommerce_newsletter");var blockSubscribed=document.querySelector("#subscribe-to-newsletter");if(subscribed){subscribed.onchange=function(){mailchimp_submitted_email=null;mailchimpHandleBillingEmail("#billing_email")}}else if(blockSubscribed){blockSubscribed.onchange=function(){mailchimp_submitted_email=null;mailchimpHandleBillingEmail('#contact-fields input[type="email"]')}}mailchimp_username_email=document.querySelector("#username");mailchimp_billing_email=document.querySelector("#billing_email");mailchimp_registration_email=document.querySelector("#reg_email");var mailchimp_username_email_block=document.querySelector('#contact-fields input[type="email"]');if(mailchimp_billing_email){mailchimp_billing_email.onblur=function(){mailchimpHandleBillingEmail("#billing_email")};mailchimp_billing_email.onfocus=function(){mailchimpHandleBillingEmail("#billing_email")}}if(mailchimp_username_email){mailchimp_username_email.onblur=function(){mailchimpHandleBillingEmail("#username")};mailchimp_username_email.onfocus=function(){mailchimpHandleBillingEmail("#username")}}if(mailchimp_registration_email){mailchimp_registration_email.onblur=function(){mailchimpHandleBillingEmail("#reg_email")};mailchimp_registration_email.onfocus=function(){mailchimpHandleBillingEmail("#reg_email")}}if(mailchimp_username_email_block){mailchimp_username_email_block.onblur
155=function(){mailchimpHandleBillingEmail('#contact-fields input[type="email"]')};mailchimp_username_email_block.onfocus=function(){mailchimpHandleBillingEmail('#contact-fields input[type="email"]')};var typingTimer;mailchimp_username_email_block.addEventListener("keyup",function(){typingTimer&&clearTimeout(typingTimer);typingTimer=setTimeout(function(){if(mailchimp_cart.valueEmail(mailchimp_username_email_block.value)){mailchimpHandleBillingEmail('#contact-fields input[type="email"]')}},2e3)});mailchimp_username_email_block.addEventListener("keydown",function(){typingTimer&&clearTimeout(typingTimer)})}}catch(e){console.log("mailchimp ready error",e)}});;
156/**
157 * Mailchimp Pixel Tracking for WooCommerce
158 *
159 * Listens for WooCommerce events and sends them to the Mailchimp Pixel SDK.
160 * Only tracks if window.$mcSite.pixel.api is available (MC.js loaded).
161 *
162 * @package MailChimp_WooCommerce
163 * @since 1.0.0
164 */
165
166(function ($) {
167	'use strict';
168
169	/**
170	 * Default config for waitForPixelSDK exponential backoff
171	 */
172	const PIXEL_SDK_WAIT_CONFIG = {
173		initialDelayMs: 100,
174		maxDelayMs: 5000,
175		maxAttempts: 20
176	};
177
178	/**
179	 * How long PRODUCT_VIEWED waits on a variable product for WooCommerce to resolve a
180	 * default or deep-linked variation before settling for the parent.
181	 */
182	const VARIATION_RESOLVE_WAIT_MS = 1200;
183
184	/**
185	 * Settle time after a form interaction before re-reading the variation id input.
186	 * The blocks form writes it through the Interactivity API on the next render.
187	 */
188	const VARIATION_INPUT_SETTLE_MS = 150;
189
190	/**
191	 * Mailchimp Pixel Tracking Handler
192	 */
193	const MailchimpPixelTracking = {
194		// Debounce timers for cart fetch calls
195		_atcTimer: null,
196		_rfcTimer: null,
197		_atcFetching: false,
198		_rfcFetching: false,
199		// PRODUCT_VIEWED state for a variable product being resolved to a variation
200		_viewTimer: null,
201		_viewedParent: null,
202		_viewedKeys: null,
203		_inputTimer: null,
204
205		/**
206		 * Initialize tracking.
207		 * Waits for Pixel SDK with exponential backoff, then sends page events and attaches handlers.
208		 */
209		init: function () {
210			const self = this;
211
212			// Registered before the SDK wait on purpose: that wait runs for seconds, and an
213			// integration that resolves its variation early must not race us.
214			window.mcPixel = window.mcPixel || {};
215			window.mcPixel.setVariation = function (variationId, product) {
216				self.setVariation(variationId, product);
217			};
218			document.addEventListener('mailchimp_woocommerce_set_variation', function (event) {
219				const detail = event.detail || {};
220				self.setVariation(detail.variationId, detail.product);
221			});
222
223			this.waitForPixelSDK(PIXEL_SDK_WAIT_CONFIG)
224				.then(function () {
225					self.sendPageEvents();
226					self.attachCartEventListeners();
227					self.interceptStoreApiRequests();
228					console.log('Mailchimp Pixel SDK loaded.');
229				})
230				.catch(function (e) {
231					console.log('Mailchimp Pixel SDK not loaded within timeout. Tracking disabled.', e);
232				});
233		},
234
235		/**
236		 * Wait for Pixel SDK to become available using exponential backoff.
237		 *
238		 * @param {Object} options Optional config
239		 * @param {number} options.initialDelayMs First delay in ms (default 100)
240		 * @param {number} options.maxDelayMs Cap on delay in ms (default 5000)
241		 * @param {number} options.maxAttempts Max number of attempts (default 20)
242		 * @return {Promise<void>} Resolves when SDK is available, rejects after maxAttempts
243		 */
244		waitForPixelSDK: function (options) {
245			const config = options || {};
246			const initialDelayMs = config.initialDelayMs !== undefined ? config.initialDelayMs : PIXEL_SDK_WAIT_CONFIG.initialDelayMs;
247			const maxDelayMs = config.maxDelayMs !== undefined ? config.maxDelayMs : PIXEL_SDK_WAIT_CONFIG.maxDelayMs;
248			const maxAttempts = config.maxAttempts !== undefined ? config.maxAttempts : PIXEL_SDK_WAIT_CONFIG.maxAttempts;
249
250			function isSDKReady() {
251				return typeof window.$mcSite !== 'undefined' &&
252					window.$mcSite.pixel &&
253					typeof window.$mcSite.pixel.api !== 'undefined' &&
254					typeof window.$mcSite.pixel.api.track === 'function' &&
255					window.$mcSite.pixel.installed === true;
256			}
257
258			return new Promise(function (resolve, reject) {
259				let attempt = 0;
260
261				function scheduleCheck() {
262					if (isSDKReady()) {
263						// FIXME: temporary wait to accommodate for not being able to detect ready state
264						console.warn('Pixel SDK - remediation for pixel ready issue')
265						setTimeout(function () {
266							resolve();
267						}, 1000);
268						return;
269					}
270					if (attempt >= maxAttempts) {
271						reject(new Error('Pixel SDK not available'));
272						return;
273					}
274
275					const delay = Math.min(
276						initialDelayMs * Math.pow(2, attempt),
277						maxDelayMs
278					);
279					attempt += 1;
280
281					setTimeout(scheduleCheck, delay);
282				}
283
284				scheduleCheck();
285			});
286		},
287
288		/**
289		 * Synchronous check if Pixel SDK is available (e.g. before each track call).
290		 *
291		 * @return {boolean} True if SDK is available
292		 */
293		isPixelSDKReady: function () {
294			return typeof window.$mcSite !== 'undefined' &&
295				window.$mcSite.pixel &&
296				typeof window.$mcSite.pixel.api !== 'undefined' &&
297				typeof window.$mcSite.pixel.api.track === 'function';
298		},
299
300		/**
301		 * Get cart ID from window.mcPixel
302		 *
303		 * @return {string} Cart ID
304		 */
305		getCartId: function () {
306			return window.mcPixel && window.mcPixel.cartId ? window.mcPixel.cartId : '';
307		},
308
309		/**
310		 * Get the REST API base URL from the localized config.
311		 *
312		 * @return {string} REST base URL
313		 */
314		getRestBase: function () {
315			return (window.mcPixelConfig && window.mcPixelConfig.restBase) || '/wp-json/mailchimp-for-woocommerce/v1/';
316		},
317
318		/**
319		 * Send page-level events based on pre-populated data
320		 */
321		sendPageEvents: function () {
322			if (!window.mcPixel || !window.mcPixel.data) {
323				return;
324			}
325
326			const data = window.mcPixel.data;
327			const events = data.events || [];
328
329			// Send events based on what was set by PHP
330			events.forEach((eventType) => {
331				//console.log('Mailchimp Pixel: Sending event', eventType, data);
332				switch (eventType) {
333					case 'PRODUCT_ADDED_TO_CART':
334						if (data.added_to_cart) {
335							var atcItems = Array.isArray(data.added_to_cart) ? data.added_to_cart : [data.added_to_cart];
336							for (var ai = 0; ai < atcItems.length; ai++) {
337								this.sendProductAddedToCart(atcItems[ai]);
338							}
339						}
340						break;
341					case 'PRODUCT_REMOVED_FROM_CART':
342						if (data.removed_from_cart) {
343							var rfcItems = Array.isArray(data.removed_from_cart) ? data.removed_from_cart : [data.removed_from_cart];
344							for (var ri = 0; ri < rfcItems.length; ri++) {
345								this.sendProductRemovedFromCart(rfcItems[ri]);
346							}
347						}
348						break;
349					case 'IDENTITY':
350						if (data.identity && data.identity.email) {
351							this.sendIdentityEvent(data.identity.email);
352						}
353						break;
354					case 'PRODUCT_VIEWED':
355						// Skip if an add-to-cart or remove-from-cart already fired for the same product.
356						// The cart action implies the view, so firing both is redundant.
357						if (data.product) {
358							const viewedId = String(data.product.productId || data.product.id);
359							const atcArr = Array.isArray(data.added_to_cart) ? data.added_to_cart : (data.added_to_cart ? [data.added_to_cart] : []);
360							const rfcArr = Array.isArray(data.removed_from_cart) ? data.removed_from_cart : (data.removed_from_cart ? [data.removed_from_cart] : []);
361							const atcMatch = atcArr.some(function (p) { return String(p.productId || p.id
361) === viewedId; });
362							const rfcMatch = rfcArr.some(function (p) { return String(p.productId || p.id) === viewedId; });
363
364							if (
365								(events.includes('PRODUCT_ADDED_TO_CART') && atcMatch) ||
366								(events.includes('PRODUCT_REMOVED_FROM_CART') && rfcMatch)
367							) {
368								//console.log('Mailchimp Pixel: Skipping PRODUCT_VIEWED (superseded by cart event for same product)');
369								break;
370							}
371							this.trackProductViewed(data.product);
372						}
373						break;
374					case 'CART_VIEWED':
375						if (data.cart) {
376							this.sendCartViewed(data.cart);
377						}
378						break;
379					case 'CHECKOUT_STARTED':
380						if (data.checkout) {
381							this.sendCheckoutStarted(data.checkout);
382							window.mcPixel._handled.checkout = true;
383						}
384						break;
385					case 'PURCHASED':
386						if (data.order) {
387							this.sendPurchased(data.order);
388						}
389						break;
390					case 'PRODUCT_CATEGORY_VIEWED':
391						if (data.category) {
392							this.sendCategoryViewed(data.category);
393							window.mcPixel._handled.category = true;
394						}
395						break;
396					case 'SEARCH_SUBMITTED':
397						if (data.search) {
398							this.sendSearchSubmitted(data.search);
399							window.mcPixel._handled.search = true;
400						}
401						break;
402				}
403			});
404		},
405
406		/**
407		 * PRODUCT_VIEWED for the single product page.
408		 *
409		 * A variable product renders before the customer has picked anything, so the
410		 * server-side payload only knows the parent. WooCommerce announces the chosen
411		 * variation on the .variations_form with found_variation, so we hold the event
412		 * until that fires - or until it's clear nothing is going to resolve.
413		 *
414		 * @param {Object} product Parent product data from PHP
415		 */
416		trackProductViewed: function (product) {
417			const self = this;
418			this._viewedKeys = this._viewedKeys || {};
419
420			// not a variable product - the server already knew everything there is to know
421			if (!window.mcPixel.data.product_variations) {
422				this.sendProductViewedOnce(product, product.id);
423				return;
424			}
425
426			this._viewedParent = product;
427			this.attachVariationListeners();
428
429			const resolved = this.currentVariationId();
430			if (resolved) {
431				this.sendProductViewedOnce(this.resolveVariationPayload({ variation_id: resolved }), resolved);
432				return;
433			}
434
435			// nothing picked yet, but a default variation or ?attribute_* deep link still
436			// resolves a tick after the form initialises - give WooCommerce that tick
437			// before settling for the parent
438			this._viewTimer = setTimeout(function () {
439				self.sendProductViewedOnce(product, product.id);
440			}, VARIATION_RESOLVE_WAIT_MS);
441		},
442
443		/**
444		 * One PRODUCT_VIEWED per thing actually viewed: the parent, then each variation
445		 * the customer lands on. Switching back to an earlier pick sends nothing, so
446		 * clicking through a dropdown doesn't turn into a burst of events.
447		 *
448		 * @param {Object} product Product data to send
449		 * @param {string} key Dedup key - the variation id, or the parent id
450		 */
451		sendProductViewedOnce: function (product, key) {
452			clearTimeout(this._viewTimer);
453			if (this._viewedKeys[key]) {
454				return;
455			}
456			// only claim the key once it actually went out - an integration can call
457			// setVariation() before the SDK is up, and that must not count as sent
458			if (this.sendProductViewed(product)) {
459				this._viewedKeys[key] = true;
460			}
461		},
462
463		/**
464		 * Public API for themes, swatch plugins and custom templates.
465		 *
466		 * Detection covers what WooCommerce itself ships: the classic variations form,
467		 * and the hidden variation_id input the block form maintains. Anything else - a
468		 * custom swatch UI, a page builder widget, a headless front end - can announce
469		 * the selection itself, either directly:
470		 *
471		 *     window.mcPixel.setVariation( 123 );
472		 *
473		 * or, when it cannot reach our global, by dispatching an event:
474		 *
475		 *     document.dispatchEvent( new CustomEvent(
476		 *         'mailchimp_woocommerce_set_variation',
477		 *         { detail: { variationId: 123 } }
478		 *     ) );
479		 *
480		 * Pass a second argument to supply the whole product payload instead of letting
481		 * us resolve it. Sending the same variation twice is a no-op either way.
482		 *
483		 * @param {number|string} variationId Variation being viewed
484		 * @param {Object} [product] Optional product payload, sent as-is
485		 */
486		setVariation: function (variationId, product) {
487			const id = String(variationId || '');
488
489			if (!id || id === '0') {
490				return;
491			}
492			// an integration may beat PRODUCT_VIEWED to it - nothing to dedup against yet
493			this._viewedKeys = this._viewedKeys || {};
494			this.sendProductViewedOnce(
495				product || this.resolveVariationPayload({ variation_id: id }),
496				id
497			);
498		},
499
500		/**
501		 * found_variation is WooCommerce's own signal that every attribute is chosen and
502		 * a variation matched. Bound delegated off body so a form rendered late - blocks,
503		 * lazy themes, quick-view modals - is still covered.
504		 */
505		attachVariationListeners: function () {
506			const self = this;
507
508			$(document.body).on('found_variation', '.variations_form', function (event, variation) {
509				if (!variation || !variation.variation_id) {
510					return;
511				}
512				self.sendProductViewedOnce(
513					self.resolveVariationPayload(variation),
514					String(variation.variation_id)
515				);
516			});
517
518			// covers the block form, which fires no event at all
519			this.watchVariationInput();
520		},
521
522		/**
523		 * WooCommerce often resolves a variation before we boot - the SDK wait runs over a
524		 * second, and the form fires found_variation during its own init. The form parks
525		 * the answer in its variation_id input, so read that rather than assuming we were
526		 * listening at the right moment.
527		 *
528		 * @return {string} Resolved variation id, or '' when nothing is selected
529		 */
530		currentVariationId: function () {
531			// Classic puts this in .variations_form, blocks puts it in .single_variation_wrap
532			// inside its own form element - so key off the input, not either wrapper.
533			const inputs = document.querySelectorAll('form input[name="variation_id"], form input.variation_id');
534
535			for (let i = 0; i < inputs.length; i++) {
536				const id = parseInt(inputs[i].value, 10);
537				if (id > 0) {
538					return String(id);
539				}
540			}
541
542			return '';
543		},
544
545		/**
546		 * Catch variation changes on templates that announce nothing.
547		 *
548		 * The blocks "Add to Cart with Options" form runs on the Interactivity API and
549		 * fires no jQuery event and no CustomEvent, so found_variation never arrives.
550		 * What it does keep is the hidden variation_id input - WooCommerce renders it
551		 * specifically so "extensions or Express Payment methods" can read the form
552		 * state - so re-read that whenever the customer touches the form. Its value is
553		 * set as a property by the Interactivity API, which a MutationObserver would
554		 * never see, hence driving off the interaction instead.
555		 */
556		watchVariationInput: function () {
557			const self = this;
558
559			const recheck = function (event) {
560				// blocks renders its attribute options as buttons, so change alone misses them
561				if (!event.target || !event.target.closest || !event.target.closest('form')) {
562					return;
563				}
564				clearTimeout(self._inputTimer);
565				self._inputTimer = setTimeout(function () {
566					const id = self.currentVariationId();
567					if (id) {
568						self.sendProductViewedOnce(self.resolveVariationPayload({ variation_id: id }), id);
569					}
570				}, VARIATION_INPUT_SETTLE_MS);
571			};
572
573			document.addEventListener('change', recheck, true);
574			document.addEventListener('click', recheck, true);
575		},
576
577		/**
578		 * Turn a resolved variation into the product shape the pixel expects.
579		 *
580		 * Prefer the server-rendered variation: it carries the sku, categories and
581		 * parent-derived permalink that the event payload has no idea about, and it
582		 * matches what add-to-cart sends for the same variation. Past the pre-render cap
583		 * there is nothing to look up, so patch the parent with what the event does give
584		 * us - the id being right matters more than the rest.
585		 *
586		 * @param {Object} variation found_variation payload (or just {variation_id})
587		 * @return {Object} Product data for the pixel
588		 */
589		resolveVariationPayload: function (variation) {
590			const parent = this._viewedParent || {};
591			const id = String(variation.variation_id);
592			const rendered = window.mcPixel.data.product_variations[id];
593
594			if (rendered) {
595				return rendered;
596			}
597
598			const patched = $.extend({}, parent, {
599				id: id,
600				productId: parent.productId || parent.id || id
601			});
602			if (variation.sku) {
603				patched.sku = variation.sku;
604			}
605			if (variation.display_price !== undefined && variation.display_price !== null) {
606				patched.price = parseFloat(variation.display_price);
607			}
608			if (variation.image && variation.image.full_src) {
609				patched.imageUrl = variation.image.full_src;
610			}
611
612			return patched;
613		},
614
615		/**
616		 * Send PRODUCT_VIEWED event
617		 *
618		 * @param {Object} product Product data
619		 */
620		sendProductViewed: function (product) {
621			if (!this.isPixelSDKReady()) return false;
622
623			window.$mcSite.pixel.api.track('PRODUCT_VIEWED', {
624				product: product
625			}).catch((error) => {
626				console.error('Mailchimp Pixel: Error tracking PRODUCT_VIEWED', error);
627			});
628
629			return true;
630		},
631
632		/**
633		 * Send PRODUCT_ADDED_TO_CART event
634		 *
635		 * @param {Object} product Product data
636		 */
637		sendProductAddedToCart: function (product) {
638			if (!this.isPixelSDKReady()) return;
639
640			const cartId = this.getCartId();
641			const eventData = {
642				cartId: cartId,
643				product: {
644					item: {
645						id: product.id,
646						productId: product.productId,
647						title: product.title,
648						price: product.price,
649						currency: product.currency,
650						sku: product.sku || ''
651					},
652					quantity: product.quantity || 1,
653					price: product.price * (product.quantity || 1),
654					currency: product.currency
655				}
656			};
657
658			window.$mcSite.pixel.api.track('PRODUCT_ADDED_TO_CART', eventData).catch((error) => {
659				console.error('Mailchimp Pixel: Error tracking PRODUCT_ADDED_TO_CART', error);
660			});
661		},
662
663		/**
664		 * Send PRODUCT_REMOVED_FROM_CART event
665		 *
666		 * @param {Object} product Product data
667		 */
668		sendProductRemovedFromCart: function (product) {
669			if (!this.isPixelSDKReady()) return;
670
671			const cartId = this.getCartId();
672			const eventData = {
673				cartId: cartId,
674				product: {
675					item: {
676						id: product.id,
677						productId: product.productId,
678						title: product.title,
679						price: product.price,
680						currency: product.currency,
681						sku: product.sku || ''
682					},
683					quantity: product.quantity || 1,
684					price: product.price * (product.quantity || 1),
685					currency: product.currency
686				}
687			};
688
689			window.$mcSite.pixel.api.track('PRODUCT_REMOVED_FROM_CART', eventData).catch((error) => {
690				console.error('Mailchimp Pixel: Error tracking PRODUCT_REMOVED_FROM_CART', error);
691			});
692		},
693
694		/**
695		 * Send CART_VIEWED event
696		 *
697		 * @param {Object} cart Cart data
698		 */
699		sendCartViewed: function (cart) {
700			if (!this.isPixelSDKReady()) return;
701
702			window.$mcSite.pixel.api.track('CART_VIEWED', {
703				cart: cart
704			}).catch((error) => {
705				console.error('Mailchimp Pixel: Error tracking CART_VIEWED', error);
706			});
707		},
708
709		/**
710		 * Send CHECKOUT_STARTED event
711		 *
712		 * @param {Object} checkout Checkout data
713		 */
714		sendCheckoutStarted: function (checkout) {
715			if (!this.isPixelSDKReady()) return;
716
717			window.$mcSite.pixel.api.track('CHECKOUT_STARTED', {
718				checkout: checkout
719			}).catch((error) => {
720				console.error('Mailchimp Pixel: Error tracking CHECKOUT_STARTED', error);
721			});
722		},
723
724		sendIdentityEvent: function(email) {
725			if (!this.isPixelSDKReady()) return;
726			window.$mcSite.pixel.api.identify({
727				type: 'EMAIL',
728				value: email
729			});
730		},
731
732		/**
733		 * Send PURCHASED event
734		 *
735		 * @param {Object} order Order data
736		 */
737		sendPurchased: function (order) {
738			if (!this.isPixelSDKReady()) return;
739
740			window.$mcSite.pixel.api.track('PURCHASED', {
741				order: order
742			}).catch((error) => {
743				console.error('Mailchimp Pixel: Error tracking PURCHASED', error);
744			});
745		},
746
747		/**
748		 * Send PRODUCT_CATEGORY_VIEWED event
749		 *
750		 * @param {Object} category Category data
751		 */
752		sendCategoryViewed: function (category) {
753			if (!this.isPixelSDKReady()) return;
754
755			window.$mcSite.pixel.api.track('PRODUCT_CATEGORY_VIEWED', category).catch((error) => {
756				console.error('Mailchimp Pixel: Error tracking PRODUCT_CATEGORY_VIEWED', error);
757			});
758		},
759
760		/**
761		 * Send SEARCH_SUBMITTED event
762		 *
763		 * @param {Object} search Search data
764		 */
765		sendSearchSubmitted: function (search) {
766			if (!this.isPixelSDKReady()) return;
767
768			window.$mcSite.pixel.api.track('SEARCH_SUBMITTED', search).catch((error) => {
769				console.error('Mailchimp Pixel: Error tracking SEARCH_SUBMITTED', error);
770			});
771		},
772
773		/**
774		 * Find product by ID from pre-loaded products
775		 *
776		 * @param {number|string} productId Product ID
777		 * @return {Object|null} Product data or null
778		 */
779		findProductById: function (productId) {
780			if (!window.mcPixel || !window.mcPixel.data || !window.mcPixel.data.products) {
781				return null;
782			}
783
784			const products = window.mcPixel.data.products;
785			const id = String(productId);
786
787			for (let i = 0; i < products.length; i++) {
788				if (String(products[i].id) === id) {
789					return products[i];
790				}
791			}
792
793			return null;
794		},
795
796		/**
797		 * Debounced fetch for add-to-cart events.
798		 * Each call resets the timer so rapid-fire triggers coalesce into one
799		 * fetch that drains the entire PHP queue.
800		 * If a fetch is already in flight, schedule another drain after it completes.
801		 */
802		fetchAndTrackAddToCart: function () {
803			var self = this;
804			if (!this.isPixelSDKReady()) return;
805
806			clearTimeout(this._atcTimer);
807			this._atcTimer = setTimeout(function () {
808				self._drainAddToCartQueue();
809			}, 600);
810		},
811
812		_drainAddToCartQueue: async function () {
813			if (this._atcFetching) return;
814			this._atcFetching = true;
815
816			try {
817				var res = await fetch(this.getRestBase() + 'pixel/atc', {
818					method: 'GET',
819					credentials: 'same-origin',
820					headers: { 'Accept': 'application/json' },
821				});
822
823				if (!res.ok) return;
824
825				var data = await res.json();
826				if (!data) return;
827
828				var items = Array.isArray(data) ? data : [data];
829				for (var i = 0; i < items.length; i++) {
830					this.sendProductAddedToCart(items[i]);
831				}
832			} catch (e) {
833				// no-op
834			} finally {
835				this._atcFetching = false;
836			}
837		},
838
839		/**
840		 * Debounced fetch for remove-from-cart events.
841		 * Same debounce pattern as add-to-cart.
842		 */
843		fetchAndTrackRemoveFromCart: function () {
844			var self = this;
845			if (!this.isPixelSDKReady()) return;
846
847			clearTimeout(this._rfcTimer);
848			this._rfcTimer = setTimeout(function () {
849				self._drainRemoveFromCartQueue();
850			}, 600);
851		},
852
853		_drainRemoveFromCartQueue: async function () {
854			if (this._rfcFetching) return;
855			this._rfcFetching = true;
856
857			try {
858				var res = await fetch(this.getRestBase() + 'pixel/rfc', {
859					method: 'GET',
860					credentials: 'same-origin',
861					headers: { 'Accept': 'application/json' },
862				});
863
864				if (!res.ok) return;
865
866				var data = await res.json();
867				if (!data) return;
868
869				var items = Array.isArray(data) ? data : [data];
870				for (var i = 0; i < items.length; i++) {
871					this.sendProductRemovedFromCart(items[i]);
872				}
873			} catch (e) {
874				// no-op
875			} finally {
876				this._rfcFetching = false;
877			}
878		},
879
880		/**
881		 * Attach DOM and jQuery event listeners for cart add/remove.
882		 * These serve as fallback triggers alongside the fetch interceptor.
883		 */
884		attachCartEventListeners: function () {
885			const self = this;
886
887			// Classic themes (jQuery events fired by WooCommerce's add-to-cart.js)
888			$(document.body).on('added_to_cart', function () {
889				self.fetchAndTrackAddToCart();
890			});
891			$(document.body).on('removed_from_cart', function () {
892				self.fetchAndTrackRemoveFromCart();
893			});
894
895			// WC Blocks DOM CustomEvents
896			document.body.addEventListener('wc-blocks_added_to_cart', function () {
897				self.fetchAndTrackAddToCart();
898			});
899			document.body.addEventListener('wc-blocks_removed_from_cart', function () {
900				self.fetchAndTrackRemoveFromCart();
901			});
902		},
903
904		/**
905		 * Intercept window.fetch to detect WooCommerce Store API cart mutations.
906		 *
907		 * This is the most reliable method for catching add-to-cart and remove-from-cart
908		 * in block-based WooCommerce setups, where DOM events may not fire consistently.
909		 * Watches for successful POST requests to the Store API cart endpoints.
910		 */
911		interceptStoreApiRequests: function () {
912			const self = this;
913			const originalFetch = window.fetch;
914
915			window.fetch = function (input, init) {
916				var promise = originalFetch.apply(this, arguments);
917
918				promise.then(function (response) {
919					try {
920						if (!response.ok) return;
921
922						var method = (init && init.method) ? init.method.toUpperCase() :
923							(input instanceof Request ? input.method.toUpperCase() : 'GET');
924						if (method !== 'POST') return;
925
926						var url = typeof input === 'string' ? input :
927							(input instanceof Request ? input.url : String(input));
928
929						if (/wc\/store\/v1\/cart\/add-item/.test(url) || /wc\/store\/v1\/cart\/update-item/.test(url)) {
930							self.fetchAndTrackAddToCart();
931						} else if (/wc\/store\/v1\/cart\/remove-item/.test(url)) {
932							self.fetchAndTrackRemoveFromCart();
933						}
934					} catch (e) {
935						// Silently ignore interceptor errors
936					}
937				}).catch(function () {
938					// Ignore - the original caller handles fetch errors
939				});
940
941				return promise;
942			};
943		},
944	};
945
946	// Initialize when DOM is ready
947	$(document).ready(function () {
948		MailchimpPixelTracking.init();
949	});
950
951})(jQuery);
952;
953/**
954 * core-js 3.39.0
955 * © 2014-2024 Denis Pushkarev (zloirock.ru)
956 * license: https://github.com/zloirock/core-js/blob/v3.39.0/LICENSE
957 * source: https://github.com/zloirock/core-js
958 */
959!function(r){"use strict";var t,e,n;t=[function(r,t,e){e(1),e(71),e(72),e(85),e(109),r.exports=e(111)},function(t,e,n){var o=n(2),a=n(3),c=n(67),i=n(68),u=n(69),s=n(29),f=n(70),p=a.Promise,l=!1;o({target:"Promise",stat:!0,forced:!p||!p.try||f(function(){p.try(function(r){l=8===r},8)}).error||!l},{try:function(t){var e=arguments.length>1?i(arguments,1):[],n=u.f(this),o=f(function(){return c(s(t),r,e)});return(o.error?n.reject:n.resolve)(o.value),n.promise}})},function(t,e,n){var o=n(3),a=n(4).f,c=n(42),i=n(46),u=n(36),s=n(54),f=n(66);t.exports=function(t,e){var n,p,l,y,v,h=t.target,b=t.global,g=t.stat;if(n=b?o:g?o[h]||u(h,{}):o[h]&&o[h].prototype)for(p in e){if(y=e[p],l=t.dontCallGetSet?(v=a(n,p))&&v.value:n[p],!f(b?p:h+(g?".":"#")+p,t.forced)&&l!==r){if(typeof y==typeof l)continue;s(y,l)}(t.sham||l&&l.sham)&&c(y,"sham",!0),i(n,p,y,t)}}},function(r,t,e){var n=function(r){return r&&r.Math===Math&&r};r.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||n("object"==typeof this&&this)||function(){return this}()||Function("return this")()},function(r,t,e){var n=e(5),o=e(7),a=e(9),c=e(10),i=e(11),u=e(17),s=e(37),f=e(40),p=Object.getOwnPropertyDescriptor;t.f=n?p:function(r,t){if(r=i(r),t=u(t),f)try{return p(r,t)}catch(r){}if(s(r,t))return c(!o(a.f,r,t),r[t])}},function(r,t,e){var n=e(6);r.exports=!n(function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}}
959)[1]})},function(r,t,e){r.exports=function(r){try{return!!r()}catch(r){return!0}}},function(r,t,e){var n=e(8),o=Function.prototype.call;r.exports=n?o.bind(o):function(){return o.apply(o,arguments)}},function(r,t,e){var n=e(6);r.exports=!n(function(){var r=function(){}.bind();return"function"!=typeof r||r.hasOwnProperty("prototype")})},function(r,t,e){var n={}.propertyIsEnumerable,o=Object.getOwnPropertyDescriptor,a=o&&!n.call({1:2},1);t.f=a?function(r){var t=o(this,r);return!!t&&t.enumerable}:n},function(r,t,e){r.exports=function(r,t){return{enumerable:!(1&r),configurable:!(2&r),writable:!(4&r),value:t}}},function(r,t,e){var n=e(12),o=e(15);r.exports=function(r){return n(o(r))}},function(r,t,e){var n=e(13),o=e(6),a=e(14),c=Object,i=n("".split);r.exports=o(function(){return!c("z").propertyIsEnumerable(0)})?function(r){return"String"===a(r)?i(r,""):c(r)}:c},function(r,t,e){var n=e(8),o=Function.prototype,a=o.call,c=n&&o.bind.bind(a,a);r.exports=n?c:function(r){return function(){return a.apply(r,arguments)}}},function(r,t,e){var n=e(13),o=n({}.toString),a=n("".slice);r.exports=function(r){return a(o(r),8,-1)}},function(r,t,e){var n=e(16),o=TypeError;r.exports=function(r){if(n(r))throw new o("Can't call method on "+r);return r}},function(t,e,n){t.exports=function(t){return null===t||t===r}},function(r,t,e){var n=e(18),o=e(21);
959r.exports=function(r){var t=n(r,"string");return o(t)?t:t+""}},function(t,e,n){var o=n(7),a=n(19),c=n(21),i=n(28),u=n(31),s=n(32),f=TypeError,p=s("toPrimitive");t.exports=function(t,e){if(!a(t)||c(t))return t;var n,s=i(t,p);if(s){if(e===r&&(e="default"),n=o(s,t,e),!a(n)||c(n))return n;throw new f("Can't convert object to primitive value")}return e===r&&(e="number"),u(t,e)}},function(r,t,e){var n=e(20);r.exports=function(r){return"object"==typeof r?null!==r:n(r)}},function(t,e,n){var o="object"==typeof document&&document.all;t.exports=void 0===o&&o!==r?function(r){return"function"==typeof r||r===o}:function(r){return"function"==typeof r}},function(r,t,e){var n=e(22),o=e(20),a=e(23),c=e(24),i=Object;r.exports=c?function(r){return"symbol"==typeof r}:function(r){var t=n("Symbol");return o(t)&&a(t.prototype,i(r))}},function(t,e,n){var o=n(3),a=n(20);t.exports=function(t,e){return arguments.length<2?(n=o[t],a(n)?n:r):o[t]&&o[t][e];var n}},function(r,t,e){var n=e(13);r.exports=n({}.isPrototypeOf)},function(r,t,e){var n=e(25);r.exports=n&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},function(r,t,e){var n=e(26),o=e(6),a=e(3).String;r.exports=!!Object.getOwnPropertySymbols&&!o(function(){var r=Symbol("symbol detection");return!a(r)||!(Object(r)instanceof Symbol)||!Symbol.sham&&n&&n<41})},function(r,t,e){var n,o,a=e(3),c=e(27),i=a.process,u=a.Deno,s=i&&i.versions||u&&u.version,f=s&&s.v8;f&&(o=(n=f.split("."))[0]>
vendor: 6,353 bytes, line 959
9590&&n[0]<4?1:+(n[0]+n[1])),!o&&c&&(!(n=c.match(/Edge\/(\d+)/))||n[1]>=74)&&(n=c.match(/Chrome\/(\d+)/))&&(o=+n[1]),r.exports=o},function(r,t,e){var n=e(3).navigator,o=n&&n.userAgent;r.exports=o?String(o):""},function(t,e,n){var o=n(29),a=n(16);t.exports=function(t,e){var n=t[e];return a(n)?r:o(n)}},function(r,t,e){var n=e(20),o=e(30),a=TypeError;r.exports=function(r){if(n(r))return r;throw new a(o(r)+" is not a function")}},function(r,t,e){var n=String;r.exports=function(r){try{return n(r)}catch(r){return"Object"}}},function(r,t,e){var n=e(7),o=e(20),a=e(19),c=TypeError;r.exports=function(r,t){var e,i;if("string"===t&&o(e=r.toString)&&!a(i=n(e,r)))return i;if(o(e=r.valueOf)&&!a(i=n(e,r)))return i;if("string"!==t&&o(e=r.toString)&&!a(i=n(e,r)))return i;throw new c("Can't convert object to primitive value")}},function(r,t,e){var n=e(3),o=e(33),a=e(37),c=e(39),i=e(25),u=e(24),s=n.Symbol,f=o("wks"),p=u?s.for||s:s&&s.withoutSetter||c;r.exports=function(r){return a(f,r)||(f[r]=i&&a(s,r)?s[r]:p("Symbol."+r)),f[r]}},function(r,t,e){var n=e(34);r.exports=function(r,t){return n[r]||(n[r]=t||{})}},function(r,t,e){var n=e(35),o=e(3),a=e(36),c="__core-js_shared__",i=r.exports=o[c]||a(c,{});(i.versions||(i.versions=[])).push({version:"3.39.0",mode:n?"pure":"global",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.39.0/LICENSE",source:"https://github.com/zloirock/core-js"})},function(r,t,e){r.exports=!1},function(r,t,e){var n=e(3),o=Object.defineProperty;r.exports=function(r,t){try{o(n,r,{value:t,configurable:!0,writable:!0})}catch(e){n[r]=t}return t}},function(r,t,e){var n=e(13),o=e(38),a=n({}.hasOwnProperty);r.exports=Object.hasOwn||function(r,t){return a(o(r),t)}},function(r,t,e){var n=e(15),o=Object;r.exports=function(r){return o(n(r))}},function(t,e,n){var o=n(13),a=0,c=Math.random(),i=o(1..toString);t.exports=function(t){return"Symbol("+(t===r?"":t)+")_"+i(++a+c,36)}},function(r,t,e){var n=e(5),o=e(6),a=e(41);r.exports=!n&&!o(function(){return 7!==Object.defineProperty(a("div"),"a",{get:function(){return 7}}).a})},function(r,t,e){var n=e(3),o=e(19),a=n.document,c=o(a)&&o(a.createElement);r.exports=function(r){return c?a.createElement(r):{}}},function(r,t,e){var n=e(5),o=e(43),a=e(10);r.exports=n?function(r,t,e){return o.f(r,t,a(1,e))}:function(r,t,e){return r[t]=e,r}},function(r,t,e){var n=e(5),o=e(40),a=e(44),c=e(45),i=e(17),u=TypeError,s=Object.defineProperty,f=Object.getOwnPropertyDescriptor,p="enumerable",l="configurable",y="writable";t.f=n?a?function(r,t,e){if(c(r),t=i(t),c(e),"function"==typeof r&&"prototype"===t&&"value"in e&&y in e&&!e[y]){var n=f(r,t);n&&n[y]&&(r[t]=e.value,e={configurable:l in e?e[l]:n[l],enumerable:p in e?e[p]:n[p],writable:!1})}return s(r,t,e)}:s:function(r,t,e){if(c(r),t=i(t),c(e),o)try{return s(r,t,e)}catch(r){}if("get"in e||"set"in e)throw new u("Accessors not supported");return"value"in e&&(r[t]=e.value),r}},function(r,t,e){var n=e(5),o=e(6);r.exports=n&&o(function(){return 42!==Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype})},function(r,t,e){var n=e(19),o=String,a=TypeError;r.exports=function(r){if(n(r))return r;throw new a(o(r)+" is not an object")}},function(t,e,n){var o=n(20),a=n(43),c=n(47),i=n(36);t.exports=function(t,e,n,u){u||(u={});var s=u.enumerable,f=u.name!==r?u.name:e;if(o(n)&&c(n,f,u),u.global)s?t[e]=n:i(e,n);else{try{u.unsafe?t[e]&&(s=!0):delete t[e]}catch(r){}s?t[e]=n:a.f(t,e,{value:n,enumerable:!1,configurable:!u.nonConfigurable,writable:!u.nonWritable})}return t}},function(t,e,n){var o=n(13),a=n(6),c=n(20),i=n(37),u=n(5),s=n(48).CONFIGURABLE,f=n(49),p=n(50),l=p.enforce,y=p.get,v=String,h=Object.defineProperty,b=o("".slice),g=o("".replace),m=o([].join),E=u&&!a(function(){return 8!==h(function(){},"length",{value:8}).length}),d=String(String).split("String"),w=t.exports=function(t,e,n){"Symbol("===b(v(e),0,7)&&(e="["+g(v(e),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),n&&n.getter&&(e="get "+e),n&&n.setter&&(e="set "+e),(!i(t,"name")||s&&t.name!==e)&&(u?h(t,"name",{value:e,configurable:!0}):t.name=e),E&&n&&i(n,"arity")&&t.length!==n.arity&&h(t,"length",{value:n.arity});try{n&&i(n,"constructor")&&n.constructor?u&&h(t,"prototype",{writable:!1}):t.prototype&&(t.prototype=r)}catch(r){}var o=l(t);return i(o,"source")||(o.source=m(d,"string"==typeof e?e:"")),t};Function.prototype.toString=w(function(){return c(this)&&y(this).source||f(this)},"toString")},function(r,t,e){var n=e(5),o=e(37),a=Function.prototype,c=n&&Object.getOwnPropertyDescriptor,i=o(a,"name"),u=i&&"something"===function(){}.name,s=i&&(!n||n&&c(a,"name").configurable);r.exports={EXISTS:i,PROPER:u,CONFIGURABLE:s}},function(r,t,e){var n=e(13),o=e(20),a=e(34),c=n(Function.toString);o(a.inspectSource)||(a.inspectSource=function(r){return c(r)}),r.exports=a.inspectSource},function(r,t,e){var n,o,a,c=e(51),i=e(3),u=e(19),s=e(42),f=e(37),p=e(34),l=e(52),y=e(53),v="Object already initialized",h=i.TypeError,b=i.WeakMap;if(c||p.state){var g=p.state||(p.state=new b);g.get=g.get,g.has=g.has,g.set=g.set,n=function(r,t){if(g.has(r))throw new h(v);return t.facade=r,g.set(r,t),t},o=function(r){return g.get(r)||{}},a=function(r){return g.has(r)}}else{var m=l("state");y[m]=!0,n=function(r,t){if(f(r,m))throw new h(v);return t.facade=r,s(r,m,t),t},o=function(r){return f(r,m)?r[m]:{}},a=function(r){return f(r,m)}}r.exports={set:n,get:o,has:a,enforce:function(r){return a(r)?o(r):n(r,{})},getterFor:function(r){return function(t){var e;if(!u(t)||(e=o(t)).type!==r)throw new h("Incompatible receiver, "+r+" required");return e}}}},function(r,t,e){var n=e(3),o=e(20),a=n.WeakMap;r.exports=o(a)&&/native code/.test(String(a))},function(r,t,e){var n=e(33),o=e(39),a=n("keys");r.exports=function(r){return a[r]||(a[r]=o(r))}},function(r,t,e){r.exports={}},function(r,t,e){var n=e(37),o=e(55),a=e(4),c=e(43);r.exports=function(r,t,e){for(var i=o(t),u=c.f,s=a.f,f=0;f<i.length;f++){var p=i[f];n(r,p)||e&&n(e,p)||u(r,p,s(t,p))}}},function(r,t,e){var n=e(22),o=e(13),a=e(56),c=e(65),i=e(45),u=o([].concat);r.exports=n("Reflect","ownKeys")||function(r){var t=a.f(i(r)),e=c.f;return e?u(t,e(r)):t}},function(r,t,e){var n=e(57),o=e(64).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(r){return n(r,o)}},function(r,t,e){var n=e(13),o=e(37),a=e(11),c=e(58).indexOf,i=e(53),u=n([].push);
959r.exports=function(r,t){var e,n=a(r),s=0,f=[];for(e in n)!o(i,e)&&o(n,e)&&u(f,e);for(;t.length>s;)o(n,e=t[s++])&&(~c(f,e)||u(f,e));return f}},function(r,t,e){var n=e(11),o=e(59),a=e(62),c=function(r){return function(t,e,c){var i=n(t),u=a(i);if(0===u)return!r&&-1;var s,f=o(c,u);if(r&&e!=e){for(;u>f;)if((s=i[f++])!=s)return!0}else for(;u>f;f++)if((r||f in i)&&i[f]===e)return r||f||0;return!r&&-1}};r.exports={includes:c(!0),indexOf:c(!1)}},function(r,t,e){var n=e(60),o=Math.max,a=Math.min;r.exports=function(r,t){var e=n(r);return e<0?o(e+t,0):a(e,t)}},function(r,t,e){var n=e(61);r.exports=function(r){var t=+r;return t!=t||0===t?0:n(t)}},function(r,t,e){var n=Math.ceil,o=Math.floor;r.exports=Math.trunc||function(r){var t=+r;return(t>0?o:n)(t)}},function(r,t,e){var n=e(63);r.exports=function(r){return n(r.length)}},function(r,t,e){var n=e(60),o=Math.min;r.exports=function(r){var t=n(r);return t>0?o(t,9007199254740991):0}},function(r,t,e){r.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(r,t,e){t.f=Object.getOwnPropertySymbols},function(r,t,e){var n=e(6),o=e(20),a=/#|\.prototype\./,c=function(r,t){var e=u[i(r)];return e===f||e!==s&&(o(t)?n(t):!!t)},i=c.normalize=function(r){return String(r).replace(a,".").toLowerCase()},u=c.data={},s=c.NATIVE="N",f=c.POLYFILL="P";r.exports=c},function(r,t,e){var n=e(8),o=Function.prototype,a=o.apply,c=o.call;r.exports="object"==typeof Reflect&&Reflect.apply||(n?c.bind(a):function(){return c.apply(a,arguments)})},function(r,t,e){var n=e(13);r.exports=n([].slice)},function(t,e,n){var o=n(29),a=TypeError,c=function(t){var e,n;this.promise=new t(function(t,o){if(e!==r||n!==r)throw new a("Bad Promise constructor");e=t,n=o}),this.resolve=o(e),this.reject=o(n)};t.exports.f=function(r){return new c(r)}},function(r,t,e){r.exports=function(r){try{return{error:!1,value:r()}}catch(r){return{error:!0,value:r}}}},function(r,t,e){var n=e(2),o=e(69);n({target:"Promise",stat:!0},{withResolvers:function(){var r=o.f(this);return{promise:r.promise,resolve:r.resolve,reject:r.reject}}})},function(t,e,n){var o=n(2),a=n(3),c=n(22),i=n(10),u=n(43).f,s=n(37),f=n(73),p=n(74),l=n(79),y=n(83),v=n(84),h=n(5),b=n(35),g="DOMException",m=c("Error"),E=c(g),d=function(){f(this,w);var t=arguments.length,e=l(t<1?r:arguments[0]),n=l(t<2?r:arguments[1],"Error"),o=new E(e,n),a=new m(e);return a.name=g,u(o,"stack",i(1,v(a.stack,1))),p(o,this,d),o},w=d.prototype=E.prototype,x="stack"in new m(g),O="stack"in new E(1,2),R=E&&h&&Object.getOwnPropertyDescriptor(a,g),S=!(!R||R.writable&&R.configurable),A=x&&!S&&!O;o({global:!0,constructor:!0,forced:b||A},{DOMException:A?d:E});var D=c(g),T=D.prototype;if(T.constructor!==D)for(var _ in b||u(T,"constructor",i(1,D)),y)if(s(y,_)){var I=y[_],j=I.s;s(D,j)||u(D,j,i(6,I.c))}},function(r,t,e){var n=e(23),o=TypeError;r.exports=function(r,t){if(n(t,r))return r;throw new o("Incorrect invocation")}},function(r,t,e){var n=e(20),o=e(19),a=e(75);r.exports=function(r,t,e){var c,i;return a&&n(c=t.constructor)&&c!==e&&o(i=c.prototype)&&i!==e.prototype&&a(r,i),r}},function(t,e,n){var o=n(76),a=n(19),c=n(15),i=n(77);
vendor: 2,427 bytes, line 959
959t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var r,t=!1,e={};try{(r=o(Object.prototype,"__proto__","set"))(e,[]),t=e instanceof Array}catch(r){}return function(e,n){return c(e),i(n),a(e)?(t?r(e,n):e.__proto__=n,e):e}}():r)},function(r,t,e){var n=e(13),o=e(29);r.exports=function(r,t,e){try{return n(o(Object.getOwnPropertyDescriptor(r,t)[e]))}catch(r){}}},function(r,t,e){var n=e(78),o=String,a=TypeError;r.exports=function(r){if(n(r))return r;throw new a("Can't set "+o(r)+" as a prototype")}},function(r,t,e){var n=e(19);r.exports=function(r){return n(r)||null===r}},function(t,e,n){var o=n(80);t.exports=function(t,e){return t===r?arguments.length<2?"":e:o(t)}},function(r,t,e){var n=e(81),o=String;r.exports=function(r){if("Symbol"===n(r))throw new TypeError("Cannot convert a Symbol value to a string");return o(r)}},function(t,e,n){var o=n(82),a=n(20),c=n(14),i=n(32)("toStringTag"),u=Object,s="Arguments"===c(function(){return arguments}());t.exports=o?c:function(t){var e,n,o;return t===r?"Undefined":null===t?"Null":"string"==typeof(n=function(r,t){try{return r[t]}catch(r){}}(e=u(t),i))?n:s?c(e):"Object"===(o=c(e))&&a(e.callee)?"Arguments":o}},function(r,t,e){var n={};n[e(32)("toStringTag")]="z",r.exports="[object z]"===String(n)},function(r,t,e){r.exports={IndexSizeError:{s:"INDEX_SIZE_ERR",c:1,m:1},DOMStringSizeError:{s:"DOMSTRING_SIZE_ERR",c:2,m:0},HierarchyRequestError:{s:"HIERARCHY_REQUEST_ERR",c:3,m:1},WrongDocumentError:{s:"WRONG_DOCUMENT_ERR",c:4,m:1},InvalidCharacterError:{s:"INVALID_CHARACTER_ERR",c:5,m:1},NoDataAllowedError:{s:"NO_DATA_ALLOWED_ERR",c:6,m:0},NoModificationAllowedError:{s:"NO_MODIFICATION_ALLOWED_ERR",c:7,m:1},NotFoundError:{s:"NOT_FOUND_ERR",c:8,m:1},NotSupportedError:{s:"NOT_SUPPORTED_ERR",c:9,m:1},InUseAttributeError:{s:"INUSE_ATTRIBUTE_ERR",c:10,m:1},InvalidStateError:{s:"INVALID_STATE_ERR",c:11,m:1},SyntaxError:{s:"SYNTAX_ERR",c:12,m:1},InvalidModificationError:{s:"INVALID_MODIFICATION_ERR",c:13,m:1},NamespaceError:{s:"NAMESPACE_ERR",c:14,m:1},InvalidAccessError:{s:"INVALID_ACCESS_ERR",c:15,m:1},ValidationError:{s:"VALIDATION_ERR",c:16,m:0},TypeMismatchError:{s:"TYPE_MISMATCH_ERR",c:17,m:1},SecurityError:{s:"SECURITY_ERR",c:18,m:1},NetworkError:{s:"NETWORK_ERR",c:19,m:1},AbortError:{s:"ABORT_ERR",c:20,m:1},URLMismatchError:{s:"URL_MISMATCH_ERR",c:21,m:1},QuotaExceededError:{s:"QUOTA_EXCEEDED_ERR",c:22,m:1},TimeoutError:{s:"TIMEOUT_ERR",c:23,m:1}
vendor: 8,053 bytes, line 959
959,InvalidNodeTypeError:{s:"INVALID_NODE_TYPE_ERR",c:24,m:1},DataCloneError:{s:"DATA_CLONE_ERR",c:25,m:1}}},function(r,t,e){var n=e(13),o=Error,a=n("".replace),c=String(new o("zxcasd").stack),i=/\n\s*at [^:]*:[^\n]*/,u=i.test(c);r.exports=function(r,t){if(u&&"string"==typeof r&&!o.prepareStackTrace)for(;t--;)r=a(r,i,"");return r}},function(t,e,n){var o,a=n(35),c=n(2),i=n(3),u=n(22),s=n(13),f=n(6),p=n(39),l=n(20),y=n(86),v=n(16),h=n(19),b=n(21),g=n(87),m=n(45),E=n(81),d=n(37),w=n(95),x=n(42),O=n(62),R=n(96),S=n(97),A=n(99),D=n(100),T=n(101),_=n(103),I=n(108),j=n(107),M=i.Object,k=i.Array,P=i.Date,C=i.Error,N=i.TypeError,L=i.PerformanceMark,U=u("DOMException"),B=A.Map,F=A.has,W=A.get,z=A.set,V=D.Set,H=D.add,G=D.has,Y=u("Object","keys"),Q=s([].push),q=s((!0).valueOf),X=s(1..valueOf),K=s("".valueOf),Z=s(P.prototype.getTime),$=p("structuredClone"),J="DataCloneError",rr="Transferring",tr=function(r){return!f(function(){var t=new i.Set([7]),e=r(t),n=r(M(7));return e===t||!e.has(7)||!h(n)||7!==+n})&&r},er=function(r,t){return!f(function(){var e=new t,n=r({a:e,b:e});return!(n&&n.a===n.b&&n.a instanceof t&&n.a.stack===e.stack)})},nr=i.structuredClone,or=a||!er(nr,C)||!er(nr,U)||(o=nr,!!f(function(){var r=o(new i.AggregateError([1],$,{cause:3}));return"AggregateError"!==r.name||1!==r.errors[0]||r.message!==$||3!==r.cause})),ar=!nr&&tr(function(r){return new L($,{detail:r}).detail}),cr=tr(nr)||ar,ir=function(r){throw new U("Uncloneable type: "+r,J)},ur=function(r,t){throw new U((t||"Cloning")+" of "+r+" cannot be properly polyfilled in this engine",J)},sr=function(r,t){return cr||ur(t),cr(r)},fr=function(t,e,n){if(F(e,t))return W(e,t);var o,a,c,u,s,f;if("SharedArrayBuffer"===(n||E(t)))o=cr?cr(t):t;else{var p=i.DataView;p||l(t.slice)||ur("ArrayBuffer");try{if(l(t.slice)&&!t.resizable)o=t.slice(0);else{a=t.byteLength,c="maxByteLength"in t?{maxByteLength:t.maxByteLength}:r,o=new ArrayBuffer(a,c),u=new p(t),s=new p(o);for(f=0;f<a;f++)s.setUint8(f,u.getUint8(f))}}catch(r){throw new U("ArrayBuffer is detached",J)}}return z(e,t,o),o},pr=function(t,e){if(b(t)&&ir("Symbol"),!h(t))return t;if(e){if(F(e,t))return W(e,t)}else e=new B;var n,o,a,c,s,f,p,y,v=E(t);switch(v){case"Array":a=k(O(t));break;case"Object":a={};break;case"Map":a=new B;break;case"Set":a=new V;break;case"RegExp":a=new RegExp(t.source,S(t));break;case"Error":switch(o=t.name){case"AggregateError":a=new(u(o))([]);break;case"EvalError":case"RangeError":case"ReferenceError":case"SuppressedError":case"SyntaxError":case"TypeError":case"URIError":a=new(u(o));break;case"CompileError":case"LinkError":case"RuntimeError":a=new(u("WebAssembly",o));break;default:a=new C}break;case"DOMException":a=new U(t.message,t.name);break;case"ArrayBuffer":case"SharedArrayBuffer":a=fr(t,e,v);break;case"DataView":case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float16Array":case"Float32Array":case"Float64Array":case"BigInt64Array":case"BigUint64Array":f="DataView"===v?t.byteLength:t.length,a=function(r,t,e,n,o){var a=i[t];return h(a)||ur(t),new a(fr(r.buffer,o),e,n)}(t,v,t.byteOffset,f,e);break;case"DOMQuad":try{a=new DOMQuad(pr(t.p1,e),pr(t.p2,e),pr(t.p3,e),pr(t.p4,e))}catch(r){a=sr(t,v)}break;case"File":if(cr)try{a=cr(t),E(a)!==v&&(a=r)}catch(r){}if(!a)try{a=new File([t],t.name,t)}catch(r){}a||ur(v);break;case"FileList":if(c=function(){var r;try{r=new i.DataTransfer}catch(t){try{r=new i.ClipboardEvent("").clipboardData}catch(r){}}return r&&r.items&&r.files?r:null}()){for(s=0,f=O(t);s<f;s++)c.items.add(pr(t[s],e));a=c.files}else a=sr(t,v);break;case"ImageData":try{a=new ImageData(pr(t.data,e),t.width,t.height,{colorSpace:t.colorSpace})}catch(r){a=sr(t,v)}break;default:if(cr)a=cr(t);else switch(v){case"BigInt":a=M(t.valueOf());break;case"Boolean":a=M(q(t));break;case"Number":a=M(X(t));break;case"String":a=M(K(t));break;case"Date":a=new P(Z(t));break;case"Blob":try{a=t.slice(0,t.size,t.type)}catch(r){ur(v)}break;case"DOMPoint":case"DOMPointReadOnly":n=i[v];try{a=n.fromPoint?n.fromPoint(t):new n(t.x,t.y,t.z,t.w)}catch(r){ur(v)}break;case"DOMRect":case"DOMRectReadOnly":n=i[v];try{a=n.fromRect?n.fromRect(t):new n(t.x,t.y,t.width,t.height)}catch(r){ur(v)}break;case"DOMMatrix":case"DOMMatrixReadOnly":n=i[v];try{a=n.fromMatrix?n.fromMatrix(t):new n(t)}catch(r){ur(v)}break;case"AudioData":case"VideoFrame":l(t.clone)||ur(v);try{a=t.clone()}catch(r){ir(v)}break;case"CropTarget":case"CryptoKey":case"FileSystemDirectoryHandle":case"FileSystemFileHandle":case"FileSystemHandle":case"GPUCompilationInfo":case"GPUCompilationMessage":case"ImageBitmap":case"RTCCertificate":case"WebAssembly.Module":ur(v);default:ir(v)}}switch(z(e,t,a),v){case"Array":case"Object":for(p=Y(t),s=0,f=O(p);s<f;s++)y=p[s],w(a,y,pr(t[y],e));break;case"Map":t.forEach(function(r,t){z(a,pr(t,e),pr(r,e))});break;case"Set":t.forEach(function(r){H(a,pr(r,e))});break;case"Error":x(a,"message",pr(t.message,e)),d(t,"cause")&&x(a,"cause",pr(t.cause,e)),"AggregateError"===o?a.errors=pr(t.errors,e):"SuppressedError"===o&&(a.error=pr(t.error,e),a.suppressed=pr(t.suppressed,e));case"DOMException":I&&x(a,"stack",pr(t.stack,e))}return a};c({global:!0,enumerable:!0,sham:!j,forced:or},{structuredClone:function(t){var e,n,o=R(arguments.length,1)>1&&!v(arguments[1])?m(arguments[1]):r,a=o?o.transfer:r;a!==r&&(n=function(t,e){if(!h(t))throw new N("Transfer option cannot be converted to a sequence");var n=[];g(t,function(r){Q(n,m(r))});for(var o,a,c,u,s,f=0,p=O(n),v=new V;f<p;){if(o=n[f++],"ArrayBuffer"===(a=E(o))?G(v,o):F(e,o))throw new U("Duplicate transferable",J);if("ArrayBuffer"!==a){if(j)u=nr(o,{transfer:[o]});else switch(a){case"ImageBitmap":c=i.OffscreenCanvas,y(c)||ur(a,rr);try{(s=new c(o.width,o.height)).getContext("bitmaprenderer").transferFromImageBitmap(o),u=s.transferToImageBitmap()}catch(r){}break;case"AudioData":case"VideoFrame":l(o.clone)&&l(o.close)||ur(a,rr);try{u=o.clone(),o.close()}catch(r){}break;case"MediaSourceHandle":case"MessagePort":case"MIDIAccess":case"OffscreenCanvas":case"ReadableStream":case"RTCDataChannel":case"TransformStream":case"WebTransportReceiveStream":case"WebTransportSendStream":case"WritableStream":ur(a,rr)}if(u===r)throw new U("This object cannot be transferred: "+a,J);z(e,o,u)}else H(v,o)}return v}(a,e=new B));var c=pr(t,e);return n&&function(r){T(r,function(r){j?cr(r,{transfer:[r]}):l(r.transfer)?r.transfer():_?_(r):ur("ArrayBuffer",rr)})}(n),c}})},function(r,t,e){var n=e(13),o=e(6),a=e(20),c=e(81),i=e(22),u=e(49),s=function(){},f=i("Reflect","construct"),p=/^\s*(?:class|function)\b/,l=n(p.exec),y=!p.test(s),v=function(r){if(!a(r))return!1;try{return f(s,[],r),!0}catch(r){return!1}},h=function(r){if(!a(r))return!1;switch(c(r)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return y||!!l(p,u(r))}catch(r){return!0}};h.sham=!0,r.exports=!f||o(function(){var r;return v(v.call)||!v(Object)||!v(function(){r=!0})||r})?h:v},function(r,t,e){var n=e(88),o=e(7),a=e(45),c=e(30),i=e(90),u=e(62),s=e(23),f=e(92),p=e(93),l=e(94),y=TypeError,v=function(r,t){this.stopped=r,this.result=t},h=v.prototype;r.exports=function(r,t,e){var b,g,m,E,d,w,x,O=e&&e.that,R=!(!e||!e.AS_ENTRIES),S=!(!e||!e.IS_RECORD),A=!(!e||!e.IS_ITERATOR),D=!(!e||!e.INTERRUPTED),T=n(t,O),_=function(r){return b&&l(b,"normal",r),new v(!0,r)},I=function(r){return R?(a(r),D?T(r[0],r[1],_):T(r[0],r[1])):D?T(r,_):T(r)};if(S)b=r.iterator;else if(A)b=r;else{if(!(g=p(r)))throw new y(c(r)+" is not iterable");if(i(g)){for(m=0,E=u(r);E>m;m++)if((d=I(r[m]))&&s(h,d))return d;return new v(!1)}b=f(r,g)}for(w=S?r.next:b.next;!(x=o(w,b)).done;){try{d=I(x.value)}catch(r){l(b,"throw",r)}if("object"==typeof d&&d&&s(h,d))return d}return new v(!1)}},function(t,e,n){var o=n(89),a=n(29),c=n(8),i=o(o.bind);t.exports=function(t,e){return a(t),e===r?t:c?i(t,e):function(){return t.apply(e,arguments)}}},function(r,t,e){var n=e(14),o=e(13);r.exports=function(r){if("Function"===n(r))return o(r)}},function(t,e,n){var o=n(32),a=n(91),c=o("iterator"),i=Array.prototype;
959t.exports=function(t){return t!==r&&(a.Array===t||i[c]===t)}},function(r,t,e){r.exports={}},function(r,t,e){var n=e(7),o=e(29),a=e(45),c=e(30),i=e(93),u=TypeError;r.exports=function(r,t){var e=arguments.length<2?i(r):t;if(o(e))return a(n(e,r));throw new u(c(r)+" is not iterable")}},function(r,t,e){var n=e(81),o=e(28),a=e(16),c=e(91),i=e(32)("iterator");r.exports=function(r){if(!a(r))return o(r,i)||o(r,"@@iterator")||c[n(r)]}},function(r,t,e){var n=e(7),o=e(45),a=e(28);r.exports=function(r,t,e){var c,i;o(r);try{if(!(c=a(r,"return"))){if("throw"===t)throw e;return e}c=n(c,r)}catch(r){i=!0,c=r}if("throw"===t)throw e;if(i)throw c;return o(c),e}},function(r,t,e){var n=e(5),o=e(43),a=e(10);r.exports=function(r,t,e){n?o.f(r,t,a(0,e)):r[t]=e}},function(r,t,e){var n=TypeError;r.exports=function(r,t){if(r<t)throw new n("Not enough arguments");return r}},function(t,e,n){var o=n(7),a=n(37),c=n(23),i=n(98),u=RegExp.prototype;t.exports=function(t){var e=t.flags;return e!==r||"flags"in u||a(t,"flags")||!c(u,t)?e:o(i,t)}},function(r,t,e){var n=e(45);r.exports=function(){var r=n(this),t="";return r.hasIndices&&(t+="d"),r.global&&(t+="g"),r.ignoreCase&&(t+="i"),r.multiline&&(t+="m"),r.dotAll&&(t+="s"),r.unicode&&(t+="u"),r.unicodeSets&&(t+="v"),r.sticky&&(t+="y"),t}},function(r,t,e){var n=e(13),o=Map.prototype;r.exports={Map:Map,set:n(o.set),get:n(o.get),has:n(o.has),remove:n(o.delete),proto:o}},function(r,t,e){var n=e(13),o=Set.prototype;r.exports={Set:Set,add:n(o.add),has:n(o.has),remove:n(o.delete),proto:o}},function(r,t,e){var n=e(13),o=e(102),a=e(100),c=a.Set,i=a.proto,u=n(i.forEach),s=n(i.keys),f=s(new c).next;r.exports=function(r,t,e){return e?o({iterator:s(r),next:f},t):u(r,t)}},function(t,e,n){var o=n(7);t.exports=function(t,e,n){for(var a,c,i=n?t:t.iterator,u=t.next;!(a=o(u,i)).done;)if((c=e(a.value))!==r)return c}},function(r,t,e){var n,o,a,c,i=e(3),u=e(104),s=e(107),f=i.structuredClone,p=i.ArrayBuffer,l=i.MessageChannel,y=!1;if(s)y=function(r){f(r,{transfer:[r]})};else if(p)try{l||(n=u("worker_threads"))&&(l=n.MessageChannel),l&&(o=new l,a=new p(2),c=function(r){o.port1.postMessage(null,[r])},2===a.byteLength&&(c(a),0===a.byteLength&&(y=c)))}catch(r){}r.exports=y},function(r,t,e){var n=e(3),o=e(105);r.exports=function(r){if(o){try{return n.process.getBuiltinModule(r)}catch(r){}try{return Function('return require("'+r+'")')()}catch(r){}}}},function(r,t,e){var n=e(106);r.exports="NODE"===n},function(r,t,e){var n=e(3),o=e(27),a=e(14),c=function(r){return o.slice(0,r.length)===r};r.exports=c("Bun/")?"BUN":c("Cloudflare-Workers")?"CLOUDFLARE":c("Deno/")?"DENO":c("Node.js/")?"NODE":n.Bun&&"string"==typeof Bun.version?"BUN":n.Deno&&"object"==typeof Deno.version?"DENO":"process"===a(n.process)?"NODE":n.window&&n.document?"BROWSER":"REST"},function(r,t,e){var n=e(3),o=e(6),a=e(26),c=e(106),i=n.structuredClone;r.exports=!!i&&!o(function(){if("DENO"===c&&a>92||"NODE"===c&&a>94||"BROWSER"===c&&a>97)return!1;var r=new ArrayBuffer(8),t=i(r,{transfer:[r]});return 0!==r.byteLength||8!==t.byteLength})},function(r,t,e){var n=e(6),o=e(10);r.exports=!n(function(){var r=new Error("a");return!("stack"in r)||(Object.defineProperty(r,"stack",o(1,7)),7!==r.stack)})},function(t,e,n){var o=n(2),a=n(22),c=n(6),i=n(96),u=n(80),s=n(110),f=a("URL"),p=s&&c(function(){f.canParse()}),l=c(function(){return 1!==f.canParse.length});o({target:"URL",stat:!0,forced:!p||l},{canParse:function(t){var e=i(arguments.length,1),n=u(t),o=e<2||arguments[1]===r?r:u(arguments[1]);try{return!!new f(n,o)}catch(r){return!1}}})},function(t,e,n){var o=n(6),a=n(32),c=n(5),i=n(35),u=a("iterator");t.exports=!o(function(){var t=new URL("b?a=1&b=2&c=3","https://a"),e=t.searchParams,n=new URLSearchParams("a=1&a=2&b=3"),o="";return t.pathname="c%20d",e.forEach(function(r,t){e.delete("b"),o+=t+r}),n.delete("a",2),n.delete("b",r),i&&(!t.toJSON||!n.has("a",1)||n.has("a",2)||!n.has("a",r)||n.has("b"))||!e.size&&(i||!c)||!e.sort||"https://a/c%20d?a=1&c=3"!==t.href||"3"!==e.get("c")||"a=1"!==String(new URLSearchParams("?a=1"))||!e[u]||"a"!==new URL("https://a@b").username||"b"!==new URLSearchParams(new URLSearchParams("a=b")).get("a")||"xn--e1aybc"!==new URL("https://тест").host||"#%D0%B1"!==new URL("https://a#б").hash||"a1c3"!==o||"x"!==new URL("https://x",r).host})},function(t,e,n){var o=n(2),a=n(22),c=n(96),i=n(80),u=n(110),s=a("URL");o({target:"URL",stat:!0,forced:!u},{parse:function(t){var e=c(arguments.length,1),n=i(t),o=e<2||arguments[1]===r?r:i(arguments[1]);try{return new s(n,o)}catch(r){return null}}})}],e={},(n=function(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}).m=t,n.c=e,n.d=function(r,t,e){n.o(r,t)||Object.defineProperty(r,t,{enumerable:!0,get:e})},n.r=function(r){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}
959),Object.defineProperty(r,"__esModule",{value:!0})},n.t=function(r,t){if(1&t&&(r=n(r)),8&t)return r;if(4&t&&"object"==typeof r&&r&&r.__esModule)return r;var e=Object.create(null);if(n.r(e),Object.defineProperty(e,"default",{enumerable:!0,value:r}),2&t&&"string"!=typeof r)for(var o in r)n.d(e,o,function(t){return r[t]}.bind(null,o));return e},n.n=function(r){var t=r&&r.__esModule?function(){return r.default}:function(){return r};return n.d(t,"a",t),t},n.o=function(r,t){return Object.prototype.hasOwnProperty.call(r,t)},n.p="",n(n.s=0)}();;
960(()=>{"use strict";const e=window.wp.hooks,i="mailchimp-woocommerce";let t=!1;function c(){return void 0!==window.$mcSite&&window.$mcSite.pixel&&void 0!==window.$mcSite.pixel.api&&"function"==typeof window.$mcSite.pixel.api.track}function r(){return window.mcPixel&&window.mcPixel.cartId?window.mcPixel.cartId:""}function n(e,i){window.mcPixel&&i&&String(i)!==String(e)&&(window.mcPixel.parentMap||(window.mcPixel.parentMap={}),window.mcPixel.parentMap[String(e)]=String(i))}function o(e,i){t&&c()&&window.$mcSite.pixel.api.track(e,i).catch(function(i){console.error("Mailchimp Pixel Blocks: Error tracking "+e,i)})}function a(e){const i=e.prices||{},t=i.currency_minor_unit||2,c=Math.pow(10,t),r=i.price?parseInt(i.price,10)/c:0,o=String(e.id),a=(e.extensions||{})["mailchimp-pixel"]||{},d=a.product_id?String(a.product_id):function(e){return(window.mcPixel&&window.mcPixel.parentMap||{})[String(e)]||""}(o)||o;return n(o,d),{id:o,productId:d,title:e.name||"",price:r,currency:(i.currency_code||"").toUpperCase(),sku:e.sku||"",imageUrl:e.images&&e.images.length>0?e.images[0].src:"",productUrl:e.permalink||"",vendor:"",categories:[]}}function d(e){const i=e.prices||{},t=i.currency_minor_unit||2,c=Math.pow(10,t),r=i.line_total?parseInt(i.line_total,10)/c:0;return{item:a(e),quantity:e.quantity||1,price:r,currency:(i.currency_code||"").toUpperCase()}}(0,e.addAction)("experimental__woocommerce_blocks-cart-add-item",i,function(e){if(!t)return;if(window.mcPixel&&window.mcPixel._handled.addToCart)return;const i=e.product;if(!i)return;const c=function(e){const i=e.prices||{},t=i.currency_minor_unit||2,c=Math.pow(10,t),r=i.price?parseInt(i.price,10)/c:0,o=String(e.id),a=((e.extensions||{})["mailchimp-pixel"]||{}).product_id||e.parent,d=a?String(a):"";return n(o,d),{id:o,productId:d||o,title:e.name||"",price:r,currency:(i.currency_code||"").toUpperCase(),sku:e.sku||"",imageUrl:e.images&&e.images.length>0?e.images[0].src:"",productUrl:e.permalink||"",vendor:"",categories:(e.categories||[]).map(function(e){return e.name||""})}}(i),a=e.quantity||1;o("PRODUCT_ADDED_TO_CART",{cartId:r(),product:{item:{id:c.id,productId:c.productId,title:c.title,price:c.price,currency:c.currency,sku:c.sku},quantity:a,price:c.price*a,currency:c.currency}}),window.mcPixel&&(window.mcPixel._handled.addToCart=!0,setTimeout(function(){window.mcPixel._handled.addToCart=!1},1e3))}),(0,e.addAction)("experimental__woocommerce_blocks-cart-remove-item",i,function(e){if(!t)return;if(window.mcPixel&&window.mcPixel._handled.removeFromCart)return;const i=e.product;if(!i)return;const c=a(i),n=e.quantity||1;o("PRODUCT_REMOVED_FROM_CART",{cartId:r(),product:{item:{id:c.id,productId:c.productId,title:c.title,price:c.price,currency:c.currency,sku:c.sku},quantity:n,price:c.price*n,currency:c.currency}}),window.mcPixel&&(window.mcPixel._handled.removeFromCart=!0,setTimeout(function(){window.mcPixel._handled.removeFromCart=!1},1e3))}),(0,e.addAction)("experimental__woocommerce_blocks-checkout-render-checkout-form",i,function(e){if(!t)return;if(window.mcPixel&&window.mcPixel._handled.checkout)return;const i=e.storeCart;i&&i.cartItems&&0!==i.cartItems.length&&(o("CHECKOUT_STARTED",{checkout:function(e){const i=e.cartTotals||{},t=i.currency_minor_unit||2,c=Math.pow(10,t),n=(e.cartItems||[]).map(d),o=r();return{id:"checkout_"+o,cartId:o,lineItems:n,subtotalPrice:i.total_items?parseInt(i.total_items,10)/c:0,totalTax:i.total_tax?parseInt(i.total_tax,10)/c:0,totalShipping:i.total_shipping?parseInt(i.total_shipping,10)/c:0,totalPrice:i.total_price?parseInt(i.total_price,10)/c:0,currency:(i.currency_code||"").toUpperCase()}}(i)}),window.mcPixel&&(window.mcPixel._handled.checkout=!0))}),(0,e.addAction)("experimental__woocommerce_blocks-product-list-render",i,function(){t&&(window.mcPixel&&window.mcPixel._handled.category||window.mcPixel&&window.mcPixel.data&&window.mcPixel.data.category&&(o("PRODUCT_CATEGORY_VIEWED",window.mcPixel.data.category),window.mcPixel&&(window.mcPixel._handled.category=!0)))}),(0,e.addAction)("experimental__woocommerce_blocks-product-search",i,function(e){if(!t)return;if(window.mcPixel&&window.mcPixel._handled.search)return;const i=e.searchTerm||"";i&&(o("SEARCH_SUBMITTED",{query:i}),window.mcPixel&&(window.mcPixel._handled.search=!0))}),function(){let e=0;!function i(){if(c())return void setTimeout(function(){t=!0},1e3);if(e>=20)return;const r=Math.min(100*Math.pow(2,e),5e3);e+=1,setTimeout(i,r)}()}()})();;

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.