if (typeof (performance) !== 'undefined' && performance.mark) {
performance.mark(markName);
}
}
markPerformance('docStart');
var recordLifecycleEvents = true;
function trackEvent(key, params) {
if (!recordLifecycleEvents) {
return;
}
var eventRequest = new XMLHttpRequest();
eventRequest.open('POST', 'https://events.api.copperstatesupplyinc.shop/api/client-event', true);
eventRequest.withCredentials = true;
eventRequest.setRequestHeader('accept', 'application/json, text/plain, */*');
eventRequest.setRequestHeader('content-type', 'application/json;charset=UTF-8');
eventRequest.send(
JSON.stringify({
event_key: key,
parameter_tokens: params,
})
);
}
trackEvent("retailers-html_init-view", ["web-visitor-server", "/brand/:brandToken([^/]*)", "BRAND_PAGE"]);
if (document.readyState === "loading") {
document.addEventListener('DOMContentLoaded', function (event) {
trackEvent("retailers-resource_complete-view", ["web-visitor-server", "/brand/:brandToken([^/]*)", "BRAND_PAGE"]);
});
window.addEventListener('load', function() {
trackEvent("retailers-load_complete-view", ["web-visitor-server", "/brand/:brandToken([^/]*)", "BRAND_PAGE"]);
});
} else if (document.readyState === "interactive") {
trackEvent("retailers-resource_complete-view", ["web-visitor-server", "/brand/:brandToken([^/]*)", "BRAND_PAGE"]);
window.addEventListener('load', function() {
trackEvent("retailers-load_complete-view", ["web-visitor-server", "/brand/:brandToken([^/]*)", "BRAND_PAGE"]);
});
} else {
trackEvent("retailers-resource_complete-view", ["web-visitor-server", "/brand/:brandToken([^/]*)", "BRAND_PAGE"]);
trackEvent("retailers-load_complete-view", ["web-visitor-server", "/brand/:brandToken([^/]*)", "BRAND_PAGE"]);
}
window.loadTimeInteractions = [];
const captureLoadTimeInteraction = function(event) {
window.loadTimeInteractions.push({
type: event.type,
time: performance.now(),
selector: event.target && event.target.tagName ? event.target.tagName.toLowerCase() + (event.target.getAttribute('data-test-id') ? '.' + event.target.getAttribute('data-test-id') : '') : 'unknown'
});
};
window.startLoadTimeInteractionTracking = function() {
var hasExistingListener = function(eventType) {
var listeners = window.getEventListeners ? window.getEventListeners(window)[eventType] || [] : [];
return listeners.some(function(l) { return l.listener === captureLoadTimeInteraction; });
};
pointerEvents.concat(keyboardEvents, inputEvents).forEach(function(eventType) {
if (!hasExistingListener(eventType)) {
window.addEventListener(eventType, captureLoadTimeInteraction);
}
});
};
window.stopLoadTimeInteractionTracking = function() {
window.loadTimeInteractions = [];
pointerEvents.concat(keyboardEvents, inputEvents).forEach(function(eventType) {
window.removeEventListener(eventType, captureLoadTimeInteraction);
});
};
var pointerEvents = ["click", "pointerdown"];
var keyboardEvents = ["keydown", "keyup"];
var inputEvents = ["input", "change"];
window.startLoadTimeInteractionTracking();
window.addEventListener('scroll', function() {
window.mostRecentScrollTime = performance.now();
});
window.addEventListener('error', function (event) {
var globalErrorEventMessage = "Empty error event";
if (event) {
globalErrorEventMessage = event.message + " at " + event.filename + ":" + event.lineno + ":" + event.colno;
}
trackEvent("retailers-webretailerglobalerror-error", [globalErrorEventMessage]);
});
document.onvisibilitychange = () => {
if (document.visibilityState === "hidden") {
const url = '/api/client-event';
const data = new Blob(
[JSON.stringify({ event_key: 'sessions-session_abandoned-action_unknown', client_created_at: Date.now() })],
{ type: "application/json" }
);
window.navigator.sendBeacon(url, data);
}
};
document.addEventListener('load', (event) => {
if (event.target && event.target.tagName === "IMG") {
event.target.faireLoadTimeStamp = event.timeStamp;
}
},
{ capture: true }
);
About Dissent Pins
Dissent Pins creates fun stuff that celebrate lefty causes, and donates 50%-100% of profits to awesome organizations your customers love.
Read their story
All products
New arrivals
Stickers, pins & magnets
Party supplies
Crafts & hobbies
Games & puzzles
Earrings
Necklaces
Cufflinks & tie clips
Bracelets
Men’s accessories
Men’s clothing
Women’s accessories
Women’s clothing
Home accents
Wall decor
Garden & outdoor
Toys & learning
TRUSTED BY HUNDREDS OF THOUSANDS OF RETAILERS
Ready to start buying wholesale online? Ready to start buying wholesale online?
Free returns on all opening orders
Unique products curated for your store
Sign up to shop The best selection of brands for your shop, all in one place The best selection of brands for your shop, all in one place
Lock
Unlock wholesale pricing
©2025 Faire Wholesale, Inc.