diff --git a/.prettierignore b/.prettierignore
new file mode 100644
index 0000000..12fcf84
--- /dev/null
+++ b/.prettierignore
@@ -0,0 +1,7 @@
+node_modules
+
+dist
+
+data
+
+tsconfig.json
diff --git a/.prettierrc b/.prettierrc
new file mode 100644
index 0000000..b0188fe
--- /dev/null
+++ b/.prettierrc
@@ -0,0 +1,10 @@
+{
+ "semi": false,
+ "singleQuote": true,
+ "vetur.format.defaultFormatterOptions": {
+ "prettier": {
+ "singleQuote": true
+ }
+ },
+ "jsxSingleQuote": true
+}
diff --git a/assets/styles/reset.css b/assets/styles/reset.css
index bac7d1b..98ce0d8 100644
--- a/assets/styles/reset.css
+++ b/assets/styles/reset.css
@@ -2,10 +2,14 @@
box-sizing: border-box;
-webkit-font-smoothing: antialiased;
}
-body{
- font-family: 'Karla', Roboto, sans-serif
+body {
+ font-family: 'Karla', Roboto, sans-serif;
}
-html, body, ul, ol, fieldset {
+html,
+body,
+ul,
+ol,
+fieldset {
margin: 0;
padding: 0;
}
@@ -24,6 +28,21 @@ img {
.sitecontent img {
width: 100%;
}
+img[lazy='loaded'] {
+ animation-name: fadein;
+ animation-duration: 2s;
+}
+img[lazy='loading'] {
+ filter: blur(10px);
+}
+@keyframes fadein {
+ 0% {
+ opacity: 0;
+ }
+ 100% {
+ opacity: 1;
+ }
+}
@media screen and (max-width: 800px) {
.sitecontent img {
height: 478px;
@@ -97,4 +116,4 @@ button {
font-size: 28px;
padding: 1rem;
border-bottom: 1px solid #ccc;
-}
\ No newline at end of file
+}
diff --git a/assets/styles/transitions.css b/assets/styles/transitions.css
index c0c1444..2af76fb 100644
--- a/assets/styles/transitions.css
+++ b/assets/styles/transitions.css
@@ -1,8 +1,10 @@
-.page-enter-active, .page-leave-active {
- transition: opacity .5s
+.page-enter-active,
+.page-leave-active {
+ transition: opacity 0.5s;
}
-.page-enter, .page-leave-active {
- opacity: 0
+.page-enter,
+.page-leave-active {
+ opacity: 0;
}
.slide-left-enter,
.slide-right-leave-active {
@@ -26,8 +28,8 @@
.mb-36 {
margin-bottom: -36px;
}
-.flex{
+.flex {
display: flex;
justify-content: space-between;
align-items: center;
-}
\ No newline at end of file
+}
diff --git a/components/CartButtons.vue b/components/CartButtons.vue
index 005d749..8d3d5ea 100644
--- a/components/CartButtons.vue
+++ b/components/CartButtons.vue
@@ -1,26 +1,49 @@
-
-
{{getQty({_id:product._id})}}
+
{{ getQty({ _id: product._id }) }}
@@ -29,12 +52,12 @@
-
-
diff --git a/components/Header.vue b/components/Header.vue
index c2e0f97..e6839c4 100644
--- a/components/Header.vue
+++ b/components/Header.vue
@@ -8,50 +8,26 @@
-
-
-
-
-
diff --git a/components/Info.vue b/components/Info.vue
index 74434bd..a710bfd 100644
--- a/components/Info.vue
+++ b/components/Info.vue
@@ -5,33 +5,32 @@
-
-
-
Delivery time
-
45 minutes
+
+
+
Delivery time
+
45 minutes
+
+
+
Delivery free
+
above {{ 50 | currency }}
+
-
-
Delivery free
-
above {{50 | currency}}
+
+
+
Delivery hours
+
11:30AM - 10:30PM
+
+
+
Minimum order
+
{{ 0 | currency }}
+
-
-
-
Delivery hours
-
11:30AM - 10:30PM
-
-
-
Minimum order
-
{{0 | currency}}
-
-
-
Delivery is now open
-
@@ -39,7 +38,7 @@
-
-
-
-
diff --git a/components/Loading.vue b/components/Loading.vue
index 41ded23..dd2bcad 100644
--- a/components/Loading.vue
+++ b/components/Loading.vue
@@ -1,10 +1,10 @@
-
diff --git a/components/Loadingdots.vue b/components/Loadingdots.vue
index 7668e42..a76a422 100644
--- a/components/Loadingdots.vue
+++ b/components/Loadingdots.vue
@@ -1,6 +1,6 @@
-
+
@@ -14,13 +14,13 @@ export default {
}),
methods: {
start() {
- this.loading = true;
+ this.loading = true
},
finish() {
- this.loading = false;
+ this.loading = false
}
}
-};
+}
\ No newline at end of file
+
diff --git a/components/Orders.vue b/components/Orders.vue
index 7ed541a..0054316 100644
--- a/components/Orders.vue
+++ b/components/Orders.vue
@@ -12,12 +12,15 @@
>
@@ -76,13 +96,16 @@
- {{ix+1}} - {{i.name}}
- {{i.price | currency}} ({{i.qty}})
+ {{ ix + 1 }} - {{ i.name }}
+ {{ i.price | currency }} ({{ i.qty }})
@@ -95,44 +118,44 @@
-
diff --git a/components/Products.vue b/components/Products.vue
index d74a978..450d407 100644
--- a/components/Products.vue
+++ b/components/Products.vue
@@ -2,63 +2,73 @@
-
+
- {{p.name}}
+ {{ p.name }}
-
{{p.price | currency}}
+
{{ p.price | currency }}
-
-
-
-
-
-
-
{{p.name}}
-
-
{{p.price | currency}}
-
+
+
+
+
-
-
+
+
+ {{ p.name }}
+
+
+
{{ p.price | currency }}
+
+
+
+
+
+
-
-
diff --git a/components/Skeleton.vue b/components/Skeleton.vue
new file mode 100644
index 0000000..b2696a2
--- /dev/null
+++ b/components/Skeleton.vue
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/config.js b/config.js
index 12815dc..5b74e5e 100644
--- a/config.js
+++ b/config.js
@@ -3,7 +3,7 @@ const pkg = require('./package')
module.exports = {
apiKey: 'AIzaSyDBM8REAXrMtwLbO0Dv1iL6hEaU-jzVdFk',
projectId: 'vueshop-30fea',
- authDomain: "vueshop-30fea.firebaseapp.com",
+ authDomain: 'vueshop-30fea.firebaseapp.com',
ANALYTICS_TRACKING_ID: 'UA-49421899-3',
clearCart: true, // Whether to clear the cart after order is placed. Useful while testing
currency: { symbol: '₹', code: 'INR' },
@@ -20,7 +20,10 @@ module.exports = {
title: pkg.description,
link: [
{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' },
- { rel: 'stylesheet', href: 'https://fonts.googleapis.com/css?family=Karla:400,700' }
+ {
+ rel: 'stylesheet',
+ href: 'https://fonts.googleapis.com/css?family=Karla:400,700'
+ }
],
meta: [
{ 'http-equiv': 'X-UA-Compatible', content: 'IE=edge' },
@@ -31,12 +34,12 @@ module.exports = {
{
hid: 'og:title',
property: 'og:title',
- content: pkg.description,
+ content: pkg.description
},
{
hid: 'og:description',
property: 'og:description',
- content: pkg.description,
+ content: pkg.description
},
// {
// property: "og:image",
@@ -46,21 +49,25 @@ module.exports = {
{
hid: 'twitter:title',
property: 'twitter:title',
- content: pkg.description,
+ content: pkg.description
},
{
hid: 'twitter:description',
property: 'twitter:description',
- content: pkg.description,
+ content: pkg.description
},
{
hid: 'og:url',
property: 'og:url',
- content: 'https://foodfire.info',
- },
+ content: 'https://foodfire.info'
+ }
+ ],
+ noscript: [
+ {
+ innerHTML: `We're sorry but Foodfire doesn't work properly without JavaScript enabled. Please enable it to continue.`
+ }
],
- noscript: [{ innerHTML: `We're sorry but Foodfire doesn't work properly without JavaScript enabled. Please enable it to continue.` }],
htmlAttrs: { lang: 'en' },
- __dangerouslyDisableSanitizers: ['script'],
+ __dangerouslyDisableSanitizers: ['script']
}
}
diff --git a/layouts/default.vue b/layouts/default.vue
index 6b3fe74..b5ec114 100644
--- a/layouts/default.vue
+++ b/layouts/default.vue
@@ -5,12 +5,9 @@
-
-
-
diff --git a/layouts/error.vue b/layouts/error.vue
index 05fd44a..393ce18 100644
--- a/layouts/error.vue
+++ b/layouts/error.vue
@@ -6,10 +6,7 @@
404
Sorry, page not found
-
+
@@ -18,12 +15,9 @@
500
-
Sorry, the server is down.
+
Sorry, an error occured.
-
+
@@ -33,14 +27,14 @@
-
diff --git a/pages/cart.vue b/pages/cart.vue
index 2f2d63e..024355b 100644
--- a/pages/cart.vue
+++ b/pages/cart.vue
@@ -4,15 +4,12 @@
My Cart
-
+
-
+
-
There's nothing in here
+
There's nothing in here
You have not added any items to your cart yet.
-
diff --git a/pages/checkout.vue b/pages/checkout.vue
index e53a4a7..e94b784 100644
--- a/pages/checkout.vue
+++ b/pages/checkout.vue
@@ -1,45 +1,45 @@
-
+
-
{{profile.name}}
+
+ {{ profile.name }}
+
+ />
+ />
-
Enter Address:
+
Enter Address:
+ >
+
@@ -76,25 +77,25 @@
-
diff --git a/pages/index.vue b/pages/index.vue
index 20e9657..d7b66ef 100644
--- a/pages/index.vue
+++ b/pages/index.vue
@@ -2,53 +2,41 @@
diff --git a/pages/my/orders/index.vue b/pages/my/orders/index.vue
index 3a42e28..54564cd 100644
--- a/pages/my/orders/index.vue
+++ b/pages/my/orders/index.vue
@@ -15,91 +15,97 @@
-
ORDER ID: {{o[".key"]}}
+ ORDER ID: {{ o['.key'] }}
-
{{user.name}}
+
{{ user.name }}
-
{{o.address}}
+ {{ o.address }}
-
Date: {{o["createdAt"].toDate().toLocaleDateString('en-GB', {
- day : 'numeric',
- month : 'short',
- year : 'numeric'
- })}}
+
+ Date:
+ {{
+ o['createdAt'].toDate().toLocaleDateString('en-GB', {
+ day: 'numeric',
+ month: 'short',
+ year: 'numeric'
+ })
+ }}
+
-
+
-
{{ix+1}}.
-
-
{{i.name}}
-
{{i.price | currency}} x {{i.qty}}
+
{{ ix + 1 }}.
+
+
+ {{ i.name }}
+
+
+ {{ i.price | currency }} x
+ {{ i.qty }}
+
-
Order Status: {{o.status}}
+ Order Status: {{ o.status }}
-
Total: ₹{{o.amount.total}}
+ Total: ₹{{ o.amount.total }}
- Need Help?
+ Need Help?
-
diff --git a/pages/my/profile.vue b/pages/my/profile.vue
index 43f2292..f195ad2 100644
--- a/pages/my/profile.vue
+++ b/pages/my/profile.vue
@@ -1,40 +1,37 @@
-
+
-
{{profile.name}}
- {{profile.email}}
+ {{ profile.name }}
+ {{ profile.email }}
-
diff --git a/pages/success.vue b/pages/success.vue
index 889f548..fe1c618 100644
--- a/pages/success.vue
+++ b/pages/success.vue
@@ -7,27 +7,35 @@
-
-
Thank You!!!
+
+
+ Thank You!!!
+
-
+
- Your order request has been received successfully.
+ Your order request has been received
+ successfully.
-
Transaction ID: {{order[".key"]}}
-
You will receive a message or call regarding the confirmation of the product.
-
Note: Your order will be sent to you, usually within 1hr.
+
+ Transaction ID:
+ {{ order['.key'] }}
+
+
+ You will receive a message or call regarding the
+ confirmation of the product.
+
+
+ Note: Your order will be sent to you,
+ usually within 1hr.
+
-
-
{{order.name}}
-
{{order.address}}
+
+ {{ order.name }}
+ {{ order.address }}
@@ -39,29 +47,26 @@
class="product"
v-for="(p, index) in order.items"
:key="index"
- :to="'/'+p.slug+'?id='+p.pid"
+ :to="'/' + p.slug + '?id=' + p.pid"
>
-
+
{{ p.name }}
-
{{p.price | currency}}
+
{{ p.price | currency }}
- For customer service
Please contact: care@foodfire.in
+ For customer service
+ Please contact:
+ care@foodfire.in
@@ -70,58 +75,53 @@
+ Restaurant Menu
+
+