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 ShoreBags
Made from sustainable raw materials in our family factory, ShoreBags's mission is to help reduce the amount of single-use plastic in the environment and empower local communities. We believe in ethical and fair manufacturing practices, transparent supply chains and creating bags that reflect the best in functionality and eco-fashion.
Got a design idea? Owning our own factory gives us unlimited possibilities to customize and rework our designs and offer private label services to our clients, while having complete control of supply chain and pricing. We love collaborations and would welcome your ideas on working together. Contact us anytime at [email protected] Read their story
All Products
Customizable
Women’s accessories
Men’s accessories
Gift wrapping
Crafts & hobbies
Kitchen & tabletop
Storage & organization
Garden & outdoor
Makeup
Explore the full wholesale catalog Explore the full wholesale catalog Explore the full wholesale catalog
Sign up to unlock wholesale pricing on ShoreBags and thousands of brands on Faire, the marketplace for retailers.
Sign up to unlock wholesale pricing on ShoreBags and thousands of brands on Faire, the marketplace for retailers.
Sign up to unlock wholesale pricing on ShoreBags and thousands of brands on Faire, the marketplace for retailers.
Sign up to unlock wholesale pricing on ShoreBags and thousands of brands on Faire, the marketplace for retailers.
Sign up to buy 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 store, all in one place The best selection of brands for your store, all in one place
Lock
Unlock wholesale pricing
©2025 Faire Wholesale, Inc.