Left Continue shopping
Your Order

You have no items in your cart

You might like
Product
$10.00
Add to cart
Our Beautiful Store is open at 180 East Route 59 #2 Spring Valley, New York 10977

Shop By Brands

About us

What's Behind the Secret Admirer Concept

The short answer is customer satisfaction. Secret Admirer takes gift giving far beyond being just another gift basket. Each gift is the result of carefully considered relationships among the products. We create gift collections with a wide selection to give the recipient many fine gifts wrapped into one, with a particular theme or image. As a result, each gift selection has its own story and personality - which our customers have come to expect and appreciate.

At Secret Admirer, we understand that shopping for personalized baby gifts, baby clothing, baby toys, and baby gift baskets can be overwhelming, not to mention exhausting. For the past 10 years, our personal experiences selling baby gifts has taught us that people want unique selections, quality products and an easy gift-giving service. That's why we have created Secret Admirer Gifts!

static debounce(func, timeout = 300) { let timer; return (...args) => { clearTimeout(timer); timer = setTimeout(() => { func.apply(this, args); }, timeout); }; } loadLazyImage(img) { const imgLazySrc = img.getAttribute('data-lazy-src'), imgLazyBg = img.getAttribute('data-lazy-bg'); if(!imgLazySrc && !imgLazyBg) { console.warn('CC', 'Unable to load lazy image, no URL specified', img); return; } const imageLoadHandler = (newSrc) => { if(imgLazySrc) { img.setAttribute('src', newSrc); } else { img.style.backgroundImage = `url('${newSrc}')`; } // When images are lazy loaded, add a class to any text shadow containers const closestTextShadow = img.closest('.has-tint--shadow'); if (closestTextShadow) { closestTextShadow.classList.add('has-tint--shadow-in'); } // Remove lazy placeholder if (img.parentElement.classList.contains('lazyload--placeholder')) { img.parentElement.classList.remove('lazyload--placeholder'); } img.setAttribute('data-lazy-loaded', true); } // Find the closest parent with a width let imgWidth = img.clientWidth; if (imgWidth === 0) { let getWidth = function (imgParent) { return imgParent.clientWidth > 0 ? imgParent.clientWidth : getWidth(imgParent.parentElement); } imgWidth = getWidth(img.parentElement); } // Get the nearest width which is higher than this images width let closestWidth = 2048; for (let num of [80, 120, 180, 220, 300, 360, 460, 540, 720, 900, 1080, 1296, 1512, 1728, 2048]) { if (num > imgWidth) { closestWidth = num; break; } } // Load the image if(imgLazySrc || imgLazyBg){ const imgUrl = imgLazySrc ? imgLazySrc : imgLazyBg, oldSrc = img.getAttribute('src') || img.style.backgroundImage, newSrc = imgUrl.replace('{width}x', closestWidth + (window.devicePixelRatio > 1 || window.innerWidth <= 1024 ? 'x@2x' : 'x')); if (!oldSrc || oldSrc !== newSrc) { const tempImage = new Image(); tempImage.addEventListener('load', () => imageLoadHandler(newSrc)); tempImage.src = newSrc; } } } loadLazyImages(recheckImages) { let selectorSuffix = recheckImages ? '' : ':not([data-lazy-loaded="true"])'; // If image lazy loading is supported if ('loading' in HTMLImageElement.prototype) { document.querySelectorAll(`[data-lazy-src]${selectorSuffix}`).forEach(this.loadLazyImage); if(this.intersectionObserver) { document.querySelectorAll(`[data-lazy-bg]${selectorSuffix}`).forEach(imgBg => { this.intersectionObserver.observe(imgBg); }); } } else if (this.intersectionObserver) { document.querySelectorAll(`[data-lazy-src]${selectorSuffix},[data-lazy-bg]${selectorSuffix}`).forEach(img => { this.intersectionObserver.observe(img); }); } else { // Lazy loading and intersection observer not supported, fallback!! document.querySelectorAll(`[data-lazy-src]${selectorSuffix},[data-lazy-bg]${selectorSuffix}`).forEach(this.loadLazyImage); } } bindObservers() { // Observe scrolling where needed if ('IntersectionObserver' in window) { this.intersectionObserver = new IntersectionObserver( // Observe window resize events window.addEventListener('resize', ImageLazyLoaderInstance.debounce(() => this.loadLazyImages(true))); window.addEventListener("load", () => { // Observe DOM changes const observer = new MutationObserver(ImageLazyLoaderInstance.debounce(() => { this.loadLazyImages(); // Broadcast an event for future usage document.documentElement.dispatchEvent( new CustomEvent('theme:body-dom-change', {bubbles: true, cancelable: false}) ); }, 10)); observer.observe(document.body, { childList: true, subtree: true }); }); } } window.theme = window.theme || {}; theme.imageLazyLoader = new ImageLazyLoaderInstance(); /* Check for full width sections */ theme.assessFullWidthSections = function() { document.querySelectorAll('.has-alt-bg').forEach(elem => elem.classList.remove('last-alt-bg')); document.querySelectorAll('.has-full-width-section').forEach(elem => elem.classList.remove('last-full-width-section')); document.querySelectorAll('#content .shopify-section > .use-alt-bg').forEach(elem => elem.parentElement.classList.add('has-alt-bg')); document.querySelectorAll('#content .shopify-section > .full-width-section').forEach(elem => { const section = elem.parentElement; section.classList.add('has-full-width-section'); if (section.parentElement.lastElementChild === section) { section.classList.add('last-full-width-section'); } }); }; theme.assessFullWidthSections();