diff --git a/asset-manifest.json b/asset-manifest.json
index 727a1ab..781a693 100644
--- a/asset-manifest.json
+++ b/asset-manifest.json
@@ -5,34 +5,34 @@
"main.css": "/adobeassignment/static/css/main.8154248b.chunk.css",
"main.js": "/adobeassignment/static/js/main.aa55b18a.chunk.js",
"main.js.map": "/adobeassignment/static/js/main.aa55b18a.chunk.js.map",
- "runtime-main.js": "/adobeassignment/static/js/runtime-main.28504e11.js",
- "runtime-main.js.map": "/adobeassignment/static/js/runtime-main.28504e11.js.map",
+ "runtime-main.js": "/adobeassignment/static/js/runtime-main.487b9582.js",
+ "runtime-main.js.map": "/adobeassignment/static/js/runtime-main.487b9582.js.map",
"static/css/3.de424728.chunk.css": "/adobeassignment/static/css/3.de424728.chunk.css",
"static/js/3.e655275c.chunk.js": "/adobeassignment/static/js/3.e655275c.chunk.js",
"static/js/3.e655275c.chunk.js.map": "/adobeassignment/static/js/3.e655275c.chunk.js.map",
- "static/css/4.590eef68.chunk.css": "/adobeassignment/static/css/4.590eef68.chunk.css",
- "static/js/4.9ab8588a.chunk.js": "/adobeassignment/static/js/4.9ab8588a.chunk.js",
- "static/js/4.9ab8588a.chunk.js.map": "/adobeassignment/static/js/4.9ab8588a.chunk.js.map",
- "static/css/5.c4329f29.chunk.css": "/adobeassignment/static/css/5.c4329f29.chunk.css",
- "static/js/5.907a5f16.chunk.js": "/adobeassignment/static/js/5.907a5f16.chunk.js",
- "static/js/5.907a5f16.chunk.js.map": "/adobeassignment/static/js/5.907a5f16.chunk.js.map",
+ "static/css/4.1a37ef52.chunk.css": "/adobeassignment/static/css/4.1a37ef52.chunk.css",
+ "static/js/4.356676d3.chunk.js": "/adobeassignment/static/js/4.356676d3.chunk.js",
+ "static/js/4.356676d3.chunk.js.map": "/adobeassignment/static/js/4.356676d3.chunk.js.map",
+ "static/css/5.18f620ee.chunk.css": "/adobeassignment/static/css/5.18f620ee.chunk.css",
+ "static/js/5.fb62759b.chunk.js": "/adobeassignment/static/js/5.fb62759b.chunk.js",
+ "static/js/5.fb62759b.chunk.js.map": "/adobeassignment/static/js/5.fb62759b.chunk.js.map",
"static/css/6.26fa32fe.chunk.css": "/adobeassignment/static/css/6.26fa32fe.chunk.css",
"static/js/6.2f1be9ec.chunk.js": "/adobeassignment/static/js/6.2f1be9ec.chunk.js",
"static/js/6.2f1be9ec.chunk.js.map": "/adobeassignment/static/js/6.2f1be9ec.chunk.js.map",
"static/js/7.e6d0fe87.chunk.js": "/adobeassignment/static/js/7.e6d0fe87.chunk.js",
"static/js/7.e6d0fe87.chunk.js.map": "/adobeassignment/static/js/7.e6d0fe87.chunk.js.map",
"index.html": "/adobeassignment/index.html",
- "precache-manifest.c4fd5db4351aab822b31d07094ede099.js": "/adobeassignment/precache-manifest.c4fd5db4351aab822b31d07094ede099.js",
+ "precache-manifest.a98ac11b5f1a9f4607be6d75c8dbf090.js": "/adobeassignment/precache-manifest.a98ac11b5f1a9f4607be6d75c8dbf090.js",
"service-worker.js": "/adobeassignment/service-worker.js",
"static/css/3.de424728.chunk.css.map": "/adobeassignment/static/css/3.de424728.chunk.css.map",
- "static/css/4.590eef68.chunk.css.map": "/adobeassignment/static/css/4.590eef68.chunk.css.map",
- "static/css/5.c4329f29.chunk.css.map": "/adobeassignment/static/css/5.c4329f29.chunk.css.map",
+ "static/css/4.1a37ef52.chunk.css.map": "/adobeassignment/static/css/4.1a37ef52.chunk.css.map",
+ "static/css/5.18f620ee.chunk.css.map": "/adobeassignment/static/css/5.18f620ee.chunk.css.map",
"static/css/6.26fa32fe.chunk.css.map": "/adobeassignment/static/css/6.26fa32fe.chunk.css.map",
"static/css/main.8154248b.chunk.css.map": "/adobeassignment/static/css/main.8154248b.chunk.css.map",
"static/js/3.e655275c.chunk.js.LICENSE.txt": "/adobeassignment/static/js/3.e655275c.chunk.js.LICENSE.txt"
},
"entrypoints": [
- "static/js/runtime-main.28504e11.js",
+ "static/js/runtime-main.487b9582.js",
"static/css/3.de424728.chunk.css",
"static/js/3.e655275c.chunk.js",
"static/css/main.8154248b.chunk.css",
diff --git a/index.html b/index.html
index 9c6ae12..054b0b6 100644
--- a/index.html
+++ b/index.html
@@ -1 +1 @@
-
Adobe assignment
\ No newline at end of file
+Adobe assignment
\ No newline at end of file
diff --git a/precache-manifest.c4fd5db4351aab822b31d07094ede099.js b/precache-manifest.a98ac11b5f1a9f4607be6d75c8dbf090.js
similarity index 67%
rename from precache-manifest.c4fd5db4351aab822b31d07094ede099.js
rename to precache-manifest.a98ac11b5f1a9f4607be6d75c8dbf090.js
index 3b3fe6c..69345c8 100644
--- a/precache-manifest.c4fd5db4351aab822b31d07094ede099.js
+++ b/precache-manifest.a98ac11b5f1a9f4607be6d75c8dbf090.js
@@ -1,6 +1,6 @@
self.__precacheManifest = (self.__precacheManifest || []).concat([
{
- "revision": "62f34d8c856e735c44d4e93c6560680e",
+ "revision": "3a0a0660e513013295e71f8bb9a5c479",
"url": "/adobeassignment/index.html"
},
{
@@ -8,12 +8,12 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
"url": "/adobeassignment/static/css/3.de424728.chunk.css"
},
{
- "revision": "a078103decb55df87d3d",
- "url": "/adobeassignment/static/css/4.590eef68.chunk.css"
+ "revision": "291ec3a7f6f9499f1263",
+ "url": "/adobeassignment/static/css/4.1a37ef52.chunk.css"
},
{
- "revision": "598aa42a03ab0358f059",
- "url": "/adobeassignment/static/css/5.c4329f29.chunk.css"
+ "revision": "1ec577589d65fce06a15",
+ "url": "/adobeassignment/static/css/5.18f620ee.chunk.css"
},
{
"revision": "ff05598409f582efdbfa",
@@ -36,12 +36,12 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
"url": "/adobeassignment/static/js/3.e655275c.chunk.js.LICENSE.txt"
},
{
- "revision": "a078103decb55df87d3d",
- "url": "/adobeassignment/static/js/4.9ab8588a.chunk.js"
+ "revision": "291ec3a7f6f9499f1263",
+ "url": "/adobeassignment/static/js/4.356676d3.chunk.js"
},
{
- "revision": "598aa42a03ab0358f059",
- "url": "/adobeassignment/static/js/5.907a5f16.chunk.js"
+ "revision": "1ec577589d65fce06a15",
+ "url": "/adobeassignment/static/js/5.fb62759b.chunk.js"
},
{
"revision": "ff05598409f582efdbfa",
@@ -56,7 +56,7 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
"url": "/adobeassignment/static/js/main.aa55b18a.chunk.js"
},
{
- "revision": "e466f3739a5e2f154586",
- "url": "/adobeassignment/static/js/runtime-main.28504e11.js"
+ "revision": "1370d3b0b3c8253a519c",
+ "url": "/adobeassignment/static/js/runtime-main.487b9582.js"
}
]);
\ No newline at end of file
diff --git a/service-worker.js b/service-worker.js
index 8ad9a7d..6a0762a 100644
--- a/service-worker.js
+++ b/service-worker.js
@@ -14,7 +14,7 @@
importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-sw.js");
importScripts(
- "/adobeassignment/precache-manifest.c4fd5db4351aab822b31d07094ede099.js"
+ "/adobeassignment/precache-manifest.a98ac11b5f1a9f4607be6d75c8dbf090.js"
);
self.addEventListener('message', (event) => {
diff --git a/static/css/4.590eef68.chunk.css b/static/css/4.1a37ef52.chunk.css
similarity index 93%
rename from static/css/4.590eef68.chunk.css
rename to static/css/4.1a37ef52.chunk.css
index af344f8..60299e7 100644
--- a/static/css/4.590eef68.chunk.css
+++ b/static/css/4.1a37ef52.chunk.css
@@ -1,2 +1,2 @@
-.Cart_c-Cart__3o6Xj{background:#f1f3f6;font-family:Verdana,Geneva,sans-serif;margin-top:64px;margin-bottom:46px}.c-Plp__c-SortAndFilterPanel__c-Search{margin-left:auto}.c-Plp__c-SortAndFilterPanel__c-CartIcon{margin-left:1rem;position:relative}.c-Plp__c-SortAndFilterPanel__c-CartIcon .c-Plp__c-SortAndFilterPanel__c-CartIcon__badge{position:absolute;top:-3px;right:-9px;padding:0 5px;border-radius:50%;background-color:#c70936;color:#fff;font-size:12px}.c-Cart__c-CartList__c-CartItem{padding:15px 0;margin-bottom:13px;background:#fff;border:1px solid #999;line-height:1}.c-Cart__c-CartList__c-CartItem [class*=col-]{padding-left:10px;padding-right:10px}.c-Cart__c-CartList__c-CartItem .c-Cart__c-CartList__c-CartItem__image{margin-bottom:.7rem}.c-Cart__c-CartList__c-CartItem .c-Cart__c-CartList__c-CartItem__name{font-size:14px}.c-SectionLoader{display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3);width:100%;height:100%;position:relative;top:0;left:0;z-index:10}.c-SectionLoader .c-SectionLoader__lds-ripple{display:inline-block;position:absolute;width:80px;height:80px}.c-SectionLoader .c-SectionLoader__lds-ripple div{position:absolute;border:4px solid #fff;opacity:1;border-radius:50%;-webkit-animation:lds-ripple 1s cubic-bezier(0,.2,.8,1) infinite;animation:lds-ripple 1s cubic-bezier(0,.2,.8,1) infinite}.c-SectionLoader .c-SectionLoader__lds-ripple div:nth-child(2){-webkit-animation-delay:-.5s;animation-delay:-.5s}@-webkit-keyframes lds-ripple{0%{top:36px;left:36px;width:0;height:0;opacity:1}to{top:0;left:0;width:72px;height:72px;opacity:0}}@keyframes lds-ripple{0%{top:36px;left:36px;width:0;height:0;opacity:1}to{top:0;left:0;width:72px;height:72px;opacity:0}}.c-ItemPrice{line-height:12px;margin-bottom:.9rem;display:flex}.c-ItemPrice .c-ItemPrice__price{font-size:12px;font-weight:700;padding-right:.5rem}.c-ItemPrice .c-ItemPrice__price--strikethrough{color:#999;font-weight:700;font-size:12px;text-decoration:line-through;margin-left:6.4px}.c-ItemPrice .c-ItemPrice__discount{color:#4aa219;font-weight:700;font-size:12px;margin-left:auto}.c-CartList{padding:.8em 0}.c-CartList .c-CartList__emptyCart{background:#fff;margin-top:25%;border:1px solid #000;text-align:center;padding:1em}.c-CartList .c-CartList__emptyCart .c-CartList__emptyCart__information{color:#999}.c-Footer{display:flex;align-items:center;justify-content:center;position:fixed;left:0;bottom:0;width:100%;background-color:#4471ea;color:#f1f3f6;padding:.7em}.c-Footer p{margin-bottom:0;font-weight:700}
-/*# sourceMappingURL=4.590eef68.chunk.css.map */
\ No newline at end of file
+.Cart_c-Cart__3o6Xj{background:#f1f3f6;font-family:Verdana,Geneva,sans-serif;margin-top:64px;margin-bottom:46px}.c-Plp__c-SortAndFilterPanel__c-Search{margin-left:auto}.c-Plp__c-SortAndFilterPanel__c-CartIcon{margin-left:1rem;position:relative}.c-Plp__c-SortAndFilterPanel__c-CartIcon .c-Plp__c-SortAndFilterPanel__c-CartIcon__badge{position:absolute;top:-3px;right:-9px;padding:0 5px;border-radius:50%;background-color:#c70936;color:#fff;font-size:12px}.c-Cart__c-CartList__c-CartItem{padding:15px 0;margin-bottom:13px;background:#fff;border:1px solid #999;line-height:1}.c-Cart__c-CartList__c-CartItem [class*=col-]{padding-left:10px;padding-right:10px}.c-Cart__c-CartList__c-CartItem .c-Cart__c-CartList__c-CartItem__image{margin-bottom:.7rem}.c-Cart__c-CartList__c-CartItem .c-Cart__c-CartList__c-CartItem__name{font-size:14px}.c-SectionLoader{display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3);width:100%;height:100%;position:relative;top:0;left:0;z-index:10}.c-SectionLoader .c-SectionLoader__lds-ripple{display:inline-block;position:absolute;width:80px;height:80px}.c-SectionLoader .c-SectionLoader__lds-ripple div{position:absolute;border:4px solid #fff;opacity:1;border-radius:50%;-webkit-animation:lds-ripple 1s cubic-bezier(0,.2,.8,1) infinite;animation:lds-ripple 1s cubic-bezier(0,.2,.8,1) infinite}.c-SectionLoader .c-SectionLoader__lds-ripple div:nth-child(2){-webkit-animation-delay:-.5s;animation-delay:-.5s}@-webkit-keyframes lds-ripple{0%{top:36px;left:36px;width:0;height:0;opacity:1}to{top:0;left:0;width:72px;height:72px;opacity:0}}@keyframes lds-ripple{0%{top:36px;left:36px;width:0;height:0;opacity:1}to{top:0;left:0;width:72px;height:72px;opacity:0}}.c-ItemPrice{line-height:12px;margin-bottom:.9rem;display:flex}.c-ItemPrice .c-ItemPrice__price{font-size:12px;font-weight:700;padding-right:.5rem}.c-ItemPrice .c-ItemPrice__price--strikethrough{color:#999;font-weight:700;font-size:10px;text-decoration:line-through;margin-left:6.4px}.c-ItemPrice .c-ItemPrice__discount{color:#4aa219;font-weight:700;font-size:10px;margin-left:auto}.c-CartList{padding:.8em 0}.c-CartList .c-CartList__emptyCart{background:#fff;margin-top:25%;border:1px solid #000;text-align:center;padding:1em}.c-CartList .c-CartList__emptyCart .c-CartList__emptyCart__information{color:#999}.c-Footer{display:flex;align-items:center;justify-content:center;position:fixed;left:0;bottom:0;width:100%;background-color:#4471ea;color:#f1f3f6;padding:.7em}.c-Footer p{margin-bottom:0;font-weight:700}
+/*# sourceMappingURL=4.1a37ef52.chunk.css.map */
\ No newline at end of file
diff --git a/static/css/4.1a37ef52.chunk.css.map b/static/css/4.1a37ef52.chunk.css.map
new file mode 100644
index 0000000..660545f
--- /dev/null
+++ b/static/css/4.1a37ef52.chunk.css.map
@@ -0,0 +1 @@
+{"version":3,"sources":["Cart.module.scss","../../styles/_variables.scss","Search.component.scss","CartIcon.component.scss","../../../styles/_variables.scss","CartItem.component.scss","SectionLoader.component.scss","ItemPrice.component.scss","CartList.component.scss","Footer.component.scss"],"names":[],"mappings":"AAEA,oBACI,kBCmHgB,CDlHhB,qCC4EqC,CD3ErC,eCmCgB,CDlChB,kBAAmB,CENvB,uCACE,gBAAiB,CCCnB,yCACE,gBAAiB,CACjB,iBAAkB,CAFpB,yFAKI,iBAAkB,CAClB,QAAS,CACT,UAAW,CACX,aAAgB,CAChB,iBAAkB,CAClB,wBCoJiB,CDnJjB,UCuGa,CDtGb,cCqFoB,CCjGxB,gCACI,cAAe,CACf,kBAAmB,CACnB,eD+Ga,CC9Gb,qBDqHa,CCpHb,aAAc,CALlB,8CAQQ,iBAAkB,CAClB,kBAAmB,CAT3B,uEAaQ,mBAAqB,CAb7B,sEAiBQ,cD+Ec,CElGtB,iBAEI,YAAa,CAChB,kBAAmB,CACnB,sBAAuB,CACvB,yBAA2B,CACxB,UAAW,CACX,WAAY,CACZ,iBAAkB,CAClB,KAAO,CACP,MAAQ,CACR,UAAW,CAXf,8CAcE,oBAAqB,CACrB,iBAAkB,CAClB,UAAW,CACX,WAAY,CAjBd,kDAmBG,iBAAkB,CAClB,qBAAsB,CACtB,SAAU,CACV,iBAAkB,CAClB,gEAAA,CAAA,wDAA8D,CAvBjE,+DAyBI,4BAAA,CAAA,oBAAsB,CACtB,8BAKF,GACC,QAAS,CACT,SAAU,CACV,OAAQ,CACR,QAAS,CACT,SAAU,CAEX,GACC,KAAQ,CACR,MAAS,CACT,UAAW,CACX,WAAY,CACZ,SAAU,CAAA,CAjBT,sBAKF,GACC,QAAS,CACT,SAAU,CACV,OAAQ,CACR,QAAS,CACT,SAAU,CAEX,GACC,KAAQ,CACR,MAAS,CACT,UAAW,CACX,WAAY,CACZ,SAAU,CAAA,CCzCb,aACI,gBHgGoB,CG/FpB,mBAAqB,CACrB,YAAa,CAHjB,iCAKQ,cH4FgB,CG3FhB,eHsGc,CGrGd,mBAAqB,CAP7B,gDAWQ,UH8GS,CG7GT,eHgGc,CG/Fd,cHqFa,CGpFb,4BAA6B,CAC7B,iBAAwB,CAfhC,oCAmBQ,aAAc,CACd,eHwFc,CGvFd,cH6Ea,CG5Eb,gBAAiB,CCtBzB,YACI,cAAgB,CADpB,mCAGQ,eJ+GS,CI9GT,cAAe,CACf,qBAAuB,CACvB,iBAAkB,CAClB,WAAY,CAPpB,uEAUY,UJ+GK,CKzHjB,UACI,YAAa,CACb,kBAAmB,CACnB,sBAAuB,CACvB,cAAe,CACf,MAAO,CACP,QAAS,CACT,UAAW,CACX,wBLwHiB,CKvHjB,aL2GgB,CK1GhB,YAAc,CAVlB,YAaQ,eAAgB,CAChB,eAAiB","file":"4.1a37ef52.chunk.css","sourcesContent":["@import './../../styles/variables';\n\n.c-Cart {\n background: $neutral-12;\n font-family: $font-family;\n margin-top: $header-height;\n margin-bottom: 46px;\n // padding: 15px 10px;\n\n .c-Cart__mainContent {\n \n }\n}\n","// Project-Wide Variables\n// ===\n//\n// Edit these as needed. Some guidelines:\n//\n// - Names should be lowercase and dash-separated;\n// - Qualifiers should be added to the beginning of related variables: use\n// `$small-font-size`, not `$font-size-small`;\n// - Numeric scales should use increments of 10; these numbers are arbitrary and\n// should not map to actual values. If really necessary, additional values can\n// be added in between, e.g. $neutral-15 between 10 and 20.\n//\n//\n// Table of Contents\n// ---\n//\n// [AAA] Basic Layout\n// [BBB] Responsive Layout\n// [CCC] Typography\n// [DDD] Color Palette\n// [EEE] Appearance\n// [FFF] Z-Index\n// [GGG] Shorthands\n\n\n// [AAA] Basic Layout\n// ---\n\n// Basic unit for spacing and alignment; 6 to 12px recommended. Apply in whole\n// or half multiples.\n$sub-unit: 4px;\n$unit: 8px;\n\n// Standard tap-target size\n$tap-size: 44px;\n\n// Container max-width.\n$max-width: 1280px;\n\n// Content Height Calculations\n$header-height: 64px;\n$footer-height: 173px;\n$content-height: calc(100vh - #{$header-height} - #{$footer-height});\n\n// [BBB] Responsive Layout\n// ---\n//\n// Media query breakpoints and grid setup. Please see Mobify's Responsive Best\n// Practices doc here: https://bit.ly/2tmRnEi, and our Responsive Grid\n// documentation here: http://docs.mobify.com/latest/guides/responsive-grid/\n//\n// Note: $small-breakpoint isn't needed, since it is 0px\n\n$medium-breakpoint: 600px;\n$large-breakpoint: 960px;\n$xlarge-breakpoint: $max-width;\n\n$susy: (\n // Add color to show the columns and gutters\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(4),\n 'gutters': 12px\n);\n\n$medium-layout: (\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(12),\n 'gutters': 12px\n);\n\n$large-layout: (\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(12),\n 'gutters': 24px\n);\n\n\n// [CCC] Typography\n// ---\n// $font-family: 'San Francisco', 'Roboto', 'Fira Sans', 'Segoe UI', sans-serif;\n$font-family: Verdana, Geneva, sans-serif; \n$header-font-family: 'Avenir Next Condensed', 'Roboto Condensed', 'Helvetica Neue', 'Roboto', sans-serif;\n$loaded-header-font-family: 'Roboto', $header-font-family;\n\n// Line height\n$huge-line-height: 32px;\n$bigger-line-height: 28px;\n$big-line-height: 24px;\n$line-height: 20px;\n$small-line-height: 16px;\n$smaller-line-height: 12px;\n$tiny-line-height: 8px;\n\n// Font sizes\n$huge-font-size: 28px;\n$bigger-font-size: 24px;\n$big-font-size: 20px;\n$font-size: 16px;\n$small-font-size: 14px;\n$smaller-font-size: 12px;\n$tiny-font-size: 10px;\n$smallest-font-size: 8px;\n\n// Font weight\n$thin-font-weight: 100;\n$extra-light-font-weight: 200;\n$light-font-weight: 300;\n$regular-font-weight: 400;\n$medium-font-weight: 500;\n$semi-bold-font-weight: 600;\n$bold-font-weight: 700;\n\n// [DDD] Color Palette\n// ---\n\n// Neutrals\n$neutral-00: #fff;\n$neutral-10: #f7f7f7;\n$neutral-12: #f1f3f6;\n$neutral-15: #eee;\n$neutral-17: #e1e1e1;\n$neutral-20: #d5d5d5;\n$neutral-30: #bfbfbf;\n$neutral-40: #999;\n$neutral-50: #696969;\n$neutral-60: #333;\n$neutral-70: #000;\n\n// Brand colors\n// $brand-color: #017e9b; // blue\n$brand-color: #4471ea; // blue\n// $secondary-brand-color: #005569;\n$secondary-brand-color: #fafafa;\n$tertiary-brand-color: #83bdcb;\n$quaternary-brand-color: #bfdfe6;\n\n// UI Kit colors\n$ui-brand-color: #005c83; // dark blue\n\n// Accent colors\n$accent-color: #ff852c; // orange\n$light-accent-color: lighten($accent-color, 15%);\n$dark-accent-color: darken($accent-color, 15%);\n\n// Primary Action\n$primary-action-color: #dc0a3c;\n$light-primary-action-color: lighten($primary-action-color, 15%);\n$dark-primary-action-color: darken($primary-action-color, 15%);\n\n// Secondary Action\n$secondary-action-color: #ff852c;\n$light-secondary-action-color: lighten($secondary-action-color, 15%);\n$dark-secondary-action-color: darken($secondary-action-color, 15%);\n\n// Success colors\n$success-color: #037b30;\n$light-success-color: lighten($success-color, 15%);\n$dark-success-color: darken($success-color, 15%);\n\n// Error colors\n$error-color: #c70936;\n$light-error-color: lighten($error-color, 15%);\n$feedback-error-color: #f8e7eb;\n$dark-error-color: darken($error-color, 15%);\n\n// Sale color\n$sale-color: $error-color;\n$prominent-color: $error-color;\n\n// Social colors\n$facebook-color: #3a5a93;\n$twitter-color: #55aace;\n$instagram-color: #405de6;\n$pinterest-color: #bd081c;\n$youtube-color: #e52d27;\n$google-plus-color: #dd4b39;\n$yelp-color: #af0606;\n\n\n// [EEE] Appearance\n// ---\n\n$font-color: $neutral-60;\n$font-color-light: $neutral-12;\n\n$link-color: $ui-brand-color;\n$active-link-color: $dark-accent-color;\n\n$focus-color: $brand-color;\n\n$border-color: $neutral-20;\n$border-radius: 4px;\n\n$input-background-color: $neutral-00;\n$input-border-color: $border-color;\n$focused-input-border-color: $secondary-brand-color;\n$disabled-input-color: $neutral-40;\n$disabled-input-background-color: $neutral-15;\n$disabled-button-background-color: $neutral-15;\n$add-to-cart-button-background-color: #f7ae3a;\n$horizontal-input-padding: $unit;\n$vertical-input-padding: $unit;\n\n$background-color: $neutral-12;\n$overlay-color: rgba($neutral-00, 0.85);\n\n\n// [FFF] Z-Index\n// ---\n\n// Organizes z-index usage by name. Values can be incremented/decremented\n// slightly as necessary. eg. $z1-layer + 1;\n\n$z1-depth: 1; // background\n$z2-depth: 10; // icon or other ui element\n$z3-depth: 100; // modal shade or similar\n$z4-depth: 1000; // modal dialog or similar\n\n\n// [GGG] Shorthands\n// ---\n\n$border: 1px solid $border-color;\n$light-border: 1px solid $neutral-15;\n$input-padding: $vertical-input-padding $horizontal-input-padding;\n\n$box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.3);\n$large-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3);\n$inset-box-shadow: inset 0 2px 2px -2px rgba(0, 0, 0, 0.3), inset 0 -2px 2px -2px rgba(0, 0, 0, 0.3);\n$input-box-shadow: inset 0 0 5px 0 rgba(0, 0, 0, 0.3);\n$themeColor-Light: #f3e2c7;\n$themeColor-Dark:#252525;\n$theme-font: verdana, sans-serif;\n$theme-supplementer: #f39c12;\n$font-size-desktop-h5: 1.25em;\n$font-size-mobile-h5: 0.8em;\n$font-size-desktop-p: 1.1em;\n$font-size-mobile-p: 0.7em;\n",".c-Plp__c-SortAndFilterPanel__c-Search {\n margin-left: auto;\n}\n","@import './../../../styles/variables';\n\n.c-Plp__c-SortAndFilterPanel__c-CartIcon {\n margin-left: 1rem;\n position: relative;\n\n .c-Plp__c-SortAndFilterPanel__c-CartIcon__badge {\n position: absolute;\n top: -3px;\n right: -9px;\n padding: 0px 5px;\n border-radius: 50%;\n background-color: $prominent-color;\n color: $neutral-00;\n font-size: $smaller-font-size;\n }\n}\n","// Project-Wide Variables\n// ===\n//\n// Edit these as needed. Some guidelines:\n//\n// - Names should be lowercase and dash-separated;\n// - Qualifiers should be added to the beginning of related variables: use\n// `$small-font-size`, not `$font-size-small`;\n// - Numeric scales should use increments of 10; these numbers are arbitrary and\n// should not map to actual values. If really necessary, additional values can\n// be added in between, e.g. $neutral-15 between 10 and 20.\n//\n//\n// Table of Contents\n// ---\n//\n// [AAA] Basic Layout\n// [BBB] Responsive Layout\n// [CCC] Typography\n// [DDD] Color Palette\n// [EEE] Appearance\n// [FFF] Z-Index\n// [GGG] Shorthands\n\n\n// [AAA] Basic Layout\n// ---\n\n// Basic unit for spacing and alignment; 6 to 12px recommended. Apply in whole\n// or half multiples.\n$sub-unit: 4px;\n$unit: 8px;\n\n// Standard tap-target size\n$tap-size: 44px;\n\n// Container max-width.\n$max-width: 1280px;\n\n// Content Height Calculations\n$header-height: 64px;\n$footer-height: 173px;\n$content-height: calc(100vh - #{$header-height} - #{$footer-height});\n\n// [BBB] Responsive Layout\n// ---\n//\n// Media query breakpoints and grid setup. Please see Mobify's Responsive Best\n// Practices doc here: https://bit.ly/2tmRnEi, and our Responsive Grid\n// documentation here: http://docs.mobify.com/latest/guides/responsive-grid/\n//\n// Note: $small-breakpoint isn't needed, since it is 0px\n\n$medium-breakpoint: 600px;\n$large-breakpoint: 960px;\n$xlarge-breakpoint: $max-width;\n\n$susy: (\n // Add color to show the columns and gutters\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(4),\n 'gutters': 12px\n);\n\n$medium-layout: (\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(12),\n 'gutters': 12px\n);\n\n$large-layout: (\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(12),\n 'gutters': 24px\n);\n\n\n// [CCC] Typography\n// ---\n// $font-family: 'San Francisco', 'Roboto', 'Fira Sans', 'Segoe UI', sans-serif;\n$font-family: Verdana, Geneva, sans-serif; \n$header-font-family: 'Avenir Next Condensed', 'Roboto Condensed', 'Helvetica Neue', 'Roboto', sans-serif;\n$loaded-header-font-family: 'Roboto', $header-font-family;\n\n// Line height\n$huge-line-height: 32px;\n$bigger-line-height: 28px;\n$big-line-height: 24px;\n$line-height: 20px;\n$small-line-height: 16px;\n$smaller-line-height: 12px;\n$tiny-line-height: 8px;\n\n// Font sizes\n$huge-font-size: 28px;\n$bigger-font-size: 24px;\n$big-font-size: 20px;\n$font-size: 16px;\n$small-font-size: 14px;\n$smaller-font-size: 12px;\n$tiny-font-size: 10px;\n$smallest-font-size: 8px;\n\n// Font weight\n$thin-font-weight: 100;\n$extra-light-font-weight: 200;\n$light-font-weight: 300;\n$regular-font-weight: 400;\n$medium-font-weight: 500;\n$semi-bold-font-weight: 600;\n$bold-font-weight: 700;\n\n// [DDD] Color Palette\n// ---\n\n// Neutrals\n$neutral-00: #fff;\n$neutral-10: #f7f7f7;\n$neutral-12: #f1f3f6;\n$neutral-15: #eee;\n$neutral-17: #e1e1e1;\n$neutral-20: #d5d5d5;\n$neutral-30: #bfbfbf;\n$neutral-40: #999;\n$neutral-50: #696969;\n$neutral-60: #333;\n$neutral-70: #000;\n\n// Brand colors\n// $brand-color: #017e9b; // blue\n$brand-color: #4471ea; // blue\n// $secondary-brand-color: #005569;\n$secondary-brand-color: #fafafa;\n$tertiary-brand-color: #83bdcb;\n$quaternary-brand-color: #bfdfe6;\n\n// UI Kit colors\n$ui-brand-color: #005c83; // dark blue\n\n// Accent colors\n$accent-color: #ff852c; // orange\n$light-accent-color: lighten($accent-color, 15%);\n$dark-accent-color: darken($accent-color, 15%);\n\n// Primary Action\n$primary-action-color: #dc0a3c;\n$light-primary-action-color: lighten($primary-action-color, 15%);\n$dark-primary-action-color: darken($primary-action-color, 15%);\n\n// Secondary Action\n$secondary-action-color: #ff852c;\n$light-secondary-action-color: lighten($secondary-action-color, 15%);\n$dark-secondary-action-color: darken($secondary-action-color, 15%);\n\n// Success colors\n$success-color: #037b30;\n$light-success-color: lighten($success-color, 15%);\n$dark-success-color: darken($success-color, 15%);\n\n// Error colors\n$error-color: #c70936;\n$light-error-color: lighten($error-color, 15%);\n$feedback-error-color: #f8e7eb;\n$dark-error-color: darken($error-color, 15%);\n\n// Sale color\n$sale-color: $error-color;\n$prominent-color: $error-color;\n\n// Social colors\n$facebook-color: #3a5a93;\n$twitter-color: #55aace;\n$instagram-color: #405de6;\n$pinterest-color: #bd081c;\n$youtube-color: #e52d27;\n$google-plus-color: #dd4b39;\n$yelp-color: #af0606;\n\n\n// [EEE] Appearance\n// ---\n\n$font-color: $neutral-60;\n$font-color-light: $neutral-12;\n\n$link-color: $ui-brand-color;\n$active-link-color: $dark-accent-color;\n\n$focus-color: $brand-color;\n\n$border-color: $neutral-20;\n$border-radius: 4px;\n\n$input-background-color: $neutral-00;\n$input-border-color: $border-color;\n$focused-input-border-color: $secondary-brand-color;\n$disabled-input-color: $neutral-40;\n$disabled-input-background-color: $neutral-15;\n$disabled-button-background-color: $neutral-15;\n$add-to-cart-button-background-color: #f7ae3a;\n$horizontal-input-padding: $unit;\n$vertical-input-padding: $unit;\n\n$background-color: $neutral-12;\n$overlay-color: rgba($neutral-00, 0.85);\n\n\n// [FFF] Z-Index\n// ---\n\n// Organizes z-index usage by name. Values can be incremented/decremented\n// slightly as necessary. eg. $z1-layer + 1;\n\n$z1-depth: 1; // background\n$z2-depth: 10; // icon or other ui element\n$z3-depth: 100; // modal shade or similar\n$z4-depth: 1000; // modal dialog or similar\n\n\n// [GGG] Shorthands\n// ---\n\n$border: 1px solid $border-color;\n$light-border: 1px solid $neutral-15;\n$input-padding: $vertical-input-padding $horizontal-input-padding;\n\n$box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.3);\n$large-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3);\n$inset-box-shadow: inset 0 2px 2px -2px rgba(0, 0, 0, 0.3), inset 0 -2px 2px -2px rgba(0, 0, 0, 0.3);\n$input-box-shadow: inset 0 0 5px 0 rgba(0, 0, 0, 0.3);\n$themeColor-Light: #f3e2c7;\n$themeColor-Dark:#252525;\n$theme-font: verdana, sans-serif;\n$theme-supplementer: #f39c12;\n$font-size-desktop-h5: 1.25em;\n$font-size-mobile-h5: 0.8em;\n$font-size-desktop-p: 1.1em;\n$font-size-mobile-p: 0.7em;\n","@import './../../../styles//variables';\n\n.c-Cart__c-CartList__c-CartItem {\n padding: 15px 0;\n margin-bottom: 13px;\n background: $neutral-00;\n border: 1px solid $neutral-40;\n line-height: 1;\n\n [class*=\"col-\"] {\n padding-left: 10px;\n padding-right: 10px;\n }\n\n .c-Cart__c-CartList__c-CartItem__image {\n margin-bottom: 0.7rem;\n }\n\n .c-Cart__c-CartList__c-CartItem__name {\n font-size: $small-font-size;\n }\n}\n",".c-SectionLoader {\n\n display: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tbackground: rgba(0,0,0,0.3); \n width: 100%; \n height: 100%; \n position: relative; \n top:0px; \n left:0px; \n z-index: 10;\n \n .c-SectionLoader__lds-ripple {\n\t\tdisplay: inline-block;\n\t\tposition: absolute;\n\t\twidth: 80px;\n\t\theight: 80px;\n\t\tdiv {\n\t\t\tposition: absolute;\n\t\t\tborder: 4px solid #fff;\n\t\t\topacity: 1;\n\t\t\tborder-radius: 50%;\n\t\t\tanimation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite;\n\t\t\t&:nth-child(2) {\n\t\t\t\tanimation-delay: -0.5s;\n\t\t\t}\n\t\t}\n\t}\n\t\n\t@keyframes lds-ripple {\n\t\t0% {\n\t\t\ttop: 36px;\n\t\t\tleft: 36px;\n\t\t\twidth: 0;\n\t\t\theight: 0;\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\ttop: 0px;\n\t\t\tleft: 0px;\n\t\t\twidth: 72px;\n\t\t\theight: 72px;\n\t\t\topacity: 0;\n\t\t}\n\t}\n}\n","@import './../../../styles/variables';\n\n.c-ItemPrice {\n line-height: $smaller-font-size;\n margin-bottom: 0.9rem;\n display: flex;\n .c-ItemPrice__price {\n font-size: $smaller-font-size;\n font-weight: $bold-font-weight;\n padding-right: 0.5rem;\n }\n \n .c-ItemPrice__price--strikethrough {\n color: $neutral-40;\n font-weight: $bold-font-weight;\n font-size: $tiny-font-size;\n text-decoration: line-through;\n margin-left: $unit * 0.8; \n }\n \n .c-ItemPrice__discount {\n color: #4aa219;\n font-weight: $bold-font-weight;\n font-size: $tiny-font-size;\n margin-left: auto;\n }\n}\n","@import './../../../styles/variables';\n\n.c-CartList {\n padding: 0.8em 0;\n .c-CartList__emptyCart {\n background: $neutral-00;\n margin-top: 25%;\n border: 1px solid black;\n text-align: center;\n padding: 1em;\n\n .c-CartList__emptyCart__information {\n color: $neutral-40;\n }\n }\n}\n","@import './../../../styles/variables';\n\n.c-Footer {\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n left: 0;\n bottom: 0;\n width: 100%;\n background-color: $brand-color;\n color: $font-color-light;\n padding: 0.7em;\n\n p {\n margin-bottom: 0;\n font-weight: bold;\n }\n}\n"]}
\ No newline at end of file
diff --git a/static/css/4.590eef68.chunk.css.map b/static/css/4.590eef68.chunk.css.map
deleted file mode 100644
index 4c5e1b3..0000000
--- a/static/css/4.590eef68.chunk.css.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["Cart.module.scss","../../styles/_variables.scss","Search.component.scss","CartIcon.component.scss","../../../styles/_variables.scss","CartItem.component.scss","SectionLoader.component.scss","ItemPrice.component.scss","CartList.component.scss","Footer.component.scss"],"names":[],"mappings":"AAEA,oBACI,kBCmHgB,CDlHhB,qCC4EqC,CD3ErC,eCmCgB,CDlChB,kBAAmB,CENvB,uCACE,gBAAiB,CCCnB,yCACE,gBAAiB,CACjB,iBAAkB,CAFpB,yFAKI,iBAAkB,CAClB,QAAS,CACT,UAAW,CACX,aAAgB,CAChB,iBAAkB,CAClB,wBCoJiB,CDnJjB,UCuGa,CDtGb,cCqFoB,CCjGxB,gCACI,cAAe,CACf,kBAAmB,CACnB,eD+Ga,CC9Gb,qBDqHa,CCpHb,aAAc,CALlB,8CAQQ,iBAAkB,CAClB,kBAAmB,CAT3B,uEAaQ,mBAAqB,CAb7B,sEAiBQ,cD+Ec,CElGtB,iBAEI,YAAa,CAChB,kBAAmB,CACnB,sBAAuB,CACvB,yBAA2B,CACxB,UAAW,CACX,WAAY,CACZ,iBAAkB,CAClB,KAAO,CACP,MAAQ,CACR,UAAW,CAXf,8CAcE,oBAAqB,CACrB,iBAAkB,CAClB,UAAW,CACX,WAAY,CAjBd,kDAmBG,iBAAkB,CAClB,qBAAsB,CACtB,SAAU,CACV,iBAAkB,CAClB,gEAAA,CAAA,wDAA8D,CAvBjE,+DAyBI,4BAAA,CAAA,oBAAsB,CACtB,8BAKF,GACC,QAAS,CACT,SAAU,CACV,OAAQ,CACR,QAAS,CACT,SAAU,CAEX,GACC,KAAQ,CACR,MAAS,CACT,UAAW,CACX,WAAY,CACZ,SAAU,CAAA,CAjBT,sBAKF,GACC,QAAS,CACT,SAAU,CACV,OAAQ,CACR,QAAS,CACT,SAAU,CAEX,GACC,KAAQ,CACR,MAAS,CACT,UAAW,CACX,WAAY,CACZ,SAAU,CAAA,CCzCb,aACI,gBHgGoB,CG/FpB,mBAAqB,CACrB,YAAa,CAHjB,iCAKQ,cH4FgB,CG3FhB,eHsGc,CGrGd,mBAAqB,CAP7B,gDAWQ,UH8GS,CG7GT,eHgGc,CG/Fd,cHoFgB,CGnFhB,4BAA6B,CAC7B,iBAAwB,CAfhC,oCAmBQ,aAAc,CACd,eHwFc,CGvFd,cH4EgB,CG3EhB,gBAAiB,CCtBzB,YACI,cAAgB,CADpB,mCAGQ,eJ+GS,CI9GT,cAAe,CACf,qBAAuB,CACvB,iBAAkB,CAClB,WAAY,CAPpB,uEAUY,UJ+GK,CKzHjB,UACI,YAAa,CACb,kBAAmB,CACnB,sBAAuB,CACvB,cAAe,CACf,MAAO,CACP,QAAS,CACT,UAAW,CACX,wBLwHiB,CKvHjB,aL2GgB,CK1GhB,YAAc,CAVlB,YAaQ,eAAgB,CAChB,eAAiB","file":"4.590eef68.chunk.css","sourcesContent":["@import './../../styles/variables';\n\n.c-Cart {\n background: $neutral-12;\n font-family: $font-family;\n margin-top: $header-height;\n margin-bottom: 46px;\n // padding: 15px 10px;\n\n .c-Cart__mainContent {\n \n }\n}\n","// Project-Wide Variables\n// ===\n//\n// Edit these as needed. Some guidelines:\n//\n// - Names should be lowercase and dash-separated;\n// - Qualifiers should be added to the beginning of related variables: use\n// `$small-font-size`, not `$font-size-small`;\n// - Numeric scales should use increments of 10; these numbers are arbitrary and\n// should not map to actual values. If really necessary, additional values can\n// be added in between, e.g. $neutral-15 between 10 and 20.\n//\n//\n// Table of Contents\n// ---\n//\n// [AAA] Basic Layout\n// [BBB] Responsive Layout\n// [CCC] Typography\n// [DDD] Color Palette\n// [EEE] Appearance\n// [FFF] Z-Index\n// [GGG] Shorthands\n\n\n// [AAA] Basic Layout\n// ---\n\n// Basic unit for spacing and alignment; 6 to 12px recommended. Apply in whole\n// or half multiples.\n$sub-unit: 4px;\n$unit: 8px;\n\n// Standard tap-target size\n$tap-size: 44px;\n\n// Container max-width.\n$max-width: 1280px;\n\n// Content Height Calculations\n$header-height: 64px;\n$footer-height: 173px;\n$content-height: calc(100vh - #{$header-height} - #{$footer-height});\n\n// [BBB] Responsive Layout\n// ---\n//\n// Media query breakpoints and grid setup. Please see Mobify's Responsive Best\n// Practices doc here: https://bit.ly/2tmRnEi, and our Responsive Grid\n// documentation here: http://docs.mobify.com/latest/guides/responsive-grid/\n//\n// Note: $small-breakpoint isn't needed, since it is 0px\n\n$medium-breakpoint: 600px;\n$large-breakpoint: 960px;\n$xlarge-breakpoint: $max-width;\n\n$susy: (\n // Add color to show the columns and gutters\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(4),\n 'gutters': 12px\n);\n\n$medium-layout: (\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(12),\n 'gutters': 12px\n);\n\n$large-layout: (\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(12),\n 'gutters': 24px\n);\n\n\n// [CCC] Typography\n// ---\n// $font-family: 'San Francisco', 'Roboto', 'Fira Sans', 'Segoe UI', sans-serif;\n$font-family: Verdana, Geneva, sans-serif; \n$header-font-family: 'Avenir Next Condensed', 'Roboto Condensed', 'Helvetica Neue', 'Roboto', sans-serif;\n$loaded-header-font-family: 'Roboto', $header-font-family;\n\n// Line height\n$huge-line-height: 32px;\n$bigger-line-height: 28px;\n$big-line-height: 24px;\n$line-height: 20px;\n$small-line-height: 16px;\n$smaller-line-height: 12px;\n$tiny-line-height: 8px;\n\n// Font sizes\n$huge-font-size: 28px;\n$bigger-font-size: 24px;\n$big-font-size: 20px;\n$font-size: 16px;\n$small-font-size: 14px;\n$smaller-font-size: 12px;\n$tiny-font-size: 10px;\n$smallest-font-size: 8px;\n\n// Font weight\n$thin-font-weight: 100;\n$extra-light-font-weight: 200;\n$light-font-weight: 300;\n$regular-font-weight: 400;\n$medium-font-weight: 500;\n$semi-bold-font-weight: 600;\n$bold-font-weight: 700;\n\n// [DDD] Color Palette\n// ---\n\n// Neutrals\n$neutral-00: #fff;\n$neutral-10: #f7f7f7;\n$neutral-12: #f1f3f6;\n$neutral-15: #eee;\n$neutral-17: #e1e1e1;\n$neutral-20: #d5d5d5;\n$neutral-30: #bfbfbf;\n$neutral-40: #999;\n$neutral-50: #696969;\n$neutral-60: #333;\n$neutral-70: #000;\n\n// Brand colors\n// $brand-color: #017e9b; // blue\n$brand-color: #4471ea; // blue\n// $secondary-brand-color: #005569;\n$secondary-brand-color: #fafafa;\n$tertiary-brand-color: #83bdcb;\n$quaternary-brand-color: #bfdfe6;\n\n// UI Kit colors\n$ui-brand-color: #005c83; // dark blue\n\n// Accent colors\n$accent-color: #ff852c; // orange\n$light-accent-color: lighten($accent-color, 15%);\n$dark-accent-color: darken($accent-color, 15%);\n\n// Primary Action\n$primary-action-color: #dc0a3c;\n$light-primary-action-color: lighten($primary-action-color, 15%);\n$dark-primary-action-color: darken($primary-action-color, 15%);\n\n// Secondary Action\n$secondary-action-color: #ff852c;\n$light-secondary-action-color: lighten($secondary-action-color, 15%);\n$dark-secondary-action-color: darken($secondary-action-color, 15%);\n\n// Success colors\n$success-color: #037b30;\n$light-success-color: lighten($success-color, 15%);\n$dark-success-color: darken($success-color, 15%);\n\n// Error colors\n$error-color: #c70936;\n$light-error-color: lighten($error-color, 15%);\n$feedback-error-color: #f8e7eb;\n$dark-error-color: darken($error-color, 15%);\n\n// Sale color\n$sale-color: $error-color;\n$prominent-color: $error-color;\n\n// Social colors\n$facebook-color: #3a5a93;\n$twitter-color: #55aace;\n$instagram-color: #405de6;\n$pinterest-color: #bd081c;\n$youtube-color: #e52d27;\n$google-plus-color: #dd4b39;\n$yelp-color: #af0606;\n\n\n// [EEE] Appearance\n// ---\n\n$font-color: $neutral-60;\n$font-color-light: $neutral-12;\n\n$link-color: $ui-brand-color;\n$active-link-color: $dark-accent-color;\n\n$focus-color: $brand-color;\n\n$border-color: $neutral-20;\n$border-radius: 4px;\n\n$input-background-color: $neutral-00;\n$input-border-color: $border-color;\n$focused-input-border-color: $secondary-brand-color;\n$disabled-input-color: $neutral-40;\n$disabled-input-background-color: $neutral-15;\n$disabled-button-background-color: $neutral-15;\n$add-to-cart-button-background-color: #f7ae3a;\n$horizontal-input-padding: $unit;\n$vertical-input-padding: $unit;\n\n$background-color: $neutral-12;\n$overlay-color: rgba($neutral-00, 0.85);\n\n\n// [FFF] Z-Index\n// ---\n\n// Organizes z-index usage by name. Values can be incremented/decremented\n// slightly as necessary. eg. $z1-layer + 1;\n\n$z1-depth: 1; // background\n$z2-depth: 10; // icon or other ui element\n$z3-depth: 100; // modal shade or similar\n$z4-depth: 1000; // modal dialog or similar\n\n\n// [GGG] Shorthands\n// ---\n\n$border: 1px solid $border-color;\n$light-border: 1px solid $neutral-15;\n$input-padding: $vertical-input-padding $horizontal-input-padding;\n\n$box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.3);\n$large-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3);\n$inset-box-shadow: inset 0 2px 2px -2px rgba(0, 0, 0, 0.3), inset 0 -2px 2px -2px rgba(0, 0, 0, 0.3);\n$input-box-shadow: inset 0 0 5px 0 rgba(0, 0, 0, 0.3);\n$themeColor-Light: #f3e2c7;\n$themeColor-Dark:#252525;\n$theme-font: verdana, sans-serif;\n$theme-supplementer: #f39c12;\n$font-size-desktop-h5: 1.25em;\n$font-size-mobile-h5: 0.8em;\n$font-size-desktop-p: 1.1em;\n$font-size-mobile-p: 0.7em;\n",".c-Plp__c-SortAndFilterPanel__c-Search {\n margin-left: auto;\n}\n","@import './../../../styles/variables';\n\n.c-Plp__c-SortAndFilterPanel__c-CartIcon {\n margin-left: 1rem;\n position: relative;\n\n .c-Plp__c-SortAndFilterPanel__c-CartIcon__badge {\n position: absolute;\n top: -3px;\n right: -9px;\n padding: 0px 5px;\n border-radius: 50%;\n background-color: $prominent-color;\n color: $neutral-00;\n font-size: $smaller-font-size;\n }\n}\n","// Project-Wide Variables\n// ===\n//\n// Edit these as needed. Some guidelines:\n//\n// - Names should be lowercase and dash-separated;\n// - Qualifiers should be added to the beginning of related variables: use\n// `$small-font-size`, not `$font-size-small`;\n// - Numeric scales should use increments of 10; these numbers are arbitrary and\n// should not map to actual values. If really necessary, additional values can\n// be added in between, e.g. $neutral-15 between 10 and 20.\n//\n//\n// Table of Contents\n// ---\n//\n// [AAA] Basic Layout\n// [BBB] Responsive Layout\n// [CCC] Typography\n// [DDD] Color Palette\n// [EEE] Appearance\n// [FFF] Z-Index\n// [GGG] Shorthands\n\n\n// [AAA] Basic Layout\n// ---\n\n// Basic unit for spacing and alignment; 6 to 12px recommended. Apply in whole\n// or half multiples.\n$sub-unit: 4px;\n$unit: 8px;\n\n// Standard tap-target size\n$tap-size: 44px;\n\n// Container max-width.\n$max-width: 1280px;\n\n// Content Height Calculations\n$header-height: 64px;\n$footer-height: 173px;\n$content-height: calc(100vh - #{$header-height} - #{$footer-height});\n\n// [BBB] Responsive Layout\n// ---\n//\n// Media query breakpoints and grid setup. Please see Mobify's Responsive Best\n// Practices doc here: https://bit.ly/2tmRnEi, and our Responsive Grid\n// documentation here: http://docs.mobify.com/latest/guides/responsive-grid/\n//\n// Note: $small-breakpoint isn't needed, since it is 0px\n\n$medium-breakpoint: 600px;\n$large-breakpoint: 960px;\n$xlarge-breakpoint: $max-width;\n\n$susy: (\n // Add color to show the columns and gutters\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(4),\n 'gutters': 12px\n);\n\n$medium-layout: (\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(12),\n 'gutters': 12px\n);\n\n$large-layout: (\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(12),\n 'gutters': 24px\n);\n\n\n// [CCC] Typography\n// ---\n// $font-family: 'San Francisco', 'Roboto', 'Fira Sans', 'Segoe UI', sans-serif;\n$font-family: Verdana, Geneva, sans-serif; \n$header-font-family: 'Avenir Next Condensed', 'Roboto Condensed', 'Helvetica Neue', 'Roboto', sans-serif;\n$loaded-header-font-family: 'Roboto', $header-font-family;\n\n// Line height\n$huge-line-height: 32px;\n$bigger-line-height: 28px;\n$big-line-height: 24px;\n$line-height: 20px;\n$small-line-height: 16px;\n$smaller-line-height: 12px;\n$tiny-line-height: 8px;\n\n// Font sizes\n$huge-font-size: 28px;\n$bigger-font-size: 24px;\n$big-font-size: 20px;\n$font-size: 16px;\n$small-font-size: 14px;\n$smaller-font-size: 12px;\n$tiny-font-size: 10px;\n$smallest-font-size: 8px;\n\n// Font weight\n$thin-font-weight: 100;\n$extra-light-font-weight: 200;\n$light-font-weight: 300;\n$regular-font-weight: 400;\n$medium-font-weight: 500;\n$semi-bold-font-weight: 600;\n$bold-font-weight: 700;\n\n// [DDD] Color Palette\n// ---\n\n// Neutrals\n$neutral-00: #fff;\n$neutral-10: #f7f7f7;\n$neutral-12: #f1f3f6;\n$neutral-15: #eee;\n$neutral-17: #e1e1e1;\n$neutral-20: #d5d5d5;\n$neutral-30: #bfbfbf;\n$neutral-40: #999;\n$neutral-50: #696969;\n$neutral-60: #333;\n$neutral-70: #000;\n\n// Brand colors\n// $brand-color: #017e9b; // blue\n$brand-color: #4471ea; // blue\n// $secondary-brand-color: #005569;\n$secondary-brand-color: #fafafa;\n$tertiary-brand-color: #83bdcb;\n$quaternary-brand-color: #bfdfe6;\n\n// UI Kit colors\n$ui-brand-color: #005c83; // dark blue\n\n// Accent colors\n$accent-color: #ff852c; // orange\n$light-accent-color: lighten($accent-color, 15%);\n$dark-accent-color: darken($accent-color, 15%);\n\n// Primary Action\n$primary-action-color: #dc0a3c;\n$light-primary-action-color: lighten($primary-action-color, 15%);\n$dark-primary-action-color: darken($primary-action-color, 15%);\n\n// Secondary Action\n$secondary-action-color: #ff852c;\n$light-secondary-action-color: lighten($secondary-action-color, 15%);\n$dark-secondary-action-color: darken($secondary-action-color, 15%);\n\n// Success colors\n$success-color: #037b30;\n$light-success-color: lighten($success-color, 15%);\n$dark-success-color: darken($success-color, 15%);\n\n// Error colors\n$error-color: #c70936;\n$light-error-color: lighten($error-color, 15%);\n$feedback-error-color: #f8e7eb;\n$dark-error-color: darken($error-color, 15%);\n\n// Sale color\n$sale-color: $error-color;\n$prominent-color: $error-color;\n\n// Social colors\n$facebook-color: #3a5a93;\n$twitter-color: #55aace;\n$instagram-color: #405de6;\n$pinterest-color: #bd081c;\n$youtube-color: #e52d27;\n$google-plus-color: #dd4b39;\n$yelp-color: #af0606;\n\n\n// [EEE] Appearance\n// ---\n\n$font-color: $neutral-60;\n$font-color-light: $neutral-12;\n\n$link-color: $ui-brand-color;\n$active-link-color: $dark-accent-color;\n\n$focus-color: $brand-color;\n\n$border-color: $neutral-20;\n$border-radius: 4px;\n\n$input-background-color: $neutral-00;\n$input-border-color: $border-color;\n$focused-input-border-color: $secondary-brand-color;\n$disabled-input-color: $neutral-40;\n$disabled-input-background-color: $neutral-15;\n$disabled-button-background-color: $neutral-15;\n$add-to-cart-button-background-color: #f7ae3a;\n$horizontal-input-padding: $unit;\n$vertical-input-padding: $unit;\n\n$background-color: $neutral-12;\n$overlay-color: rgba($neutral-00, 0.85);\n\n\n// [FFF] Z-Index\n// ---\n\n// Organizes z-index usage by name. Values can be incremented/decremented\n// slightly as necessary. eg. $z1-layer + 1;\n\n$z1-depth: 1; // background\n$z2-depth: 10; // icon or other ui element\n$z3-depth: 100; // modal shade or similar\n$z4-depth: 1000; // modal dialog or similar\n\n\n// [GGG] Shorthands\n// ---\n\n$border: 1px solid $border-color;\n$light-border: 1px solid $neutral-15;\n$input-padding: $vertical-input-padding $horizontal-input-padding;\n\n$box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.3);\n$large-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3);\n$inset-box-shadow: inset 0 2px 2px -2px rgba(0, 0, 0, 0.3), inset 0 -2px 2px -2px rgba(0, 0, 0, 0.3);\n$input-box-shadow: inset 0 0 5px 0 rgba(0, 0, 0, 0.3);\n$themeColor-Light: #f3e2c7;\n$themeColor-Dark:#252525;\n$theme-font: verdana, sans-serif;\n$theme-supplementer: #f39c12;\n$font-size-desktop-h5: 1.25em;\n$font-size-mobile-h5: 0.8em;\n$font-size-desktop-p: 1.1em;\n$font-size-mobile-p: 0.7em;\n","@import './../../../styles//variables';\n\n.c-Cart__c-CartList__c-CartItem {\n padding: 15px 0;\n margin-bottom: 13px;\n background: $neutral-00;\n border: 1px solid $neutral-40;\n line-height: 1;\n\n [class*=\"col-\"] {\n padding-left: 10px;\n padding-right: 10px;\n }\n\n .c-Cart__c-CartList__c-CartItem__image {\n margin-bottom: 0.7rem;\n }\n\n .c-Cart__c-CartList__c-CartItem__name {\n font-size: $small-font-size;\n }\n}\n",".c-SectionLoader {\n\n display: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tbackground: rgba(0,0,0,0.3); \n width: 100%; \n height: 100%; \n position: relative; \n top:0px; \n left:0px; \n z-index: 10;\n \n .c-SectionLoader__lds-ripple {\n\t\tdisplay: inline-block;\n\t\tposition: absolute;\n\t\twidth: 80px;\n\t\theight: 80px;\n\t\tdiv {\n\t\t\tposition: absolute;\n\t\t\tborder: 4px solid #fff;\n\t\t\topacity: 1;\n\t\t\tborder-radius: 50%;\n\t\t\tanimation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite;\n\t\t\t&:nth-child(2) {\n\t\t\t\tanimation-delay: -0.5s;\n\t\t\t}\n\t\t}\n\t}\n\t\n\t@keyframes lds-ripple {\n\t\t0% {\n\t\t\ttop: 36px;\n\t\t\tleft: 36px;\n\t\t\twidth: 0;\n\t\t\theight: 0;\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\ttop: 0px;\n\t\t\tleft: 0px;\n\t\t\twidth: 72px;\n\t\t\theight: 72px;\n\t\t\topacity: 0;\n\t\t}\n\t}\n}\n","@import './../../../styles/variables';\n\n.c-ItemPrice {\n line-height: $smaller-font-size;\n margin-bottom: 0.9rem;\n display: flex;\n .c-ItemPrice__price {\n font-size: $smaller-font-size;\n font-weight: $bold-font-weight;\n padding-right: 0.5rem;\n }\n \n .c-ItemPrice__price--strikethrough {\n color: $neutral-40;\n font-weight: $bold-font-weight;\n font-size: $smaller-font-size;\n text-decoration: line-through;\n margin-left: $unit * 0.8; \n }\n \n .c-ItemPrice__discount {\n color: #4aa219;\n font-weight: $bold-font-weight;\n font-size: $smaller-font-size;\n margin-left: auto;\n }\n}\n","@import './../../../styles/variables';\n\n.c-CartList {\n padding: 0.8em 0;\n .c-CartList__emptyCart {\n background: $neutral-00;\n margin-top: 25%;\n border: 1px solid black;\n text-align: center;\n padding: 1em;\n\n .c-CartList__emptyCart__information {\n color: $neutral-40;\n }\n }\n}\n","@import './../../../styles/variables';\n\n.c-Footer {\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n left: 0;\n bottom: 0;\n width: 100%;\n background-color: $brand-color;\n color: $font-color-light;\n padding: 0.7em;\n\n p {\n margin-bottom: 0;\n font-weight: bold;\n }\n}\n"]}
\ No newline at end of file
diff --git a/static/css/5.c4329f29.chunk.css b/static/css/5.18f620ee.chunk.css
similarity index 90%
rename from static/css/5.c4329f29.chunk.css
rename to static/css/5.18f620ee.chunk.css
index 3570a9d..62fcb76 100644
--- a/static/css/5.c4329f29.chunk.css
+++ b/static/css/5.18f620ee.chunk.css
@@ -1,2 +1,2 @@
-.c-Plp__c-SortAndFilterPanel__c-Search{margin-left:auto}.c-Plp__c-SortAndFilterPanel__c-CartIcon{margin-left:1rem;position:relative}.c-Plp__c-SortAndFilterPanel__c-CartIcon .c-Plp__c-SortAndFilterPanel__c-CartIcon__badge{position:absolute;top:-3px;right:-9px;padding:0 5px;border-radius:50%;background-color:#c70936;color:#fff;font-size:12px}.c-Plp__c-SortAndFilterPanel{text-align:center}.c-Plp__c-SortAndFilterPanel .c-Plp__c-SortAndFilterPanel__tool{padding:.8rem;font-size:16px;font-weight:700;border:1px solid #e1e1e1}.c-Plp__c-SortAndFilterPanel .c-Plp__c-SortAndFilterPanel__tool .c-Plp__c-SortAndFilterPanel__toolContent{margin-bottom:0}.c-ItemPrice{line-height:12px;margin-bottom:.9rem;display:flex}.c-ItemPrice .c-ItemPrice__price{font-size:12px;font-weight:700;padding-right:.5rem}.c-ItemPrice .c-ItemPrice__price--strikethrough{color:#999;font-weight:700;font-size:12px;text-decoration:line-through;margin-left:6.4px}.c-ItemPrice .c-ItemPrice__discount{color:#4aa219;font-weight:700;font-size:12px;margin-left:auto}.c-Plp__c-ProductContainer__c-ProductTile{max-width:300px;padding:10px 15px;border:1px solid #e1e1e1}.c-Plp__c-ProductContainer__c-ProductTile .c-Plp__c-ProductContainer__c-ProductTile__image{margin-bottom:.7rem}.c-Plp__c-ProductContainer__c-ProductTile .c-Plp__c-ProductContainer__c-ProductTile__name{font-size:14px}.c-Plp__c-ProductContainer__c-ProductTile button{display:block;margin:0 auto;border-radius:20px;padding:7px;background-color:#f7ae3a;cursor:pointer;font-size:12px;font-weight:700}.c-Plp__c-ProductContainer__c-ProductTile button:hover{opacity:.7}.c-Footer{display:flex;align-items:center;justify-content:center;position:fixed;left:0;bottom:0;width:100%;background-color:#4471ea;color:#f1f3f6;padding:.7em}.c-Footer p{margin-bottom:0;font-weight:700}
-/*# sourceMappingURL=5.c4329f29.chunk.css.map */
\ No newline at end of file
+.c-Plp__c-SortAndFilterPanel__c-Search{margin-left:auto}.c-Plp__c-SortAndFilterPanel__c-CartIcon{margin-left:1rem;position:relative}.c-Plp__c-SortAndFilterPanel__c-CartIcon .c-Plp__c-SortAndFilterPanel__c-CartIcon__badge{position:absolute;top:-3px;right:-9px;padding:0 5px;border-radius:50%;background-color:#c70936;color:#fff;font-size:12px}.c-Plp__c-SortAndFilterPanel{text-align:center}.c-Plp__c-SortAndFilterPanel .c-Plp__c-SortAndFilterPanel__tool{padding:.8rem;font-size:16px;font-weight:700;border:1px solid #e1e1e1}.c-Plp__c-SortAndFilterPanel .c-Plp__c-SortAndFilterPanel__tool .c-Plp__c-SortAndFilterPanel__toolContent{margin-bottom:0}.c-ItemPrice{line-height:12px;margin-bottom:.9rem;display:flex}.c-ItemPrice .c-ItemPrice__price{font-size:12px;font-weight:700;padding-right:.5rem}.c-ItemPrice .c-ItemPrice__price--strikethrough{color:#999;font-weight:700;font-size:10px;text-decoration:line-through;margin-left:6.4px}.c-ItemPrice .c-ItemPrice__discount{color:#4aa219;font-weight:700;font-size:10px;margin-left:auto}.c-Plp__c-ProductContainer__c-ProductTile{max-width:300px;padding:10px 15px;border:1px solid #e1e1e1}.c-Plp__c-ProductContainer__c-ProductTile .c-Plp__c-ProductContainer__c-ProductTile__image{margin-bottom:.7rem}.c-Plp__c-ProductContainer__c-ProductTile .c-Plp__c-ProductContainer__c-ProductTile__name{font-size:14px}.c-Plp__c-ProductContainer__c-ProductTile button{display:block;margin:0 auto;border-radius:20px;padding:7px;background-color:#f7ae3a;cursor:pointer;font-size:12px;font-weight:700}.c-Plp__c-ProductContainer__c-ProductTile button:hover{opacity:.7}.c-Footer{display:flex;align-items:center;justify-content:center;position:fixed;left:0;bottom:0;width:100%;background-color:#4471ea;color:#f1f3f6;padding:.7em}.c-Footer p{margin-bottom:0;font-weight:700}
+/*# sourceMappingURL=5.18f620ee.chunk.css.map */
\ No newline at end of file
diff --git a/static/css/5.18f620ee.chunk.css.map b/static/css/5.18f620ee.chunk.css.map
new file mode 100644
index 0000000..9b8ad17
--- /dev/null
+++ b/static/css/5.18f620ee.chunk.css.map
@@ -0,0 +1 @@
+{"version":3,"sources":["Search.component.scss","CartIcon.component.scss","../../../styles/_variables.scss","SortAndFilterPanel.component.scss","ItemPrice.component.scss","ProductTile.component.scss","Footer.component.scss"],"names":[],"mappings":"AAAA,uCACE,gBAAiB,CCCnB,yCACE,gBAAiB,CACjB,iBAAkB,CAFpB,yFAKI,iBAAkB,CAClB,QAAS,CACT,UAAW,CACX,aAAgB,CAChB,iBAAkB,CAClB,wBCoJiB,CDnJjB,UCuGa,CDtGb,cCqFoB,CCjGxB,6BACI,iBAAkB,CADtB,gEAGQ,aAAe,CACf,cD2FQ,CC1FR,eDuGc,CCtGd,wBDgHY,CCtHpB,0GAQY,eAAgB,CCR5B,aACI,gBFgGoB,CE/FpB,mBAAqB,CACrB,YAAa,CAHjB,iCAKQ,cF4FgB,CE3FhB,eFsGc,CErGd,mBAAqB,CAP7B,gDAWQ,UF8GS,CE7GT,eFgGc,CE/Fd,cFqFa,CEpFb,4BAA6B,CAC7B,iBAAwB,CAfhC,oCAmBQ,aAAc,CACd,eFwFc,CEvFd,cF6Ea,CE5Eb,gBAAiB,CCtBzB,0CAEI,eAAgB,CAEhB,iBAAkB,CAClB,wBHiHgB,CGtHpB,2FAQQ,mBAAqB,CAR7B,0FAYQ,cHoFc,CGhGtB,iDAgBQ,aAAc,CACd,aAAc,CACd,kBAAmB,CACnB,WAAY,CACZ,wBHiLqC,CGhLrC,cAAe,CACf,cH2EgB,CG1EhB,eHqFc,CG5GtB,uDA2BQ,UAAY,CC3BpB,UACI,YAAa,CACb,kBAAmB,CACnB,sBAAuB,CACvB,cAAe,CACf,MAAO,CACP,QAAS,CACT,UAAW,CACX,wBJwHiB,CIvHjB,aJ2GgB,CI1GhB,YAAc,CAVlB,YAaQ,eAAgB,CAChB,eAAiB","file":"5.18f620ee.chunk.css","sourcesContent":[".c-Plp__c-SortAndFilterPanel__c-Search {\n margin-left: auto;\n}\n","@import './../../../styles/variables';\n\n.c-Plp__c-SortAndFilterPanel__c-CartIcon {\n margin-left: 1rem;\n position: relative;\n\n .c-Plp__c-SortAndFilterPanel__c-CartIcon__badge {\n position: absolute;\n top: -3px;\n right: -9px;\n padding: 0px 5px;\n border-radius: 50%;\n background-color: $prominent-color;\n color: $neutral-00;\n font-size: $smaller-font-size;\n }\n}\n","// Project-Wide Variables\n// ===\n//\n// Edit these as needed. Some guidelines:\n//\n// - Names should be lowercase and dash-separated;\n// - Qualifiers should be added to the beginning of related variables: use\n// `$small-font-size`, not `$font-size-small`;\n// - Numeric scales should use increments of 10; these numbers are arbitrary and\n// should not map to actual values. If really necessary, additional values can\n// be added in between, e.g. $neutral-15 between 10 and 20.\n//\n//\n// Table of Contents\n// ---\n//\n// [AAA] Basic Layout\n// [BBB] Responsive Layout\n// [CCC] Typography\n// [DDD] Color Palette\n// [EEE] Appearance\n// [FFF] Z-Index\n// [GGG] Shorthands\n\n\n// [AAA] Basic Layout\n// ---\n\n// Basic unit for spacing and alignment; 6 to 12px recommended. Apply in whole\n// or half multiples.\n$sub-unit: 4px;\n$unit: 8px;\n\n// Standard tap-target size\n$tap-size: 44px;\n\n// Container max-width.\n$max-width: 1280px;\n\n// Content Height Calculations\n$header-height: 64px;\n$footer-height: 173px;\n$content-height: calc(100vh - #{$header-height} - #{$footer-height});\n\n// [BBB] Responsive Layout\n// ---\n//\n// Media query breakpoints and grid setup. Please see Mobify's Responsive Best\n// Practices doc here: https://bit.ly/2tmRnEi, and our Responsive Grid\n// documentation here: http://docs.mobify.com/latest/guides/responsive-grid/\n//\n// Note: $small-breakpoint isn't needed, since it is 0px\n\n$medium-breakpoint: 600px;\n$large-breakpoint: 960px;\n$xlarge-breakpoint: $max-width;\n\n$susy: (\n // Add color to show the columns and gutters\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(4),\n 'gutters': 12px\n);\n\n$medium-layout: (\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(12),\n 'gutters': 12px\n);\n\n$large-layout: (\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(12),\n 'gutters': 24px\n);\n\n\n// [CCC] Typography\n// ---\n// $font-family: 'San Francisco', 'Roboto', 'Fira Sans', 'Segoe UI', sans-serif;\n$font-family: Verdana, Geneva, sans-serif; \n$header-font-family: 'Avenir Next Condensed', 'Roboto Condensed', 'Helvetica Neue', 'Roboto', sans-serif;\n$loaded-header-font-family: 'Roboto', $header-font-family;\n\n// Line height\n$huge-line-height: 32px;\n$bigger-line-height: 28px;\n$big-line-height: 24px;\n$line-height: 20px;\n$small-line-height: 16px;\n$smaller-line-height: 12px;\n$tiny-line-height: 8px;\n\n// Font sizes\n$huge-font-size: 28px;\n$bigger-font-size: 24px;\n$big-font-size: 20px;\n$font-size: 16px;\n$small-font-size: 14px;\n$smaller-font-size: 12px;\n$tiny-font-size: 10px;\n$smallest-font-size: 8px;\n\n// Font weight\n$thin-font-weight: 100;\n$extra-light-font-weight: 200;\n$light-font-weight: 300;\n$regular-font-weight: 400;\n$medium-font-weight: 500;\n$semi-bold-font-weight: 600;\n$bold-font-weight: 700;\n\n// [DDD] Color Palette\n// ---\n\n// Neutrals\n$neutral-00: #fff;\n$neutral-10: #f7f7f7;\n$neutral-12: #f1f3f6;\n$neutral-15: #eee;\n$neutral-17: #e1e1e1;\n$neutral-20: #d5d5d5;\n$neutral-30: #bfbfbf;\n$neutral-40: #999;\n$neutral-50: #696969;\n$neutral-60: #333;\n$neutral-70: #000;\n\n// Brand colors\n// $brand-color: #017e9b; // blue\n$brand-color: #4471ea; // blue\n// $secondary-brand-color: #005569;\n$secondary-brand-color: #fafafa;\n$tertiary-brand-color: #83bdcb;\n$quaternary-brand-color: #bfdfe6;\n\n// UI Kit colors\n$ui-brand-color: #005c83; // dark blue\n\n// Accent colors\n$accent-color: #ff852c; // orange\n$light-accent-color: lighten($accent-color, 15%);\n$dark-accent-color: darken($accent-color, 15%);\n\n// Primary Action\n$primary-action-color: #dc0a3c;\n$light-primary-action-color: lighten($primary-action-color, 15%);\n$dark-primary-action-color: darken($primary-action-color, 15%);\n\n// Secondary Action\n$secondary-action-color: #ff852c;\n$light-secondary-action-color: lighten($secondary-action-color, 15%);\n$dark-secondary-action-color: darken($secondary-action-color, 15%);\n\n// Success colors\n$success-color: #037b30;\n$light-success-color: lighten($success-color, 15%);\n$dark-success-color: darken($success-color, 15%);\n\n// Error colors\n$error-color: #c70936;\n$light-error-color: lighten($error-color, 15%);\n$feedback-error-color: #f8e7eb;\n$dark-error-color: darken($error-color, 15%);\n\n// Sale color\n$sale-color: $error-color;\n$prominent-color: $error-color;\n\n// Social colors\n$facebook-color: #3a5a93;\n$twitter-color: #55aace;\n$instagram-color: #405de6;\n$pinterest-color: #bd081c;\n$youtube-color: #e52d27;\n$google-plus-color: #dd4b39;\n$yelp-color: #af0606;\n\n\n// [EEE] Appearance\n// ---\n\n$font-color: $neutral-60;\n$font-color-light: $neutral-12;\n\n$link-color: $ui-brand-color;\n$active-link-color: $dark-accent-color;\n\n$focus-color: $brand-color;\n\n$border-color: $neutral-20;\n$border-radius: 4px;\n\n$input-background-color: $neutral-00;\n$input-border-color: $border-color;\n$focused-input-border-color: $secondary-brand-color;\n$disabled-input-color: $neutral-40;\n$disabled-input-background-color: $neutral-15;\n$disabled-button-background-color: $neutral-15;\n$add-to-cart-button-background-color: #f7ae3a;\n$horizontal-input-padding: $unit;\n$vertical-input-padding: $unit;\n\n$background-color: $neutral-12;\n$overlay-color: rgba($neutral-00, 0.85);\n\n\n// [FFF] Z-Index\n// ---\n\n// Organizes z-index usage by name. Values can be incremented/decremented\n// slightly as necessary. eg. $z1-layer + 1;\n\n$z1-depth: 1; // background\n$z2-depth: 10; // icon or other ui element\n$z3-depth: 100; // modal shade or similar\n$z4-depth: 1000; // modal dialog or similar\n\n\n// [GGG] Shorthands\n// ---\n\n$border: 1px solid $border-color;\n$light-border: 1px solid $neutral-15;\n$input-padding: $vertical-input-padding $horizontal-input-padding;\n\n$box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.3);\n$large-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3);\n$inset-box-shadow: inset 0 2px 2px -2px rgba(0, 0, 0, 0.3), inset 0 -2px 2px -2px rgba(0, 0, 0, 0.3);\n$input-box-shadow: inset 0 0 5px 0 rgba(0, 0, 0, 0.3);\n$themeColor-Light: #f3e2c7;\n$themeColor-Dark:#252525;\n$theme-font: verdana, sans-serif;\n$theme-supplementer: #f39c12;\n$font-size-desktop-h5: 1.25em;\n$font-size-mobile-h5: 0.8em;\n$font-size-desktop-p: 1.1em;\n$font-size-mobile-p: 0.7em;\n","@import './../../../styles/variables';\n\n.c-Plp__c-SortAndFilterPanel {\n text-align: center;\n .c-Plp__c-SortAndFilterPanel__tool {\n padding: 0.8rem;\n font-size: $font-size;\n font-weight: $bold-font-weight;\n border: 1px solid $neutral-17;\n .c-Plp__c-SortAndFilterPanel__toolContent {\n margin-bottom: 0;\n }\n }\n\n // .ripple {\n // background-color: $shocking-pink;\n // width: 1rem;\n // height: 1rem;\n // position: absolute;\n // border-radius: 50%;\n // transform: translateX(-100%) translateY(-100%);\n // mix-blend-mode: screen;\n // animation: ripple 1000ms ease-out forwards;\n // }\n \n // @keyframes ripple {\n // 0% { transform: translate(-100%, -100%); }\n // 80% { transform: translate(-100%, -100%) scale(50); }\n // 100% { transform: translate(-100%, -100%) scale(50); opacity: 0; }\n // }\n}\n","@import './../../../styles/variables';\n\n.c-ItemPrice {\n line-height: $smaller-font-size;\n margin-bottom: 0.9rem;\n display: flex;\n .c-ItemPrice__price {\n font-size: $smaller-font-size;\n font-weight: $bold-font-weight;\n padding-right: 0.5rem;\n }\n \n .c-ItemPrice__price--strikethrough {\n color: $neutral-40;\n font-weight: $bold-font-weight;\n font-size: $tiny-font-size;\n text-decoration: line-through;\n margin-left: $unit * 0.8; \n }\n \n .c-ItemPrice__discount {\n color: #4aa219;\n font-weight: $bold-font-weight;\n font-size: $tiny-font-size;\n margin-left: auto;\n }\n}\n","@import './../../../styles/variables';\n\n.c-Plp__c-ProductContainer__c-ProductTile {\n // box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);\n max-width: 300px;\n // margin-bottom: 2rem;\n padding: 10px 15px;\n border: 1px solid $neutral-17;\n\n .c-Plp__c-ProductContainer__c-ProductTile__image {\n margin-bottom: 0.7rem;\n }\n\n .c-Plp__c-ProductContainer__c-ProductTile__name {\n font-size: $small-font-size;\n }\n\n button {\n display: block;\n margin: 0 auto;\n border-radius: 20px;\n padding: 7px;\n background-color: $add-to-cart-button-background-color;\n cursor: pointer;\n font-size: $smaller-font-size;\n font-weight: $bold-font-weight;\n }\n \n button:hover {\n opacity: 0.7;\n }\n\n @media only screen and (min-width: 768px) {\n \n }\n}\n","@import './../../../styles/variables';\n\n.c-Footer {\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n left: 0;\n bottom: 0;\n width: 100%;\n background-color: $brand-color;\n color: $font-color-light;\n padding: 0.7em;\n\n p {\n margin-bottom: 0;\n font-weight: bold;\n }\n}\n"]}
\ No newline at end of file
diff --git a/static/css/5.c4329f29.chunk.css.map b/static/css/5.c4329f29.chunk.css.map
deleted file mode 100644
index a9c58bf..0000000
--- a/static/css/5.c4329f29.chunk.css.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["Search.component.scss","CartIcon.component.scss","../../../styles/_variables.scss","SortAndFilterPanel.component.scss","ItemPrice.component.scss","ProductTile.component.scss","Footer.component.scss"],"names":[],"mappings":"AAAA,uCACE,gBAAiB,CCCnB,yCACE,gBAAiB,CACjB,iBAAkB,CAFpB,yFAKI,iBAAkB,CAClB,QAAS,CACT,UAAW,CACX,aAAgB,CAChB,iBAAkB,CAClB,wBCoJiB,CDnJjB,UCuGa,CDtGb,cCqFoB,CCjGxB,6BACI,iBAAkB,CADtB,gEAGQ,aAAe,CACf,cD2FQ,CC1FR,eDuGc,CCtGd,wBDgHY,CCtHpB,0GAQY,eAAgB,CCR5B,aACI,gBFgGoB,CE/FpB,mBAAqB,CACrB,YAAa,CAHjB,iCAKQ,cF4FgB,CE3FhB,eFsGc,CErGd,mBAAqB,CAP7B,gDAWQ,UF8GS,CE7GT,eFgGc,CE/Fd,cFoFgB,CEnFhB,4BAA6B,CAC7B,iBAAwB,CAfhC,oCAmBQ,aAAc,CACd,eFwFc,CEvFd,cF4EgB,CE3EhB,gBAAiB,CCtBzB,0CAEI,eAAgB,CAEhB,iBAAkB,CAClB,wBHiHgB,CGtHpB,2FAQQ,mBAAqB,CAR7B,0FAYQ,cHoFc,CGhGtB,iDAgBQ,aAAc,CACd,aAAc,CACd,kBAAmB,CACnB,WAAY,CACZ,wBHiLqC,CGhLrC,cAAe,CACf,cH2EgB,CG1EhB,eHqFc,CG5GtB,uDA2BQ,UAAY,CC3BpB,UACI,YAAa,CACb,kBAAmB,CACnB,sBAAuB,CACvB,cAAe,CACf,MAAO,CACP,QAAS,CACT,UAAW,CACX,wBJwHiB,CIvHjB,aJ2GgB,CI1GhB,YAAc,CAVlB,YAaQ,eAAgB,CAChB,eAAiB","file":"5.c4329f29.chunk.css","sourcesContent":[".c-Plp__c-SortAndFilterPanel__c-Search {\n margin-left: auto;\n}\n","@import './../../../styles/variables';\n\n.c-Plp__c-SortAndFilterPanel__c-CartIcon {\n margin-left: 1rem;\n position: relative;\n\n .c-Plp__c-SortAndFilterPanel__c-CartIcon__badge {\n position: absolute;\n top: -3px;\n right: -9px;\n padding: 0px 5px;\n border-radius: 50%;\n background-color: $prominent-color;\n color: $neutral-00;\n font-size: $smaller-font-size;\n }\n}\n","// Project-Wide Variables\n// ===\n//\n// Edit these as needed. Some guidelines:\n//\n// - Names should be lowercase and dash-separated;\n// - Qualifiers should be added to the beginning of related variables: use\n// `$small-font-size`, not `$font-size-small`;\n// - Numeric scales should use increments of 10; these numbers are arbitrary and\n// should not map to actual values. If really necessary, additional values can\n// be added in between, e.g. $neutral-15 between 10 and 20.\n//\n//\n// Table of Contents\n// ---\n//\n// [AAA] Basic Layout\n// [BBB] Responsive Layout\n// [CCC] Typography\n// [DDD] Color Palette\n// [EEE] Appearance\n// [FFF] Z-Index\n// [GGG] Shorthands\n\n\n// [AAA] Basic Layout\n// ---\n\n// Basic unit for spacing and alignment; 6 to 12px recommended. Apply in whole\n// or half multiples.\n$sub-unit: 4px;\n$unit: 8px;\n\n// Standard tap-target size\n$tap-size: 44px;\n\n// Container max-width.\n$max-width: 1280px;\n\n// Content Height Calculations\n$header-height: 64px;\n$footer-height: 173px;\n$content-height: calc(100vh - #{$header-height} - #{$footer-height});\n\n// [BBB] Responsive Layout\n// ---\n//\n// Media query breakpoints and grid setup. Please see Mobify's Responsive Best\n// Practices doc here: https://bit.ly/2tmRnEi, and our Responsive Grid\n// documentation here: http://docs.mobify.com/latest/guides/responsive-grid/\n//\n// Note: $small-breakpoint isn't needed, since it is 0px\n\n$medium-breakpoint: 600px;\n$large-breakpoint: 960px;\n$xlarge-breakpoint: $max-width;\n\n$susy: (\n // Add color to show the columns and gutters\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(4),\n 'gutters': 12px\n);\n\n$medium-layout: (\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(12),\n 'gutters': 12px\n);\n\n$large-layout: (\n 'svg-grid-colors': hsl(0, 0%, 95%),\n 'columns': susy-repeat(12),\n 'gutters': 24px\n);\n\n\n// [CCC] Typography\n// ---\n// $font-family: 'San Francisco', 'Roboto', 'Fira Sans', 'Segoe UI', sans-serif;\n$font-family: Verdana, Geneva, sans-serif; \n$header-font-family: 'Avenir Next Condensed', 'Roboto Condensed', 'Helvetica Neue', 'Roboto', sans-serif;\n$loaded-header-font-family: 'Roboto', $header-font-family;\n\n// Line height\n$huge-line-height: 32px;\n$bigger-line-height: 28px;\n$big-line-height: 24px;\n$line-height: 20px;\n$small-line-height: 16px;\n$smaller-line-height: 12px;\n$tiny-line-height: 8px;\n\n// Font sizes\n$huge-font-size: 28px;\n$bigger-font-size: 24px;\n$big-font-size: 20px;\n$font-size: 16px;\n$small-font-size: 14px;\n$smaller-font-size: 12px;\n$tiny-font-size: 10px;\n$smallest-font-size: 8px;\n\n// Font weight\n$thin-font-weight: 100;\n$extra-light-font-weight: 200;\n$light-font-weight: 300;\n$regular-font-weight: 400;\n$medium-font-weight: 500;\n$semi-bold-font-weight: 600;\n$bold-font-weight: 700;\n\n// [DDD] Color Palette\n// ---\n\n// Neutrals\n$neutral-00: #fff;\n$neutral-10: #f7f7f7;\n$neutral-12: #f1f3f6;\n$neutral-15: #eee;\n$neutral-17: #e1e1e1;\n$neutral-20: #d5d5d5;\n$neutral-30: #bfbfbf;\n$neutral-40: #999;\n$neutral-50: #696969;\n$neutral-60: #333;\n$neutral-70: #000;\n\n// Brand colors\n// $brand-color: #017e9b; // blue\n$brand-color: #4471ea; // blue\n// $secondary-brand-color: #005569;\n$secondary-brand-color: #fafafa;\n$tertiary-brand-color: #83bdcb;\n$quaternary-brand-color: #bfdfe6;\n\n// UI Kit colors\n$ui-brand-color: #005c83; // dark blue\n\n// Accent colors\n$accent-color: #ff852c; // orange\n$light-accent-color: lighten($accent-color, 15%);\n$dark-accent-color: darken($accent-color, 15%);\n\n// Primary Action\n$primary-action-color: #dc0a3c;\n$light-primary-action-color: lighten($primary-action-color, 15%);\n$dark-primary-action-color: darken($primary-action-color, 15%);\n\n// Secondary Action\n$secondary-action-color: #ff852c;\n$light-secondary-action-color: lighten($secondary-action-color, 15%);\n$dark-secondary-action-color: darken($secondary-action-color, 15%);\n\n// Success colors\n$success-color: #037b30;\n$light-success-color: lighten($success-color, 15%);\n$dark-success-color: darken($success-color, 15%);\n\n// Error colors\n$error-color: #c70936;\n$light-error-color: lighten($error-color, 15%);\n$feedback-error-color: #f8e7eb;\n$dark-error-color: darken($error-color, 15%);\n\n// Sale color\n$sale-color: $error-color;\n$prominent-color: $error-color;\n\n// Social colors\n$facebook-color: #3a5a93;\n$twitter-color: #55aace;\n$instagram-color: #405de6;\n$pinterest-color: #bd081c;\n$youtube-color: #e52d27;\n$google-plus-color: #dd4b39;\n$yelp-color: #af0606;\n\n\n// [EEE] Appearance\n// ---\n\n$font-color: $neutral-60;\n$font-color-light: $neutral-12;\n\n$link-color: $ui-brand-color;\n$active-link-color: $dark-accent-color;\n\n$focus-color: $brand-color;\n\n$border-color: $neutral-20;\n$border-radius: 4px;\n\n$input-background-color: $neutral-00;\n$input-border-color: $border-color;\n$focused-input-border-color: $secondary-brand-color;\n$disabled-input-color: $neutral-40;\n$disabled-input-background-color: $neutral-15;\n$disabled-button-background-color: $neutral-15;\n$add-to-cart-button-background-color: #f7ae3a;\n$horizontal-input-padding: $unit;\n$vertical-input-padding: $unit;\n\n$background-color: $neutral-12;\n$overlay-color: rgba($neutral-00, 0.85);\n\n\n// [FFF] Z-Index\n// ---\n\n// Organizes z-index usage by name. Values can be incremented/decremented\n// slightly as necessary. eg. $z1-layer + 1;\n\n$z1-depth: 1; // background\n$z2-depth: 10; // icon or other ui element\n$z3-depth: 100; // modal shade or similar\n$z4-depth: 1000; // modal dialog or similar\n\n\n// [GGG] Shorthands\n// ---\n\n$border: 1px solid $border-color;\n$light-border: 1px solid $neutral-15;\n$input-padding: $vertical-input-padding $horizontal-input-padding;\n\n$box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.3);\n$large-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3);\n$inset-box-shadow: inset 0 2px 2px -2px rgba(0, 0, 0, 0.3), inset 0 -2px 2px -2px rgba(0, 0, 0, 0.3);\n$input-box-shadow: inset 0 0 5px 0 rgba(0, 0, 0, 0.3);\n$themeColor-Light: #f3e2c7;\n$themeColor-Dark:#252525;\n$theme-font: verdana, sans-serif;\n$theme-supplementer: #f39c12;\n$font-size-desktop-h5: 1.25em;\n$font-size-mobile-h5: 0.8em;\n$font-size-desktop-p: 1.1em;\n$font-size-mobile-p: 0.7em;\n","@import './../../../styles/variables';\n\n.c-Plp__c-SortAndFilterPanel {\n text-align: center;\n .c-Plp__c-SortAndFilterPanel__tool {\n padding: 0.8rem;\n font-size: $font-size;\n font-weight: $bold-font-weight;\n border: 1px solid $neutral-17;\n .c-Plp__c-SortAndFilterPanel__toolContent {\n margin-bottom: 0;\n }\n }\n\n // .ripple {\n // background-color: $shocking-pink;\n // width: 1rem;\n // height: 1rem;\n // position: absolute;\n // border-radius: 50%;\n // transform: translateX(-100%) translateY(-100%);\n // mix-blend-mode: screen;\n // animation: ripple 1000ms ease-out forwards;\n // }\n \n // @keyframes ripple {\n // 0% { transform: translate(-100%, -100%); }\n // 80% { transform: translate(-100%, -100%) scale(50); }\n // 100% { transform: translate(-100%, -100%) scale(50); opacity: 0; }\n // }\n}\n","@import './../../../styles/variables';\n\n.c-ItemPrice {\n line-height: $smaller-font-size;\n margin-bottom: 0.9rem;\n display: flex;\n .c-ItemPrice__price {\n font-size: $smaller-font-size;\n font-weight: $bold-font-weight;\n padding-right: 0.5rem;\n }\n \n .c-ItemPrice__price--strikethrough {\n color: $neutral-40;\n font-weight: $bold-font-weight;\n font-size: $smaller-font-size;\n text-decoration: line-through;\n margin-left: $unit * 0.8; \n }\n \n .c-ItemPrice__discount {\n color: #4aa219;\n font-weight: $bold-font-weight;\n font-size: $smaller-font-size;\n margin-left: auto;\n }\n}\n","@import './../../../styles/variables';\n\n.c-Plp__c-ProductContainer__c-ProductTile {\n // box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);\n max-width: 300px;\n // margin-bottom: 2rem;\n padding: 10px 15px;\n border: 1px solid $neutral-17;\n\n .c-Plp__c-ProductContainer__c-ProductTile__image {\n margin-bottom: 0.7rem;\n }\n\n .c-Plp__c-ProductContainer__c-ProductTile__name {\n font-size: $small-font-size;\n }\n\n button {\n display: block;\n margin: 0 auto;\n border-radius: 20px;\n padding: 7px;\n background-color: $add-to-cart-button-background-color;\n cursor: pointer;\n font-size: $smaller-font-size;\n font-weight: $bold-font-weight;\n }\n \n button:hover {\n opacity: 0.7;\n }\n\n @media only screen and (min-width: 768px) {\n \n }\n}\n","@import './../../../styles/variables';\n\n.c-Footer {\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n left: 0;\n bottom: 0;\n width: 100%;\n background-color: $brand-color;\n color: $font-color-light;\n padding: 0.7em;\n\n p {\n margin-bottom: 0;\n font-weight: bold;\n }\n}\n"]}
\ No newline at end of file
diff --git a/static/js/4.356676d3.chunk.js b/static/js/4.356676d3.chunk.js
new file mode 100644
index 0000000..eeb2dc1
--- /dev/null
+++ b/static/js/4.356676d3.chunk.js
@@ -0,0 +1,2 @@
+(this.webpackJsonpadobeassignment=this.webpackJsonpadobeassignment||[]).push([[4],{46:function(e,t,a){"use strict";a.d(t,"b",(function(){return l})),a.d(t,"a",(function(){return o}));var r=a(45),n=a(42),c=Object(r.a)((function(e){return e.data}),(function(e){return e.pages.cart})),l=(Object(n.createGetSelector)(c,"formValues"),Object(n.createGetSelector)(c,"formErrors"),Object(n.createGetSelector)(c,"cartTotalCount")),o=Object(n.createGetSelector)(c,"cartItems")},47:function(e,t,a){"use strict";var r=a(0),n=a.n(r),c=a(7),l=a.n(c),o=function(e){var t=e.meta;return n.a.createElement("div",{className:"c-InputField"},n.a.createElement("div",{className:"form-group row ".concat(t.container_class?t.container_class:""),"aria-required":t.aria_required},n.a.createElement("label",{htmlFor:t.id,className:"col-12 col-sm-3 col-lg-12 col-form-label"},t.validation.required.isRequired&&!t.isStandAloneField&&n.a.createElement("span",{className:"required-indicator"},"* "),t.label),t.secondaryLabel?n.a.createElement("span",{className:"field--label-description"},t.secondaryLabel):null,n.a.createElement("div",{className:"col-12 col-sm-9 col-12"},t.error&&n.a.createElement("span",{className:"form-wrapper__field-error"},t.errorMessage),n.a.createElement("input",{className:"form-control ".concat(t.error?"error":""),type:t.type,id:t.id,name:t.name,"data-firstname":"null",value:t.fieldValues&&void 0!==t.fieldValues.stateValue?t.fieldValues.stateValue:t.fieldValues.propsValue,required:t.validation.required.isRequired?"required":"",minLength:t.validation.rules.minlength,maxLength:t.validation.rules.maxlength,placeholder:t.placeholder,"aria-required":t.aria_required,"aria-invalid":t.aria_invalid,onBlur:function(e){return t.handlers.onBlurHandler(t.validation,t.handlers.customBlurHandler,e)},onFocus:t.handlers.onFocusHandler,onChange:t.handlers.onChangeHandler,style:{width:"100%"}}))))};o.defaultProps={},o.propTypes={meta:l.a.object};var s=o;t.a=s},50:function(e,t,a){},51:function(e,t,a){},52:function(e,t,a){"use strict";var r=a(0),n=a.n(r),c=a(7),l=a.n(c),o=(a(53),function(e){var t=e.product,a=!!t.discount&&0!==t.discount;return n.a.createElement("div",{className:"c-ItemPrice"},t.discountedPrice&&n.a.createElement("span",{className:"c-ItemPrice__price"},"\u20b9",t.discountedPrice),a&&n.a.createElement(n.a.Fragment,null,n.a.createElement("span",{className:"c-ItemPrice__price--strikethrough"}," ",t.price),n.a.createElement("span",{className:"c-ItemPrice__discount"},t.discount,"% off")))});o.defaultProps={product:l.a.object},o.propTypes={},t.a=o},53:function(e,t,a){},54:function(e,t,a){},55:function(e,t,a){"use strict";var r=a(0),n=a.n(r),c=a(22),l=a(44),o=a(43),s=(a(50),a(47));function i(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var a=[],r=!0,n=!1,c=void 0;try{for(var l,o=e[Symbol.iterator]();!(r=(l=o.next()).done)&&(a.push(l.value),!t||a.length!==t);r=!0);}catch(s){n=!0,c=s}finally{try{r||null==o.return||o.return()}finally{if(n)throw c}}return a}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return u(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);"Object"===a&&e.constructor&&(a=e.constructor.name);if("Map"===a||"Set"===a)return Array.from(a);if("Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return u(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=new Array(t);at&&!e.classList.contains("scroll-down")?(e.classList.remove("scroll-up"),e.classList.add("scroll-down")):a0&&t.filter((function(t){return t.id===parseInt(e)}))[0];return n.a.createElement(b,{product:r,key:a})}));return n.a.createElement("section",{className:"c-CartList"},a?n.a.createElement("div",{className:"c-CartList__emptyCart"},n.a.createElement("h3",null,"Your cart is Empty!"),n.a.createElement("p",{className:"c-CartList__emptyCart__information"},"Please add some items from Available Products (use start button on top left)")):r)});y.defaultProps={},y.propTypes={cartItems:o.a.object,products:o.a.array};var C=Object(i.createPropsSelector)({cartItems:p.a,products:d}),h=Object(s.b)(C)(y),N=(a(73),function(e){return n.a.createElement("div",{className:"c-CartSummary"})});N.defaultProps={},N.propTypes={};var g=N,j=a(56),S=function(e){return n.a.createElement("div",{className:"c-Cart"},n.a.createElement(c.a,{inCart:!0}),n.a.createElement("main",{className:"container c-Cart__mainContent"},n.a.createElement("div",{className:"row"},n.a.createElement("div",{className:"col-12 col-md-8 col-lg-8"},n.a.createElement(h,null)),n.a.createElement("div",{className:"col-12 col-md-4 col-lg-4"},n.a.createElement(g,null)))),n.a.createElement(j.a,null))};S.defaultProps={},S.propTypes={};var P=S;t.default=P}}]);
+//# sourceMappingURL=4.356676d3.chunk.js.map
\ No newline at end of file
diff --git a/static/js/4.9ab8588a.chunk.js.map b/static/js/4.356676d3.chunk.js.map
similarity index 51%
rename from static/js/4.9ab8588a.chunk.js.map
rename to static/js/4.356676d3.chunk.js.map
index cede35d..bbaccc7 100644
--- a/static/js/4.9ab8588a.chunk.js.map
+++ b/static/js/4.356676d3.chunk.js.map
@@ -1 +1 @@
-{"version":3,"sources":["pages/Cart/selectors.js","components/atoms/InputField/InputField.js","components/atoms/InputField/index.js","components/molecules/ItemPrice/ItemPrice.jsx","components/molecules/Search/Search.jsx","components/molecules/Search/index.js","components/molecules/CartIcon/CartIcon.jsx","components/molecules/CartIcon/index.js","components/molecules/Header/Header.jsx","components/molecules/Header/index.js","components/molecules/Footer/Footer.jsx","components/molecules/Footer/index.js","pages/Cart/Cart.module.scss","pages/PLP/selectors.js","components/molecules/SectionLoader/SectionLoader.jsx","components/molecules/CartItem/CartItem.jsx","components/molecules/CartItem/index.js","components/molecules/CartList/CartList.jsx","components/molecules/CartList/index.js","components/molecules/CartSummary/CartSummary.jsx","components/molecules/CartSummary/index.js","pages/Cart/Cart.jsx","pages/Cart/index.js"],"names":["getCart","createSelector","data","dataState","pages","cart","getCartTotalCount","createGetSelector","getCartItems","InputField","meta","className","container_class","aria-required","aria_required","htmlFor","id","validation","required","isRequired","isStandAloneField","label","secondaryLabel","error","errorMessage","type","name","data-firstname","value","fieldValues","undefined","stateValue","propsValue","minLength","rules","minlength","maxLength","maxlength","placeholder","aria-invalid","aria_invalid","onBlur","e","handlers","onBlurHandler","customBlurHandler","onFocus","onFocusHandler","onChange","onChangeHandler","style","width","defaultProps","propTypes","PropTypes","object","ItemPrice","product","hasDiscount","discount","discountedPrice","Fragment","price","Search","props","useState","iconClicked","setIconClicked","onClick","icon","faSearch","CartIcon","history","push","faShoppingCart","cartTotalCount","number","mapStateToProps","createPropsSelector","connect","withRouter","Header","useEffect","body","document","lastScroll","window","addEventListener","currentScroll","pageYOffset","classList","contains","remove","add","to","faStar","inCart","Footer","module","exports","getPlp","plp","getProducts","SectionLoader","CartItem","src","img_url","alt","CartList","products","isCartEmpty","cartItems","Object","keys","length","cartItemTiles","map","itemId","key","filter","parseInt","array","CartSummary","Cart"],"mappings":"mHAAA,wFAKaA,EAAUC,aAFP,SAAC,GAAD,SAAEC,QAId,SAACC,GACG,OAAOA,EAAUC,MAAMC,QAMlBC,GAFgBC,4BAAkBP,EAAS,cAC3BO,4BAAkBP,EAAS,cACvBO,4BAAkBP,EAAS,mBAC/CQ,EAAeD,4BAAkBP,EAAS,c,oECZjDS,EAAa,SAAC,GAAY,IAAXC,EAAU,EAAVA,KACnB,OACE,yBAAKC,UAAU,gBACb,yBACMA,UAAS,yBACLD,EAAKE,gBAAkBF,EAAKE,gBAAkB,IAElDC,gBAAeH,EAAKI,eAEpB,2BAAOC,QAASL,EAAKM,GAAIL,UAAU,4CAC9BD,EAAKO,WAAWC,SAASC,aAAeT,EAAKU,mBAC1C,0BAAMT,UAAU,sBAAhB,MAEHD,EAAKW,OAETX,EAAKY,eACF,0BAAMX,UAAU,4BAA4BD,EAAKY,gBACjD,KACJ,yBAAKX,UAAU,0BACVD,EAAKa,OACF,0BAAMZ,UAAU,6BAA6BD,EAAKc,cAEtD,2BACIb,UAAS,uBAAkBD,EAAKa,MAAQ,QAAU,IAClDE,KAAMf,EAAKe,KACXT,GAAIN,EAAKM,GACTU,KAAMhB,EAAKgB,KACXC,iBAAe,OACfC,MACIlB,EAAKmB,kBAA+CC,IAAhCpB,EAAKmB,YAAYE,WAC/BrB,EAAKmB,YAAYE,WACjBrB,EAAKmB,YAAYG,WAE3Bd,SAAUR,EAAKO,WAAWC,SAASC,WAAa,WAAa,GAC7Dc,UAAWvB,EAAKO,WAAWiB,MAAMC,UACjCC,UAAW1B,EAAKO,WAAWiB,MAAMG,UACjCC,YAAa5B,EAAK4B,YAClBzB,gBAAeH,EAAKI,cACpByB,eAAc7B,EAAK8B,aAEnBC,OAAQ,SAACC,GAAD,OACJhC,EAAKiC,SAASC,cACVlC,EAAKO,WACLP,EAAKiC,SAASE,kBACdH,IAGRI,QAASpC,EAAKiC,SAASI,eACvBC,SAAUtC,EAAKiC,SAASM,gBACxBC,MAAO,CAACC,MAAO,cAQnC1C,EAAW2C,aAAe,GAI1B3C,EAAW4C,UAAY,CACrB3C,KAAM4C,IAAUC,QAGH9C,QClEAA,O,0ECFf,oCAIM+C,GAJN,MAIkB,SAAC,GAAe,IAAdC,EAAa,EAAbA,QAEZC,IAAgBD,EAAQE,UAAiC,IAArBF,EAAQE,SAElD,OACE,yBAAKhD,UAAU,eACZ8C,EAAQG,iBAAmB,0BAAMjD,UAAU,mDAAhB,SAA2E8C,EAAQG,iBAE7GF,GAEE,kBAAC,IAAMG,SAAP,KACE,0BAAMlD,UAAU,qCAAhB,IAAsD8C,EAAQK,OAC9D,0BAAMnD,UAAU,yBAAyB8C,EAAQE,SAAjD,aAQZH,EAAUJ,aAAe,CACvBK,QAASH,IAAUC,QAGrBC,EAAUH,UAAY,GAIPG,O,+kCC1Bf,IAAMO,EAAS,SAAAC,GAAU,IAAD,IACgBC,oBAAS,GADzB,GACfC,EADe,KACFC,EADE,KAEtB,OACE,yBAAKxD,UAAU,oDAAoDyD,QAAS,kBAAMD,GAAgBD,KAC/FA,GAAe,kBAACzD,EAAA,EAAD,MAChB,kBAAC,IAAD,CAAiB4D,KAAMC,eAK7BP,EAAOX,aAAe,GAItBW,EAAOV,UAAY,GAIJU,ICtBAA,EDsBAA,E,uDEbTQ,EAAW,SAAAP,GAMf,OACE,yBAAKrD,UAAU,sDAAsDyD,QALhD,WACrBJ,EAAMQ,QAAQC,KAAK,gBAKjB,kBAAC,IAAD,CAAiBJ,KAAMK,mBACvB,0BAAM/D,UAAU,kDAAkDqD,EAAMW,kBAK9EJ,EAASlB,UAAY,CACnBsB,eAAgBrB,IAAUsB,QAG5B,IAAMC,EAAkBC,8BAAoB,CAC1CH,eAAgBrE,MC5BHiE,ED+BAQ,YAAQF,EAARE,CAAyBC,YAAWT,IEzB7CU,EAAS,SAAAjB,GA4Bb,OA1BAkB,qBAAU,WACR,IAAMC,EAAOC,SAASD,KAGlBE,EAAa,EAEjBC,OAAOC,iBAAiB,UAAU,WAChC,IAAMC,EAAgBF,OAAOG,YACP,IAAlBD,GAKAA,EAAgBH,IAAeF,EAAKO,UAAUC,SAVjC,gBAYfR,EAAKO,UAAUE,OAbF,aAcbT,EAAKO,UAAUG,IAbA,gBAcNL,EAAgBH,GAAcF,EAAKO,UAAUC,SAdvC,iBAgBfR,EAAKO,UAAUE,OAhBA,eAiBfT,EAAKO,UAAUG,IAlBF,cAoBfR,EAAaG,GAbXL,EAAKO,UAAUE,OAPF,mBAyBjB,4BAAQjF,UAAU,YAChB,kBAAC,IAAD,CAAMmF,GAAG,YAAYnF,UAAU,uBAAsB,kBAAC,IAAD,CAAiBA,UAAU,sBAAsB0D,KAAM0B,YAC5G,kBAAC,EAAD,OACE/B,EAAMgC,QAAU,kBAAC,EAAD,QAKxBf,EAAO7B,aAAe,GAItB6B,EAAO5B,UAAY,GAIJ4B,QCnDAA,O,oDCETgB,G,WAAS,SAAAjC,GACb,OACE,4BAAQrD,UAAU,YAChB,4CAKNsF,EAAO7C,aAAe,GAItB6C,EAAO5C,UAAY,GAIJ4C,QClBAA,O,mBCDfC,EAAOC,QAAU,CAAC,SAAS,uB,uMCIdC,EAASnG,aAFN,SAAC,GAAD,SAAEC,QAId,SAACC,GACG,OAAOA,EAAUC,MAAMiG,OAMlBC,GAFgB/F,4BAAkB6F,EAAQ,cAC1B7F,4BAAkB6F,EAAQ,cAC5B7F,4BAAkB6F,EAAQ,a,QCV/CG,G,YAAgB,SAAAvC,GACpB,OACE,yBAAKrD,UAAU,mBACb,yBAAKA,UAAU,+BACb,8BACA,kCAMR4F,EAAcnD,aAAe,GAI7BmD,EAAclD,UAAY,GAIXkD,Q,QCjBTC,EAAW,SAAC,GAAe,IAAd/C,EAAa,EAAbA,QAEjB,OAAOA,EACL,6BAAS9C,UAAU,kCACjB,yBAAKA,UAAU,aACb,yBAAKA,UAAU,OACb,yBAAKA,UAAU,iEACb,yBAAKA,UAAU,wCAAwC8F,IAAKhD,EAAQiD,QAASC,IAAKlD,EAAQ/B,KAAMwB,MAAO,CAACC,MAAO,WAEjH,yBAAKxC,UAAU,iEACZ8C,EAAQ/B,MAAQ,uBAAGf,UAAU,wCAAwC8C,EAAQ/B,MAC9E,kBAAC8B,EAAA,EAAD,CAAWC,QAASA,QAIf,kBAAC,EAAD,OAGjB+C,EAASpD,aAAe,GAIxBoD,EAASnD,UAAY,CACnBI,QAASH,IAAUC,QAGNiD,IC9BAA,ED8BAA,EEvBTI,G,MAAW,SAAA5C,GAEf,IAAM6C,EAAW7C,EAAM6C,SACjBC,GAAe9C,EAAM+C,WAAqD,IAAxCC,OAAOC,KAAKjD,EAAM+C,WAAWG,OAC/DC,GAAiBL,GAAeE,OAAOC,KAAKjD,EAAM+C,WAAWK,KAAI,SAACC,EAAQC,GAC9E,IAAM7D,EAAUoD,GAAYA,EAASK,OAAS,GAAKL,EAASU,QAAO,SAAA9D,GAAO,OAAIA,EAAQzC,KAAOwG,SAASH,MAAS,GAC/G,OAAO,kBAAC,EAAD,CAAU5D,QAASA,EAAS6D,IAAKA,OAY1C,OACE,6BAAS3G,UAAU,cAChBmG,EATD,yBAAKnG,UAAU,yBACb,mDACA,uBAAGA,UAAU,sCAAb,iFAOmCwG,KAK3CP,EAASxD,aAAe,GAIxBwD,EAASvD,UAAY,CACnB0D,UAAWzD,IAAUC,OACrBsD,SAAUvD,IAAUmE,OAGtB,IAAM5C,EAAkBC,8BAAoB,CAC1CiC,UAAWvG,IACXqG,SAAUP,IC3CGM,ED8CA7B,YAAQF,EAARE,CAAyB6B,GE5ClCc,G,MAAc,SAAA1D,GAClB,OACE,yBAAKrD,UAAU,oBAKnB+G,EAAYtE,aAAe,GAI3BsE,EAAYrE,UAAY,GAITqE,ICjBAA,EDiBAA,E,QEXTC,EAAO,SAAA3D,GACX,OACE,yBAAKrD,UAAU,UACb,kBAACsE,EAAA,EAAD,CAAQe,QAAQ,IAChB,0BAAMrF,UAAU,iCACd,yBAAKA,UAAU,OACb,yBAAKA,UAAU,4BACb,kBAAC,EAAD,OAEF,yBAAKA,UAAU,4BACb,kBAAC,EAAD,SAIN,kBAACsF,EAAA,EAAD,QAKN0B,EAAKvE,aAAe,GAIpBuE,EAAKtE,UAAY,GAIFsE,QCjCAA","file":"static/js/4.9ab8588a.chunk.js","sourcesContent":["import {createSelector} from 'reselect'\nimport {createGetSelector} from 'reselect-immutable-helpers'\n\nconst getData = ({data}) => data\n\nexport const getCart = createSelector(\n getData,\n (dataState) => {\n return dataState.pages.cart\n }\n)\n\nexport const getFormValues = createGetSelector(getCart, 'formValues')\nexport const getFormErrors = createGetSelector(getCart, 'formErrors')\nexport const getCartTotalCount = createGetSelector(getCart, 'cartTotalCount')\nexport const getCartItems = createGetSelector(getCart, 'cartItems')","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst InputField = ({meta}) => {\n return (\n \n
\n
\n {meta.secondaryLabel ? (\n
{meta.secondaryLabel}\n ) : null}\n
\n {meta.error && (\n {meta.errorMessage}\n )}\n \n meta.handlers.onBlurHandler(\n meta.validation,\n meta.handlers.customBlurHandler,\n e\n )\n }\n onFocus={meta.handlers.onFocusHandler}\n onChange={meta.handlers.onChangeHandler}\n style={{width: '100%'}}\n />\n
\n
\n
\n );\n};\n\nInputField.defaultProps = {\n\n};\n\nInputField.propTypes = {\n meta: PropTypes.object\n};\n\nexport default InputField;","import InputField from './InputField';\n\nexport default InputField;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './ItemPrice.component.scss';\n\nconst ItemPrice = ({product}) => {\n\n const hasDiscount = !!product.discount && product.discount !== 0\n\n return (\n \n {product.discountedPrice && ₹{product.discountedPrice}}\n {\n hasDiscount &&\n (\n \n {product.price}\n {product.discount}% off\n \n )\n }\n
\n );\n};\n\nItemPrice.defaultProps = {\n product: PropTypes.object\n};\n\nItemPrice.propTypes = {\n\n};\n\nexport default ItemPrice;","import React, {useState} from 'react';\nimport './Search.component.scss';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faSearch } from '@fortawesome/free-solid-svg-icons'\nimport InputField from './../../atoms/InputField'\n\nconst Search = props => {\n const [iconClicked, setIconClicked] = useState(false)\n return (\n setIconClicked(!iconClicked)}>\n {iconClicked && }\n \n
\n );\n};\n\nSearch.defaultProps = {\n\n};\n\nSearch.propTypes = {\n\n};\n\nexport default Search;","import Search from './Search.jsx';\n\nexport default Search;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {connect} from 'react-redux';\nimport './CartIcon.component.scss';\nimport {withRouter} from 'react-router-dom'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faShoppingCart } from '@fortawesome/free-solid-svg-icons'\nimport { createPropsSelector } from 'reselect-immutable-helpers';\n\nimport {getCartTotalCount} from './../../../pages/Cart/selectors'\n\nconst CartIcon = props => {\n\n const navigateToCart = () => {\n props.history.push('/view/cart')\n }\n\n return (\n \n \n {props.cartTotalCount}\n
\n );\n};\n\nCartIcon.propTypes = {\n cartTotalCount: PropTypes.number\n};\n\nconst mapStateToProps = createPropsSelector({\n cartTotalCount: getCartTotalCount\n})\n\nexport default connect(mapStateToProps)(withRouter(CartIcon));","import CartIcon from './CartIcon.jsx';\n\nexport default CartIcon;","import React, {useEffect} from 'react';\nimport { Link } from 'react-router-dom';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faStar } from '@fortawesome/free-solid-svg-icons'\n\nimport Search from './../Search'\nimport CartIcon from './../CartIcon'\n\nconst Header = props => {\n\n useEffect(() => {\n const body = document.body;\n const scrollUp = \"scroll-up\";\n const scrollDown = \"scroll-down\";\n let lastScroll = 0;\n\n window.addEventListener(\"scroll\", () => {\n const currentScroll = window.pageYOffset;\n if (currentScroll === 0) {\n body.classList.remove(scrollUp);\n return;\n }\n \n if (currentScroll > lastScroll && !body.classList.contains(scrollDown)) {\n // down\n body.classList.remove(scrollUp);\n body.classList.add(scrollDown);\n } else if (currentScroll < lastScroll && body.classList.contains(scrollDown)) {\n // up\n body.classList.remove(scrollDown);\n body.classList.add(scrollUp);\n }\n lastScroll = currentScroll;\n });\n })\n \n return (\n \n \n \n {!props.inCart && }\n \n );\n};\n\nHeader.defaultProps = {\n\n};\n\nHeader.propTypes = {\n\n};\n\nexport default Header;","import Header from './Header.jsx';\n\nexport default Header;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styles from './Footer.component.scss';\n\nconst Footer = props => {\n return (\n \n );\n};\n\nFooter.defaultProps = {\n\n};\n\nFooter.propTypes = {\n\n};\n\nexport default Footer;","import Footer from './Footer.jsx';\n\nexport default Footer;","// extracted by mini-css-extract-plugin\nmodule.exports = {\"c-Cart\":\"Cart_c-Cart__3o6Xj\"};","import {createSelector} from 'reselect'\nimport {createGetSelector} from 'reselect-immutable-helpers'\n\nconst getData = ({data}) => data\n\nexport const getPlp = createSelector(\n getData,\n (dataState) => {\n return dataState.pages.plp\n }\n)\n\nexport const getFormValues = createGetSelector(getPlp, 'formValues')\nexport const getFormErrors = createGetSelector(getPlp, 'formErrors')\nexport const getProducts = createGetSelector(getPlp, 'products')","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './SectionLoader.component.scss';\n\nconst SectionLoader = props => {\n return (\n \n );\n};\n\nSectionLoader.defaultProps = {\n\n};\n\nSectionLoader.propTypes = {\n\n};\n\nexport default SectionLoader;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './CartItem.component.scss';\nimport SectionLoader from '../SectionLoader/SectionLoader';\nimport ItemPrice from '../ItemPrice/ItemPrice';\n\nconst CartItem = ({product}) => {\n\n return product ?\n \n \n
\n
\n

\n
\n
\n {product.name &&
{product.name}
}\n
\n
\n
\n
\n : \n};\n\nCartItem.defaultProps = {\n\n};\n\nCartItem.propTypes = {\n product: PropTypes.object\n};\n\nexport default CartItem;","import CartItem from './CartItem.jsx';\n\nexport default CartItem;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {connect} from 'react-redux';\nimport {createPropsSelector} from 'reselect-immutable-helpers';\nimport {getProducts} from './../../../pages/PLP/selectors'\nimport {getCartItems} from './../../../pages/Cart/selectors'\nimport CartItem from './../CartItem';\nimport './CartList.component.scss';\n\nconst CartList = props => {\n\n const products = props.products\n const isCartEmpty = !props.cartItems || Object.keys(props.cartItems).length === 0\n const cartItemTiles = !isCartEmpty && Object.keys(props.cartItems).map((itemId, key) => {\n const product = products && products.length > 0 && products.filter(product => product.id === parseInt(itemId))[0]\n return \n })\n\n const getEmptyCartBlock = () => {\n return (\n \n
Your cart is Empty!
\n
Please add some items from Available Products (use start button on top left)
\n
\n )\n }\n\n return (\n \n {isCartEmpty ? getEmptyCartBlock() : cartItemTiles}\n \n );\n};\n\nCartList.defaultProps = {\n\n};\n\nCartList.propTypes = {\n cartItems: PropTypes.object,\n products: PropTypes.array\n};\n\nconst mapStateToProps = createPropsSelector({\n cartItems: getCartItems,\n products: getProducts\n})\n\nexport default connect(mapStateToProps)(CartList);","import CartList from './CartList.jsx';\n\nexport default CartList;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styles from './CartSummary.component.scss';\n\nconst CartSummary = props => {\n return (\n \n
\n );\n};\n\nCartSummary.defaultProps = {\n\n};\n\nCartSummary.propTypes = {\n\n};\n\nexport default CartSummary;","import CartSummary from './CartSummary.jsx';\n\nexport default CartSummary;","import React from 'react';\nimport './Cart.module.scss';\n\nimport Header from './../../components/molecules/Header'\nimport CartList from './../../components/molecules/CartList'\nimport CartSummary from './../../components/molecules/CartSummary'\nimport Footer from './../../components/molecules/Footer'\n\nconst Cart = props => {\n return (\n \n );\n};\n\nCart.defaultProps = {\n\n};\n\nCart.propTypes = {\n\n};\n\nexport default Cart;","import Cart from './Cart.jsx';\n\nexport default Cart;"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"sources":["pages/Cart/selectors.js","components/atoms/InputField/InputField.js","components/atoms/InputField/index.js","components/molecules/ItemPrice/ItemPrice.jsx","components/molecules/Search/Search.jsx","components/molecules/Search/index.js","components/molecules/CartIcon/CartIcon.jsx","components/molecules/CartIcon/index.js","components/molecules/Header/Header.jsx","components/molecules/Header/index.js","components/molecules/Footer/Footer.jsx","components/molecules/Footer/index.js","pages/Cart/Cart.module.scss","pages/PLP/selectors.js","components/molecules/SectionLoader/SectionLoader.jsx","components/molecules/CartItem/CartItem.jsx","components/molecules/CartItem/index.js","components/molecules/CartList/CartList.jsx","components/molecules/CartList/index.js","components/molecules/CartSummary/CartSummary.jsx","components/molecules/CartSummary/index.js","pages/Cart/Cart.jsx","pages/Cart/index.js"],"names":["getCart","createSelector","data","dataState","pages","cart","getCartTotalCount","createGetSelector","getCartItems","InputField","meta","className","container_class","aria-required","aria_required","htmlFor","id","validation","required","isRequired","isStandAloneField","label","secondaryLabel","error","errorMessage","type","name","data-firstname","value","fieldValues","undefined","stateValue","propsValue","minLength","rules","minlength","maxLength","maxlength","placeholder","aria-invalid","aria_invalid","onBlur","e","handlers","onBlurHandler","customBlurHandler","onFocus","onFocusHandler","onChange","onChangeHandler","style","width","defaultProps","propTypes","PropTypes","object","ItemPrice","product","hasDiscount","discount","discountedPrice","Fragment","price","Search","props","useState","iconClicked","setIconClicked","onClick","icon","faSearch","CartIcon","history","push","faShoppingCart","cartTotalCount","number","mapStateToProps","createPropsSelector","connect","withRouter","Header","useEffect","body","document","lastScroll","window","addEventListener","currentScroll","pageYOffset","classList","contains","remove","add","to","faStar","inCart","Footer","module","exports","getPlp","plp","getProducts","SectionLoader","CartItem","src","img_url","alt","CartList","products","isCartEmpty","cartItems","Object","keys","length","cartItemTiles","map","itemId","key","filter","parseInt","array","CartSummary","Cart"],"mappings":"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","file":"static/js/4.356676d3.chunk.js","sourcesContent":["import {createSelector} from 'reselect'\nimport {createGetSelector} from 'reselect-immutable-helpers'\n\nconst getData = ({data}) => data\n\nexport const getCart = createSelector(\n getData,\n (dataState) => {\n return dataState.pages.cart\n }\n)\n\nexport const getFormValues = createGetSelector(getCart, 'formValues')\nexport const getFormErrors = createGetSelector(getCart, 'formErrors')\nexport const getCartTotalCount = createGetSelector(getCart, 'cartTotalCount')\nexport const getCartItems = createGetSelector(getCart, 'cartItems')","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst InputField = ({meta}) => {\n return (\n \n
\n
\n {meta.secondaryLabel ? (\n
{meta.secondaryLabel}\n ) : null}\n
\n {meta.error && (\n {meta.errorMessage}\n )}\n \n meta.handlers.onBlurHandler(\n meta.validation,\n meta.handlers.customBlurHandler,\n e\n )\n }\n onFocus={meta.handlers.onFocusHandler}\n onChange={meta.handlers.onChangeHandler}\n style={{width: '100%'}}\n />\n
\n
\n
\n );\n};\n\nInputField.defaultProps = {\n\n};\n\nInputField.propTypes = {\n meta: PropTypes.object\n};\n\nexport default InputField;","import InputField from './InputField';\n\nexport default InputField;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './ItemPrice.component.scss';\n\nconst ItemPrice = ({product}) => {\n\n const hasDiscount = !!product.discount && product.discount !== 0\n\n return (\n \n {product.discountedPrice && ₹{product.discountedPrice}}\n {\n hasDiscount &&\n (\n \n {product.price}\n {product.discount}% off\n \n )\n }\n
\n );\n};\n\nItemPrice.defaultProps = {\n product: PropTypes.object\n};\n\nItemPrice.propTypes = {\n\n};\n\nexport default ItemPrice;","import React, {useState} from 'react';\nimport './Search.component.scss';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faSearch } from '@fortawesome/free-solid-svg-icons'\nimport InputField from './../../atoms/InputField'\n\nconst Search = props => {\n const [iconClicked, setIconClicked] = useState(false)\n return (\n setIconClicked(!iconClicked)}>\n {iconClicked && }\n \n
\n );\n};\n\nSearch.defaultProps = {\n\n};\n\nSearch.propTypes = {\n\n};\n\nexport default Search;","import Search from './Search.jsx';\n\nexport default Search;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {connect} from 'react-redux';\nimport './CartIcon.component.scss';\nimport {withRouter} from 'react-router-dom'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faShoppingCart } from '@fortawesome/free-solid-svg-icons'\nimport { createPropsSelector } from 'reselect-immutable-helpers';\n\nimport {getCartTotalCount} from './../../../pages/Cart/selectors'\n\nconst CartIcon = props => {\n\n const navigateToCart = () => {\n props.history.push('/view/cart')\n }\n\n return (\n \n \n {props.cartTotalCount}\n
\n );\n};\n\nCartIcon.propTypes = {\n cartTotalCount: PropTypes.number\n};\n\nconst mapStateToProps = createPropsSelector({\n cartTotalCount: getCartTotalCount\n})\n\nexport default connect(mapStateToProps)(withRouter(CartIcon));","import CartIcon from './CartIcon.jsx';\n\nexport default CartIcon;","import React, {useEffect} from 'react';\nimport { Link } from 'react-router-dom';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faStar } from '@fortawesome/free-solid-svg-icons'\n\nimport Search from './../Search'\nimport CartIcon from './../CartIcon'\n\nconst Header = props => {\n\n useEffect(() => {\n const body = document.body;\n const scrollUp = \"scroll-up\";\n const scrollDown = \"scroll-down\";\n let lastScroll = 0;\n\n window.addEventListener(\"scroll\", () => {\n const currentScroll = window.pageYOffset;\n if (currentScroll === 0) {\n body.classList.remove(scrollUp);\n return;\n }\n \n if (currentScroll > lastScroll && !body.classList.contains(scrollDown)) {\n // down\n body.classList.remove(scrollUp);\n body.classList.add(scrollDown);\n } else if (currentScroll < lastScroll && body.classList.contains(scrollDown)) {\n // up\n body.classList.remove(scrollDown);\n body.classList.add(scrollUp);\n }\n lastScroll = currentScroll;\n });\n })\n \n return (\n \n \n \n {!props.inCart && }\n \n );\n};\n\nHeader.defaultProps = {\n\n};\n\nHeader.propTypes = {\n\n};\n\nexport default Header;","import Header from './Header.jsx';\n\nexport default Header;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styles from './Footer.component.scss';\n\nconst Footer = props => {\n return (\n \n );\n};\n\nFooter.defaultProps = {\n\n};\n\nFooter.propTypes = {\n\n};\n\nexport default Footer;","import Footer from './Footer.jsx';\n\nexport default Footer;","// extracted by mini-css-extract-plugin\nmodule.exports = {\"c-Cart\":\"Cart_c-Cart__3o6Xj\"};","import {createSelector} from 'reselect'\nimport {createGetSelector} from 'reselect-immutable-helpers'\n\nconst getData = ({data}) => data\n\nexport const getPlp = createSelector(\n getData,\n (dataState) => {\n return dataState.pages.plp\n }\n)\n\nexport const getFormValues = createGetSelector(getPlp, 'formValues')\nexport const getFormErrors = createGetSelector(getPlp, 'formErrors')\nexport const getProducts = createGetSelector(getPlp, 'products')","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './SectionLoader.component.scss';\n\nconst SectionLoader = props => {\n return (\n \n );\n};\n\nSectionLoader.defaultProps = {\n\n};\n\nSectionLoader.propTypes = {\n\n};\n\nexport default SectionLoader;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './CartItem.component.scss';\nimport SectionLoader from '../SectionLoader/SectionLoader';\nimport ItemPrice from '../ItemPrice/ItemPrice';\n\nconst CartItem = ({product}) => {\n\n return product ?\n \n \n
\n
\n

\n
\n
\n {product.name &&
{product.name}
}\n
\n
\n
\n
\n : \n};\n\nCartItem.defaultProps = {\n\n};\n\nCartItem.propTypes = {\n product: PropTypes.object\n};\n\nexport default CartItem;","import CartItem from './CartItem.jsx';\n\nexport default CartItem;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {connect} from 'react-redux';\nimport {createPropsSelector} from 'reselect-immutable-helpers';\nimport {getProducts} from './../../../pages/PLP/selectors'\nimport {getCartItems} from './../../../pages/Cart/selectors'\nimport CartItem from './../CartItem';\nimport './CartList.component.scss';\n\nconst CartList = props => {\n\n const products = props.products\n const isCartEmpty = !props.cartItems || Object.keys(props.cartItems).length === 0\n const cartItemTiles = !isCartEmpty && Object.keys(props.cartItems).map((itemId, key) => {\n const product = products && products.length > 0 && products.filter(product => product.id === parseInt(itemId))[0]\n return \n })\n\n const getEmptyCartBlock = () => {\n return (\n \n
Your cart is Empty!
\n
Please add some items from Available Products (use start button on top left)
\n
\n )\n }\n\n return (\n \n {isCartEmpty ? getEmptyCartBlock() : cartItemTiles}\n \n );\n};\n\nCartList.defaultProps = {\n\n};\n\nCartList.propTypes = {\n cartItems: PropTypes.object,\n products: PropTypes.array\n};\n\nconst mapStateToProps = createPropsSelector({\n cartItems: getCartItems,\n products: getProducts\n})\n\nexport default connect(mapStateToProps)(CartList);","import CartList from './CartList.jsx';\n\nexport default CartList;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styles from './CartSummary.component.scss';\n\nconst CartSummary = props => {\n return (\n \n
\n );\n};\n\nCartSummary.defaultProps = {\n\n};\n\nCartSummary.propTypes = {\n\n};\n\nexport default CartSummary;","import CartSummary from './CartSummary.jsx';\n\nexport default CartSummary;","import React from 'react';\nimport './Cart.module.scss';\n\nimport Header from './../../components/molecules/Header'\nimport CartList from './../../components/molecules/CartList'\nimport CartSummary from './../../components/molecules/CartSummary'\nimport Footer from './../../components/molecules/Footer'\n\nconst Cart = props => {\n return (\n \n );\n};\n\nCart.defaultProps = {\n\n};\n\nCart.propTypes = {\n\n};\n\nexport default Cart;","import Cart from './Cart.jsx';\n\nexport default Cart;"],"sourceRoot":""}
\ No newline at end of file
diff --git a/static/js/4.9ab8588a.chunk.js b/static/js/4.9ab8588a.chunk.js
deleted file mode 100644
index 2452e4c..0000000
--- a/static/js/4.9ab8588a.chunk.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(this.webpackJsonpadobeassignment=this.webpackJsonpadobeassignment||[]).push([[4],{46:function(e,t,a){"use strict";a.d(t,"b",(function(){return l})),a.d(t,"a",(function(){return o}));var r=a(45),n=a(42),c=Object(r.a)((function(e){return e.data}),(function(e){return e.pages.cart})),l=(Object(n.createGetSelector)(c,"formValues"),Object(n.createGetSelector)(c,"formErrors"),Object(n.createGetSelector)(c,"cartTotalCount")),o=Object(n.createGetSelector)(c,"cartItems")},47:function(e,t,a){"use strict";var r=a(0),n=a.n(r),c=a(7),l=a.n(c),o=function(e){var t=e.meta;return n.a.createElement("div",{className:"c-InputField"},n.a.createElement("div",{className:"form-group row ".concat(t.container_class?t.container_class:""),"aria-required":t.aria_required},n.a.createElement("label",{htmlFor:t.id,className:"col-12 col-sm-3 col-lg-12 col-form-label"},t.validation.required.isRequired&&!t.isStandAloneField&&n.a.createElement("span",{className:"required-indicator"},"* "),t.label),t.secondaryLabel?n.a.createElement("span",{className:"field--label-description"},t.secondaryLabel):null,n.a.createElement("div",{className:"col-12 col-sm-9 col-12"},t.error&&n.a.createElement("span",{className:"form-wrapper__field-error"},t.errorMessage),n.a.createElement("input",{className:"form-control ".concat(t.error?"error":""),type:t.type,id:t.id,name:t.name,"data-firstname":"null",value:t.fieldValues&&void 0!==t.fieldValues.stateValue?t.fieldValues.stateValue:t.fieldValues.propsValue,required:t.validation.required.isRequired?"required":"",minLength:t.validation.rules.minlength,maxLength:t.validation.rules.maxlength,placeholder:t.placeholder,"aria-required":t.aria_required,"aria-invalid":t.aria_invalid,onBlur:function(e){return t.handlers.onBlurHandler(t.validation,t.handlers.customBlurHandler,e)},onFocus:t.handlers.onFocusHandler,onChange:t.handlers.onChangeHandler,style:{width:"100%"}}))))};o.defaultProps={},o.propTypes={meta:l.a.object};var s=o;t.a=s},50:function(e,t,a){},51:function(e,t,a){},52:function(e,t,a){"use strict";var r=a(0),n=a.n(r),c=a(7),l=a.n(c),o=(a(53),function(e){var t=e.product,a=!!t.discount&&0!==t.discount;return n.a.createElement("div",{className:"c-ItemPrice"},t.discountedPrice&&n.a.createElement("span",{className:"c-Plp__c-ProductContainer__c-ProductTile__price"},"\u20b9",t.discountedPrice),a&&n.a.createElement(n.a.Fragment,null,n.a.createElement("span",{className:"c-ItemPrice__price--strikethrough"}," ",t.price),n.a.createElement("span",{className:"c-ItemPrice__discount"},t.discount,"% off")))});o.defaultProps={product:l.a.object},o.propTypes={},t.a=o},53:function(e,t,a){},54:function(e,t,a){},55:function(e,t,a){"use strict";var r=a(0),n=a.n(r),c=a(22),l=a(44),o=a(43),s=(a(50),a(47));function i(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var a=[],r=!0,n=!1,c=void 0;try{for(var l,o=e[Symbol.iterator]();!(r=(l=o.next()).done)&&(a.push(l.value),!t||a.length!==t);r=!0);}catch(s){n=!0,c=s}finally{try{r||null==o.return||o.return()}finally{if(n)throw c}}return a}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return u(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);"Object"===a&&e.constructor&&(a=e.constructor.name);if("Map"===a||"Set"===a)return Array.from(a);if("Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return u(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=new Array(t);at&&!e.classList.contains("scroll-down")?(e.classList.remove("scroll-up"),e.classList.add("scroll-down")):a0&&t.filter((function(t){return t.id===parseInt(e)}))[0];return n.a.createElement(b,{product:r,key:a})}));return n.a.createElement("section",{className:"c-CartList"},a?n.a.createElement("div",{className:"c-CartList__emptyCart"},n.a.createElement("h3",null,"Your cart is Empty!"),n.a.createElement("p",{className:"c-CartList__emptyCart__information"},"Please add some items from Available Products (use start button on top left)")):r)});y.defaultProps={},y.propTypes={cartItems:o.a.object,products:o.a.array};var C=Object(i.createPropsSelector)({cartItems:p.a,products:d}),h=Object(s.b)(C)(y),N=(a(73),function(e){return n.a.createElement("div",{className:"c-CartSummary"})});N.defaultProps={},N.propTypes={};var g=N,P=a(56),j=function(e){return n.a.createElement("div",{className:"c-Cart"},n.a.createElement(c.a,{inCart:!0}),n.a.createElement("main",{className:"container c-Cart__mainContent"},n.a.createElement("div",{className:"row"},n.a.createElement("div",{className:"col-12 col-md-8 col-lg-8"},n.a.createElement(h,null)),n.a.createElement("div",{className:"col-12 col-md-4 col-lg-4"},n.a.createElement(g,null)))),n.a.createElement(P.a,null))};j.defaultProps={},j.propTypes={};var S=j;t.default=S}}]);
-//# sourceMappingURL=4.9ab8588a.chunk.js.map
\ No newline at end of file
diff --git a/static/js/5.907a5f16.chunk.js b/static/js/5.907a5f16.chunk.js
deleted file mode 100644
index 585c072..0000000
--- a/static/js/5.907a5f16.chunk.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(this.webpackJsonpadobeassignment=this.webpackJsonpadobeassignment||[]).push([[5],{46:function(e,t,a){"use strict";a.d(t,"b",(function(){return o})),a.d(t,"a",(function(){return l}));var r=a(45),n=a(42),c=Object(r.a)((function(e){return e.data}),(function(e){return e.pages.cart})),o=(Object(n.createGetSelector)(c,"formValues"),Object(n.createGetSelector)(c,"formErrors"),Object(n.createGetSelector)(c,"cartTotalCount")),l=Object(n.createGetSelector)(c,"cartItems")},47:function(e,t,a){"use strict";var r=a(0),n=a.n(r),c=a(7),o=a.n(c),l=function(e){var t=e.meta;return n.a.createElement("div",{className:"c-InputField"},n.a.createElement("div",{className:"form-group row ".concat(t.container_class?t.container_class:""),"aria-required":t.aria_required},n.a.createElement("label",{htmlFor:t.id,className:"col-12 col-sm-3 col-lg-12 col-form-label"},t.validation.required.isRequired&&!t.isStandAloneField&&n.a.createElement("span",{className:"required-indicator"},"* "),t.label),t.secondaryLabel?n.a.createElement("span",{className:"field--label-description"},t.secondaryLabel):null,n.a.createElement("div",{className:"col-12 col-sm-9 col-12"},t.error&&n.a.createElement("span",{className:"form-wrapper__field-error"},t.errorMessage),n.a.createElement("input",{className:"form-control ".concat(t.error?"error":""),type:t.type,id:t.id,name:t.name,"data-firstname":"null",value:t.fieldValues&&void 0!==t.fieldValues.stateValue?t.fieldValues.stateValue:t.fieldValues.propsValue,required:t.validation.required.isRequired?"required":"",minLength:t.validation.rules.minlength,maxLength:t.validation.rules.maxlength,placeholder:t.placeholder,"aria-required":t.aria_required,"aria-invalid":t.aria_invalid,onBlur:function(e){return t.handlers.onBlurHandler(t.validation,t.handlers.customBlurHandler,e)},onFocus:t.handlers.onFocusHandler,onChange:t.handlers.onChangeHandler,style:{width:"100%"}}))))};l.defaultProps={},l.propTypes={meta:o.a.object};var i=l;t.a=i},50:function(e,t,a){},51:function(e,t,a){},52:function(e,t,a){"use strict";var r=a(0),n=a.n(r),c=a(7),o=a.n(c),l=(a(53),function(e){var t=e.product,a=!!t.discount&&0!==t.discount;return n.a.createElement("div",{className:"c-ItemPrice"},t.discountedPrice&&n.a.createElement("span",{className:"c-Plp__c-ProductContainer__c-ProductTile__price"},"\u20b9",t.discountedPrice),a&&n.a.createElement(n.a.Fragment,null,n.a.createElement("span",{className:"c-ItemPrice__price--strikethrough"}," ",t.price),n.a.createElement("span",{className:"c-ItemPrice__discount"},t.discount,"% off")))});l.defaultProps={product:o.a.object},l.propTypes={},t.a=l},53:function(e,t,a){},54:function(e,t,a){},55:function(e,t,a){"use strict";var r=a(0),n=a.n(r),c=a(22),o=a(44),l=a(43),i=(a(50),a(47));function s(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var a=[],r=!0,n=!1,c=void 0;try{for(var o,l=e[Symbol.iterator]();!(r=(o=l.next()).done)&&(a.push(o.value),!t||a.length!==t);r=!0);}catch(i){n=!0,c=i}finally{try{r||null==l.return||l.return()}finally{if(n)throw c}}return a}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return u(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);"Object"===a&&e.constructor&&(a=e.constructor.name);if("Map"===a||"Set"===a)return Array.from(a);if("Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return u(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=new Array(t);at&&!e.classList.contains("scroll-down")?(e.classList.remove("scroll-up"),e.classList.add("scroll-down")):ae.length)&&(t=e.length);for(var a=0,r=new Array(t);a data\n\nexport const getCart = createSelector(\n getData,\n (dataState) => {\n return dataState.pages.cart\n }\n)\n\nexport const getFormValues = createGetSelector(getCart, 'formValues')\nexport const getFormErrors = createGetSelector(getCart, 'formErrors')\nexport const getCartTotalCount = createGetSelector(getCart, 'cartTotalCount')\nexport const getCartItems = createGetSelector(getCart, 'cartItems')","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst InputField = ({meta}) => {\n return (\n \n
\n
\n {meta.secondaryLabel ? (\n
{meta.secondaryLabel}\n ) : null}\n
\n {meta.error && (\n {meta.errorMessage}\n )}\n \n meta.handlers.onBlurHandler(\n meta.validation,\n meta.handlers.customBlurHandler,\n e\n )\n }\n onFocus={meta.handlers.onFocusHandler}\n onChange={meta.handlers.onChangeHandler}\n style={{width: '100%'}}\n />\n
\n
\n
\n );\n};\n\nInputField.defaultProps = {\n\n};\n\nInputField.propTypes = {\n meta: PropTypes.object\n};\n\nexport default InputField;","import InputField from './InputField';\n\nexport default InputField;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './ItemPrice.component.scss';\n\nconst ItemPrice = ({product}) => {\n\n const hasDiscount = !!product.discount && product.discount !== 0\n\n return (\n \n {product.discountedPrice && ₹{product.discountedPrice}}\n {\n hasDiscount &&\n (\n \n {product.price}\n {product.discount}% off\n \n )\n }\n
\n );\n};\n\nItemPrice.defaultProps = {\n product: PropTypes.object\n};\n\nItemPrice.propTypes = {\n\n};\n\nexport default ItemPrice;","import React, {useState} from 'react';\nimport './Search.component.scss';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faSearch } from '@fortawesome/free-solid-svg-icons'\nimport InputField from './../../atoms/InputField'\n\nconst Search = props => {\n const [iconClicked, setIconClicked] = useState(false)\n return (\n setIconClicked(!iconClicked)}>\n {iconClicked && }\n \n
\n );\n};\n\nSearch.defaultProps = {\n\n};\n\nSearch.propTypes = {\n\n};\n\nexport default Search;","import Search from './Search.jsx';\n\nexport default Search;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {connect} from 'react-redux';\nimport './CartIcon.component.scss';\nimport {withRouter} from 'react-router-dom'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faShoppingCart } from '@fortawesome/free-solid-svg-icons'\nimport { createPropsSelector } from 'reselect-immutable-helpers';\n\nimport {getCartTotalCount} from './../../../pages/Cart/selectors'\n\nconst CartIcon = props => {\n\n const navigateToCart = () => {\n props.history.push('/view/cart')\n }\n\n return (\n \n \n {props.cartTotalCount}\n
\n );\n};\n\nCartIcon.propTypes = {\n cartTotalCount: PropTypes.number\n};\n\nconst mapStateToProps = createPropsSelector({\n cartTotalCount: getCartTotalCount\n})\n\nexport default connect(mapStateToProps)(withRouter(CartIcon));","import CartIcon from './CartIcon.jsx';\n\nexport default CartIcon;","import React, {useEffect} from 'react';\nimport { Link } from 'react-router-dom';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faStar } from '@fortawesome/free-solid-svg-icons'\n\nimport Search from './../Search'\nimport CartIcon from './../CartIcon'\n\nconst Header = props => {\n\n useEffect(() => {\n const body = document.body;\n const scrollUp = \"scroll-up\";\n const scrollDown = \"scroll-down\";\n let lastScroll = 0;\n\n window.addEventListener(\"scroll\", () => {\n const currentScroll = window.pageYOffset;\n if (currentScroll === 0) {\n body.classList.remove(scrollUp);\n return;\n }\n \n if (currentScroll > lastScroll && !body.classList.contains(scrollDown)) {\n // down\n body.classList.remove(scrollUp);\n body.classList.add(scrollDown);\n } else if (currentScroll < lastScroll && body.classList.contains(scrollDown)) {\n // up\n body.classList.remove(scrollDown);\n body.classList.add(scrollUp);\n }\n lastScroll = currentScroll;\n });\n })\n \n return (\n \n \n \n {!props.inCart && }\n \n );\n};\n\nHeader.defaultProps = {\n\n};\n\nHeader.propTypes = {\n\n};\n\nexport default Header;","import Header from './Header.jsx';\n\nexport default Header;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styles from './Footer.component.scss';\n\nconst Footer = props => {\n return (\n \n );\n};\n\nFooter.defaultProps = {\n\n};\n\nFooter.propTypes = {\n\n};\n\nexport default Footer;","import Footer from './Footer.jsx';\n\nexport default Footer;","import React from 'react';\nimport './SortAndFilterPanel.component.scss'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faSort } from '@fortawesome/free-solid-svg-icons'\nimport { faFilter } from '@fortawesome/free-solid-svg-icons'\n\nconst SortAndFilterPanel = props => {\n return (\n \n );\n};\n\nSortAndFilterPanel.defaultProps = {\n\n};\n\nSortAndFilterPanel.propTypes = {\n\n};\n\nexport default SortAndFilterPanel;","import SortAndFilterPanel from './SortAndFilterPanel.jsx';\n\nexport default SortAndFilterPanel;","import React from 'react';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport * as fwIcons from '@fortawesome/free-solid-svg-icons'\nimport './Button.component.scss'\n\nconst Button = props => {\n return (\n \n );\n};\n\nButton.defaultProps = {\n\n};\n\nButton.propTypes = {\n\n};\n\nexport default Button;","import Button from './Button.jsx';\n\nexport default Button;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {connect} from 'react-redux';\nimport {createPropsSelector} from 'reselect-immutable-helpers';\nimport {addToCart} from './../../../pages/Cart/actions'\nimport {getCartTotalCount, getCartItems} from './../../../pages/Cart/selectors'\n\nimport Button from './../../atoms/Button'\nimport ItemPrice from '../ItemPrice/ItemPrice';\n\nimport './ProductTile.component.scss';\n\nconst ProductTile = props => {\n\n const product = props.product\n const addToCartButtonClass = \"btn btn__addToCart\"\n\n const addToCart = (productId) => {\n let cartTotalCount = props.cartTotalCount\n const cartItems = props.cartItems\n let count = cartItems && cartItems[productId] ? cartItems[productId] : 0\n cartItems[productId] = ++count\n props.addToCart(++cartTotalCount, cartItems)\n }\n\n return (\n \n \n
\n {product.name && {product.name}}\n \n {/* \n {product.discountedPrice && ₹{product.discountedPrice}}\n {\n hasDiscount &&\n (\n \n {product.price}\n {product.discount}% off\n \n )\n }\n
*/}\n \n \n );\n};\n\nProductTile.propTypes = {\n addToCart: PropTypes.func,\n cartTotalCount: PropTypes.number,\n cartItems: PropTypes.object\n};\n\nconst mapStateToProps = createPropsSelector({\n cartTotalCount: getCartTotalCount,\n cartItems: getCartItems\n})\n\nconst mapDispatchToProps = ({\n addToCart\n})\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(ProductTile);","import ProductTile from './ProductTile.jsx';\n\nexport default ProductTile;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {connect} from 'react-redux';\nimport {dispatchProducts} from './../../../pages/PLP/actions'\nimport ProductTile from './../ProductTile'\nimport PageLoader from '../PageLoader/PageLoader';\n\nconst ProductContainer = props => {\n\n const productsWithDiscountedPrice = props.products \n && props.products.length !== 0\n && props.products.map(product => {\n const discount = product.discount && product.price * (product.discount/100)\n product.discountedPrice = Math.ceil(product.price - discount)\n return product\n })\n\n const productTiles = productsWithDiscountedPrice && productsWithDiscountedPrice.map((product, key) =>{\n return \n })\n props.dispatchProducts(productsWithDiscountedPrice)\n\n return props.products && props.products.length !== 0 ?\n \n \n
\n {productTiles}\n
\n
\n : \n};\n\nProductContainer.defaultProps = {\n products: []\n};\n\nProductContainer.propTypes = {\n products: PropTypes.array\n};\n\nconst mapDispatchToProps = ({\n dispatchProducts\n})\n\nexport default connect(\n null,\n mapDispatchToProps\n)(ProductContainer);","import ProductContainer from './ProductContainer.jsx';\n\nexport default ProductContainer;","import React, {useState, useEffect} from 'react';\nimport PropTypes from 'prop-types';\nimport {connect} from 'react-redux';\nimport {dispatchProducts} from './actions';\n\nimport Header from './../../components/molecules/Header'\nimport SortAndFilterPanel from './../../components/molecules/SortAndFilterPanel'\nimport ProductContainer from './../../components/molecules/ProductContainer'\nimport Footer from './../../components/molecules/Footer'\n\nconst Plp = ({dispatchProducts}) => {\n \n const [products, setProducts] = useState([])\n\n useEffect(() => {\n fetch('https://api.myjson.com/bins/qzuzi')\n .then(res => res.json())\n .then(products => {\n // console.log(products)\n setProducts(products)\n dispatchProducts(products)\n })\n }, [])\n\n return (\n \n )\n};\n\nPlp.propTypes = {\n dispatchProducts: PropTypes.func\n};\n\nconst mapDispatchToProps = ({\n dispatchProducts\n})\n\nexport default connect(\n null,\n mapDispatchToProps\n)(Plp);","import Plp from './Plp.jsx';\n\nexport default Plp;"],"sourceRoot":""}
\ No newline at end of file
diff --git a/static/js/5.fb62759b.chunk.js b/static/js/5.fb62759b.chunk.js
new file mode 100644
index 0000000..db29d86
--- /dev/null
+++ b/static/js/5.fb62759b.chunk.js
@@ -0,0 +1,2 @@
+(this.webpackJsonpadobeassignment=this.webpackJsonpadobeassignment||[]).push([[5],{46:function(e,t,a){"use strict";a.d(t,"b",(function(){return o})),a.d(t,"a",(function(){return l}));var r=a(45),n=a(42),c=Object(r.a)((function(e){return e.data}),(function(e){return e.pages.cart})),o=(Object(n.createGetSelector)(c,"formValues"),Object(n.createGetSelector)(c,"formErrors"),Object(n.createGetSelector)(c,"cartTotalCount")),l=Object(n.createGetSelector)(c,"cartItems")},47:function(e,t,a){"use strict";var r=a(0),n=a.n(r),c=a(7),o=a.n(c),l=function(e){var t=e.meta;return n.a.createElement("div",{className:"c-InputField"},n.a.createElement("div",{className:"form-group row ".concat(t.container_class?t.container_class:""),"aria-required":t.aria_required},n.a.createElement("label",{htmlFor:t.id,className:"col-12 col-sm-3 col-lg-12 col-form-label"},t.validation.required.isRequired&&!t.isStandAloneField&&n.a.createElement("span",{className:"required-indicator"},"* "),t.label),t.secondaryLabel?n.a.createElement("span",{className:"field--label-description"},t.secondaryLabel):null,n.a.createElement("div",{className:"col-12 col-sm-9 col-12"},t.error&&n.a.createElement("span",{className:"form-wrapper__field-error"},t.errorMessage),n.a.createElement("input",{className:"form-control ".concat(t.error?"error":""),type:t.type,id:t.id,name:t.name,"data-firstname":"null",value:t.fieldValues&&void 0!==t.fieldValues.stateValue?t.fieldValues.stateValue:t.fieldValues.propsValue,required:t.validation.required.isRequired?"required":"",minLength:t.validation.rules.minlength,maxLength:t.validation.rules.maxlength,placeholder:t.placeholder,"aria-required":t.aria_required,"aria-invalid":t.aria_invalid,onBlur:function(e){return t.handlers.onBlurHandler(t.validation,t.handlers.customBlurHandler,e)},onFocus:t.handlers.onFocusHandler,onChange:t.handlers.onChangeHandler,style:{width:"100%"}}))))};l.defaultProps={},l.propTypes={meta:o.a.object};var i=l;t.a=i},50:function(e,t,a){},51:function(e,t,a){},52:function(e,t,a){"use strict";var r=a(0),n=a.n(r),c=a(7),o=a.n(c),l=(a(53),function(e){var t=e.product,a=!!t.discount&&0!==t.discount;return n.a.createElement("div",{className:"c-ItemPrice"},t.discountedPrice&&n.a.createElement("span",{className:"c-ItemPrice__price"},"\u20b9",t.discountedPrice),a&&n.a.createElement(n.a.Fragment,null,n.a.createElement("span",{className:"c-ItemPrice__price--strikethrough"}," ",t.price),n.a.createElement("span",{className:"c-ItemPrice__discount"},t.discount,"% off")))});l.defaultProps={product:o.a.object},l.propTypes={},t.a=l},53:function(e,t,a){},54:function(e,t,a){},55:function(e,t,a){"use strict";var r=a(0),n=a.n(r),c=a(22),o=a(44),l=a(43),i=(a(50),a(47));function s(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var a=[],r=!0,n=!1,c=void 0;try{for(var o,l=e[Symbol.iterator]();!(r=(o=l.next()).done)&&(a.push(o.value),!t||a.length!==t);r=!0);}catch(i){n=!0,c=i}finally{try{r||null==l.return||l.return()}finally{if(n)throw c}}return a}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return u(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);"Object"===a&&e.constructor&&(a=e.constructor.name);if("Map"===a||"Set"===a)return Array.from(a);if("Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return u(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=new Array(t);at&&!e.classList.contains("scroll-down")?(e.classList.remove("scroll-up"),e.classList.add("scroll-down")):ae.length)&&(t=e.length);for(var a=0,r=new Array(t);a data\n\nexport const getCart = createSelector(\n getData,\n (dataState) => {\n return dataState.pages.cart\n }\n)\n\nexport const getFormValues = createGetSelector(getCart, 'formValues')\nexport const getFormErrors = createGetSelector(getCart, 'formErrors')\nexport const getCartTotalCount = createGetSelector(getCart, 'cartTotalCount')\nexport const getCartItems = createGetSelector(getCart, 'cartItems')","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst InputField = ({meta}) => {\n return (\n \n
\n
\n {meta.secondaryLabel ? (\n
{meta.secondaryLabel}\n ) : null}\n
\n {meta.error && (\n {meta.errorMessage}\n )}\n \n meta.handlers.onBlurHandler(\n meta.validation,\n meta.handlers.customBlurHandler,\n e\n )\n }\n onFocus={meta.handlers.onFocusHandler}\n onChange={meta.handlers.onChangeHandler}\n style={{width: '100%'}}\n />\n
\n
\n
\n );\n};\n\nInputField.defaultProps = {\n\n};\n\nInputField.propTypes = {\n meta: PropTypes.object\n};\n\nexport default InputField;","import InputField from './InputField';\n\nexport default InputField;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport './ItemPrice.component.scss';\n\nconst ItemPrice = ({product}) => {\n\n const hasDiscount = !!product.discount && product.discount !== 0\n\n return (\n \n {product.discountedPrice && ₹{product.discountedPrice}}\n {\n hasDiscount &&\n (\n \n {product.price}\n {product.discount}% off\n \n )\n }\n
\n );\n};\n\nItemPrice.defaultProps = {\n product: PropTypes.object\n};\n\nItemPrice.propTypes = {\n\n};\n\nexport default ItemPrice;","import React, {useState} from 'react';\nimport './Search.component.scss';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faSearch } from '@fortawesome/free-solid-svg-icons'\nimport InputField from './../../atoms/InputField'\n\nconst Search = props => {\n const [iconClicked, setIconClicked] = useState(false)\n return (\n setIconClicked(!iconClicked)}>\n {iconClicked && }\n \n
\n );\n};\n\nSearch.defaultProps = {\n\n};\n\nSearch.propTypes = {\n\n};\n\nexport default Search;","import Search from './Search.jsx';\n\nexport default Search;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {connect} from 'react-redux';\nimport './CartIcon.component.scss';\nimport {withRouter} from 'react-router-dom'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faShoppingCart } from '@fortawesome/free-solid-svg-icons'\nimport { createPropsSelector } from 'reselect-immutable-helpers';\n\nimport {getCartTotalCount} from './../../../pages/Cart/selectors'\n\nconst CartIcon = props => {\n\n const navigateToCart = () => {\n props.history.push('/view/cart')\n }\n\n return (\n \n \n {props.cartTotalCount}\n
\n );\n};\n\nCartIcon.propTypes = {\n cartTotalCount: PropTypes.number\n};\n\nconst mapStateToProps = createPropsSelector({\n cartTotalCount: getCartTotalCount\n})\n\nexport default connect(mapStateToProps)(withRouter(CartIcon));","import CartIcon from './CartIcon.jsx';\n\nexport default CartIcon;","import React, {useEffect} from 'react';\nimport { Link } from 'react-router-dom';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faStar } from '@fortawesome/free-solid-svg-icons'\n\nimport Search from './../Search'\nimport CartIcon from './../CartIcon'\n\nconst Header = props => {\n\n useEffect(() => {\n const body = document.body;\n const scrollUp = \"scroll-up\";\n const scrollDown = \"scroll-down\";\n let lastScroll = 0;\n\n window.addEventListener(\"scroll\", () => {\n const currentScroll = window.pageYOffset;\n if (currentScroll === 0) {\n body.classList.remove(scrollUp);\n return;\n }\n \n if (currentScroll > lastScroll && !body.classList.contains(scrollDown)) {\n // down\n body.classList.remove(scrollUp);\n body.classList.add(scrollDown);\n } else if (currentScroll < lastScroll && body.classList.contains(scrollDown)) {\n // up\n body.classList.remove(scrollDown);\n body.classList.add(scrollUp);\n }\n lastScroll = currentScroll;\n });\n })\n \n return (\n \n \n \n {!props.inCart && }\n \n );\n};\n\nHeader.defaultProps = {\n\n};\n\nHeader.propTypes = {\n\n};\n\nexport default Header;","import Header from './Header.jsx';\n\nexport default Header;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styles from './Footer.component.scss';\n\nconst Footer = props => {\n return (\n \n );\n};\n\nFooter.defaultProps = {\n\n};\n\nFooter.propTypes = {\n\n};\n\nexport default Footer;","import Footer from './Footer.jsx';\n\nexport default Footer;","import React from 'react';\nimport './SortAndFilterPanel.component.scss'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faSort } from '@fortawesome/free-solid-svg-icons'\nimport { faFilter } from '@fortawesome/free-solid-svg-icons'\n\nconst SortAndFilterPanel = props => {\n return (\n \n );\n};\n\nSortAndFilterPanel.defaultProps = {\n\n};\n\nSortAndFilterPanel.propTypes = {\n\n};\n\nexport default SortAndFilterPanel;","import SortAndFilterPanel from './SortAndFilterPanel.jsx';\n\nexport default SortAndFilterPanel;","import React from 'react';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport * as fwIcons from '@fortawesome/free-solid-svg-icons'\nimport './Button.component.scss'\n\nconst Button = props => {\n return (\n \n );\n};\n\nButton.defaultProps = {\n\n};\n\nButton.propTypes = {\n\n};\n\nexport default Button;","import Button from './Button.jsx';\n\nexport default Button;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {connect} from 'react-redux';\nimport {createPropsSelector} from 'reselect-immutable-helpers';\nimport {addToCart} from './../../../pages/Cart/actions'\nimport {getCartTotalCount, getCartItems} from './../../../pages/Cart/selectors'\n\nimport Button from './../../atoms/Button'\nimport ItemPrice from '../ItemPrice/ItemPrice';\n\nimport './ProductTile.component.scss';\n\nconst ProductTile = props => {\n\n const product = props.product\n const addToCartButtonClass = \"btn btn__addToCart\"\n\n const addToCart = (productId) => {\n let cartTotalCount = props.cartTotalCount\n const cartItems = props.cartItems\n let count = cartItems && cartItems[productId] ? cartItems[productId] : 0\n cartItems[productId] = ++count\n props.addToCart(++cartTotalCount, cartItems)\n }\n\n return (\n \n \n
\n {product.name && {product.name}}\n \n {/* \n {product.discountedPrice && ₹{product.discountedPrice}}\n {\n hasDiscount &&\n (\n \n {product.price}\n {product.discount}% off\n \n )\n }\n
*/}\n \n \n );\n};\n\nProductTile.propTypes = {\n addToCart: PropTypes.func,\n cartTotalCount: PropTypes.number,\n cartItems: PropTypes.object\n};\n\nconst mapStateToProps = createPropsSelector({\n cartTotalCount: getCartTotalCount,\n cartItems: getCartItems\n})\n\nconst mapDispatchToProps = ({\n addToCart\n})\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(ProductTile);","import ProductTile from './ProductTile.jsx';\n\nexport default ProductTile;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {connect} from 'react-redux';\nimport {dispatchProducts} from './../../../pages/PLP/actions'\nimport ProductTile from './../ProductTile'\nimport PageLoader from '../PageLoader/PageLoader';\n\nconst ProductContainer = props => {\n\n const productsWithDiscountedPrice = props.products \n && props.products.length !== 0\n && props.products.map(product => {\n const discount = product.discount && product.price * (product.discount/100)\n product.discountedPrice = Math.ceil(product.price - discount)\n return product\n })\n\n const productTiles = productsWithDiscountedPrice && productsWithDiscountedPrice.map((product, key) =>{\n return \n })\n props.dispatchProducts(productsWithDiscountedPrice)\n\n return props.products && props.products.length !== 0 ?\n \n \n
\n {productTiles}\n
\n
\n : \n};\n\nProductContainer.defaultProps = {\n products: []\n};\n\nProductContainer.propTypes = {\n products: PropTypes.array\n};\n\nconst mapDispatchToProps = ({\n dispatchProducts\n})\n\nexport default connect(\n null,\n mapDispatchToProps\n)(ProductContainer);","import ProductContainer from './ProductContainer.jsx';\n\nexport default ProductContainer;","import React, {useState, useEffect} from 'react';\nimport PropTypes from 'prop-types';\nimport {connect} from 'react-redux';\nimport {dispatchProducts} from './actions';\n\nimport Header from './../../components/molecules/Header'\nimport SortAndFilterPanel from './../../components/molecules/SortAndFilterPanel'\nimport ProductContainer from './../../components/molecules/ProductContainer'\nimport Footer from './../../components/molecules/Footer'\n\nconst Plp = ({dispatchProducts}) => {\n \n const [products, setProducts] = useState([])\n\n useEffect(() => {\n fetch('https://api.myjson.com/bins/qzuzi')\n .then(res => res.json())\n .then(products => {\n // console.log(products)\n setProducts(products)\n dispatchProducts(products)\n })\n }, [])\n\n return (\n \n )\n};\n\nPlp.propTypes = {\n dispatchProducts: PropTypes.func\n};\n\nconst mapDispatchToProps = ({\n dispatchProducts\n})\n\nexport default connect(\n null,\n mapDispatchToProps\n)(Plp);","import Plp from './Plp.jsx';\n\nexport default Plp;"],"sourceRoot":""}
\ No newline at end of file
diff --git a/static/js/runtime-main.28504e11.js b/static/js/runtime-main.487b9582.js
similarity index 92%
rename from static/js/runtime-main.28504e11.js
rename to static/js/runtime-main.487b9582.js
index e39da02..7e97b33 100644
--- a/static/js/runtime-main.28504e11.js
+++ b/static/js/runtime-main.487b9582.js
@@ -1,2 +1,2 @@
-!function(e){function t(t){for(var n,o,i=t[0],c=t[1],f=t[2],s=0,d=[];s