@leadmetrics-ai/website-sdk 1.0.21 → 1.0.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("axios");function t(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(o){if("default"!==o){var r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,r.get?r:{enumerable:!0,get:function(){return e[o]}})}})),t.default=e,Object.freeze(t)}var o=t(require("yup"));function r(e,t,o,r){return new(o||(o=Promise))((function(s,i){function
|
|
1
|
+
"use strict";var e=require("axios");function t(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(o){if("default"!==o){var r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,r.get?r:{enumerable:!0,get:function(){return e[o]}})}})),t.default=e,Object.freeze(t)}var o=t(require("yup"));function r(e,t,o,r){return new(o||(o=Promise))((function(s,i){function n(e){try{d(r.next(e))}catch(e){i(e)}}function a(e){try{d(r.throw(e))}catch(e){i(e)}}function d(e){var t;e.done?s(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(n,a)}d((r=r.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;class s{isBrowser(){return"undefined"!=typeof window}createRandomId(){return Math.random().toString(36).substring(2)+(new Date).getTime().toString(36)}getSessionId(){if(this.isBrowser()&&window.sessionStorage){let e=sessionStorage.getItem("lm-sid");return e||(e=this.createRandomId(),sessionStorage.setItem("lm-sid",e)),e}return null}getUserId(){if(this.isBrowser()&&window.localStorage){let e=localStorage.getItem("lm-uid");return e||(e=this.createRandomId(),localStorage.setItem("lm-uid",e)),e}return null}getLocalStorageValue(e){return this.isBrowser()&&window.localStorage?localStorage.getItem(e):null}setLocalStorageValue(e,t){this.isBrowser()&&window.localStorage&&localStorage.setItem(e,t)}removeLocalStorageValue(e){this.isBrowser()&&window.localStorage&&localStorage.removeItem(e)}getSessionStorageValue(e){return this.isBrowser()&&window.sessionStorage?sessionStorage.getItem(e):null}setSessionStorageValue(e,t){this.isBrowser()&&window.sessionStorage&&sessionStorage.setItem(e,t)}removeSessionStorageValue(e){this.isBrowser()&&window.sessionStorage&&sessionStorage.removeItem(e)}}const i=new class{constructor(){this.storageService=new s}getFS(){const e=this.storageService.getUserId(),t=this.storageService.getSessionId();return e&&t?`${e}:${t}`:null}},n=e.create({baseURL:"https://client-api.leadmetrics.ai/api/client/v1/"});n.interceptors.request.use((e=>r(void 0,void 0,void 0,(function*(){e.headers["Api-Key"]=process.env.NEXT_PUBLIC_API_KEY;const t=i.getFS();return t&&(e.headers.fs=t),e}))));const a={getBlogCategories:()=>r(void 0,void 0,void 0,(function*(){return yield n.get("posts/categories").then((e=>e.data))})),getFeaturedPost:()=>r(void 0,void 0,void 0,(function*(){return yield n.get("posts/featured").then((e=>e.data))})),getBlogPosts:e=>r(void 0,void 0,void 0,(function*(){return yield n.get("posts?size="+e).then((e=>e.data))})),getBlogPostsForPage:(e,t)=>r(void 0,void 0,void 0,(function*(){return yield n.get("posts?size="+e+"&page="+t).then((e=>e.data))})),getBlogPostsForCategory:(e,t)=>r(void 0,void 0,void 0,(function*(){return yield n.get("posts?size="+e+"&category="+t).then((e=>e.data))})),getBlogPost:e=>r(void 0,void 0,void 0,(function*(){return yield n.get("posts/"+e).then((e=>e.data))})),getSimilarPosts:(e,t)=>r(void 0,void 0,void 0,(function*(){return yield n.get("posts/"+e+"/similar?count="+t).then((e=>e.data))})),getAllPosts:()=>r(void 0,void 0,void 0,(function*(){return yield n.get("posts/all").then((e=>e.data))}))};class d{}class c extends d{}class l extends c{}const u={getCart:e=>r(void 0,void 0,void 0,(function*(){return yield n.get(`carts/${e}`).then((e=>e.data))})),createCart:e=>r(void 0,void 0,void 0,(function*(){return yield n.post("carts",e).then((e=>e.data))})),updateCart:(e,t)=>r(void 0,void 0,void 0,(function*(){return yield n.put(`carts/${e}/line-items`,t).then((e=>e.data))})),deleteCart:e=>r(void 0,void 0,void 0,(function*(){return yield n.delete(`carts/${e}`).then((e=>e.data))})),setShippingAddress:(e,t)=>r(void 0,void 0,void 0,(function*(){return yield n.put(`carts/${e}/shipping-address`,t).then((e=>e.data))}))};const g={getAllProductCategories:()=>r(void 0,void 0,void 0,(function*(){return yield n.get("productcategories/all").then((e=>e.data))})),getProductCategory:e=>r(void 0,void 0,void 0,(function*(){return yield n.get("productcategories/"+e).then((e=>e.data))})),getProducts:e=>r(void 0,void 0,void 0,(function*(){return yield n.get("products?size="+e).then((e=>e.data))})),getProductsForPage:(e,t)=>r(void 0,void 0,void 0,(function*(){return yield n.get("products?size="+e+"&page="+t).then((e=>e.data))})),searchProducts:(e,t,o,s,i)=>r(void 0,void 0,void 0,(function*(){return yield n.get("products?q="+e+"&category="+t+"&size="+o+"&page="+s+"&sort="+i).then((e=>e.data))})),searchProductsByCategorySlug:(e,t,o,s)=>r(void 0,void 0,void 0,(function*(){return yield n.get("products?categorySlug="+e+"&size="+t+"&page="+o+"&sort="+s).then((e=>e.data))})),getAllProducts:()=>r(void 0,void 0,void 0,(function*(){return yield n.get("products/all").then((e=>e.data))})),getProduct:e=>r(void 0,void 0,void 0,(function*(){return yield n.get("products/"+e).then((e=>e.data))})),getSimilarProducts:(e,t)=>r(void 0,void 0,void 0,(function*(){return yield n.get("products/"+e+"/similar?count="+t).then((e=>e.data))}))};const v={post:(e,t)=>r(void 0,void 0,void 0,(function*(){var o="forms/"+e;return yield n.post(o,t).then((e=>e.data))}))};o.object().shape({name:o.string().required("Please enter your name").min(3),email:o.string().required("Please enter your email").email("Please enter a valid email"),mobile:o.string().required("Please enter your mobile number").matches(/^((\\+[1-9]{1,4}[ \\-]*)|(\\([0-9]{2,3}\\)[ \\-]*)|([0-9]{2,4})[ \\-]*)*?[0-9]{3,4}?[ \\-]*[0-9]{3,4}?$/,"Please enter a valid mobile number"),message:o.string().required("Please enter your message").min(5)});const m={length:0,getItem(){},setItem(){},removeItem(){},clear(){}};class h{constructor(e,t){this.localStorage=e,this.key=t}_makeKey(e){return`${this.key}__${e}`}getItem(e){return this.localStorage.getItem(this._makeKey(e))}setItem(e,t){return this.localStorage.setItem(this._makeKey(e),t)}removeItem(e){return this.localStorage.removeItem(this._makeKey(e))}}class p{constructor(e=globalThis.localStorage||m){this.storage=new h(e,p.KEY)}getRawItem(e){return this.storage.getItem(e)}getItem(e){const t=Date.now(),o=this.storage.getItem(e);if(!o)return;const{value:r,ttl:s,timeStored:i}=JSON.parse(o);if(!(s&&t-i>1e3*s))return JSON.parse(r);this.storage.removeItem(e)}setItem(e,t,o=3600){const r=Date.now();this.storage.setItem(e,JSON.stringify({value:JSON.stringify(t),timeStored:r,ttl:o}))}removeItem(e){this.storage.removeItem(e)}}p.KEY="LM_BROWSER_PERSISTENCE";var f=Object.freeze({__proto__:null,BrowserPersistence:p});const y={success:e=>{alert(e)},error:e=>{alert(e)}};exports.Cart=class extends l{},exports.ContactUsModel=class{},exports.LineItem=class{},exports.NewLineItem=class{},exports.PagingInfo=class{constructor(e,t,o){this.currentPage=e,this.itemsPerPage=t,this.hasNextPage=o,this.totalItems=0}},exports.PostEventModel=class{},exports.PostModel=class extends l{},exports.ProductCategoryModel=class extends l{},exports.ProductModel=class extends l{},exports.ProductVariantModel=class{},exports.SearchResult=class{constructor(){this.items=[]}},exports.ShippingAddress=class{},exports.Utils=f,exports.blogService=a,exports.cartService=u,exports.formService=v,exports.initializeGTM=function(e){if(!e)return void console.error("Google Tag Manager ID is required.");if("undefined"==typeof window)return;if(window.dataLayer&&"function"==typeof window.dataLayer.push)return;window.dataLayer=window.dataLayer||[],function(...e){window.dataLayer.push(e)}("js",new Date);const t=document.createElement("script");t.src=`https://www.googletagmanager.com/gtm.js?id=${e}`,t.async=!0,document.head.appendChild(t);const o=document.createElement("noscript");o.innerHTML=`<iframe src="https://www.googletagmanager.com/ns.html?id=${e}" height="0" width="0" style="display:none;visibility:hidden"></iframe>`,document.body.appendChild(o)},exports.notificationService=y,exports.productService=g;
|
|
2
2
|
//# sourceMappingURL=index.cjs.js.map
|
package/dist/index.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../node_modules/tslib/tslib.es6.js","../src/storage/index.ts","../src/client/index.ts","../src/analytics/index.ts","../src/blog/index.ts","../src/models.ts","../src/cart/index.ts","../src/products/index.ts","../src/form/index.ts","../src/form/types.ts","../src/utils/persistence.ts","../src/utils/notification.ts","../src/cart/types.ts","../src/blog/types.ts","../src/products/types.ts","../src/utils/gtm.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","export class StorageManager {\r\n // Helper function to check if storage is available\r\n private hasStorage(storage: Storage): boolean {\r\n return typeof window !== \"undefined\" && !!storage;\r\n }\r\n\r\n // Create a random ID combining random numbers and the current timestamp\r\n private createRandomId(): string {\r\n return (\r\n Math.random().toString(36).substring(2) +\r\n new Date().getTime().toString(36)\r\n );\r\n }\r\n\r\n // Retrieve or create a session ID in sessionStorage\r\n getSessionId(): string | null {\r\n if (this.hasStorage(window.sessionStorage)) {\r\n let sessionId = sessionStorage.getItem(\"lm-sid\");\r\n if (!sessionId) {\r\n sessionId = this.createRandomId();\r\n sessionStorage.setItem(\"lm-sid\", sessionId);\r\n }\r\n return sessionId;\r\n }\r\n // If sessionStorage is not available, return null\r\n return null;\r\n }\r\n\r\n // Retrieve or create a user ID in localStorage\r\n getUserId(): string | null {\r\n if (this.hasStorage(window.localStorage)) {\r\n let userId = localStorage.getItem(\"lm-uid\");\r\n if (!userId) {\r\n userId = this.createRandomId();\r\n localStorage.setItem(\"lm-uid\", userId);\r\n }\r\n return userId;\r\n }\r\n // If localStorage is not available, return null\r\n return null;\r\n }\r\n\r\n // General getValue method for retrieving items from localStorage\r\n getLocalStorageValue(key: string): string | null {\r\n if (this.hasStorage(window.localStorage)) {\r\n return localStorage.getItem(key);\r\n }\r\n return null;\r\n }\r\n\r\n // General setValue method for setting items in localStorage\r\n setLocalStorageValue(key: string, value: string): void {\r\n if (this.hasStorage(window.localStorage)) {\r\n localStorage.setItem(key, value);\r\n }\r\n }\r\n\r\n // General removeValue method for removing items from localStorage\r\n removeLocalStorageValue(key: string): void {\r\n if (this.hasStorage(window.localStorage)) {\r\n localStorage.removeItem(key);\r\n }\r\n }\r\n\r\n // General getValue method for retrieving items from sessionStorage\r\n getSessionStorageValue(key: string): string | null {\r\n if (this.hasStorage(window.sessionStorage)) {\r\n return sessionStorage.getItem(key);\r\n }\r\n return null;\r\n }\r\n\r\n // General setValue method for setting items in sessionStorage\r\n setSessionStorageValue(key: string, value: string): void {\r\n if (this.hasStorage(window.sessionStorage)) {\r\n sessionStorage.setItem(key, value);\r\n }\r\n }\r\n\r\n // General removeValue method for removing items from sessionStorage\r\n removeSessionStorageValue(key: string): void {\r\n if (this.hasStorage(window.sessionStorage)) {\r\n sessionStorage.removeItem(key);\r\n }\r\n }\r\n}\r\n","import axios from \"axios\";\r\nimport { AnalyticService } from \"../analytics\";\r\n\r\nconst analyticService = new AnalyticService();\r\n\r\nconst client = axios.create({\r\n baseURL: \"https://client-api.leadmetrics.ai/api/client/v1/\",\r\n});\r\n\r\nclient.interceptors.request.use(async (req) => {\r\n req.headers[\"Api-Key\"] = process.env.NEXT_PUBLIC_API_KEY;\r\n\r\n const fs = analyticService.getFS();\r\n\r\n if (fs) {\r\n req.headers[\"fs\"] = fs;\r\n }\r\n\r\n return req;\r\n});\r\n\r\nexport default client;\r\n","import { StorageManager } from \"../storage\";\r\n\r\nexport class AnalyticService {\r\n private storageService: StorageManager;\r\n\r\n constructor() {\r\n this.storageService = new StorageManager();\r\n }\r\n\r\n getFS(): string | null {\r\n const userId = this.storageService.getUserId();\r\n const sessionId = this.storageService.getSessionId();\r\n\r\n if (userId && sessionId) {\r\n return `${userId}:${sessionId}`;\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import client from \"../client\";\r\nimport { PostModel } from \"./types\";\r\nimport { SearchResult } from \"../models\";\r\n\r\nconst getBlogCategories = async () => {\r\n return await client.get<string[]>(\"posts/categories\").then((res) => res.data);\r\n};\r\n\r\nconst getFeaturedPost = async () => {\r\n return await client.get<PostModel>(\"posts/featured\").then((res) => res.data);\r\n};\r\n\r\nconst getBlogPosts = async (count: number) => {\r\n return await client\r\n .get<SearchResult<PostModel>>(\"posts?size=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getBlogPostsForPage = async (count: number, page: number) => {\r\n return await client\r\n .get<SearchResult<PostModel>>(\"posts?size=\" + count + \"&page=\" + page)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getBlogPostsForCategory = async (count: number, category: string) => {\r\n return await client\r\n .get<SearchResult<PostModel>>(\r\n \"posts?size=\" + count + \"&category=\" + category\r\n )\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getBlogPost = async (slug: string | string[] | undefined) => {\r\n return await client.get<PostModel>(\"posts/\" + slug).then((res) => res.data);\r\n};\r\n\r\nconst getSimilarPosts = async (id: string, count: number) => {\r\n return await client\r\n .get<PostModel[]>(\"posts/\" + id + \"/similar?count=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getAllPosts = async () => {\r\n return await client.get<PostModel[]>(\"posts/all\").then((res) => res.data);\r\n};\r\n\r\nexport const blogService = {\r\n getBlogCategories,\r\n getFeaturedPost,\r\n getBlogPosts,\r\n getBlogPostsForPage,\r\n getBlogPostsForCategory,\r\n getBlogPost,\r\n getSimilarPosts,\r\n getAllPosts,\r\n};","export class BaseModel {\r\n public id!: string;\r\n public refId!: string;\r\n public createdOn!: Date;\r\n}\r\n\r\nexport class UserCreatedModel extends BaseModel {\r\n public createdByUserId!: string;\r\n}\r\n\r\nexport class UserModifiableModel extends UserCreatedModel {\r\n public updatedOn?: Date;\r\n public updatedByUserId?: string;\r\n public deletedOn?: Date;\r\n public deletedByUserId?: string;\r\n}\r\n\r\nexport class PagingInfo {\r\n public currentPage: number;\r\n public itemsPerPage: number;\r\n public hasNextPage: boolean;\r\n public totalItems: number;\r\n\r\n constructor(currentPage: number, itemsPerPage: number, hasNextPage: boolean) {\r\n this.currentPage = currentPage;\r\n this.itemsPerPage = itemsPerPage;\r\n this.hasNextPage = hasNextPage;\r\n this.totalItems = 0;\r\n }\r\n}\r\n\r\nexport class SearchResult<T> {\r\n public items: Array<T> = [];\r\n public pagingInfo!: PagingInfo;\r\n}","import client from \"../client\";\r\nimport { Cart, NewLineItem, ShippingAddress } from \"./types\";\r\n\r\nconst getCart = async (id: string) => {\r\n return await client\r\n .get<Cart>(`carts/${id}`)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst createCart = async (body: NewLineItem) => {\r\n return await client\r\n .post<Cart>(`carts`, body)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst updateCart = async (id: string, body: NewLineItem) => {\r\n return await client\r\n .put<Cart>(`carts/${id}/line-items`, body)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst deleteCart = async (id: string) => {\r\n return await client\r\n .delete<Cart>(`carts/${id}`)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst setShippingAddress = async (id: string, body: ShippingAddress) => {\r\n return await client\r\n .put<Cart>(`carts/${id}/shipping-address`, body)\r\n .then((res) => res.data);\r\n};\r\n\r\nexport const cartService = {\r\n getCart,\r\n createCart,\r\n updateCart,\r\n deleteCart,\r\n setShippingAddress\r\n};","import client from \"../client\";\r\nimport { SearchResult } from \"../models\";\r\nimport { ProductCategoryModel, ProductModel } from \"./types\";\r\n\r\nconst getAllProductCategories = async () => {\r\n return await client\r\n .get<ProductCategoryModel[]>(\"productcategories/all\")\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProductCategory = async (slug: string | string[] | undefined) => {\r\n return await client\r\n .get<ProductCategoryModel>(\"productcategories/\" + slug)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getAllProducts = async () => {\r\n return await client\r\n .get<ProductModel[]>(\"products/all\")\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProducts = async (count: number) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\"products?size=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProductsForPage = async (count: number, page: number) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\"products?size=\" + count + \"&page=\" + page)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst searchProducts = async (\r\n q: string,\r\n category: string,\r\n count: number,\r\n page: number,\r\n sort: string\r\n) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\r\n \"products?q=\" +\r\n q +\r\n \"&category=\" +\r\n category +\r\n \"&size=\" +\r\n count +\r\n \"&page=\" +\r\n page +\r\n \"&sort=\" +\r\n sort\r\n )\r\n .then((res) => res.data);\r\n};\r\n\r\nconst searchProductsByCategorySlug = async (\r\n categorySlug: string,\r\n count: number,\r\n page: number,\r\n sort: string\r\n) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\r\n \"products?\" +\r\n \"categorySlug=\" +\r\n categorySlug +\r\n \"&size=\" +\r\n count +\r\n \"&page=\" +\r\n page +\r\n \"&sort=\" +\r\n sort\r\n )\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProduct = async (slug: string | string[] | undefined) => {\r\n return await client\r\n .get<ProductModel>(\"products/\" + slug)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getSimilarProducts = async (id: string, count: number) => {\r\n return await client\r\n .get<ProductModel[]>(\"products/\" + id + \"/similar?count=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nexport const productService = {\r\n getAllProductCategories,\r\n getProductCategory,\r\n getProducts,\r\n getProductsForPage,\r\n searchProducts,\r\n searchProductsByCategorySlug,\r\n getAllProducts,\r\n getProduct,\r\n getSimilarProducts,\r\n};","import client from \"../client\";\r\nimport { ContactUsModel } from \"./types\";\r\n\r\nconst post = async (formId: string, formData: ContactUsModel) => {\r\n var formUrl = \"forms/\" + formId;\r\n return await client.post(formUrl, formData).then((res) => res.data);\r\n};\r\n\r\nexport const formService = {\r\n post\r\n};","import * as yup from \"yup\";\r\n\r\nexport class ContactUsModel {\r\n public name!: string;\r\n public email!: string;\r\n public mobile!: string;\r\n public whatsapp!: string;\r\n public message!: string;\r\n}\r\n\r\nconst regexExpression = {\r\n phone:\r\n /^((\\\\+[1-9]{1,4}[ \\\\-]*)|(\\\\([0-9]{2,3}\\\\)[ \\\\-]*)|([0-9]{2,4})[ \\\\-]*)*?[0-9]{3,4}?[ \\\\-]*[0-9]{3,4}?$/,\r\n password: /^(?=.*[A-Za-z])(?=.*\\d)(?=.*[@$!%*#?&])[A-Za-z\\d@$!%*#?&]{8,}$/,\r\n};\r\n\r\nexport const ContactUsSchema = yup.object().shape({\r\n name: yup.string().required(\"Please enter your name\").min(3),\r\n email: yup\r\n .string()\r\n .required(\"Please enter your email\")\r\n .email(\"Please enter a valid email\"),\r\n mobile: yup\r\n .string()\r\n .required(\"Please enter your mobile number\")\r\n .matches(regexExpression.phone, \"Please enter a valid mobile number\"),\r\n message: yup.string().required(\"Please enter your message\").min(5),\r\n});","/**\r\n * Persistence layer with expiration based on localStorage.\r\n */\r\n\r\nconst storageMock = {\r\n length: 0,\r\n getItem() {},\r\n setItem() {},\r\n removeItem() {},\r\n clear() {},\r\n};\r\n\r\nclass NamespacedLocalStorage {\r\n localStorage;\r\n key;\r\n constructor(localStorage: any, key: string) {\r\n this.localStorage = localStorage;\r\n this.key = key;\r\n }\r\n _makeKey(key: string): string {\r\n return `${this.key}__${key}`;\r\n }\r\n getItem(name: any) {\r\n return this.localStorage.getItem(this._makeKey(name));\r\n }\r\n setItem(name: any, value: any) {\r\n return this.localStorage.setItem(this._makeKey(name), value);\r\n }\r\n removeItem(name: any) {\r\n return this.localStorage.removeItem(this._makeKey(name));\r\n }\r\n}\r\n\r\nexport default class BrowserPersistence {\r\n static KEY = \"LM_BROWSER_PERSISTENCE\";\r\n storage;\r\n constructor(localStorage = globalThis.localStorage || storageMock) {\r\n this.storage = new NamespacedLocalStorage(\r\n localStorage,\r\n BrowserPersistence.KEY\r\n );\r\n }\r\n getRawItem(name: string) {\r\n return this.storage.getItem(name);\r\n }\r\n getItem(name: string) {\r\n const now = Date.now();\r\n const item = this.storage.getItem(name);\r\n if (!item) {\r\n return undefined;\r\n }\r\n const { value, ttl, timeStored } = JSON.parse(item);\r\n\r\n if (ttl && now - timeStored > ttl * 1000) {\r\n this.storage.removeItem(name);\r\n return undefined;\r\n }\r\n\r\n return JSON.parse(value);\r\n }\r\n setItem(name: string, value: any, ttl: any = 3600) {\r\n const timeStored = Date.now();\r\n this.storage.setItem(\r\n name,\r\n JSON.stringify({\r\n value: JSON.stringify(value),\r\n timeStored,\r\n ttl,\r\n })\r\n );\r\n }\r\n removeItem(name: any) {\r\n this.storage.removeItem(name);\r\n }\r\n}\r\n","const success = (message: string) => {\r\n alert(message);\r\n};\r\n\r\nconst error = (message: string) => {\r\n alert(message);\r\n};\r\n\r\nexport const notificationService = {\r\n success,\r\n error,\r\n};","import { UserModifiableModel } from \"../models\";\r\n\r\nexport class Cart extends UserModifiableModel {\r\n lineItems?: LineItem[];\r\n shippingAddress?: ShippingAddress;\r\n total!: number;\r\n currency!: string;\r\n currencySymbol!: string;\r\n}\r\n\r\nexport class LineItem {\r\n id!: string;\r\n productId!: string;\r\n variantId!: string;\r\n productSlug!: string;\r\n productName!: string;\r\n productImage!: string;\r\n price!: number;\r\n quantity!: number;\r\n currency!: string;\r\n currencySymbol!: string;\r\n}\r\n\r\nexport class NewLineItem {\r\n productId!: string;\r\n quantity!: number;\r\n id!: string;\r\n}\r\n\r\nexport class ShippingAddress {\r\n id!: string;\r\n name!: string;\r\n email?: string;\r\n mobile!: string;\r\n address1!: string;\r\n city!: string;\r\n postalCode!: string;\r\n country!: string;\r\n}\r\n","import { UserModifiableModel } from \"../models\";\r\n\r\nexport class PostModel extends UserModifiableModel {\r\n slug!: string;\r\n isFeatured!: boolean;\r\n isActive!: boolean;\r\n category!: string;\r\n featuredImage!: string;\r\n title!: string;\r\n previewContent!: string;\r\n content!: string;\r\n readTime!: number;\r\n impressions!: number;\r\n views!: number;\r\n likes!: number;\r\n publishedOn!: Date;\r\n tags?: string[];\r\n author?: {\r\n name?: string;\r\n id?: string;\r\n };\r\n}","import { UserModifiableModel } from \"../models\";\r\n\r\nexport class ProductVariantModel {\r\n id!: string;\r\n isActive!: boolean;\r\n isFeatured!: boolean;\r\n slug!: string;\r\n images!: string[];\r\n featuredImage!: string;\r\n title!: string;\r\n previewContent!: string;\r\n content!: string;\r\n price!: number;\r\n weight!: number;\r\n impressions!: number;\r\n views!: number;\r\n likes!: number;\r\n tags!: string[];\r\n seo!: {\r\n title: string;\r\n description: string;\r\n keywords: string;\r\n };\r\n}\r\n\r\nexport class ProductModel extends UserModifiableModel {\r\n isActive!: boolean;\r\n isFeatured!: boolean;\r\n slug!: string;\r\n type!: string;\r\n category!: string;\r\n images!: string[];\r\n featuredImage!: string;\r\n title!: string;\r\n previewContent!: string;\r\n content!: string;\r\n price!: number;\r\n weight!: number;\r\n impressions!: number;\r\n views!: number;\r\n likes!: number;\r\n publishedOn!: Date;\r\n tags!: string[];\r\n variants!: ProductVariantModel[];\r\n seo!: {\r\n title: string;\r\n description: string;\r\n keywords: string;\r\n };\r\n}\r\n\r\nexport class ProductCategoryModel extends UserModifiableModel {\r\n name!: string;\r\n description!: string;\r\n featuredImage!: string;\r\n isActive!: boolean;\r\n slug!: string;\r\n products!: number;\r\n}\r\n","// Extend the global Window interface to include dataLayer\r\ndeclare global {\r\n interface Window {\r\n dataLayer: any[];\r\n }\r\n}\r\n\r\nexport function initializeGTM(gtmId: string): void {\r\n if (!gtmId) {\r\n console.error(\"Google Tag Manager ID is required.\");\r\n return;\r\n }\r\n\r\n // Ensure this runs only on the client-side\r\n if (typeof window === \"undefined\") {\r\n return;\r\n }\r\n\r\n // Check if GTM is already initialized\r\n if (window.dataLayer && typeof window.dataLayer.push === \"function\") {\r\n return;\r\n }\r\n\r\n // Define the dataLayer array\r\n window.dataLayer = window.dataLayer || [];\r\n\r\n function gtag(...args: any[]) {\r\n window.dataLayer.push(args);\r\n }\r\n\r\n gtag(\"js\", new Date());\r\n\r\n // Insert the GTM script into the head\r\n const script = document.createElement(\"script\");\r\n script.src = `https://www.googletagmanager.com/gtm.js?id=${gtmId}`;\r\n script.async = true;\r\n document.head.appendChild(script);\r\n\r\n // Optional: Add the noscript fallback for browsers with JavaScript disabled\r\n const noScript = document.createElement(\"noscript\");\r\n noScript.innerHTML = `<iframe src=\"https://www.googletagmanager.com/ns.html?id=${gtmId}\" height=\"0\" width=\"0\" style=\"display:none;visibility:hidden\"></iframe>`;\r\n document.body.appendChild(noScript);\r\n}\r\n"],"names":["__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","SuppressedError","StorageManager","hasStorage","storage","window","createRandomId","Math","random","toString","substring","Date","getTime","getSessionId","this","sessionStorage","sessionId","getItem","setItem","getUserId","localStorage","userId","getLocalStorageValue","key","setLocalStorageValue","removeLocalStorageValue","removeItem","getSessionStorageValue","setSessionStorageValue","removeSessionStorageValue","analyticService","constructor","storageService","getFS","client","axios","create","baseURL","interceptors","request","use","req","headers","process","env","NEXT_PUBLIC_API_KEY","fs","blogService","getBlogCategories","get","res","data","getFeaturedPost","getBlogPosts","count","getBlogPostsForPage","page","getBlogPostsForCategory","category","getBlogPost","slug","getSimilarPosts","id","getAllPosts","BaseModel","UserCreatedModel","UserModifiableModel","cartService","getCart","createCart","body","post","updateCart","put","deleteCart","delete","setShippingAddress","productService","getAllProductCategories","getProductCategory","getProducts","getProductsForPage","searchProducts","q","sort","searchProductsByCategorySlug","categorySlug","getAllProducts","getProduct","getSimilarProducts","formService","formId","formData","formUrl","yup","object","shape","name","string","required","min","email","mobile","matches","message","storageMock","length","clear","NamespacedLocalStorage","_makeKey","BrowserPersistence","globalThis","KEY","getRawItem","now","item","ttl","timeStored","JSON","parse","stringify","notificationService","success","alert","error","currentPage","itemsPerPage","hasNextPage","totalItems","items","gtmId","console","dataLayer","push","args","gtag","script","document","createElement","src","async","head","appendChild","noScript","innerHTML"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../node_modules/tslib/tslib.es6.js","../src/storage/index.ts","../src/client/index.ts","../src/analytics/index.ts","../src/blog/index.ts","../src/models.ts","../src/cart/index.ts","../src/products/index.ts","../src/form/index.ts","../src/form/types.ts","../src/utils/persistence.ts","../src/utils/notification.ts","../src/cart/types.ts","../src/blog/types.ts","../src/products/types.ts","../src/utils/gtm.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","export class StorageManager {\r\n // Helper function to check if running in the browser\r\n private isBrowser(): boolean {\r\n return typeof window !== \"undefined\";\r\n }\r\n\r\n // Create a random ID combining random numbers and the current timestamp\r\n private createRandomId(): string {\r\n return (\r\n Math.random().toString(36).substring(2) +\r\n new Date().getTime().toString(36)\r\n );\r\n }\r\n\r\n // Retrieve or create a session ID in sessionStorage\r\n getSessionId(): string | null {\r\n if (this.isBrowser() && window.sessionStorage) {\r\n let sessionId = sessionStorage.getItem(\"lm-sid\");\r\n if (!sessionId) {\r\n sessionId = this.createRandomId();\r\n sessionStorage.setItem(\"lm-sid\", sessionId);\r\n }\r\n return sessionId;\r\n }\r\n return null;\r\n }\r\n\r\n // Retrieve or create a user ID in localStorage\r\n getUserId(): string | null {\r\n if (this.isBrowser() && window.localStorage) {\r\n let userId = localStorage.getItem(\"lm-uid\");\r\n if (!userId) {\r\n userId = this.createRandomId();\r\n localStorage.setItem(\"lm-uid\", userId);\r\n }\r\n return userId;\r\n }\r\n return null;\r\n }\r\n\r\n // General getValue method for retrieving items from localStorage\r\n getLocalStorageValue(key: string): string | null {\r\n if (this.isBrowser() && window.localStorage) {\r\n return localStorage.getItem(key);\r\n }\r\n return null;\r\n }\r\n\r\n // General setValue method for setting items in localStorage\r\n setLocalStorageValue(key: string, value: string): void {\r\n if (this.isBrowser() && window.localStorage) {\r\n localStorage.setItem(key, value);\r\n }\r\n }\r\n\r\n // General removeValue method for removing items from localStorage\r\n removeLocalStorageValue(key: string): void {\r\n if (this.isBrowser() && window.localStorage) {\r\n localStorage.removeItem(key);\r\n }\r\n }\r\n\r\n // General getValue method for retrieving items from sessionStorage\r\n getSessionStorageValue(key: string): string | null {\r\n if (this.isBrowser() && window.sessionStorage) {\r\n return sessionStorage.getItem(key);\r\n }\r\n return null;\r\n }\r\n\r\n // General setValue method for setting items in sessionStorage\r\n setSessionStorageValue(key: string, value: string): void {\r\n if (this.isBrowser() && window.sessionStorage) {\r\n sessionStorage.setItem(key, value);\r\n }\r\n }\r\n\r\n // General removeValue method for removing items from sessionStorage\r\n removeSessionStorageValue(key: string): void {\r\n if (this.isBrowser() && window.sessionStorage) {\r\n sessionStorage.removeItem(key);\r\n }\r\n }\r\n}\r\n","import axios from \"axios\";\r\nimport { AnalyticService } from \"../analytics\";\r\n\r\nconst analyticService = new AnalyticService();\r\n\r\nconst client = axios.create({\r\n baseURL: \"https://client-api.leadmetrics.ai/api/client/v1/\",\r\n});\r\n\r\nclient.interceptors.request.use(async (req) => {\r\n req.headers[\"Api-Key\"] = process.env.NEXT_PUBLIC_API_KEY;\r\n\r\n const fs = analyticService.getFS();\r\n\r\n if (fs) {\r\n req.headers[\"fs\"] = fs;\r\n }\r\n\r\n return req;\r\n});\r\n\r\nexport default client;\r\n","import { StorageManager } from \"../storage\";\r\n\r\nexport class AnalyticService {\r\n private storageService: StorageManager;\r\n\r\n constructor() {\r\n this.storageService = new StorageManager();\r\n }\r\n\r\n getFS(): string | null {\r\n const userId = this.storageService.getUserId();\r\n const sessionId = this.storageService.getSessionId();\r\n\r\n if (userId && sessionId) {\r\n return `${userId}:${sessionId}`;\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import client from \"../client\";\r\nimport { PostModel } from \"./types\";\r\nimport { SearchResult } from \"../models\";\r\n\r\nconst getBlogCategories = async () => {\r\n return await client.get<string[]>(\"posts/categories\").then((res) => res.data);\r\n};\r\n\r\nconst getFeaturedPost = async () => {\r\n return await client.get<PostModel>(\"posts/featured\").then((res) => res.data);\r\n};\r\n\r\nconst getBlogPosts = async (count: number) => {\r\n return await client\r\n .get<SearchResult<PostModel>>(\"posts?size=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getBlogPostsForPage = async (count: number, page: number) => {\r\n return await client\r\n .get<SearchResult<PostModel>>(\"posts?size=\" + count + \"&page=\" + page)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getBlogPostsForCategory = async (count: number, category: string) => {\r\n return await client\r\n .get<SearchResult<PostModel>>(\r\n \"posts?size=\" + count + \"&category=\" + category\r\n )\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getBlogPost = async (slug: string | string[] | undefined) => {\r\n return await client.get<PostModel>(\"posts/\" + slug).then((res) => res.data);\r\n};\r\n\r\nconst getSimilarPosts = async (id: string, count: number) => {\r\n return await client\r\n .get<PostModel[]>(\"posts/\" + id + \"/similar?count=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getAllPosts = async () => {\r\n return await client.get<PostModel[]>(\"posts/all\").then((res) => res.data);\r\n};\r\n\r\nexport const blogService = {\r\n getBlogCategories,\r\n getFeaturedPost,\r\n getBlogPosts,\r\n getBlogPostsForPage,\r\n getBlogPostsForCategory,\r\n getBlogPost,\r\n getSimilarPosts,\r\n getAllPosts,\r\n};","export class BaseModel {\r\n public id!: string;\r\n public refId!: string;\r\n public createdOn!: Date;\r\n}\r\n\r\nexport class UserCreatedModel extends BaseModel {\r\n public createdByUserId!: string;\r\n}\r\n\r\nexport class UserModifiableModel extends UserCreatedModel {\r\n public updatedOn?: Date;\r\n public updatedByUserId?: string;\r\n public deletedOn?: Date;\r\n public deletedByUserId?: string;\r\n}\r\n\r\nexport class PagingInfo {\r\n public currentPage: number;\r\n public itemsPerPage: number;\r\n public hasNextPage: boolean;\r\n public totalItems: number;\r\n\r\n constructor(currentPage: number, itemsPerPage: number, hasNextPage: boolean) {\r\n this.currentPage = currentPage;\r\n this.itemsPerPage = itemsPerPage;\r\n this.hasNextPage = hasNextPage;\r\n this.totalItems = 0;\r\n }\r\n}\r\n\r\nexport class SearchResult<T> {\r\n public items: Array<T> = [];\r\n public pagingInfo!: PagingInfo;\r\n}","import client from \"../client\";\r\nimport { Cart, NewLineItem, ShippingAddress } from \"./types\";\r\n\r\nconst getCart = async (id: string) => {\r\n return await client\r\n .get<Cart>(`carts/${id}`)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst createCart = async (body: NewLineItem) => {\r\n return await client\r\n .post<Cart>(`carts`, body)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst updateCart = async (id: string, body: NewLineItem) => {\r\n return await client\r\n .put<Cart>(`carts/${id}/line-items`, body)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst deleteCart = async (id: string) => {\r\n return await client\r\n .delete<Cart>(`carts/${id}`)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst setShippingAddress = async (id: string, body: ShippingAddress) => {\r\n return await client\r\n .put<Cart>(`carts/${id}/shipping-address`, body)\r\n .then((res) => res.data);\r\n};\r\n\r\nexport const cartService = {\r\n getCart,\r\n createCart,\r\n updateCart,\r\n deleteCart,\r\n setShippingAddress\r\n};","import client from \"../client\";\r\nimport { SearchResult } from \"../models\";\r\nimport { ProductCategoryModel, ProductModel } from \"./types\";\r\n\r\nconst getAllProductCategories = async () => {\r\n return await client\r\n .get<ProductCategoryModel[]>(\"productcategories/all\")\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProductCategory = async (slug: string | string[] | undefined) => {\r\n return await client\r\n .get<ProductCategoryModel>(\"productcategories/\" + slug)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getAllProducts = async () => {\r\n return await client\r\n .get<ProductModel[]>(\"products/all\")\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProducts = async (count: number) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\"products?size=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProductsForPage = async (count: number, page: number) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\"products?size=\" + count + \"&page=\" + page)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst searchProducts = async (\r\n q: string,\r\n category: string,\r\n count: number,\r\n page: number,\r\n sort: string\r\n) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\r\n \"products?q=\" +\r\n q +\r\n \"&category=\" +\r\n category +\r\n \"&size=\" +\r\n count +\r\n \"&page=\" +\r\n page +\r\n \"&sort=\" +\r\n sort\r\n )\r\n .then((res) => res.data);\r\n};\r\n\r\nconst searchProductsByCategorySlug = async (\r\n categorySlug: string,\r\n count: number,\r\n page: number,\r\n sort: string\r\n) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\r\n \"products?\" +\r\n \"categorySlug=\" +\r\n categorySlug +\r\n \"&size=\" +\r\n count +\r\n \"&page=\" +\r\n page +\r\n \"&sort=\" +\r\n sort\r\n )\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProduct = async (slug: string | string[] | undefined) => {\r\n return await client\r\n .get<ProductModel>(\"products/\" + slug)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getSimilarProducts = async (id: string, count: number) => {\r\n return await client\r\n .get<ProductModel[]>(\"products/\" + id + \"/similar?count=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nexport const productService = {\r\n getAllProductCategories,\r\n getProductCategory,\r\n getProducts,\r\n getProductsForPage,\r\n searchProducts,\r\n searchProductsByCategorySlug,\r\n getAllProducts,\r\n getProduct,\r\n getSimilarProducts,\r\n};","import client from \"../client\";\r\nimport { ContactUsModel } from \"./types\";\r\n\r\nconst post = async (formId: string, formData: ContactUsModel) => {\r\n var formUrl = \"forms/\" + formId;\r\n return await client.post(formUrl, formData).then((res) => res.data);\r\n};\r\n\r\nexport const formService = {\r\n post\r\n};","import * as yup from \"yup\";\r\n\r\nexport class ContactUsModel {\r\n public name!: string;\r\n public email!: string;\r\n public mobile!: string;\r\n public whatsapp!: string;\r\n public message!: string;\r\n}\r\n\r\nconst regexExpression = {\r\n phone:\r\n /^((\\\\+[1-9]{1,4}[ \\\\-]*)|(\\\\([0-9]{2,3}\\\\)[ \\\\-]*)|([0-9]{2,4})[ \\\\-]*)*?[0-9]{3,4}?[ \\\\-]*[0-9]{3,4}?$/,\r\n password: /^(?=.*[A-Za-z])(?=.*\\d)(?=.*[@$!%*#?&])[A-Za-z\\d@$!%*#?&]{8,}$/,\r\n};\r\n\r\nexport const ContactUsSchema = yup.object().shape({\r\n name: yup.string().required(\"Please enter your name\").min(3),\r\n email: yup\r\n .string()\r\n .required(\"Please enter your email\")\r\n .email(\"Please enter a valid email\"),\r\n mobile: yup\r\n .string()\r\n .required(\"Please enter your mobile number\")\r\n .matches(regexExpression.phone, \"Please enter a valid mobile number\"),\r\n message: yup.string().required(\"Please enter your message\").min(5),\r\n});","/**\r\n * Persistence layer with expiration based on localStorage.\r\n */\r\n\r\nconst storageMock = {\r\n length: 0,\r\n getItem() {},\r\n setItem() {},\r\n removeItem() {},\r\n clear() {},\r\n};\r\n\r\nclass NamespacedLocalStorage {\r\n localStorage;\r\n key;\r\n constructor(localStorage: any, key: string) {\r\n this.localStorage = localStorage;\r\n this.key = key;\r\n }\r\n _makeKey(key: string): string {\r\n return `${this.key}__${key}`;\r\n }\r\n getItem(name: any) {\r\n return this.localStorage.getItem(this._makeKey(name));\r\n }\r\n setItem(name: any, value: any) {\r\n return this.localStorage.setItem(this._makeKey(name), value);\r\n }\r\n removeItem(name: any) {\r\n return this.localStorage.removeItem(this._makeKey(name));\r\n }\r\n}\r\n\r\nexport default class BrowserPersistence {\r\n static KEY = \"LM_BROWSER_PERSISTENCE\";\r\n storage;\r\n constructor(localStorage = globalThis.localStorage || storageMock) {\r\n this.storage = new NamespacedLocalStorage(\r\n localStorage,\r\n BrowserPersistence.KEY\r\n );\r\n }\r\n getRawItem(name: string) {\r\n return this.storage.getItem(name);\r\n }\r\n getItem(name: string) {\r\n const now = Date.now();\r\n const item = this.storage.getItem(name);\r\n if (!item) {\r\n return undefined;\r\n }\r\n const { value, ttl, timeStored } = JSON.parse(item);\r\n\r\n if (ttl && now - timeStored > ttl * 1000) {\r\n this.storage.removeItem(name);\r\n return undefined;\r\n }\r\n\r\n return JSON.parse(value);\r\n }\r\n setItem(name: string, value: any, ttl: any = 3600) {\r\n const timeStored = Date.now();\r\n this.storage.setItem(\r\n name,\r\n JSON.stringify({\r\n value: JSON.stringify(value),\r\n timeStored,\r\n ttl,\r\n })\r\n );\r\n }\r\n removeItem(name: any) {\r\n this.storage.removeItem(name);\r\n }\r\n}\r\n","const success = (message: string) => {\r\n alert(message);\r\n};\r\n\r\nconst error = (message: string) => {\r\n alert(message);\r\n};\r\n\r\nexport const notificationService = {\r\n success,\r\n error,\r\n};","import { UserModifiableModel } from \"../models\";\r\n\r\nexport class Cart extends UserModifiableModel {\r\n lineItems?: LineItem[];\r\n shippingAddress?: ShippingAddress;\r\n total!: number;\r\n currency!: string;\r\n currencySymbol!: string;\r\n}\r\n\r\nexport class LineItem {\r\n id!: string;\r\n productId!: string;\r\n variantId!: string;\r\n productSlug!: string;\r\n productName!: string;\r\n productImage!: string;\r\n price!: number;\r\n quantity!: number;\r\n currency!: string;\r\n currencySymbol!: string;\r\n}\r\n\r\nexport class NewLineItem {\r\n productId!: string;\r\n quantity!: number;\r\n id!: string;\r\n}\r\n\r\nexport class ShippingAddress {\r\n id!: string;\r\n name!: string;\r\n email?: string;\r\n mobile!: string;\r\n address1!: string;\r\n city!: string;\r\n postalCode!: string;\r\n country!: string;\r\n}\r\n","import { UserModifiableModel } from \"../models\";\r\n\r\nexport class PostModel extends UserModifiableModel {\r\n slug!: string;\r\n isFeatured!: boolean;\r\n isActive!: boolean;\r\n category!: string;\r\n featuredImage!: string;\r\n title!: string;\r\n previewContent!: string;\r\n content!: string;\r\n readTime!: number;\r\n impressions!: number;\r\n views!: number;\r\n likes!: number;\r\n publishedOn!: Date;\r\n tags?: string[];\r\n author?: {\r\n name?: string;\r\n id?: string;\r\n };\r\n}","import { UserModifiableModel } from \"../models\";\r\n\r\nexport class ProductVariantModel {\r\n id!: string;\r\n isActive!: boolean;\r\n isFeatured!: boolean;\r\n slug!: string;\r\n images!: string[];\r\n featuredImage!: string;\r\n title!: string;\r\n previewContent!: string;\r\n content!: string;\r\n price!: number;\r\n weight!: number;\r\n impressions!: number;\r\n views!: number;\r\n likes!: number;\r\n tags!: string[];\r\n seo!: {\r\n title: string;\r\n description: string;\r\n keywords: string;\r\n };\r\n}\r\n\r\nexport class ProductModel extends UserModifiableModel {\r\n isActive!: boolean;\r\n isFeatured!: boolean;\r\n slug!: string;\r\n type!: string;\r\n category!: string;\r\n images!: string[];\r\n featuredImage!: string;\r\n title!: string;\r\n previewContent!: string;\r\n content!: string;\r\n price!: number;\r\n weight!: number;\r\n impressions!: number;\r\n views!: number;\r\n likes!: number;\r\n publishedOn!: Date;\r\n tags!: string[];\r\n variants!: ProductVariantModel[];\r\n seo!: {\r\n title: string;\r\n description: string;\r\n keywords: string;\r\n };\r\n}\r\n\r\nexport class ProductCategoryModel extends UserModifiableModel {\r\n name!: string;\r\n description!: string;\r\n featuredImage!: string;\r\n isActive!: boolean;\r\n slug!: string;\r\n products!: number;\r\n}\r\n","// Extend the global Window interface to include dataLayer\r\ndeclare global {\r\n interface Window {\r\n dataLayer: any[];\r\n }\r\n}\r\n\r\nexport function initializeGTM(gtmId: string): void {\r\n if (!gtmId) {\r\n console.error(\"Google Tag Manager ID is required.\");\r\n return;\r\n }\r\n\r\n // Ensure this runs only on the client-side\r\n if (typeof window === \"undefined\") {\r\n return;\r\n }\r\n\r\n // Check if GTM is already initialized\r\n if (window.dataLayer && typeof window.dataLayer.push === \"function\") {\r\n return;\r\n }\r\n\r\n // Define the dataLayer array\r\n window.dataLayer = window.dataLayer || [];\r\n\r\n function gtag(...args: any[]) {\r\n window.dataLayer.push(args);\r\n }\r\n\r\n gtag(\"js\", new Date());\r\n\r\n // Insert the GTM script into the head\r\n const script = document.createElement(\"script\");\r\n script.src = `https://www.googletagmanager.com/gtm.js?id=${gtmId}`;\r\n script.async = true;\r\n document.head.appendChild(script);\r\n\r\n // Optional: Add the noscript fallback for browsers with JavaScript disabled\r\n const noScript = document.createElement(\"noscript\");\r\n noScript.innerHTML = `<iframe src=\"https://www.googletagmanager.com/ns.html?id=${gtmId}\" height=\"0\" width=\"0\" style=\"display:none;visibility:hidden\"></iframe>`;\r\n document.body.appendChild(noScript);\r\n}\r\n"],"names":["__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","SuppressedError","StorageManager","isBrowser","window","createRandomId","Math","random","toString","substring","Date","getTime","getSessionId","this","sessionStorage","sessionId","getItem","setItem","getUserId","localStorage","userId","getLocalStorageValue","key","setLocalStorageValue","removeLocalStorageValue","removeItem","getSessionStorageValue","setSessionStorageValue","removeSessionStorageValue","analyticService","constructor","storageService","getFS","client","axios","create","baseURL","interceptors","request","use","req","headers","process","env","NEXT_PUBLIC_API_KEY","fs","blogService","getBlogCategories","get","res","data","getFeaturedPost","getBlogPosts","count","getBlogPostsForPage","page","getBlogPostsForCategory","category","getBlogPost","slug","getSimilarPosts","id","getAllPosts","BaseModel","UserCreatedModel","UserModifiableModel","cartService","getCart","createCart","body","post","updateCart","put","deleteCart","delete","setShippingAddress","productService","getAllProductCategories","getProductCategory","getProducts","getProductsForPage","searchProducts","q","sort","searchProductsByCategorySlug","categorySlug","getAllProducts","getProduct","getSimilarProducts","formService","formId","formData","formUrl","yup","object","shape","name","string","required","min","email","mobile","matches","message","storageMock","length","clear","NamespacedLocalStorage","_makeKey","BrowserPersistence","globalThis","storage","KEY","getRawItem","now","item","ttl","timeStored","JSON","parse","stringify","notificationService","success","alert","error","currentPage","itemsPerPage","hasNextPage","totalItems","items","gtmId","console","dataLayer","push","args","gtag","script","document","createElement","src","async","head","appendChild","noScript","innerHTML"],"mappings":"+TAkHO,SAASA,EAAUC,EAASC,EAAYC,EAAGC,GAE9C,OAAO,IAAKD,IAAMA,EAAIE,WAAU,SAAUC,EAASC,GAC/C,SAASC,EAAUC,GAAS,IAAMC,EAAKN,EAAUO,KAAKF,GAAQ,CAAG,MAAOG,GAAKL,EAAOK,GAAO,CAC3F,SAASC,EAASJ,GAAS,IAAMC,EAAKN,EAAiB,MAAEK,GAAU,CAAC,MAAOG,GAAKL,EAAOK,GAAO,CAC9F,SAASF,EAAKI,GAJlB,IAAeL,EAIaK,EAAOC,KAAOT,EAAQQ,EAAOL,QAJ1CA,EAIyDK,EAAOL,MAJhDA,aAAiBN,EAAIM,EAAQ,IAAIN,GAAE,SAAUG,GAAWA,EAAQG,EAAO,KAIhBO,KAAKR,EAAWK,EAAY,CAC9GH,GAAMN,EAAYA,EAAUa,MAAMhB,EAASC,GAAc,KAAKS,OACtE,GACA,CAqMkD,mBAApBO,iBAAiCA,sBC/TlDC,EAEH,SAAAC,GACN,MAAyB,oBAAXC,MACf,CAGO,cAAAC,GACN,OACEC,KAAKC,SAASC,SAAS,IAAIC,UAAU,IACrC,IAAIC,MAAOC,UAAUH,SAAS,GAEjC,CAGD,YAAAI,GACE,GAAIC,KAAKV,aAAeC,OAAOU,eAAgB,CAC7C,IAAIC,EAAYD,eAAeE,QAAQ,UAKvC,OAJKD,IACHA,EAAYF,KAAKR,iBACjBS,eAAeG,QAAQ,SAAUF,IAE5BA,CACR,CACD,OAAO,IACR,CAGD,SAAAG,GACE,GAAIL,KAAKV,aAAeC,OAAOe,aAAc,CAC3C,IAAIC,EAASD,aAAaH,QAAQ,UAKlC,OAJKI,IACHA,EAASP,KAAKR,iBACdc,aAAaF,QAAQ,SAAUG,IAE1BA,CACR,CACD,OAAO,IACR,CAGD,oBAAAC,CAAqBC,GACnB,OAAIT,KAAKV,aAAeC,OAAOe,aACtBA,aAAaH,QAAQM,GAEvB,IACR,CAGD,oBAAAC,CAAqBD,EAAa9B,GAC5BqB,KAAKV,aAAeC,OAAOe,cAC7BA,aAAaF,QAAQK,EAAK9B,EAE7B,CAGD,uBAAAgC,CAAwBF,GAClBT,KAAKV,aAAeC,OAAOe,cAC7BA,aAAaM,WAAWH,EAE3B,CAGD,sBAAAI,CAAuBJ,GACrB,OAAIT,KAAKV,aAAeC,OAAOU,eACtBA,eAAeE,QAAQM,GAEzB,IACR,CAGD,sBAAAK,CAAuBL,EAAa9B,GAC9BqB,KAAKV,aAAeC,OAAOU,gBAC7BA,eAAeG,QAAQK,EAAK9B,EAE/B,CAGD,yBAAAoC,CAA0BN,GACpBT,KAAKV,aAAeC,OAAOU,gBAC7BA,eAAeW,WAAWH,EAE7B,EC/EH,MAAMO,EAAkB,UCEtB,WAAAC,GACEjB,KAAKkB,eAAiB,IAAI7B,CAC3B,CAED,KAAA8B,GACE,MAAMZ,EAASP,KAAKkB,eAAeb,YAC7BH,EAAYF,KAAKkB,eAAenB,eAEtC,OAAIQ,GAAUL,EACL,GAAGK,KAAUL,IAGf,IACR,GDbGkB,EAASC,EAAMC,OAAO,CAC1BC,QAAS,qDAGXH,EAAOI,aAAaC,QAAQC,KAAWC,GAAOzD,OAAA,OAAA,OAAA,GAAA,YAC5CyD,EAAIC,QAAQ,WAAaC,QAAQC,IAAIC,oBAErC,MAAMC,EAAKhB,EAAgBG,QAM3B,OAJIa,IACFL,EAAIC,QAAY,GAAII,GAGfL,CACT,MEfA,MA0CaM,EAAc,CACzBC,kBA3CwB,IAAWhE,OAAA,OAAA,OAAA,GAAA,YACnC,aAAakD,EAAOe,IAAc,oBAAoBjD,MAAMkD,GAAQA,EAAIC,MAC1E,IA0CEC,gBAxCsB,IAAWpE,OAAA,OAAA,OAAA,GAAA,YACjC,aAAakD,EAAOe,IAAe,kBAAkBjD,MAAMkD,GAAQA,EAAIC,MACzE,IAuCEE,aArC0BC,GAAiBtE,OAAA,OAAA,OAAA,GAAA,YAC3C,aAAakD,EACVe,IAA6B,cAAgBK,GAC7CtD,MAAMkD,GAAQA,EAAIC,MACvB,IAkCEI,oBAhC0B,CAAOD,EAAeE,IAAgBxE,OAAA,OAAA,OAAA,GAAA,YAChE,aAAakD,EACVe,IAA6B,cAAgBK,EAAQ,SAAWE,GAChExD,MAAMkD,GAAQA,EAAIC,MACvB,IA6BEM,wBA3B8B,CAAOH,EAAeI,IAAoB1E,OAAA,OAAA,OAAA,GAAA,YACxE,aAAakD,EACVe,IACC,cAAgBK,EAAQ,aAAeI,GAExC1D,MAAMkD,GAAQA,EAAIC,MACvB,IAsBEQ,YApByBC,GAAuC5E,OAAA,OAAA,OAAA,GAAA,YAChE,aAAakD,EAAOe,IAAe,SAAWW,GAAM5D,MAAMkD,GAAQA,EAAIC,MACxE,IAmBEU,gBAjBsB,CAAOC,EAAYR,IAAiBtE,OAAA,OAAA,OAAA,GAAA,YAC1D,aAAakD,EACVe,IAAiB,SAAWa,EAAK,kBAAoBR,GACrDtD,MAAMkD,GAAQA,EAAIC,MACvB,IAcEY,YAZkB,IAAW/E,OAAA,OAAA,OAAA,GAAA,YAC7B,aAAakD,EAAOe,IAAiB,aAAajD,MAAMkD,GAAQA,EAAIC,MACtE,WC5Caa,GAMP,MAAOC,UAAyBD,GAIhC,MAAOE,UAA4BD,GCPzC,MA8BaE,EAAc,CACzBC,QA/BqBN,GAAc9E,OAAA,OAAA,OAAA,GAAA,YACnC,aAAakD,EACVe,IAAU,SAASa,KACnB9D,MAAMkD,GAAQA,EAAIC,MACvB,IA4BEkB,WA1BwBC,GAAqBtF,OAAA,OAAA,OAAA,GAAA,YAC7C,aAAakD,EACVqC,KAAW,QAASD,GACpBtE,MAAMkD,GAAQA,EAAIC,MACvB,IAuBEqB,WArBiB,CAAOV,EAAYQ,IAAqBtF,OAAA,OAAA,OAAA,GAAA,YACzD,aAAakD,EACVuC,IAAU,SAASX,eAAiBQ,GACpCtE,MAAMkD,GAAQA,EAAIC,MACvB,IAkBEuB,WAhBwBZ,GAAc9E,OAAA,OAAA,OAAA,GAAA,YACtC,aAAakD,EACVyC,OAAa,SAASb,KACtB9D,MAAMkD,GAAQA,EAAIC,MACvB,IAaEyB,mBAXyB,CAAOd,EAAYQ,IAAyBtF,OAAA,OAAA,OAAA,GAAA,YACrE,aAAakD,EACVuC,IAAU,SAASX,qBAAuBQ,GAC1CtE,MAAMkD,GAAQA,EAAIC,MACvB,KC3BA,MAsFa0B,EAAiB,CAC5BC,wBAvF8B,IAAW9F,OAAA,OAAA,OAAA,GAAA,YACzC,aAAakD,EACVe,IAA4B,2BAC5BjD,MAAMkD,GAAQA,EAAIC,MACvB,IAoFE4B,mBAlFgCnB,GAAuC5E,OAAA,OAAA,OAAA,GAAA,YACvE,aAAakD,EACVe,IAA0B,uBAAyBW,GACnD5D,MAAMkD,GAAQA,EAAIC,MACvB,IA+EE6B,YAvEyB1B,GAAiBtE,OAAA,OAAA,OAAA,GAAA,YAC1C,aAAakD,EACVe,IAAgC,iBAAmBK,GACnDtD,MAAMkD,GAAQA,EAAIC,MACvB,IAoEE8B,mBAlEyB,CAAO3B,EAAeE,IAAgBxE,OAAA,OAAA,OAAA,GAAA,YAC/D,aAAakD,EACVe,IAAgC,iBAAmBK,EAAQ,SAAWE,GACtExD,MAAMkD,GAAQA,EAAIC,MACvB,IA+DE+B,eA7DqB,CACrBC,EACAzB,EACAJ,EACAE,EACA4B,IACEpG,OAAA,OAAA,OAAA,GAAA,YACF,aAAakD,EACVe,IACC,cACAkC,EACA,aACAzB,EACA,SACAJ,EACA,SACAE,EACA,SACA4B,GAEDpF,MAAMkD,GAAQA,EAAIC,MACvB,IAyCEkC,6BAvCmC,CACnCC,EACAhC,EACAE,EACA4B,IACEpG,OAAA,OAAA,OAAA,GAAA,YACF,aAAakD,EACVe,IACC,yBAEAqC,EACA,SACAhC,EACA,SACAE,EACA,SACA4B,GAEDpF,MAAMkD,GAAQA,EAAIC,MACvB,IAqBEoC,eAjFqB,IAAWvG,OAAA,OAAA,OAAA,GAAA,YAChC,aAAakD,EACVe,IAAoB,gBACpBjD,MAAMkD,GAAQA,EAAIC,MACvB,IA8EEqC,WApBwB5B,GAAuC5E,OAAA,OAAA,OAAA,GAAA,YAC/D,aAAakD,EACVe,IAAkB,YAAcW,GAChC5D,MAAMkD,GAAQA,EAAIC,MACvB,IAiBEsC,mBAfyB,CAAO3B,EAAYR,IAAiBtE,OAAA,OAAA,OAAA,GAAA,YAC7D,aAAakD,EACVe,IAAoB,YAAca,EAAK,kBAAoBR,GAC3DtD,MAAMkD,GAAQA,EAAIC,MACvB,KCrFA,MAKauC,EAAc,CACvBnB,KANS,CAAOoB,EAAgBC,IAA4B5G,OAAA,OAAA,OAAA,GAAA,YAC5D,IAAI6G,EAAU,SAAWF,EACzB,aAAazD,EAAOqC,KAAKsB,EAASD,GAAU5F,MAAMkD,GAAQA,EAAIC,MAClE,KCU+B2C,EAAIC,SAASC,MAAM,CAC9CC,KAAMH,EAAII,SAASC,SAAS,0BAA0BC,IAAI,GAC1DC,MAAOP,EACFI,SACAC,SAAS,2BACTE,MAAM,8BACXC,OAAQR,EACHI,SACAC,SAAS,mCACTI,QAbD,0GAagC,sCACpCC,QAASV,EAAII,SAASC,SAAS,6BAA6BC,IAAI,KCtBpE,MAAMK,EAAc,CAClBC,OAAQ,EACR,OAAAzF,GAAY,EACZ,OAAAC,GAAY,EACZ,UAAAQ,GAAe,EACf,KAAAiF,GAAU,GAGZ,MAAMC,EAGJ,WAAA7E,CAAYX,EAAmBG,GAC7BT,KAAKM,aAAeA,EACpBN,KAAKS,IAAMA,CACZ,CACD,QAAAsF,CAAStF,GACP,MAAO,GAAGT,KAAKS,QAAQA,GACxB,CACD,OAAAN,CAAQgF,GACN,OAAOnF,KAAKM,aAAaH,QAAQH,KAAK+F,SAASZ,GAChD,CACD,OAAA/E,CAAQ+E,EAAWxG,GACjB,OAAOqB,KAAKM,aAAaF,QAAQJ,KAAK+F,SAASZ,GAAOxG,EACvD,CACD,UAAAiC,CAAWuE,GACT,OAAOnF,KAAKM,aAAaM,WAAWZ,KAAK+F,SAASZ,GACnD,EAGH,MAAqBa,EAGnB,WAAA/E,CAAYX,EAAe2F,WAAW3F,cAAgBqF,GACpD3F,KAAKkG,QAAU,IAAIJ,EACjBxF,EACA0F,EAAmBG,IAEtB,CACD,UAAAC,CAAWjB,GACT,OAAOnF,KAAKkG,QAAQ/F,QAAQgF,EAC7B,CACD,OAAAhF,CAAQgF,GACN,MAAMkB,EAAMxG,KAAKwG,MACXC,EAAOtG,KAAKkG,QAAQ/F,QAAQgF,GAClC,IAAKmB,EACH,OAEF,MAAM3H,MAAEA,EAAK4H,IAAEA,EAAGC,WAAEA,GAAeC,KAAKC,MAAMJ,GAE9C,KAAIC,GAAOF,EAAMG,EAAmB,IAAND,GAK9B,OAAOE,KAAKC,MAAM/H,GAJhBqB,KAAKkG,QAAQtF,WAAWuE,EAK3B,CACD,OAAA/E,CAAQ+E,EAAcxG,EAAY4H,EAAW,MAC3C,MAAMC,EAAa3G,KAAKwG,MACxBrG,KAAKkG,QAAQ9F,QACX+E,EACAsB,KAAKE,UAAU,CACbhI,MAAO8H,KAAKE,UAAUhI,GACtB6H,aACAD,QAGL,CACD,UAAA3F,CAAWuE,GACTnF,KAAKkG,QAAQtF,WAAWuE,EACzB,EAvCMa,EAAGG,IAAG,oFClCf,MAQaS,EAAsB,CAC/BC,QATanB,IACboB,MAAMpB,EAAQ,EASdqB,MANWrB,IACXoB,MAAMpB,EAAQ,gBCHZ,cAAoBtC,iHPqBxB,WAAAnC,CAAY+F,EAAqBC,EAAsBC,GACrDlH,KAAKgH,YAAcA,EACnBhH,KAAKiH,aAAeA,EACpBjH,KAAKkH,YAAcA,EACnBlH,KAAKmH,WAAa,CACnB,oDQ1BG,cAAyB/D,iCCiDzB,cAAoCA,yBA1BpC,cAA4BA,mETMlC,WAAAnC,GACSjB,KAAKoH,MAAa,EAE1B,2IU3BK,SAAwBC,GAC5B,IAAKA,EAEH,YADAC,QAAQP,MAAM,sCAKhB,GAAsB,oBAAXxH,OACT,OAIF,GAAIA,OAAOgI,WAA8C,mBAA1BhI,OAAOgI,UAAUC,KAC9C,OAIFjI,OAAOgI,UAAYhI,OAAOgI,WAAa,GAEvC,YAAiBE,GACflI,OAAOgI,UAAUC,KAAKC,EACvB,CAEDC,CAAK,KAAM,IAAI7H,MAGf,MAAM8H,EAASC,SAASC,cAAc,UACtCF,EAAOG,IAAM,8CAA8CT,IAC3DM,EAAOI,OAAQ,EACfH,SAASI,KAAKC,YAAYN,GAG1B,MAAMO,EAAWN,SAASC,cAAc,YACxCK,EAASC,UAAY,4DAA4Dd,2EACjFO,SAASpE,KAAKyE,YAAYC,EAC5B","x_google_ignoreList":[0]}
|
package/dist/index.esm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e from"axios";import*as t from"yup";function o(e,t,o,r){return new(o||(o=Promise))((function(s,i){function
|
|
1
|
+
import e from"axios";import*as t from"yup";function o(e,t,o,r){return new(o||(o=Promise))((function(s,i){function n(e){try{d(r.next(e))}catch(e){i(e)}}function a(e){try{d(r.throw(e))}catch(e){i(e)}}function d(e){var t;e.done?s(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(n,a)}d((r=r.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;class r{isBrowser(){return"undefined"!=typeof window}createRandomId(){return Math.random().toString(36).substring(2)+(new Date).getTime().toString(36)}getSessionId(){if(this.isBrowser()&&window.sessionStorage){let e=sessionStorage.getItem("lm-sid");return e||(e=this.createRandomId(),sessionStorage.setItem("lm-sid",e)),e}return null}getUserId(){if(this.isBrowser()&&window.localStorage){let e=localStorage.getItem("lm-uid");return e||(e=this.createRandomId(),localStorage.setItem("lm-uid",e)),e}return null}getLocalStorageValue(e){return this.isBrowser()&&window.localStorage?localStorage.getItem(e):null}setLocalStorageValue(e,t){this.isBrowser()&&window.localStorage&&localStorage.setItem(e,t)}removeLocalStorageValue(e){this.isBrowser()&&window.localStorage&&localStorage.removeItem(e)}getSessionStorageValue(e){return this.isBrowser()&&window.sessionStorage?sessionStorage.getItem(e):null}setSessionStorageValue(e,t){this.isBrowser()&&window.sessionStorage&&sessionStorage.setItem(e,t)}removeSessionStorageValue(e){this.isBrowser()&&window.sessionStorage&&sessionStorage.removeItem(e)}}const s=new class{constructor(){this.storageService=new r}getFS(){const e=this.storageService.getUserId(),t=this.storageService.getSessionId();return e&&t?`${e}:${t}`:null}},i=e.create({baseURL:"https://client-api.leadmetrics.ai/api/client/v1/"});i.interceptors.request.use((e=>o(void 0,void 0,void 0,(function*(){e.headers["Api-Key"]=process.env.NEXT_PUBLIC_API_KEY;const t=s.getFS();return t&&(e.headers.fs=t),e}))));const n={getBlogCategories:()=>o(void 0,void 0,void 0,(function*(){return yield i.get("posts/categories").then((e=>e.data))})),getFeaturedPost:()=>o(void 0,void 0,void 0,(function*(){return yield i.get("posts/featured").then((e=>e.data))})),getBlogPosts:e=>o(void 0,void 0,void 0,(function*(){return yield i.get("posts?size="+e).then((e=>e.data))})),getBlogPostsForPage:(e,t)=>o(void 0,void 0,void 0,(function*(){return yield i.get("posts?size="+e+"&page="+t).then((e=>e.data))})),getBlogPostsForCategory:(e,t)=>o(void 0,void 0,void 0,(function*(){return yield i.get("posts?size="+e+"&category="+t).then((e=>e.data))})),getBlogPost:e=>o(void 0,void 0,void 0,(function*(){return yield i.get("posts/"+e).then((e=>e.data))})),getSimilarPosts:(e,t)=>o(void 0,void 0,void 0,(function*(){return yield i.get("posts/"+e+"/similar?count="+t).then((e=>e.data))})),getAllPosts:()=>o(void 0,void 0,void 0,(function*(){return yield i.get("posts/all").then((e=>e.data))}))};class a{}class d extends a{}class l extends d{}class c{constructor(e,t,o){this.currentPage=e,this.itemsPerPage=t,this.hasNextPage=o,this.totalItems=0}}class u{constructor(){this.items=[]}}class g extends l{}const m={getCart:e=>o(void 0,void 0,void 0,(function*(){return yield i.get(`carts/${e}`).then((e=>e.data))})),createCart:e=>o(void 0,void 0,void 0,(function*(){return yield i.post("carts",e).then((e=>e.data))})),updateCart:(e,t)=>o(void 0,void 0,void 0,(function*(){return yield i.put(`carts/${e}/line-items`,t).then((e=>e.data))})),deleteCart:e=>o(void 0,void 0,void 0,(function*(){return yield i.delete(`carts/${e}`).then((e=>e.data))})),setShippingAddress:(e,t)=>o(void 0,void 0,void 0,(function*(){return yield i.put(`carts/${e}/shipping-address`,t).then((e=>e.data))}))};class v extends l{}class h{}class p{}class y{}const f={getAllProductCategories:()=>o(void 0,void 0,void 0,(function*(){return yield i.get("productcategories/all").then((e=>e.data))})),getProductCategory:e=>o(void 0,void 0,void 0,(function*(){return yield i.get("productcategories/"+e).then((e=>e.data))})),getProducts:e=>o(void 0,void 0,void 0,(function*(){return yield i.get("products?size="+e).then((e=>e.data))})),getProductsForPage:(e,t)=>o(void 0,void 0,void 0,(function*(){return yield i.get("products?size="+e+"&page="+t).then((e=>e.data))})),searchProducts:(e,t,r,s,n)=>o(void 0,void 0,void 0,(function*(){return yield i.get("products?q="+e+"&category="+t+"&size="+r+"&page="+s+"&sort="+n).then((e=>e.data))})),searchProductsByCategorySlug:(e,t,r,s)=>o(void 0,void 0,void 0,(function*(){return yield i.get("products?categorySlug="+e+"&size="+t+"&page="+r+"&sort="+s).then((e=>e.data))})),getAllProducts:()=>o(void 0,void 0,void 0,(function*(){return yield i.get("products/all").then((e=>e.data))})),getProduct:e=>o(void 0,void 0,void 0,(function*(){return yield i.get("products/"+e).then((e=>e.data))})),getSimilarProducts:(e,t)=>o(void 0,void 0,void 0,(function*(){return yield i.get("products/"+e+"/similar?count="+t).then((e=>e.data))}))};class w{}class S extends l{}class I extends l{}const P={post:(e,t)=>o(void 0,void 0,void 0,(function*(){var o="forms/"+e;return yield i.post(o,t).then((e=>e.data))}))};class B{}t.object().shape({name:t.string().required("Please enter your name").min(3),email:t.string().required("Please enter your email").email("Please enter a valid email"),mobile:t.string().required("Please enter your mobile number").matches(/^((\\+[1-9]{1,4}[ \\-]*)|(\\([0-9]{2,3}\\)[ \\-]*)|([0-9]{2,4})[ \\-]*)*?[0-9]{3,4}?[ \\-]*[0-9]{3,4}?$/,"Please enter a valid mobile number"),message:t.string().required("Please enter your message").min(5)});const _={length:0,getItem(){},setItem(){},removeItem(){},clear(){}};class C{constructor(e,t){this.localStorage=e,this.key=t}_makeKey(e){return`${this.key}__${e}`}getItem(e){return this.localStorage.getItem(this._makeKey(e))}setItem(e,t){return this.localStorage.setItem(this._makeKey(e),t)}removeItem(e){return this.localStorage.removeItem(this._makeKey(e))}}class b{constructor(e=globalThis.localStorage||_){this.storage=new C(e,b.KEY)}getRawItem(e){return this.storage.getItem(e)}getItem(e){const t=Date.now(),o=this.storage.getItem(e);if(!o)return;const{value:r,ttl:s,timeStored:i}=JSON.parse(o);if(!(s&&t-i>1e3*s))return JSON.parse(r);this.storage.removeItem(e)}setItem(e,t,o=3600){const r=Date.now();this.storage.setItem(e,JSON.stringify({value:JSON.stringify(t),timeStored:r,ttl:o}))}removeItem(e){this.storage.removeItem(e)}}b.KEY="LM_BROWSER_PERSISTENCE";var E=Object.freeze({__proto__:null,BrowserPersistence:b});const L={success:e=>{alert(e)},error:e=>{alert(e)}};function x(e){if(!e)return void console.error("Google Tag Manager ID is required.");if("undefined"==typeof window)return;if(window.dataLayer&&"function"==typeof window.dataLayer.push)return;window.dataLayer=window.dataLayer||[],function(...e){window.dataLayer.push(e)}("js",new Date);const t=document.createElement("script");t.src=`https://www.googletagmanager.com/gtm.js?id=${e}`,t.async=!0,document.head.appendChild(t);const o=document.createElement("noscript");o.innerHTML=`<iframe src="https://www.googletagmanager.com/ns.html?id=${e}" height="0" width="0" style="display:none;visibility:hidden"></iframe>`,document.body.appendChild(o)}class ${}export{v as Cart,B as ContactUsModel,h as LineItem,p as NewLineItem,c as PagingInfo,$ as PostEventModel,g as PostModel,I as ProductCategoryModel,S as ProductModel,w as ProductVariantModel,u as SearchResult,y as ShippingAddress,E as Utils,n as blogService,m as cartService,P as formService,x as initializeGTM,L as notificationService,f as productService};
|
|
2
2
|
//# sourceMappingURL=index.esm.js.map
|
package/dist/index.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../node_modules/tslib/tslib.es6.js","../src/storage/index.ts","../src/client/index.ts","../src/analytics/index.ts","../src/blog/index.ts","../src/models.ts","../src/blog/types.ts","../src/cart/index.ts","../src/cart/types.ts","../src/products/index.ts","../src/products/types.ts","../src/form/index.ts","../src/form/types.ts","../src/utils/persistence.ts","../src/utils/notification.ts","../src/utils/gtm.ts","../src/index.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","export class StorageManager {\r\n // Helper function to check if storage is available\r\n private hasStorage(storage: Storage): boolean {\r\n return typeof window !== \"undefined\" && !!storage;\r\n }\r\n\r\n // Create a random ID combining random numbers and the current timestamp\r\n private createRandomId(): string {\r\n return (\r\n Math.random().toString(36).substring(2) +\r\n new Date().getTime().toString(36)\r\n );\r\n }\r\n\r\n // Retrieve or create a session ID in sessionStorage\r\n getSessionId(): string | null {\r\n if (this.hasStorage(window.sessionStorage)) {\r\n let sessionId = sessionStorage.getItem(\"lm-sid\");\r\n if (!sessionId) {\r\n sessionId = this.createRandomId();\r\n sessionStorage.setItem(\"lm-sid\", sessionId);\r\n }\r\n return sessionId;\r\n }\r\n // If sessionStorage is not available, return null\r\n return null;\r\n }\r\n\r\n // Retrieve or create a user ID in localStorage\r\n getUserId(): string | null {\r\n if (this.hasStorage(window.localStorage)) {\r\n let userId = localStorage.getItem(\"lm-uid\");\r\n if (!userId) {\r\n userId = this.createRandomId();\r\n localStorage.setItem(\"lm-uid\", userId);\r\n }\r\n return userId;\r\n }\r\n // If localStorage is not available, return null\r\n return null;\r\n }\r\n\r\n // General getValue method for retrieving items from localStorage\r\n getLocalStorageValue(key: string): string | null {\r\n if (this.hasStorage(window.localStorage)) {\r\n return localStorage.getItem(key);\r\n }\r\n return null;\r\n }\r\n\r\n // General setValue method for setting items in localStorage\r\n setLocalStorageValue(key: string, value: string): void {\r\n if (this.hasStorage(window.localStorage)) {\r\n localStorage.setItem(key, value);\r\n }\r\n }\r\n\r\n // General removeValue method for removing items from localStorage\r\n removeLocalStorageValue(key: string): void {\r\n if (this.hasStorage(window.localStorage)) {\r\n localStorage.removeItem(key);\r\n }\r\n }\r\n\r\n // General getValue method for retrieving items from sessionStorage\r\n getSessionStorageValue(key: string): string | null {\r\n if (this.hasStorage(window.sessionStorage)) {\r\n return sessionStorage.getItem(key);\r\n }\r\n return null;\r\n }\r\n\r\n // General setValue method for setting items in sessionStorage\r\n setSessionStorageValue(key: string, value: string): void {\r\n if (this.hasStorage(window.sessionStorage)) {\r\n sessionStorage.setItem(key, value);\r\n }\r\n }\r\n\r\n // General removeValue method for removing items from sessionStorage\r\n removeSessionStorageValue(key: string): void {\r\n if (this.hasStorage(window.sessionStorage)) {\r\n sessionStorage.removeItem(key);\r\n }\r\n }\r\n}\r\n","import axios from \"axios\";\r\nimport { AnalyticService } from \"../analytics\";\r\n\r\nconst analyticService = new AnalyticService();\r\n\r\nconst client = axios.create({\r\n baseURL: \"https://client-api.leadmetrics.ai/api/client/v1/\",\r\n});\r\n\r\nclient.interceptors.request.use(async (req) => {\r\n req.headers[\"Api-Key\"] = process.env.NEXT_PUBLIC_API_KEY;\r\n\r\n const fs = analyticService.getFS();\r\n\r\n if (fs) {\r\n req.headers[\"fs\"] = fs;\r\n }\r\n\r\n return req;\r\n});\r\n\r\nexport default client;\r\n","import { StorageManager } from \"../storage\";\r\n\r\nexport class AnalyticService {\r\n private storageService: StorageManager;\r\n\r\n constructor() {\r\n this.storageService = new StorageManager();\r\n }\r\n\r\n getFS(): string | null {\r\n const userId = this.storageService.getUserId();\r\n const sessionId = this.storageService.getSessionId();\r\n\r\n if (userId && sessionId) {\r\n return `${userId}:${sessionId}`;\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import client from \"../client\";\r\nimport { PostModel } from \"./types\";\r\nimport { SearchResult } from \"../models\";\r\n\r\nconst getBlogCategories = async () => {\r\n return await client.get<string[]>(\"posts/categories\").then((res) => res.data);\r\n};\r\n\r\nconst getFeaturedPost = async () => {\r\n return await client.get<PostModel>(\"posts/featured\").then((res) => res.data);\r\n};\r\n\r\nconst getBlogPosts = async (count: number) => {\r\n return await client\r\n .get<SearchResult<PostModel>>(\"posts?size=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getBlogPostsForPage = async (count: number, page: number) => {\r\n return await client\r\n .get<SearchResult<PostModel>>(\"posts?size=\" + count + \"&page=\" + page)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getBlogPostsForCategory = async (count: number, category: string) => {\r\n return await client\r\n .get<SearchResult<PostModel>>(\r\n \"posts?size=\" + count + \"&category=\" + category\r\n )\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getBlogPost = async (slug: string | string[] | undefined) => {\r\n return await client.get<PostModel>(\"posts/\" + slug).then((res) => res.data);\r\n};\r\n\r\nconst getSimilarPosts = async (id: string, count: number) => {\r\n return await client\r\n .get<PostModel[]>(\"posts/\" + id + \"/similar?count=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getAllPosts = async () => {\r\n return await client.get<PostModel[]>(\"posts/all\").then((res) => res.data);\r\n};\r\n\r\nexport const blogService = {\r\n getBlogCategories,\r\n getFeaturedPost,\r\n getBlogPosts,\r\n getBlogPostsForPage,\r\n getBlogPostsForCategory,\r\n getBlogPost,\r\n getSimilarPosts,\r\n getAllPosts,\r\n};","export class BaseModel {\r\n public id!: string;\r\n public refId!: string;\r\n public createdOn!: Date;\r\n}\r\n\r\nexport class UserCreatedModel extends BaseModel {\r\n public createdByUserId!: string;\r\n}\r\n\r\nexport class UserModifiableModel extends UserCreatedModel {\r\n public updatedOn?: Date;\r\n public updatedByUserId?: string;\r\n public deletedOn?: Date;\r\n public deletedByUserId?: string;\r\n}\r\n\r\nexport class PagingInfo {\r\n public currentPage: number;\r\n public itemsPerPage: number;\r\n public hasNextPage: boolean;\r\n public totalItems: number;\r\n\r\n constructor(currentPage: number, itemsPerPage: number, hasNextPage: boolean) {\r\n this.currentPage = currentPage;\r\n this.itemsPerPage = itemsPerPage;\r\n this.hasNextPage = hasNextPage;\r\n this.totalItems = 0;\r\n }\r\n}\r\n\r\nexport class SearchResult<T> {\r\n public items: Array<T> = [];\r\n public pagingInfo!: PagingInfo;\r\n}","import { UserModifiableModel } from \"../models\";\r\n\r\nexport class PostModel extends UserModifiableModel {\r\n slug!: string;\r\n isFeatured!: boolean;\r\n isActive!: boolean;\r\n category!: string;\r\n featuredImage!: string;\r\n title!: string;\r\n previewContent!: string;\r\n content!: string;\r\n readTime!: number;\r\n impressions!: number;\r\n views!: number;\r\n likes!: number;\r\n publishedOn!: Date;\r\n tags?: string[];\r\n author?: {\r\n name?: string;\r\n id?: string;\r\n };\r\n}","import client from \"../client\";\r\nimport { Cart, NewLineItem, ShippingAddress } from \"./types\";\r\n\r\nconst getCart = async (id: string) => {\r\n return await client\r\n .get<Cart>(`carts/${id}`)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst createCart = async (body: NewLineItem) => {\r\n return await client\r\n .post<Cart>(`carts`, body)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst updateCart = async (id: string, body: NewLineItem) => {\r\n return await client\r\n .put<Cart>(`carts/${id}/line-items`, body)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst deleteCart = async (id: string) => {\r\n return await client\r\n .delete<Cart>(`carts/${id}`)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst setShippingAddress = async (id: string, body: ShippingAddress) => {\r\n return await client\r\n .put<Cart>(`carts/${id}/shipping-address`, body)\r\n .then((res) => res.data);\r\n};\r\n\r\nexport const cartService = {\r\n getCart,\r\n createCart,\r\n updateCart,\r\n deleteCart,\r\n setShippingAddress\r\n};","import { UserModifiableModel } from \"../models\";\r\n\r\nexport class Cart extends UserModifiableModel {\r\n lineItems?: LineItem[];\r\n shippingAddress?: ShippingAddress;\r\n total!: number;\r\n currency!: string;\r\n currencySymbol!: string;\r\n}\r\n\r\nexport class LineItem {\r\n id!: string;\r\n productId!: string;\r\n variantId!: string;\r\n productSlug!: string;\r\n productName!: string;\r\n productImage!: string;\r\n price!: number;\r\n quantity!: number;\r\n currency!: string;\r\n currencySymbol!: string;\r\n}\r\n\r\nexport class NewLineItem {\r\n productId!: string;\r\n quantity!: number;\r\n id!: string;\r\n}\r\n\r\nexport class ShippingAddress {\r\n id!: string;\r\n name!: string;\r\n email?: string;\r\n mobile!: string;\r\n address1!: string;\r\n city!: string;\r\n postalCode!: string;\r\n country!: string;\r\n}\r\n","import client from \"../client\";\r\nimport { SearchResult } from \"../models\";\r\nimport { ProductCategoryModel, ProductModel } from \"./types\";\r\n\r\nconst getAllProductCategories = async () => {\r\n return await client\r\n .get<ProductCategoryModel[]>(\"productcategories/all\")\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProductCategory = async (slug: string | string[] | undefined) => {\r\n return await client\r\n .get<ProductCategoryModel>(\"productcategories/\" + slug)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getAllProducts = async () => {\r\n return await client\r\n .get<ProductModel[]>(\"products/all\")\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProducts = async (count: number) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\"products?size=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProductsForPage = async (count: number, page: number) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\"products?size=\" + count + \"&page=\" + page)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst searchProducts = async (\r\n q: string,\r\n category: string,\r\n count: number,\r\n page: number,\r\n sort: string\r\n) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\r\n \"products?q=\" +\r\n q +\r\n \"&category=\" +\r\n category +\r\n \"&size=\" +\r\n count +\r\n \"&page=\" +\r\n page +\r\n \"&sort=\" +\r\n sort\r\n )\r\n .then((res) => res.data);\r\n};\r\n\r\nconst searchProductsByCategorySlug = async (\r\n categorySlug: string,\r\n count: number,\r\n page: number,\r\n sort: string\r\n) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\r\n \"products?\" +\r\n \"categorySlug=\" +\r\n categorySlug +\r\n \"&size=\" +\r\n count +\r\n \"&page=\" +\r\n page +\r\n \"&sort=\" +\r\n sort\r\n )\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProduct = async (slug: string | string[] | undefined) => {\r\n return await client\r\n .get<ProductModel>(\"products/\" + slug)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getSimilarProducts = async (id: string, count: number) => {\r\n return await client\r\n .get<ProductModel[]>(\"products/\" + id + \"/similar?count=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nexport const productService = {\r\n getAllProductCategories,\r\n getProductCategory,\r\n getProducts,\r\n getProductsForPage,\r\n searchProducts,\r\n searchProductsByCategorySlug,\r\n getAllProducts,\r\n getProduct,\r\n getSimilarProducts,\r\n};","import { UserModifiableModel } from \"../models\";\r\n\r\nexport class ProductVariantModel {\r\n id!: string;\r\n isActive!: boolean;\r\n isFeatured!: boolean;\r\n slug!: string;\r\n images!: string[];\r\n featuredImage!: string;\r\n title!: string;\r\n previewContent!: string;\r\n content!: string;\r\n price!: number;\r\n weight!: number;\r\n impressions!: number;\r\n views!: number;\r\n likes!: number;\r\n tags!: string[];\r\n seo!: {\r\n title: string;\r\n description: string;\r\n keywords: string;\r\n };\r\n}\r\n\r\nexport class ProductModel extends UserModifiableModel {\r\n isActive!: boolean;\r\n isFeatured!: boolean;\r\n slug!: string;\r\n type!: string;\r\n category!: string;\r\n images!: string[];\r\n featuredImage!: string;\r\n title!: string;\r\n previewContent!: string;\r\n content!: string;\r\n price!: number;\r\n weight!: number;\r\n impressions!: number;\r\n views!: number;\r\n likes!: number;\r\n publishedOn!: Date;\r\n tags!: string[];\r\n variants!: ProductVariantModel[];\r\n seo!: {\r\n title: string;\r\n description: string;\r\n keywords: string;\r\n };\r\n}\r\n\r\nexport class ProductCategoryModel extends UserModifiableModel {\r\n name!: string;\r\n description!: string;\r\n featuredImage!: string;\r\n isActive!: boolean;\r\n slug!: string;\r\n products!: number;\r\n}\r\n","import client from \"../client\";\r\nimport { ContactUsModel } from \"./types\";\r\n\r\nconst post = async (formId: string, formData: ContactUsModel) => {\r\n var formUrl = \"forms/\" + formId;\r\n return await client.post(formUrl, formData).then((res) => res.data);\r\n};\r\n\r\nexport const formService = {\r\n post\r\n};","import * as yup from \"yup\";\r\n\r\nexport class ContactUsModel {\r\n public name!: string;\r\n public email!: string;\r\n public mobile!: string;\r\n public whatsapp!: string;\r\n public message!: string;\r\n}\r\n\r\nconst regexExpression = {\r\n phone:\r\n /^((\\\\+[1-9]{1,4}[ \\\\-]*)|(\\\\([0-9]{2,3}\\\\)[ \\\\-]*)|([0-9]{2,4})[ \\\\-]*)*?[0-9]{3,4}?[ \\\\-]*[0-9]{3,4}?$/,\r\n password: /^(?=.*[A-Za-z])(?=.*\\d)(?=.*[@$!%*#?&])[A-Za-z\\d@$!%*#?&]{8,}$/,\r\n};\r\n\r\nexport const ContactUsSchema = yup.object().shape({\r\n name: yup.string().required(\"Please enter your name\").min(3),\r\n email: yup\r\n .string()\r\n .required(\"Please enter your email\")\r\n .email(\"Please enter a valid email\"),\r\n mobile: yup\r\n .string()\r\n .required(\"Please enter your mobile number\")\r\n .matches(regexExpression.phone, \"Please enter a valid mobile number\"),\r\n message: yup.string().required(\"Please enter your message\").min(5),\r\n});","/**\r\n * Persistence layer with expiration based on localStorage.\r\n */\r\n\r\nconst storageMock = {\r\n length: 0,\r\n getItem() {},\r\n setItem() {},\r\n removeItem() {},\r\n clear() {},\r\n};\r\n\r\nclass NamespacedLocalStorage {\r\n localStorage;\r\n key;\r\n constructor(localStorage: any, key: string) {\r\n this.localStorage = localStorage;\r\n this.key = key;\r\n }\r\n _makeKey(key: string): string {\r\n return `${this.key}__${key}`;\r\n }\r\n getItem(name: any) {\r\n return this.localStorage.getItem(this._makeKey(name));\r\n }\r\n setItem(name: any, value: any) {\r\n return this.localStorage.setItem(this._makeKey(name), value);\r\n }\r\n removeItem(name: any) {\r\n return this.localStorage.removeItem(this._makeKey(name));\r\n }\r\n}\r\n\r\nexport default class BrowserPersistence {\r\n static KEY = \"LM_BROWSER_PERSISTENCE\";\r\n storage;\r\n constructor(localStorage = globalThis.localStorage || storageMock) {\r\n this.storage = new NamespacedLocalStorage(\r\n localStorage,\r\n BrowserPersistence.KEY\r\n );\r\n }\r\n getRawItem(name: string) {\r\n return this.storage.getItem(name);\r\n }\r\n getItem(name: string) {\r\n const now = Date.now();\r\n const item = this.storage.getItem(name);\r\n if (!item) {\r\n return undefined;\r\n }\r\n const { value, ttl, timeStored } = JSON.parse(item);\r\n\r\n if (ttl && now - timeStored > ttl * 1000) {\r\n this.storage.removeItem(name);\r\n return undefined;\r\n }\r\n\r\n return JSON.parse(value);\r\n }\r\n setItem(name: string, value: any, ttl: any = 3600) {\r\n const timeStored = Date.now();\r\n this.storage.setItem(\r\n name,\r\n JSON.stringify({\r\n value: JSON.stringify(value),\r\n timeStored,\r\n ttl,\r\n })\r\n );\r\n }\r\n removeItem(name: any) {\r\n this.storage.removeItem(name);\r\n }\r\n}\r\n","const success = (message: string) => {\r\n alert(message);\r\n};\r\n\r\nconst error = (message: string) => {\r\n alert(message);\r\n};\r\n\r\nexport const notificationService = {\r\n success,\r\n error,\r\n};","// Extend the global Window interface to include dataLayer\r\ndeclare global {\r\n interface Window {\r\n dataLayer: any[];\r\n }\r\n}\r\n\r\nexport function initializeGTM(gtmId: string): void {\r\n if (!gtmId) {\r\n console.error(\"Google Tag Manager ID is required.\");\r\n return;\r\n }\r\n\r\n // Ensure this runs only on the client-side\r\n if (typeof window === \"undefined\") {\r\n return;\r\n }\r\n\r\n // Check if GTM is already initialized\r\n if (window.dataLayer && typeof window.dataLayer.push === \"function\") {\r\n return;\r\n }\r\n\r\n // Define the dataLayer array\r\n window.dataLayer = window.dataLayer || [];\r\n\r\n function gtag(...args: any[]) {\r\n window.dataLayer.push(args);\r\n }\r\n\r\n gtag(\"js\", new Date());\r\n\r\n // Insert the GTM script into the head\r\n const script = document.createElement(\"script\");\r\n script.src = `https://www.googletagmanager.com/gtm.js?id=${gtmId}`;\r\n script.async = true;\r\n document.head.appendChild(script);\r\n\r\n // Optional: Add the noscript fallback for browsers with JavaScript disabled\r\n const noScript = document.createElement(\"noscript\");\r\n noScript.innerHTML = `<iframe src=\"https://www.googletagmanager.com/ns.html?id=${gtmId}\" height=\"0\" width=\"0\" style=\"display:none;visibility:hidden\"></iframe>`;\r\n document.body.appendChild(noScript);\r\n}\r\n","import { blogService } from \"./blog\";\r\nimport { PostModel } from \"./blog/types\";\r\nimport { cartService } from \"./cart\";\r\nimport { Cart, NewLineItem, ShippingAddress, LineItem } from \"./cart/types\";\r\nimport { productService } from \"./products\";\r\nimport {\r\n ProductModel,\r\n ProductVariantModel,\r\n ProductCategoryModel,\r\n} from \"./products/types\";\r\nimport { formService } from \"./form\";\r\nimport { ContactUsModel } from \"./form/types\";\r\nimport * as Utils from \"./utils\";\r\nimport { notificationService } from \"./utils/notification\";\r\nimport { PagingInfo, SearchResult } from \"./models\";\r\nimport { initializeGTM } from \"./utils/gtm\";\r\n\r\nexport class PostEventModel {\r\n title?: string;\r\n start?: Date;\r\n end?: Date;\r\n resource?: any;\r\n}\r\n\r\n/** cart library */\r\nexport {\r\n blogService,\r\n PostModel,\r\n cartService,\r\n Cart,\r\n LineItem,\r\n NewLineItem,\r\n ShippingAddress,\r\n productService,\r\n ProductModel,\r\n ProductVariantModel,\r\n ProductCategoryModel,\r\n formService,\r\n ContactUsModel,\r\n notificationService,\r\n Utils,\r\n SearchResult,\r\n PagingInfo,\r\n initializeGTM,\r\n};\r\n"],"names":["__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","SuppressedError","StorageManager","hasStorage","storage","window","createRandomId","Math","random","toString","substring","Date","getTime","getSessionId","this","sessionStorage","sessionId","getItem","setItem","getUserId","localStorage","userId","getLocalStorageValue","key","setLocalStorageValue","removeLocalStorageValue","removeItem","getSessionStorageValue","setSessionStorageValue","removeSessionStorageValue","analyticService","constructor","storageService","getFS","client","axios","create","baseURL","interceptors","request","use","req","headers","process","env","NEXT_PUBLIC_API_KEY","fs","blogService","getBlogCategories","get","res","data","getFeaturedPost","getBlogPosts","count","getBlogPostsForPage","page","getBlogPostsForCategory","category","getBlogPost","slug","getSimilarPosts","id","getAllPosts","BaseModel","UserCreatedModel","UserModifiableModel","PagingInfo","currentPage","itemsPerPage","hasNextPage","totalItems","SearchResult","items","PostModel","cartService","getCart","createCart","body","post","updateCart","put","deleteCart","delete","setShippingAddress","Cart","LineItem","NewLineItem","ShippingAddress","productService","getAllProductCategories","getProductCategory","getProducts","getProductsForPage","searchProducts","q","sort","searchProductsByCategorySlug","categorySlug","getAllProducts","getProduct","getSimilarProducts","ProductVariantModel","ProductModel","ProductCategoryModel","formService","formId","formData","formUrl","ContactUsModel","yup","object","shape","name","string","required","min","email","mobile","matches","message","storageMock","length","clear","NamespacedLocalStorage","_makeKey","BrowserPersistence","globalThis","KEY","getRawItem","now","item","ttl","timeStored","JSON","parse","stringify","notificationService","success","alert","error","initializeGTM","gtmId","console","dataLayer","push","args","gtag","script","document","createElement","src","async","head","appendChild","noScript","innerHTML","PostEventModel"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../node_modules/tslib/tslib.es6.js","../src/storage/index.ts","../src/client/index.ts","../src/analytics/index.ts","../src/blog/index.ts","../src/models.ts","../src/blog/types.ts","../src/cart/index.ts","../src/cart/types.ts","../src/products/index.ts","../src/products/types.ts","../src/form/index.ts","../src/form/types.ts","../src/utils/persistence.ts","../src/utils/notification.ts","../src/utils/gtm.ts","../src/index.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","export class StorageManager {\r\n // Helper function to check if running in the browser\r\n private isBrowser(): boolean {\r\n return typeof window !== \"undefined\";\r\n }\r\n\r\n // Create a random ID combining random numbers and the current timestamp\r\n private createRandomId(): string {\r\n return (\r\n Math.random().toString(36).substring(2) +\r\n new Date().getTime().toString(36)\r\n );\r\n }\r\n\r\n // Retrieve or create a session ID in sessionStorage\r\n getSessionId(): string | null {\r\n if (this.isBrowser() && window.sessionStorage) {\r\n let sessionId = sessionStorage.getItem(\"lm-sid\");\r\n if (!sessionId) {\r\n sessionId = this.createRandomId();\r\n sessionStorage.setItem(\"lm-sid\", sessionId);\r\n }\r\n return sessionId;\r\n }\r\n return null;\r\n }\r\n\r\n // Retrieve or create a user ID in localStorage\r\n getUserId(): string | null {\r\n if (this.isBrowser() && window.localStorage) {\r\n let userId = localStorage.getItem(\"lm-uid\");\r\n if (!userId) {\r\n userId = this.createRandomId();\r\n localStorage.setItem(\"lm-uid\", userId);\r\n }\r\n return userId;\r\n }\r\n return null;\r\n }\r\n\r\n // General getValue method for retrieving items from localStorage\r\n getLocalStorageValue(key: string): string | null {\r\n if (this.isBrowser() && window.localStorage) {\r\n return localStorage.getItem(key);\r\n }\r\n return null;\r\n }\r\n\r\n // General setValue method for setting items in localStorage\r\n setLocalStorageValue(key: string, value: string): void {\r\n if (this.isBrowser() && window.localStorage) {\r\n localStorage.setItem(key, value);\r\n }\r\n }\r\n\r\n // General removeValue method for removing items from localStorage\r\n removeLocalStorageValue(key: string): void {\r\n if (this.isBrowser() && window.localStorage) {\r\n localStorage.removeItem(key);\r\n }\r\n }\r\n\r\n // General getValue method for retrieving items from sessionStorage\r\n getSessionStorageValue(key: string): string | null {\r\n if (this.isBrowser() && window.sessionStorage) {\r\n return sessionStorage.getItem(key);\r\n }\r\n return null;\r\n }\r\n\r\n // General setValue method for setting items in sessionStorage\r\n setSessionStorageValue(key: string, value: string): void {\r\n if (this.isBrowser() && window.sessionStorage) {\r\n sessionStorage.setItem(key, value);\r\n }\r\n }\r\n\r\n // General removeValue method for removing items from sessionStorage\r\n removeSessionStorageValue(key: string): void {\r\n if (this.isBrowser() && window.sessionStorage) {\r\n sessionStorage.removeItem(key);\r\n }\r\n }\r\n}\r\n","import axios from \"axios\";\r\nimport { AnalyticService } from \"../analytics\";\r\n\r\nconst analyticService = new AnalyticService();\r\n\r\nconst client = axios.create({\r\n baseURL: \"https://client-api.leadmetrics.ai/api/client/v1/\",\r\n});\r\n\r\nclient.interceptors.request.use(async (req) => {\r\n req.headers[\"Api-Key\"] = process.env.NEXT_PUBLIC_API_KEY;\r\n\r\n const fs = analyticService.getFS();\r\n\r\n if (fs) {\r\n req.headers[\"fs\"] = fs;\r\n }\r\n\r\n return req;\r\n});\r\n\r\nexport default client;\r\n","import { StorageManager } from \"../storage\";\r\n\r\nexport class AnalyticService {\r\n private storageService: StorageManager;\r\n\r\n constructor() {\r\n this.storageService = new StorageManager();\r\n }\r\n\r\n getFS(): string | null {\r\n const userId = this.storageService.getUserId();\r\n const sessionId = this.storageService.getSessionId();\r\n\r\n if (userId && sessionId) {\r\n return `${userId}:${sessionId}`;\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import client from \"../client\";\r\nimport { PostModel } from \"./types\";\r\nimport { SearchResult } from \"../models\";\r\n\r\nconst getBlogCategories = async () => {\r\n return await client.get<string[]>(\"posts/categories\").then((res) => res.data);\r\n};\r\n\r\nconst getFeaturedPost = async () => {\r\n return await client.get<PostModel>(\"posts/featured\").then((res) => res.data);\r\n};\r\n\r\nconst getBlogPosts = async (count: number) => {\r\n return await client\r\n .get<SearchResult<PostModel>>(\"posts?size=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getBlogPostsForPage = async (count: number, page: number) => {\r\n return await client\r\n .get<SearchResult<PostModel>>(\"posts?size=\" + count + \"&page=\" + page)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getBlogPostsForCategory = async (count: number, category: string) => {\r\n return await client\r\n .get<SearchResult<PostModel>>(\r\n \"posts?size=\" + count + \"&category=\" + category\r\n )\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getBlogPost = async (slug: string | string[] | undefined) => {\r\n return await client.get<PostModel>(\"posts/\" + slug).then((res) => res.data);\r\n};\r\n\r\nconst getSimilarPosts = async (id: string, count: number) => {\r\n return await client\r\n .get<PostModel[]>(\"posts/\" + id + \"/similar?count=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getAllPosts = async () => {\r\n return await client.get<PostModel[]>(\"posts/all\").then((res) => res.data);\r\n};\r\n\r\nexport const blogService = {\r\n getBlogCategories,\r\n getFeaturedPost,\r\n getBlogPosts,\r\n getBlogPostsForPage,\r\n getBlogPostsForCategory,\r\n getBlogPost,\r\n getSimilarPosts,\r\n getAllPosts,\r\n};","export class BaseModel {\r\n public id!: string;\r\n public refId!: string;\r\n public createdOn!: Date;\r\n}\r\n\r\nexport class UserCreatedModel extends BaseModel {\r\n public createdByUserId!: string;\r\n}\r\n\r\nexport class UserModifiableModel extends UserCreatedModel {\r\n public updatedOn?: Date;\r\n public updatedByUserId?: string;\r\n public deletedOn?: Date;\r\n public deletedByUserId?: string;\r\n}\r\n\r\nexport class PagingInfo {\r\n public currentPage: number;\r\n public itemsPerPage: number;\r\n public hasNextPage: boolean;\r\n public totalItems: number;\r\n\r\n constructor(currentPage: number, itemsPerPage: number, hasNextPage: boolean) {\r\n this.currentPage = currentPage;\r\n this.itemsPerPage = itemsPerPage;\r\n this.hasNextPage = hasNextPage;\r\n this.totalItems = 0;\r\n }\r\n}\r\n\r\nexport class SearchResult<T> {\r\n public items: Array<T> = [];\r\n public pagingInfo!: PagingInfo;\r\n}","import { UserModifiableModel } from \"../models\";\r\n\r\nexport class PostModel extends UserModifiableModel {\r\n slug!: string;\r\n isFeatured!: boolean;\r\n isActive!: boolean;\r\n category!: string;\r\n featuredImage!: string;\r\n title!: string;\r\n previewContent!: string;\r\n content!: string;\r\n readTime!: number;\r\n impressions!: number;\r\n views!: number;\r\n likes!: number;\r\n publishedOn!: Date;\r\n tags?: string[];\r\n author?: {\r\n name?: string;\r\n id?: string;\r\n };\r\n}","import client from \"../client\";\r\nimport { Cart, NewLineItem, ShippingAddress } from \"./types\";\r\n\r\nconst getCart = async (id: string) => {\r\n return await client\r\n .get<Cart>(`carts/${id}`)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst createCart = async (body: NewLineItem) => {\r\n return await client\r\n .post<Cart>(`carts`, body)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst updateCart = async (id: string, body: NewLineItem) => {\r\n return await client\r\n .put<Cart>(`carts/${id}/line-items`, body)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst deleteCart = async (id: string) => {\r\n return await client\r\n .delete<Cart>(`carts/${id}`)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst setShippingAddress = async (id: string, body: ShippingAddress) => {\r\n return await client\r\n .put<Cart>(`carts/${id}/shipping-address`, body)\r\n .then((res) => res.data);\r\n};\r\n\r\nexport const cartService = {\r\n getCart,\r\n createCart,\r\n updateCart,\r\n deleteCart,\r\n setShippingAddress\r\n};","import { UserModifiableModel } from \"../models\";\r\n\r\nexport class Cart extends UserModifiableModel {\r\n lineItems?: LineItem[];\r\n shippingAddress?: ShippingAddress;\r\n total!: number;\r\n currency!: string;\r\n currencySymbol!: string;\r\n}\r\n\r\nexport class LineItem {\r\n id!: string;\r\n productId!: string;\r\n variantId!: string;\r\n productSlug!: string;\r\n productName!: string;\r\n productImage!: string;\r\n price!: number;\r\n quantity!: number;\r\n currency!: string;\r\n currencySymbol!: string;\r\n}\r\n\r\nexport class NewLineItem {\r\n productId!: string;\r\n quantity!: number;\r\n id!: string;\r\n}\r\n\r\nexport class ShippingAddress {\r\n id!: string;\r\n name!: string;\r\n email?: string;\r\n mobile!: string;\r\n address1!: string;\r\n city!: string;\r\n postalCode!: string;\r\n country!: string;\r\n}\r\n","import client from \"../client\";\r\nimport { SearchResult } from \"../models\";\r\nimport { ProductCategoryModel, ProductModel } from \"./types\";\r\n\r\nconst getAllProductCategories = async () => {\r\n return await client\r\n .get<ProductCategoryModel[]>(\"productcategories/all\")\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProductCategory = async (slug: string | string[] | undefined) => {\r\n return await client\r\n .get<ProductCategoryModel>(\"productcategories/\" + slug)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getAllProducts = async () => {\r\n return await client\r\n .get<ProductModel[]>(\"products/all\")\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProducts = async (count: number) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\"products?size=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProductsForPage = async (count: number, page: number) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\"products?size=\" + count + \"&page=\" + page)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst searchProducts = async (\r\n q: string,\r\n category: string,\r\n count: number,\r\n page: number,\r\n sort: string\r\n) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\r\n \"products?q=\" +\r\n q +\r\n \"&category=\" +\r\n category +\r\n \"&size=\" +\r\n count +\r\n \"&page=\" +\r\n page +\r\n \"&sort=\" +\r\n sort\r\n )\r\n .then((res) => res.data);\r\n};\r\n\r\nconst searchProductsByCategorySlug = async (\r\n categorySlug: string,\r\n count: number,\r\n page: number,\r\n sort: string\r\n) => {\r\n return await client\r\n .get<SearchResult<ProductModel>>(\r\n \"products?\" +\r\n \"categorySlug=\" +\r\n categorySlug +\r\n \"&size=\" +\r\n count +\r\n \"&page=\" +\r\n page +\r\n \"&sort=\" +\r\n sort\r\n )\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getProduct = async (slug: string | string[] | undefined) => {\r\n return await client\r\n .get<ProductModel>(\"products/\" + slug)\r\n .then((res) => res.data);\r\n};\r\n\r\nconst getSimilarProducts = async (id: string, count: number) => {\r\n return await client\r\n .get<ProductModel[]>(\"products/\" + id + \"/similar?count=\" + count)\r\n .then((res) => res.data);\r\n};\r\n\r\nexport const productService = {\r\n getAllProductCategories,\r\n getProductCategory,\r\n getProducts,\r\n getProductsForPage,\r\n searchProducts,\r\n searchProductsByCategorySlug,\r\n getAllProducts,\r\n getProduct,\r\n getSimilarProducts,\r\n};","import { UserModifiableModel } from \"../models\";\r\n\r\nexport class ProductVariantModel {\r\n id!: string;\r\n isActive!: boolean;\r\n isFeatured!: boolean;\r\n slug!: string;\r\n images!: string[];\r\n featuredImage!: string;\r\n title!: string;\r\n previewContent!: string;\r\n content!: string;\r\n price!: number;\r\n weight!: number;\r\n impressions!: number;\r\n views!: number;\r\n likes!: number;\r\n tags!: string[];\r\n seo!: {\r\n title: string;\r\n description: string;\r\n keywords: string;\r\n };\r\n}\r\n\r\nexport class ProductModel extends UserModifiableModel {\r\n isActive!: boolean;\r\n isFeatured!: boolean;\r\n slug!: string;\r\n type!: string;\r\n category!: string;\r\n images!: string[];\r\n featuredImage!: string;\r\n title!: string;\r\n previewContent!: string;\r\n content!: string;\r\n price!: number;\r\n weight!: number;\r\n impressions!: number;\r\n views!: number;\r\n likes!: number;\r\n publishedOn!: Date;\r\n tags!: string[];\r\n variants!: ProductVariantModel[];\r\n seo!: {\r\n title: string;\r\n description: string;\r\n keywords: string;\r\n };\r\n}\r\n\r\nexport class ProductCategoryModel extends UserModifiableModel {\r\n name!: string;\r\n description!: string;\r\n featuredImage!: string;\r\n isActive!: boolean;\r\n slug!: string;\r\n products!: number;\r\n}\r\n","import client from \"../client\";\r\nimport { ContactUsModel } from \"./types\";\r\n\r\nconst post = async (formId: string, formData: ContactUsModel) => {\r\n var formUrl = \"forms/\" + formId;\r\n return await client.post(formUrl, formData).then((res) => res.data);\r\n};\r\n\r\nexport const formService = {\r\n post\r\n};","import * as yup from \"yup\";\r\n\r\nexport class ContactUsModel {\r\n public name!: string;\r\n public email!: string;\r\n public mobile!: string;\r\n public whatsapp!: string;\r\n public message!: string;\r\n}\r\n\r\nconst regexExpression = {\r\n phone:\r\n /^((\\\\+[1-9]{1,4}[ \\\\-]*)|(\\\\([0-9]{2,3}\\\\)[ \\\\-]*)|([0-9]{2,4})[ \\\\-]*)*?[0-9]{3,4}?[ \\\\-]*[0-9]{3,4}?$/,\r\n password: /^(?=.*[A-Za-z])(?=.*\\d)(?=.*[@$!%*#?&])[A-Za-z\\d@$!%*#?&]{8,}$/,\r\n};\r\n\r\nexport const ContactUsSchema = yup.object().shape({\r\n name: yup.string().required(\"Please enter your name\").min(3),\r\n email: yup\r\n .string()\r\n .required(\"Please enter your email\")\r\n .email(\"Please enter a valid email\"),\r\n mobile: yup\r\n .string()\r\n .required(\"Please enter your mobile number\")\r\n .matches(regexExpression.phone, \"Please enter a valid mobile number\"),\r\n message: yup.string().required(\"Please enter your message\").min(5),\r\n});","/**\r\n * Persistence layer with expiration based on localStorage.\r\n */\r\n\r\nconst storageMock = {\r\n length: 0,\r\n getItem() {},\r\n setItem() {},\r\n removeItem() {},\r\n clear() {},\r\n};\r\n\r\nclass NamespacedLocalStorage {\r\n localStorage;\r\n key;\r\n constructor(localStorage: any, key: string) {\r\n this.localStorage = localStorage;\r\n this.key = key;\r\n }\r\n _makeKey(key: string): string {\r\n return `${this.key}__${key}`;\r\n }\r\n getItem(name: any) {\r\n return this.localStorage.getItem(this._makeKey(name));\r\n }\r\n setItem(name: any, value: any) {\r\n return this.localStorage.setItem(this._makeKey(name), value);\r\n }\r\n removeItem(name: any) {\r\n return this.localStorage.removeItem(this._makeKey(name));\r\n }\r\n}\r\n\r\nexport default class BrowserPersistence {\r\n static KEY = \"LM_BROWSER_PERSISTENCE\";\r\n storage;\r\n constructor(localStorage = globalThis.localStorage || storageMock) {\r\n this.storage = new NamespacedLocalStorage(\r\n localStorage,\r\n BrowserPersistence.KEY\r\n );\r\n }\r\n getRawItem(name: string) {\r\n return this.storage.getItem(name);\r\n }\r\n getItem(name: string) {\r\n const now = Date.now();\r\n const item = this.storage.getItem(name);\r\n if (!item) {\r\n return undefined;\r\n }\r\n const { value, ttl, timeStored } = JSON.parse(item);\r\n\r\n if (ttl && now - timeStored > ttl * 1000) {\r\n this.storage.removeItem(name);\r\n return undefined;\r\n }\r\n\r\n return JSON.parse(value);\r\n }\r\n setItem(name: string, value: any, ttl: any = 3600) {\r\n const timeStored = Date.now();\r\n this.storage.setItem(\r\n name,\r\n JSON.stringify({\r\n value: JSON.stringify(value),\r\n timeStored,\r\n ttl,\r\n })\r\n );\r\n }\r\n removeItem(name: any) {\r\n this.storage.removeItem(name);\r\n }\r\n}\r\n","const success = (message: string) => {\r\n alert(message);\r\n};\r\n\r\nconst error = (message: string) => {\r\n alert(message);\r\n};\r\n\r\nexport const notificationService = {\r\n success,\r\n error,\r\n};","// Extend the global Window interface to include dataLayer\r\ndeclare global {\r\n interface Window {\r\n dataLayer: any[];\r\n }\r\n}\r\n\r\nexport function initializeGTM(gtmId: string): void {\r\n if (!gtmId) {\r\n console.error(\"Google Tag Manager ID is required.\");\r\n return;\r\n }\r\n\r\n // Ensure this runs only on the client-side\r\n if (typeof window === \"undefined\") {\r\n return;\r\n }\r\n\r\n // Check if GTM is already initialized\r\n if (window.dataLayer && typeof window.dataLayer.push === \"function\") {\r\n return;\r\n }\r\n\r\n // Define the dataLayer array\r\n window.dataLayer = window.dataLayer || [];\r\n\r\n function gtag(...args: any[]) {\r\n window.dataLayer.push(args);\r\n }\r\n\r\n gtag(\"js\", new Date());\r\n\r\n // Insert the GTM script into the head\r\n const script = document.createElement(\"script\");\r\n script.src = `https://www.googletagmanager.com/gtm.js?id=${gtmId}`;\r\n script.async = true;\r\n document.head.appendChild(script);\r\n\r\n // Optional: Add the noscript fallback for browsers with JavaScript disabled\r\n const noScript = document.createElement(\"noscript\");\r\n noScript.innerHTML = `<iframe src=\"https://www.googletagmanager.com/ns.html?id=${gtmId}\" height=\"0\" width=\"0\" style=\"display:none;visibility:hidden\"></iframe>`;\r\n document.body.appendChild(noScript);\r\n}\r\n","import { blogService } from \"./blog\";\r\nimport { PostModel } from \"./blog/types\";\r\nimport { cartService } from \"./cart\";\r\nimport { Cart, NewLineItem, ShippingAddress, LineItem } from \"./cart/types\";\r\nimport { productService } from \"./products\";\r\nimport {\r\n ProductModel,\r\n ProductVariantModel,\r\n ProductCategoryModel,\r\n} from \"./products/types\";\r\nimport { formService } from \"./form\";\r\nimport { ContactUsModel } from \"./form/types\";\r\nimport * as Utils from \"./utils\";\r\nimport { notificationService } from \"./utils/notification\";\r\nimport { PagingInfo, SearchResult } from \"./models\";\r\nimport { initializeGTM } from \"./utils/gtm\";\r\n\r\nexport class PostEventModel {\r\n title?: string;\r\n start?: Date;\r\n end?: Date;\r\n resource?: any;\r\n}\r\n\r\n/** cart library */\r\nexport {\r\n blogService,\r\n PostModel,\r\n cartService,\r\n Cart,\r\n LineItem,\r\n NewLineItem,\r\n ShippingAddress,\r\n productService,\r\n ProductModel,\r\n ProductVariantModel,\r\n ProductCategoryModel,\r\n formService,\r\n ContactUsModel,\r\n notificationService,\r\n Utils,\r\n SearchResult,\r\n PagingInfo,\r\n initializeGTM,\r\n};\r\n"],"names":["__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","SuppressedError","StorageManager","isBrowser","window","createRandomId","Math","random","toString","substring","Date","getTime","getSessionId","this","sessionStorage","sessionId","getItem","setItem","getUserId","localStorage","userId","getLocalStorageValue","key","setLocalStorageValue","removeLocalStorageValue","removeItem","getSessionStorageValue","setSessionStorageValue","removeSessionStorageValue","analyticService","constructor","storageService","getFS","client","axios","create","baseURL","interceptors","request","use","req","headers","process","env","NEXT_PUBLIC_API_KEY","fs","blogService","getBlogCategories","get","res","data","getFeaturedPost","getBlogPosts","count","getBlogPostsForPage","page","getBlogPostsForCategory","category","getBlogPost","slug","getSimilarPosts","id","getAllPosts","BaseModel","UserCreatedModel","UserModifiableModel","PagingInfo","currentPage","itemsPerPage","hasNextPage","totalItems","SearchResult","items","PostModel","cartService","getCart","createCart","body","post","updateCart","put","deleteCart","delete","setShippingAddress","Cart","LineItem","NewLineItem","ShippingAddress","productService","getAllProductCategories","getProductCategory","getProducts","getProductsForPage","searchProducts","q","sort","searchProductsByCategorySlug","categorySlug","getAllProducts","getProduct","getSimilarProducts","ProductVariantModel","ProductModel","ProductCategoryModel","formService","formId","formData","formUrl","ContactUsModel","yup","object","shape","name","string","required","min","email","mobile","matches","message","storageMock","length","clear","NamespacedLocalStorage","_makeKey","BrowserPersistence","globalThis","storage","KEY","getRawItem","now","item","ttl","timeStored","JSON","parse","stringify","notificationService","success","alert","error","initializeGTM","gtmId","console","dataLayer","push","args","gtag","script","document","createElement","src","async","head","appendChild","noScript","innerHTML","PostEventModel"],"mappings":"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","x_google_ignoreList":[0]}
|