init
commit
7a790d9211
|
@ -0,0 +1,13 @@
|
|||
# editorconfig.org
|
||||
root = true
|
||||
|
||||
[*]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
end_of_line = lf
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
|
||||
[*.md]
|
||||
trim_trailing_whitespace = false
|
|
@ -0,0 +1,90 @@
|
|||
# Created by .ignore support plugin (hsz.mobi)
|
||||
### Node template
|
||||
# Logs
|
||||
/logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# TypeScript v1 declaration files
|
||||
typings/
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variables file
|
||||
.env
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
|
||||
# next.js build output
|
||||
.next
|
||||
|
||||
# nuxt.js build output
|
||||
.nuxt
|
||||
|
||||
# Nuxt generate
|
||||
dist
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# Serverless directories
|
||||
.serverless
|
||||
|
||||
# IDE / Editor
|
||||
.idea
|
||||
|
||||
# Service worker
|
||||
sw.*
|
||||
|
||||
# macOS
|
||||
.DS_Store
|
||||
|
||||
# Vim swap files
|
||||
*.swp
|
|
@ -0,0 +1,69 @@
|
|||
# swarnamath.com
|
||||
|
||||
## Build Setup
|
||||
|
||||
```bash
|
||||
# install dependencies
|
||||
$ yarn install
|
||||
|
||||
# serve with hot reload at localhost:3000
|
||||
$ yarn dev
|
||||
|
||||
# build for production and launch server
|
||||
$ yarn build
|
||||
$ yarn start
|
||||
|
||||
# generate static project
|
||||
$ yarn generate
|
||||
```
|
||||
|
||||
For detailed explanation on how things work, check out the [documentation](https://nuxtjs.org).
|
||||
|
||||
## Special Directories
|
||||
|
||||
You can create the following extra directories, some of which have special behaviors. Only `pages` is required; you can delete them if you don't want to use their functionality.
|
||||
|
||||
### `assets`
|
||||
|
||||
The assets directory contains your uncompiled assets such as Stylus or Sass files, images, or fonts.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/assets).
|
||||
|
||||
### `components`
|
||||
|
||||
The components directory contains your Vue.js components. Components make up the different parts of your page and can be reused and imported into your pages, layouts and even other components.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/components).
|
||||
|
||||
### `layouts`
|
||||
|
||||
Layouts are a great help when you want to change the look and feel of your Nuxt app, whether you want to include a sidebar or have distinct layouts for mobile and desktop.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/layouts).
|
||||
|
||||
|
||||
### `pages`
|
||||
|
||||
This directory contains your application views and routes. Nuxt will read all the `*.vue` files inside this directory and setup Vue Router automatically.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/get-started/routing).
|
||||
|
||||
### `plugins`
|
||||
|
||||
The plugins directory contains JavaScript plugins that you want to run before instantiating the root Vue.js Application. This is the place to add Vue plugins and to inject functions or constants. Every time you need to use `Vue.use()`, you should create a file in `plugins/` and add its path to plugins in `nuxt.config.js`.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/plugins).
|
||||
|
||||
### `static`
|
||||
|
||||
This directory contains your static files. Each file inside this directory is mapped to `/`.
|
||||
|
||||
Example: `/static/robots.txt` is mapped as `/robots.txt`.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/static).
|
||||
|
||||
### `store`
|
||||
|
||||
This directory contains your Vuex store files. Creating a file in this directory automatically activates Vuex.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/store).
|
|
@ -0,0 +1,7 @@
|
|||
// Ref: https://github.com/nuxt-community/vuetify-module#customvariables
|
||||
//
|
||||
// The variables you want to modify
|
||||
// $font-size-root: 20px;
|
||||
.v-application--wrap{
|
||||
min-height:10vh;
|
||||
}
|
|
@ -0,0 +1,95 @@
|
|||
<template>
|
||||
<div class="mt-10">
|
||||
|
||||
<div class="footer black grey--text black--text py-10">
|
||||
<v-container>
|
||||
<v-row class="justify-center pb-10">
|
||||
<v-btn color="transparent grey--text">
|
||||
<v-icon x-large>mdi-facebook</v-icon>
|
||||
</v-btn>
|
||||
<v-btn color="transparent grey--text">
|
||||
<v-icon x-large>mdi-twitter</v-icon>
|
||||
</v-btn>
|
||||
<v-btn color="transparent grey--text">
|
||||
<v-icon x-large>mdi-share</v-icon>
|
||||
</v-btn>
|
||||
</v-row>
|
||||
<hr />
|
||||
<div class="pt-5">
|
||||
<v-row>
|
||||
<v-col col="12" sm="12" lg="3" md="6">
|
||||
<div class="f_sec_1">
|
||||
<div class="f_sec_1_logo">
|
||||
</div>
|
||||
<p color="grey--text">
|
||||
We are a delivery company Serving in thakurnagar area.
|
||||
Now we deliver Fruits, vegetables, cosmetics, grocery and many daily needs.
|
||||
Along with delivery we provide various services for home and small offices like electrician, plumber etc...
|
||||
</p>
|
||||
</div>
|
||||
</v-col>
|
||||
<!-- <v-col col="12" sm="6" lg="3" md="6">
|
||||
<div class="f_sec_3 sampleID">
|
||||
<h3 style="padding-left:10px">QUICK LINKS</h3>
|
||||
<ul
|
||||
style="padding:0;list-style:none"
|
||||
v-for="item in linkk"
|
||||
:key="item.link"
|
||||
:to="item.linkk"
|
||||
>
|
||||
<v-btn
|
||||
color="transparent grey--text"
|
||||
depressed
|
||||
:to="`${item.link}`"
|
||||
>
|
||||
<span>
|
||||
<v-icon class="text-h6 mr-1">{{ item.icon }}</v-icon>
|
||||
{{ item.title }}
|
||||
</span>
|
||||
</v-btn>
|
||||
</ul>
|
||||
</div>
|
||||
</v-col> -->
|
||||
<v-col col="12" lg="3" sm="6" md="6">
|
||||
<h3>GET IN TOUCH</h3>
|
||||
<div>
|
||||
<p> Thakurnagar Area, west bengal </p>
|
||||
<p> email@swarnamath.com </p>
|
||||
<p> call 8597894293 (8.00 AM — 6.00 PM) </p>
|
||||
</div>
|
||||
</v-col>
|
||||
<!-- <v-col col="12" lg="3" sm="12" md="6">
|
||||
<div>
|
||||
<h3>STAY CONNECTED</h3>
|
||||
<p>
|
||||
We are a delivery company Serving in thakurnagar area.
|
||||
</p>
|
||||
<v-row class="pl-3 mt-7">
|
||||
<v-text-field tile label="Input Mail" solo dense></v-text-field>
|
||||
<v-btn
|
||||
id="inner_input"
|
||||
width="100"
|
||||
height="40"
|
||||
depressed
|
||||
color="grey"
|
||||
>Submit</v-btn>
|
||||
</v-row>
|
||||
</div>
|
||||
</v-col> -->
|
||||
</v-row>
|
||||
</div>
|
||||
</v-container>
|
||||
</div>
|
||||
<h4 style="text-align:center;padding:15px 0;"> Powered by DWD CONSULTANCY SERVICES</h4>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
|
@ -0,0 +1,115 @@
|
|||
<template>
|
||||
<div id="head">
|
||||
<v-app-bar class="hidden-sm-and-down" color="green" fixed>
|
||||
<NuxtLink class="py-4 black--text" to="/">
|
||||
<img style="width:70px; padding:10px 5px 5px 5px" src="/icon.png" alt />
|
||||
</NuxtLink>
|
||||
|
||||
<v-spacer></v-spacer>
|
||||
<v-toolbar-items class="hidden-sm-and-down" color="pink">
|
||||
<v-row align="center">
|
||||
<NuxtLink
|
||||
class="black--text"
|
||||
v-for="item in links"
|
||||
:key="item.icon"
|
||||
:to="item.link"
|
||||
>
|
||||
<!-- <v-icon>{{ item.img }}</v-icon> -->
|
||||
{{ item.title }}
|
||||
</NuxtLink>
|
||||
</v-row>
|
||||
</v-toolbar-items>
|
||||
</v-app-bar>
|
||||
|
||||
<div class="hidden-md-and-up">
|
||||
<v-app-bar color="orange" style="position: fixed;top: 0;right:0;z-index:1">
|
||||
<NuxtLink class="py-4 black--text" to="/">
|
||||
<img
|
||||
style="width:70px; padding:10px 5px 5px 5px"
|
||||
src="/icon.png"
|
||||
alt
|
||||
/>
|
||||
</NuxtLink>
|
||||
|
||||
<v-spacer></v-spacer>
|
||||
<v-bottom-sheet v-model="mobileMenu">
|
||||
<template v-slot:activator="{ on, attrs }">
|
||||
<v-btn color="pink" v-bind="attrs" v-on="on">menu</v-btn>
|
||||
</template>
|
||||
<v-list>
|
||||
<v-list-item
|
||||
v-for="link in links"
|
||||
:key="link.title"
|
||||
:to="link.link"
|
||||
@click="mobileMenu = false"
|
||||
>
|
||||
<v-list-item-avatar>
|
||||
<v-icon>{{ link.img }}</v-icon>
|
||||
</v-list-item-avatar>
|
||||
<v-list-item-title>{{ link.title }}</v-list-item-title>
|
||||
|
||||
</v-list-item>
|
||||
<v-list-item @click="mobileMenu = false"> <v-icon> mdi-close-box </v-icon> close this menu</v-list-item>
|
||||
</v-list>
|
||||
</v-bottom-sheet>
|
||||
</v-app-bar>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
data: () => ({
|
||||
mobileMenu: false,
|
||||
shoppingCart:[],
|
||||
links: [
|
||||
{ img: 'mdi-account', link: "/category/services", title: 'পরিসেবা ' },
|
||||
{ img: 'mdi-corn', link: "/category/vegetables", title: 'সবজি ' },
|
||||
{ img: 'mdi-apple', link: "/category/fruits", title: 'ফল ' },
|
||||
{ img: 'mdi-apple', link: "/category/cloths", title: 'পরিধান ' },
|
||||
{ img: 'mdi-diamond', link: "/category/jewlry", title: 'গয়না ' },
|
||||
{ img: 'mdi-spray', link: "/category/cosmetics", title: 'প্রসাধন ' },
|
||||
{ img: 'mdi-tag', link: "/category/grocery", title: 'মুদি ' },
|
||||
{ img: 'mdi-basket', link: "/bag", title: 'ব্যাগ ' },
|
||||
{ img: 'mdi-cellphone-basic', link: "/contact", title: 'যোগাযোগ ' },
|
||||
|
||||
],
|
||||
}),
|
||||
// mounted() {
|
||||
// /// Retrieves cart from local storage when user first loads
|
||||
|
||||
// this.shoppingCart = JSON.parse(localStorage.getItem('shoppingCart') || "[]")
|
||||
|
||||
// },
|
||||
// watch: {
|
||||
// shoppingCart: {
|
||||
// handler(newValue) {
|
||||
// /// Updates the item in local storage
|
||||
|
||||
// localStorage.setItem(
|
||||
// 'shoppingCart', JSON.stringify(newValue));
|
||||
|
||||
// }, deep: true
|
||||
// }
|
||||
// }
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
a {
|
||||
text-decoration: none;
|
||||
text-transform: uppercase;
|
||||
font-size: 18px;
|
||||
|
||||
padding: 0px 5px;
|
||||
margin: 0 2px;
|
||||
font-weight: 500;
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
#head {
|
||||
min-height: 90px;
|
||||
}
|
||||
@media screen and (max-width: 760px) {
|
||||
#head {
|
||||
min-height: 60px;
|
||||
}
|
||||
}
|
||||
</style>
|
|
@ -0,0 +1,2 @@
|
|||
<template>
|
||||
</template>
|
|
@ -0,0 +1,18 @@
|
|||
---
|
||||
title: Getting started
|
||||
description: 'Empower your NuxtJS application with @nuxt/content module: write in a content/ directory and fetch your Markdown, JSON, YAML and CSV files through a MongoDB like API, acting as a Git-based Headless CMS.'
|
||||
---
|
||||
|
||||
Empower your NuxtJS application with `@nuxtjs/content` module: write in a `content/` directory and fetch your Markdown, JSON, YAML and CSV files through a MongoDB like API, acting as a **Git-based Headless CMS**.
|
||||
|
||||
## Writing content
|
||||
|
||||
Learn how to write your `content/`, supporting Markdown, YAML, CSV and JSON: https://content.nuxtjs.org/writing.
|
||||
|
||||
## Fetching content
|
||||
|
||||
Learn how to fetch your content with `$content`: https://content.nuxtjs.org/fetching.
|
||||
|
||||
## Displaying content
|
||||
|
||||
Learn how to display your Markdown content with the `<nuxt-content>` component directly in your template: https://content.nuxtjs.org/displaying.
|
|
@ -0,0 +1,10 @@
|
|||
<template>
|
||||
<v-app >
|
||||
<Header />
|
||||
<v-main>
|
||||
<Nuxt keep-alive :keep-alive-props="{ max: 60 }" />
|
||||
<!-- <Nuxt /> -->
|
||||
</v-main>
|
||||
<Footer />
|
||||
</v-app>
|
||||
</template>
|
|
@ -0,0 +1,45 @@
|
|||
<template>
|
||||
<v-app dark>
|
||||
<h1 v-if="error.statusCode === 404">
|
||||
{{ pageNotFound }}
|
||||
</h1>
|
||||
<h1 v-else>
|
||||
{{ otherError }}
|
||||
</h1>
|
||||
<NuxtLink to="/">
|
||||
Home page
|
||||
</NuxtLink>
|
||||
</v-app>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'EmptyLayout',
|
||||
layout: 'empty',
|
||||
props: {
|
||||
error: {
|
||||
type: Object,
|
||||
default: null
|
||||
}
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
pageNotFound: '404 Not Found',
|
||||
otherError: 'An error occurred'
|
||||
}
|
||||
},
|
||||
head () {
|
||||
const title =
|
||||
this.error.statusCode === 404 ? this.pageNotFound : this.otherError
|
||||
return {
|
||||
title
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
h1 {
|
||||
font-size: 20px;
|
||||
}
|
||||
</style>
|
|
@ -0,0 +1,103 @@
|
|||
import colors from 'vuetify/es5/util/colors'
|
||||
|
||||
export default {
|
||||
// Global page headers: https://go.nuxtjs.dev/config-head
|
||||
head: {
|
||||
titleTemplate: '%s - SwarnaMath vegetable & fruit delivery app',
|
||||
title: 'SwarnaMath',
|
||||
meta: [
|
||||
{ charset: 'utf-8' },
|
||||
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
|
||||
{ hid: 'description', name: 'description', content: '' },
|
||||
{ name: 'format-detection', content: 'telephone=no' }
|
||||
],
|
||||
link: [
|
||||
{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }
|
||||
]
|
||||
},
|
||||
server: {
|
||||
port: 1058, // default: 3000
|
||||
host: '0.0.0.0' // default: localhost
|
||||
},
|
||||
|
||||
|
||||
// Global CSS: https://go.nuxtjs.dev/config-css
|
||||
css: [
|
||||
],
|
||||
|
||||
// Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins
|
||||
plugins: [
|
||||
// '~plugins/modal.js'
|
||||
],
|
||||
|
||||
// Auto import components: https://go.nuxtjs.dev/config-components
|
||||
components: true,
|
||||
|
||||
// Modules for dev and build (recommended): https://go.nuxtjs.dev/config-modules
|
||||
buildModules: [
|
||||
// https://go.nuxtjs.dev/vuetify
|
||||
'@nuxtjs/vuetify',
|
||||
],
|
||||
|
||||
// Modules: https://go.nuxtjs.dev/config-modules
|
||||
modules: [
|
||||
// https://go.nuxtjs.dev/axios
|
||||
'@nuxtjs/axios',
|
||||
// https://go.nuxtjs.dev/pwa
|
||||
'@nuxtjs/pwa',
|
||||
// https://go.nuxtjs.dev/content
|
||||
'@nuxt/content',
|
||||
// 'nuxt-vuex-localstorage'
|
||||
],
|
||||
|
||||
// Axios module configuration: https://go.nuxtjs.dev/config-axios
|
||||
// axios: {
|
||||
// // Workaround to avoid enforcing hard-coded localhost:3000: https://github.com/nuxt-community/axios-module/issues/308
|
||||
// baseURL: '/',
|
||||
// },
|
||||
|
||||
publicRuntimeConfig: {
|
||||
axios: {
|
||||
baseURL: 'https://api5.siliconpin.com'
|
||||
}
|
||||
},
|
||||
privateRuntimeConfig: {
|
||||
myPrivateToken: process.env.PRIVATE_TOKEN
|
||||
},
|
||||
|
||||
// PWA module configuration: https://go.nuxtjs.dev/pwa
|
||||
pwa: {
|
||||
manifest: {
|
||||
name: 'Swarna Math',
|
||||
description: 'Delivery App - Swarna Math, Fruits Vegetables ...',
|
||||
start_url: 'https://swarnamath.com/',
|
||||
lang: 'bn'
|
||||
}
|
||||
},
|
||||
|
||||
// Content module configuration: https://go.nuxtjs.dev/config-content
|
||||
content: {},
|
||||
|
||||
// Vuetify module configuration: https://go.nuxtjs.dev/config-vuetify
|
||||
vuetify: {
|
||||
customVariables: ['~/assets/variables.scss'],
|
||||
theme: {
|
||||
dark: false,
|
||||
themes: {
|
||||
dark: {
|
||||
primary: colors.blue.darken2,
|
||||
accent: colors.grey.darken3,
|
||||
secondary: colors.amber.darken3,
|
||||
info: colors.teal.lighten1,
|
||||
warning: colors.amber.base,
|
||||
error: colors.deepOrange.accent4,
|
||||
success: colors.green.accent3
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
// Build Configuration: https://go.nuxtjs.dev/config-build
|
||||
build: {
|
||||
}
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
{
|
||||
"name": "swarnamath",
|
||||
"version": "1.1.0",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start",
|
||||
"generate": "nuxt generate"
|
||||
},
|
||||
"dependencies": {
|
||||
"@nuxt/content": "^1.15.1",
|
||||
"@nuxtjs/axios": "^5.13.6",
|
||||
"@nuxtjs/pwa": "^3.3.5",
|
||||
"core-js": "^3.19.3",
|
||||
"nuxt": "^2.15.8",
|
||||
"vue": "^2.6.14",
|
||||
"vue-server-renderer": "^2.6.14",
|
||||
"vue-template-compiler": "^2.6.14",
|
||||
"vuetify": "^2.6.1",
|
||||
"webpack": "^4.46.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@nuxtjs/vuetify": "^1.12.3"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,227 @@
|
|||
<template>
|
||||
<v-container mt-4 style="padding-bottom:120px;">
|
||||
<p v-if="$fetchState.pending">Loading....</p>
|
||||
<p v-else-if="$fetchState.error">Error while fetching...</p>
|
||||
<v-row v-else>
|
||||
<v-card class="mx-auto pa-3">
|
||||
<v-card width="500" class="justify-center">
|
||||
<v-img
|
||||
:src="`https://api7.siliconpin.com/assets/${pageContent.data[0].img}`"
|
||||
aspect-ratio="1.2"
|
||||
></v-img>
|
||||
</v-card>
|
||||
|
||||
<v-card-title
|
||||
class="font-weight-bold justify-center"
|
||||
style="font-size:2em; line-height: 1.6;"
|
||||
>{{ pageContent.data[0].name }}</v-card-title>
|
||||
<!-- :class="{'subheading': $vuetify.breakpoint.xs}" -->
|
||||
<hr />
|
||||
<div class="text-center font-weight-bold">
|
||||
<span v-if="pageContent.data[0].description"></span>
|
||||
{{ pageContent.data[0].description }}
|
||||
<br />
|
||||
<div class="pa-1" v-if="pageContent.data[0].price">
|
||||
<v-btn
|
||||
color="primary"
|
||||
@click="addToCart(pageContent.data[0].price)"
|
||||
>{{ pageContent.data[0].quantity }}</v-btn>
|
||||
<span>মূল্য - {{ pageContent.data[0].price }} টাকা ।</span>
|
||||
</div>
|
||||
<div class="pa-1" v-if="pageContent.data[0].p2">
|
||||
<v-btn
|
||||
color="primary"
|
||||
@click="addToCart(pageContent.data[0].p2)"
|
||||
>{{ pageContent.data[0].q2 }}</v-btn>
|
||||
<span>মূল্য - {{ pageContent.data[0].p2 }} টাকা ।</span>
|
||||
</div>
|
||||
<div class="pa-1" v-if="pageContent.data[0].p3">
|
||||
<v-btn color="primary"
|
||||
@click="addToCart(pageContent.data[0].p3)"
|
||||
>{{ pageContent.data[0].q3 }}</v-btn>
|
||||
<span>মূল্য - {{ pageContent.data[0].p3 }} টাকা ।</span>
|
||||
</div>
|
||||
<div class="pa-1" v-if="pageContent.data[0].p4">
|
||||
<v-btn color="primary"
|
||||
@click="addToCart(pageContent.data[0].p4)"
|
||||
>{{ pageContent.data[0].q4 }}</v-btn>
|
||||
<span>মূল্য - {{ pageContent.data[0].p4 }} টাকা ।</span>
|
||||
|
||||
</div>
|
||||
<!-- <div> {{ cartTotal }} </div> -->
|
||||
<!-- <div> {{cartBag}} </div> -->
|
||||
<div v-if="addedToCartChip">
|
||||
<v-chip
|
||||
class="ma-2"
|
||||
close
|
||||
color="red"
|
||||
text-color="white"
|
||||
@click:close="addedToCartChip = false"
|
||||
>
|
||||
ব্যাগ এ রাখা হয়েছে
|
||||
</v-chip>
|
||||
<nuxt-link to="/"> <v-btn> আরও </v-btn> </nuxt-link>
|
||||
<a href="/bag"> <v-btn> ব্যাগ </v-btn> </a>
|
||||
</div>
|
||||
|
||||
<!-- <div v-show="loaded">
|
||||
{{ $shoppingCart }}
|
||||
{{ $localStorageLoaded }}
|
||||
{{ $sessionStorageLoaded }}
|
||||
</div> -->
|
||||
|
||||
</div>
|
||||
<br />
|
||||
<div id="block_container">
|
||||
<div>
|
||||
<!-- <span> <a href="'https://wa.me/8597894293?url='+$route.params.slug" > Purchase Cash On Delivery </a> </span> -->
|
||||
</div>
|
||||
</div>
|
||||
</v-card>
|
||||
</v-row>
|
||||
</v-container>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
pageContent: {},
|
||||
name: "",
|
||||
slug: "",
|
||||
img: "",
|
||||
cartBag:[],
|
||||
addedToCartChip:false,
|
||||
cartTotal:0,
|
||||
// apiLink:process.env.apiLink
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
// loaded() {
|
||||
// return this.$store.state.shoppingCart.status ,this.$store.state.localStorage.status , this.$store.state.sessionStorage.status
|
||||
// }
|
||||
},
|
||||
mounted: function() {
|
||||
/// Retrieves cart from local storage when user first loads
|
||||
|
||||
// this.shoppingCart = JSON.parse(
|
||||
// localStorage.getItem('shoppingCart') || "[]")
|
||||
|
||||
if (localStorage && localStorage.cart) {
|
||||
const cartBag = JSON.parse(localStorage.cart);
|
||||
this.cartBag = cartBag;
|
||||
cartBag.forEach((i) => {
|
||||
// total += i.amount * 1;
|
||||
this.cartTotal++
|
||||
});
|
||||
// this.cartTotal = total;
|
||||
// this.countTotals(cart);
|
||||
// alert("ss")
|
||||
}
|
||||
|
||||
},
|
||||
methods: {
|
||||
addToCart(price) {
|
||||
const cartRaw = localStorage.cart || '[]';
|
||||
const cart = JSON.parse(cartRaw)
|
||||
let product={}
|
||||
product["slug"]=this.slug
|
||||
product["name"]=this.name
|
||||
product["price"]=price
|
||||
product["img"]=this.img
|
||||
// const product=[slug, name, price]
|
||||
// if(process.client){
|
||||
cart.push({
|
||||
// ...this.selectedCard,
|
||||
product:product
|
||||
});
|
||||
localStorage.cart = JSON.stringify(cart);
|
||||
this.addedToCartChip=true
|
||||
// this.$router.push('/bag');
|
||||
// }
|
||||
// let exists = false
|
||||
|
||||
// for (const cartItem of this.shoppingCart) {
|
||||
// if (cartItem.slug === product.slug) {
|
||||
// cartItem.amount = cartItem.amount + 1
|
||||
// exists = true
|
||||
// break
|
||||
// }
|
||||
// }
|
||||
// if (!exists) {
|
||||
|
||||
// this.shoppingCart.push({
|
||||
// ...product,
|
||||
// amount: 1,
|
||||
// })
|
||||
// console.log(product)
|
||||
// }
|
||||
},
|
||||
},
|
||||
// async asyncData({ $axios, route }) {
|
||||
// const product = await $axios.$get(`/swarnamaths/?slug=`+route.params.slug)
|
||||
// // $route.fullPath
|
||||
// // console.log(route.params.slug);
|
||||
// // console.log(product)
|
||||
// const url=route.params.slug
|
||||
// return { product}
|
||||
// },
|
||||
async fetch() {
|
||||
this.pageContent = await fetch(
|
||||
'https://api7.siliconpin.com/items/swarnamath?filter[slug]=' + this.$route.params.slug
|
||||
).then(res => res.json())
|
||||
this.name = this.pageContent.data[0].name
|
||||
this.slug = this.pageContent.data[0].slug
|
||||
if (this.pageContent.data[0].img) this.img = this.pageContent.data[0].img
|
||||
},
|
||||
fetchOnServer: false,
|
||||
head() {
|
||||
return {
|
||||
title: this.name,
|
||||
meta: [
|
||||
// hid is used as unique identifier. Do not use `vmid` for it as it will not work
|
||||
{
|
||||
hid: 'description',
|
||||
name: 'description',
|
||||
content: this.name
|
||||
},
|
||||
{
|
||||
hid: 'og:description',
|
||||
name: 'og:description',
|
||||
content: this.name
|
||||
},
|
||||
{
|
||||
hid: 'og:title',
|
||||
name: 'og:title',
|
||||
content: this.name
|
||||
},
|
||||
{
|
||||
hid: 'og:url',
|
||||
name: 'og:url',
|
||||
content: 'https://swarnamath.com/' + this.slug
|
||||
},
|
||||
{
|
||||
hid: 'og:image',
|
||||
name: 'og:image',
|
||||
content: 'https://api7.siliconpin.com' + this.img
|
||||
},
|
||||
{
|
||||
hid: 'og:image:secure_url',
|
||||
name: 'og:image:secure_url',
|
||||
content: 'https://api7.siliconpin.com' + this.img
|
||||
},
|
||||
{
|
||||
hid: 'og:type',
|
||||
name: 'og:type',
|
||||
content: 'News'
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scopped>
|
||||
#block_container {
|
||||
font-size: 18px;
|
||||
}
|
||||
</style>
|
|
@ -0,0 +1,18 @@
|
|||
<template>
|
||||
<v-text>
|
||||
|
||||
|
||||
<!-- mounted() {
|
||||
document.onreadystatechange = () => {
|
||||
if (document.readyState == "complete") {
|
||||
console.log('Page completed with image and files!')
|
||||
|
||||
// HOW LOAD COMPONENTS HERE?
|
||||
this.readyStateComplete = true
|
||||
|
||||
}
|
||||
}
|
||||
}, -->
|
||||
|
||||
</v-text>
|
||||
</template>
|
|
@ -0,0 +1,182 @@
|
|||
<template>
|
||||
<v-container mt-4 style="padding-bottom:120px;">
|
||||
<!-- <v-card class="bg mb-5" v-show="calculateCart"> -->
|
||||
<v-card class="bg mb-5" >
|
||||
<v-card v-for="item in cartBag" :key="item.slug">
|
||||
<div>
|
||||
<div>
|
||||
<v-avatar class="ma-3" size="125" tile>
|
||||
<v-img v-if="item.product.img" :src="`https://api7.siliconpin.com/assets/${item.product.img}`"></v-img>
|
||||
</v-avatar>
|
||||
|
||||
<v-card-title class="text-h5" v-text="item.product.name"></v-card-title>
|
||||
|
||||
<v-card-subtitle v-text="item.product.name"></v-card-subtitle>
|
||||
|
||||
<!-- <v-card-actions>
|
||||
<v-btn
|
||||
v-if="item.artist === 'Ellie Goulding'"
|
||||
class="ml-2 mt-3"
|
||||
fab
|
||||
icon
|
||||
height="40px"
|
||||
right
|
||||
width="40px"
|
||||
>
|
||||
<v-icon>mdi-play</v-icon>
|
||||
</v-btn>
|
||||
|
||||
<v-btn
|
||||
v-else
|
||||
class="ml-2 mt-5"
|
||||
outlined
|
||||
rounded
|
||||
big
|
||||
>
|
||||
বাদ
|
||||
</v-btn>
|
||||
</v-card-actions>-->
|
||||
</div>
|
||||
</div>
|
||||
</v-card>
|
||||
<div v-if="bagTotalPrice>0" >
|
||||
<h2 > মোট {{bagTotalPrice}} /- টাকা</h2>
|
||||
<v-btn @click="cartEmpty()">
|
||||
বাদ
|
||||
</v-btn>
|
||||
<v-btn>
|
||||
<nuxt-link to="/purchase">এগিয়ে যাই</nuxt-link>
|
||||
</v-btn>
|
||||
|
||||
</div>
|
||||
|
||||
<h2 v-else > ব্যাগ ফাঁকা </h2>
|
||||
</v-card>
|
||||
<v-btn>
|
||||
<nuxt-link to="/">আরও কিনবো</nuxt-link>
|
||||
</v-btn>
|
||||
</v-container>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
pageContent: {},
|
||||
name: "",
|
||||
slug: "",
|
||||
img: "",
|
||||
cartBag: [],
|
||||
bagTotalPrice: 0,
|
||||
formData: {
|
||||
slug: "",
|
||||
name: "",
|
||||
price: "",
|
||||
// permission: []
|
||||
}
|
||||
|
||||
// apiLink:process.env.apiLink
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
// loaded() {
|
||||
// return this.$store.state.shoppingCart.status ,this.$store.state.localStorage.status , this.$store.state.sessionStorage.status
|
||||
// }
|
||||
// calculateCart(){
|
||||
// if (localStorage && localStorage.cart) {
|
||||
// const cart = JSON.parse(localStorage.cart);
|
||||
// this.cart = cart;
|
||||
// // this.countTotals(cart);
|
||||
// }
|
||||
// }
|
||||
},
|
||||
mounted() {
|
||||
/// Retrieves cart from local storage when user first loads
|
||||
|
||||
// this.shoppingCart = JSON.parse(
|
||||
// localStorage.getItem('shoppingCart') || "[]")
|
||||
if (localStorage && localStorage.cart) {
|
||||
const cartBag = JSON.parse(localStorage.cart);
|
||||
this.cartBag = cartBag;
|
||||
this.cartBag.forEach(element => {
|
||||
this.bagTotalPrice +=element.product.price
|
||||
// console.log(element.product.price)
|
||||
});
|
||||
// this.countTotals(cart);
|
||||
// alert("ss")
|
||||
}
|
||||
|
||||
},
|
||||
methods: {
|
||||
cartEmpty() {
|
||||
|
||||
localStorage.cart = '[]';
|
||||
// this.$forceUpdate();
|
||||
this.$router.go(0);
|
||||
|
||||
|
||||
},
|
||||
calculateCart(){
|
||||
if (localStorage && localStorage.cart) {
|
||||
const cart = JSON.parse(localStorage.cart);
|
||||
this.cart = cart;
|
||||
// this.countTotals(cart);
|
||||
}
|
||||
}
|
||||
},
|
||||
// async fetch() {
|
||||
// this.pageContent = await fetch(
|
||||
// 'https://api7.siliconpin.com/items/swarnamath?filter[slug]=' + this.$route.params.slug
|
||||
// ).then(res => res.json())
|
||||
// this.name = this.pageContent.data[0].name
|
||||
// this.slug = this.pageContent.data[0].slug
|
||||
// if (this.pageContent.data[0].img) this.img = this.pageContent.data[0].img
|
||||
// },
|
||||
// head() {
|
||||
// return {
|
||||
// title: this.name,
|
||||
// meta: [
|
||||
// // hid is used as unique identifier. Do not use `vmid` for it as it will not work
|
||||
// {
|
||||
// hid: 'description',
|
||||
// name: 'description',
|
||||
// content: this.name
|
||||
// },
|
||||
// {
|
||||
// hid: 'og:description',
|
||||
// name: 'og:description',
|
||||
// content: this.name
|
||||
// },
|
||||
// {
|
||||
// hid: 'og:title',
|
||||
// name: 'og:title',
|
||||
// content: this.name
|
||||
// },
|
||||
// {
|
||||
// hid: 'og:url',
|
||||
// name: 'og:url',
|
||||
// content: 'https://swarnamath.com/' + this.slug
|
||||
// },
|
||||
// {
|
||||
// hid: 'og:image',
|
||||
// name: 'og:image',
|
||||
// content: 'https://api7.siliconpin.com' + this.img
|
||||
// },
|
||||
// {
|
||||
// hid: 'og:image:secure_url',
|
||||
// name: 'og:image:secure_url',
|
||||
// content: 'https://api7.siliconpin.com' + this.img
|
||||
// },
|
||||
// {
|
||||
// hid: 'og:type',
|
||||
// name: 'og:type',
|
||||
// content: 'News'
|
||||
// }
|
||||
// ]
|
||||
// }
|
||||
// }
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
a{ text-decoration:none}
|
||||
</style>
|
|
@ -0,0 +1,238 @@
|
|||
<template>
|
||||
<v-container mt-4 style="padding-bottom:120px;">
|
||||
<p v-if="$fetchState.pending">Loading....</p>
|
||||
<p v-else-if="$fetchState.error">Error while fetching...</p>
|
||||
<v-row v-else>
|
||||
<v-col v-for="Service in pageContent.data" :key="pageContent.data.id" sm="6" lg="4" xl="3">
|
||||
<nuxt-link :to="`/${Service.slug}`">
|
||||
<v-card class>
|
||||
<v-img :src="`https://api7.siliconpin.com/assets/${Service.img}`" aspect-ratio="1.2"></v-img>
|
||||
|
||||
<v-card-text>
|
||||
<h3>{{ Service.name }}</h3>
|
||||
</v-card-text>
|
||||
<v-rating
|
||||
half-increments
|
||||
dense
|
||||
size="20"
|
||||
v-model="Service.rating"
|
||||
background-color="orange lighten-3"
|
||||
color="orange"
|
||||
></v-rating>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;">
|
||||
{{ Service.description }}
|
||||
<br />
|
||||
<span style="font-weight:bold">মূল্য {{ Service.price }} টাকা ।</span>
|
||||
<!-- <span v-if="Service.p2" style="font-weight:bold">মূল্য {{ Service.p2 }} টাকা ।</span> -->
|
||||
</p>
|
||||
</v-card>
|
||||
</nuxt-link>
|
||||
</v-col>
|
||||
</v-row>
|
||||
|
||||
<!-- <v-row v-else>
|
||||
<v-card class="mx-auto pa-3">
|
||||
<v-card width="500" class="justify-center">
|
||||
<v-img
|
||||
:src="`https://api7.siliconpin.com/assets/${pageContent.data[0].img}`"
|
||||
aspect-ratio="1.2"
|
||||
></v-img>
|
||||
</v-card>
|
||||
|
||||
<v-card-title
|
||||
class="font-weight-bold justify-center"
|
||||
style="font-size:2em; line-height: 1.6;"
|
||||
>{{ pageContent.data[0].name }}</v-card-title>
|
||||
<hr />
|
||||
<div class="text-center font-weight-bold">
|
||||
<span v-if="pageContent.data[0].description"></span>
|
||||
{{ pageContent.data[0].description }}
|
||||
<br />
|
||||
<div class="pa-1" v-if="pageContent.data[0].price">
|
||||
<v-btn
|
||||
color="primary"
|
||||
@click="addToCart(pageContent.data[0].price)"
|
||||
>{{ pageContent.data[0].quantity }}</v-btn>
|
||||
<span>মূল্য - {{ pageContent.data[0].price }} টাকা ।</span>
|
||||
</div>
|
||||
<div class="pa-1" v-if="pageContent.data[0].p2">
|
||||
<v-btn
|
||||
color="primary"
|
||||
@click="addToCart(pageContent.data[0].p2)"
|
||||
>{{ pageContent.data[0].q2 }}</v-btn>
|
||||
<span>মূল্য - {{ pageContent.data[0].p2 }} টাকা ।</span>
|
||||
</div>
|
||||
<div class="pa-1" v-if="pageContent.data[0].p3">
|
||||
<v-btn color="primary"
|
||||
@click="addToCart(pageContent.data[0].p3)"
|
||||
>{{ pageContent.data[0].q3 }}</v-btn>
|
||||
<span>মূল্য - {{ pageContent.data[0].p3 }} টাকা ।</span>
|
||||
</div>
|
||||
<div class="pa-1" v-if="pageContent.data[0].p4">
|
||||
<v-btn color="primary"
|
||||
@click="addToCart(pageContent.data[0].p4)"
|
||||
>{{ pageContent.data[0].q4 }}</v-btn>
|
||||
<span>মূল্য - {{ pageContent.data[0].p4 }} টাকা ।</span>
|
||||
|
||||
</div>
|
||||
<div v-if="addedToCartChip">
|
||||
<v-chip
|
||||
class="ma-2"
|
||||
close
|
||||
color="red"
|
||||
text-color="white"
|
||||
@click:close="addedToCartChip = false"
|
||||
>
|
||||
ব্যাগ এ রাখা হয়েছে
|
||||
</v-chip>
|
||||
<nuxt-link to="/"> <v-btn> আরও </v-btn> </nuxt-link>
|
||||
<a href="/bag"> <v-btn> ব্যাগ </v-btn> </a>
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
<div id="block_container">
|
||||
<div>
|
||||
</div>
|
||||
</div>
|
||||
</v-card>
|
||||
</v-row> -->
|
||||
</v-container>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
pageContent: {},
|
||||
name: "",
|
||||
slug: "",
|
||||
img: "",
|
||||
cartBag:[],
|
||||
addedToCartChip:false,
|
||||
cartTotal:0,
|
||||
// apiLink:process.env.apiLink
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
// loaded() {
|
||||
// return this.$store.state.shoppingCart.status ,this.$store.state.localStorage.status , this.$store.state.sessionStorage.status
|
||||
// }
|
||||
},
|
||||
mounted: function() {
|
||||
/// Retrieves cart from local storage when user first loads
|
||||
|
||||
// this.shoppingCart = JSON.parse(
|
||||
// localStorage.getItem('shoppingCart') || "[]")
|
||||
|
||||
if (localStorage && localStorage.cart) {
|
||||
const cartBag = JSON.parse(localStorage.cart);
|
||||
this.cartBag = cartBag;
|
||||
cartBag.forEach((i) => {
|
||||
// total += i.amount * 1;
|
||||
this.cartTotal++
|
||||
});
|
||||
// this.cartTotal = total;
|
||||
// this.countTotals(cart);
|
||||
// alert("ss")
|
||||
}
|
||||
|
||||
},
|
||||
methods: {
|
||||
addToCart(price) {
|
||||
const cartRaw = localStorage.cart || '[]';
|
||||
const cart = JSON.parse(cartRaw)
|
||||
let product={}
|
||||
product["slug"]=this.slug
|
||||
product["name"]=this.name
|
||||
product["price"]=price
|
||||
product["img"]=this.img
|
||||
// const product=[slug, name, price]
|
||||
// if(process.client){
|
||||
cart.push({
|
||||
// ...this.selectedCard,
|
||||
product:product
|
||||
});
|
||||
localStorage.cart = JSON.stringify(cart);
|
||||
this.addedToCartChip=true
|
||||
// this.$router.push('/bag');
|
||||
// }
|
||||
// let exists = false
|
||||
|
||||
// for (const cartItem of this.shoppingCart) {
|
||||
// if (cartItem.slug === product.slug) {
|
||||
// cartItem.amount = cartItem.amount + 1
|
||||
// exists = true
|
||||
// break
|
||||
// }
|
||||
// }
|
||||
// if (!exists) {
|
||||
|
||||
// this.shoppingCart.push({
|
||||
// ...product,
|
||||
// amount: 1,
|
||||
// })
|
||||
// console.log(product)
|
||||
// }
|
||||
},
|
||||
},
|
||||
|
||||
async fetch() {
|
||||
this.pageContent = await fetch(
|
||||
'https://api7.siliconpin.com/items/swarnamath?filter[cat]=["' + this.$route.params.slug +'"]'
|
||||
).then(res => res.json())
|
||||
// console.log(this.pageContent.data[0])
|
||||
// this.name = this.pageContent.data[0].name
|
||||
// this.slug = this.pageContent.data[0].slug
|
||||
// if (this.pageContent.data[0].img) this.img = this.pageContent.data[0].img
|
||||
},
|
||||
fetchOnServer: false,
|
||||
head() {
|
||||
return {
|
||||
title: this.name,
|
||||
meta: [
|
||||
// hid is used as unique identifier. Do not use `vmid` for it as it will not work
|
||||
{
|
||||
hid: 'description',
|
||||
name: 'description',
|
||||
content: this.name
|
||||
},
|
||||
{
|
||||
hid: 'og:description',
|
||||
name: 'og:description',
|
||||
content: this.name
|
||||
},
|
||||
{
|
||||
hid: 'og:title',
|
||||
name: 'og:title',
|
||||
content: this.name
|
||||
},
|
||||
{
|
||||
hid: 'og:url',
|
||||
name: 'og:url',
|
||||
content: 'https://swarnamath.com/' + this.slug
|
||||
},
|
||||
{
|
||||
hid: 'og:image',
|
||||
name: 'og:image',
|
||||
content: 'https://api7.siliconpin.com' + this.img
|
||||
},
|
||||
{
|
||||
hid: 'og:image:secure_url',
|
||||
name: 'og:image:secure_url',
|
||||
content: 'https://api7.siliconpin.com' + this.img
|
||||
},
|
||||
{
|
||||
hid: 'og:type',
|
||||
name: 'og:type',
|
||||
content: 'News'
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scopped>
|
||||
#block_container {
|
||||
font-size: 18px;
|
||||
}
|
||||
</style>
|
|
@ -0,0 +1,94 @@
|
|||
<template>
|
||||
<div>
|
||||
<v-img src="/images/veg.jpg">
|
||||
|
||||
<template>
|
||||
<v-container>
|
||||
<v-row class="py-5">
|
||||
<v-title class="font-weight-bold white--text" >CONTACT US<br><v-icon class="black--text">mdi-whatsapp</v-icon>- 8597894293</v-title>
|
||||
<v-col md="12">
|
||||
|
||||
<template>
|
||||
<v-card outlined id="position" width="500" class="pa-5 mx-auto mt-5" color="grey lighten-3">
|
||||
<v-form ref="form" v-model="valid" lazy-validation>
|
||||
<v-text-field v-model="name" :counter="10" :rules="nameRules" label="Name"
|
||||
required>
|
||||
</v-text-field>
|
||||
<v-text-field label="P-Number" required>
|
||||
</v-text-field>
|
||||
|
||||
<v-text-field v-model="email" :rules="emailRules" label="E-mail" required>
|
||||
</v-text-field>
|
||||
|
||||
|
||||
<v-textarea color="cyan" label="Input Massege"></v-textarea>
|
||||
|
||||
<v-checkbox v-model="checkbox"
|
||||
:rules="[v => !!v || 'You must agree to continue!']" label="Do you agree?"
|
||||
required></v-checkbox>
|
||||
<!--
|
||||
<v-btn :disabled="!valid" color="success" class="mr-4" @click="validate">
|
||||
Submit
|
||||
</v-btn> -->
|
||||
|
||||
|
||||
</v-form>
|
||||
</v-card>
|
||||
|
||||
|
||||
</template>
|
||||
|
||||
|
||||
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
</v-container>
|
||||
|
||||
</template>
|
||||
</v-img>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
data: () => ({
|
||||
valid: true,
|
||||
name: '',
|
||||
nameRules: [
|
||||
v => !!v || 'Name is required',
|
||||
v => (v && v.length <= 10) || 'Name must be less than 10 characters',
|
||||
],
|
||||
email: '',
|
||||
emailRules: [
|
||||
v => !!v || 'E-mail is required',
|
||||
v => /.+@.+\..+/.test(v) || 'E-mail must be valid',
|
||||
],
|
||||
select: null,
|
||||
items: [
|
||||
'Item 1',
|
||||
'Item 2',
|
||||
'Item 3',
|
||||
'Item 4',
|
||||
],
|
||||
checkbox: false,
|
||||
}),
|
||||
|
||||
methods: {
|
||||
validate() {
|
||||
this.$refs.form.validate()
|
||||
},
|
||||
reset() {
|
||||
this.$refs.form.reset()
|
||||
},
|
||||
resetValidation() {
|
||||
this.$refs.form.resetValidation()
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
|
||||
</style>
|
|
@ -0,0 +1,384 @@
|
|||
<template>
|
||||
<v-container>
|
||||
|
||||
<v-row>
|
||||
<v-col>
|
||||
<v-card>
|
||||
<center>
|
||||
<h2>সবজি</h2>
|
||||
</center>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col v-for="Service in catVegetables" :key="catVegetables.id" sm="6" lg="4" xl="3">
|
||||
<nuxt-link :to="`/${Service.slug}`">
|
||||
<v-card class="mx-auto mb-1">
|
||||
<v-img :src="`https://api7.siliconpin.com/assets/${Service.img}`" aspect-ratio="1.2"></v-img>
|
||||
|
||||
<v-card-text>
|
||||
<h3>{{ Service.name }}</h3>
|
||||
</v-card-text>
|
||||
<v-rating
|
||||
half-increments
|
||||
dense
|
||||
size="20"
|
||||
v-model="Service.rating"
|
||||
background-color="orange lighten-3"
|
||||
color="orange"
|
||||
></v-rating>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;">
|
||||
{{ Service.description }}
|
||||
<br />
|
||||
<span style="font-weight:bold">মূল্য {{ Service.price }} টাকা ।</span>
|
||||
<!-- <span v-if="Service.p2" style="font-weight:bold">মূল্য {{ Service.p2 }} টাকা ।</span> -->
|
||||
</p>
|
||||
</v-card>
|
||||
</nuxt-link>
|
||||
</v-col>
|
||||
</v-row>
|
||||
|
||||
<v-row>
|
||||
<v-col>
|
||||
<v-card>
|
||||
<center>
|
||||
<h2>ফল</h2>
|
||||
</center>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
|
||||
<v-row>
|
||||
<v-col v-for="Service in catFruits" :key="catFruits.id" sm="6" lg="4" xl="3">
|
||||
<nuxt-link :to="`/${Service.slug}`">
|
||||
<v-card class>
|
||||
<v-img :src="`https://api7.siliconpin.com/assets/${Service.img}`" aspect-ratio="1.2"></v-img>
|
||||
|
||||
<v-card-text>
|
||||
<h3>{{ Service.name }}</h3>
|
||||
</v-card-text>
|
||||
<v-rating
|
||||
half-increments
|
||||
dense
|
||||
size="20"
|
||||
v-model="Service.rating"
|
||||
background-color="orange lighten-3"
|
||||
color="orange"
|
||||
></v-rating>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;">
|
||||
{{ Service.description }}
|
||||
<br />
|
||||
<span style="font-weight:bold">মূল্য {{ Service.price }} টাকা ।</span>
|
||||
<!-- <span v-if="Service.p2" style="font-weight:bold">মূল্য {{ Service.p2 }} টাকা ।</span> -->
|
||||
</p>
|
||||
</v-card>
|
||||
</nuxt-link>
|
||||
</v-col>
|
||||
</v-row>
|
||||
|
||||
|
||||
<v-row>
|
||||
<v-col>
|
||||
<v-card>
|
||||
<center>
|
||||
<h2>মুদি </h2>
|
||||
</center>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col v-for="Service in catGrocery" :key="catGrocery.id" sm="6" lg="4" xl="3">
|
||||
<nuxt-link :to="`/${Service.slug}`">
|
||||
<v-card class="mx-auto mb-1">
|
||||
<v-img :src="`https://api7.siliconpin.com/assets/${Service.img}`" aspect-ratio="1.2"></v-img>
|
||||
|
||||
<v-card-text>
|
||||
<h3>{{ Service.name }}</h3>
|
||||
</v-card-text>
|
||||
<v-rating
|
||||
half-increments
|
||||
dense
|
||||
size="20"
|
||||
v-model="Service.rating"
|
||||
background-color="orange lighten-3"
|
||||
color="orange"
|
||||
></v-rating>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;">
|
||||
{{ Service.description }}
|
||||
<br />
|
||||
<span style="font-weight:bold">মূল্য {{ Service.price }} টাকা ।</span>
|
||||
<!-- <span v-if="Service.p2" style="font-weight:bold">মূল্য {{ Service.p2 }} টাকা ।</span> -->
|
||||
</p>
|
||||
</v-card>
|
||||
</nuxt-link>
|
||||
</v-col>
|
||||
</v-row>
|
||||
|
||||
<v-row>
|
||||
<v-col>
|
||||
<v-card>
|
||||
<center>
|
||||
<h2> সার্ভিস </h2>
|
||||
</center>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col v-for="Service in catServices" :key="catServices.id" sm="6" lg="4" xl="3">
|
||||
<nuxt-link :to="`/${Service.slug}`">
|
||||
<v-card class="mx-auto mb-1">
|
||||
<v-img :src="`https://api7.siliconpin.com/assets/${Service.img}`" aspect-ratio="1.2"></v-img>
|
||||
|
||||
<v-card-text>
|
||||
<h3>{{ Service.name }}</h3>
|
||||
</v-card-text>
|
||||
<v-rating
|
||||
half-increments
|
||||
dense
|
||||
size="20"
|
||||
v-model="Service.rating"
|
||||
background-color="orange lighten-3"
|
||||
color="orange"
|
||||
></v-rating>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;">
|
||||
{{ Service.description }}
|
||||
<br />
|
||||
<span style="font-weight:bold">মূল্য {{ Service.price }} টাকা ।</span>
|
||||
<!-- <span v-if="Service.p2" style="font-weight:bold">মূল্য {{ Service.p2 }} টাকা ।</span> -->
|
||||
</p>
|
||||
</v-card>
|
||||
</nuxt-link>
|
||||
</v-col>
|
||||
</v-row>
|
||||
|
||||
<v-row>
|
||||
<v-col>
|
||||
<v-card>
|
||||
<center>
|
||||
<h2> গয়না </h2>
|
||||
</center>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col v-for="Service in catJewlry" :key="catJewlry.id" sm="6" lg="4" xl="3">
|
||||
<nuxt-link :to="`/${Service.slug}`">
|
||||
<v-card class="mx-auto mb-1">
|
||||
<v-img :src="`https://api7.siliconpin.com/assets/${Service.img}`" aspect-ratio="1.2"></v-img>
|
||||
|
||||
<v-card-text>
|
||||
<h3>{{ Service.name }}</h3>
|
||||
</v-card-text>
|
||||
<v-rating
|
||||
half-increments
|
||||
dense
|
||||
size="20"
|
||||
v-model="Service.rating"
|
||||
background-color="orange lighten-3"
|
||||
color="orange"
|
||||
></v-rating>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;">
|
||||
{{ Service.description }}
|
||||
<br />
|
||||
<span style="font-weight:bold">মূল্য {{ Service.price }} টাকা ।</span>
|
||||
<!-- <span v-if="Service.p2" style="font-weight:bold">মূল্য {{ Service.p2 }} টাকা ।</span> -->
|
||||
</p>
|
||||
</v-card>
|
||||
</nuxt-link>
|
||||
</v-col>
|
||||
</v-row>
|
||||
|
||||
<v-row>
|
||||
<v-col>
|
||||
<v-card>
|
||||
<center>
|
||||
<h2> প্রসাধনী </h2>
|
||||
</center>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col v-for="Service in catCosmetics" :key="catCosmetics.id" sm="6" lg="4" xl="3">
|
||||
<nuxt-link :to="`/${Service.slug}`">
|
||||
<v-card class="mx-auto mb-1">
|
||||
<v-img :src="`https://api7.siliconpin.com/assets/${Service.img}`" aspect-ratio="1.2"></v-img>
|
||||
|
||||
<v-card-text>
|
||||
<h3>{{ Service.name }}</h3>
|
||||
</v-card-text>
|
||||
<v-rating
|
||||
half-increments
|
||||
dense
|
||||
size="20"
|
||||
v-model="Service.rating"
|
||||
background-color="orange lighten-3"
|
||||
color="orange"
|
||||
></v-rating>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;">
|
||||
{{ Service.description }}
|
||||
<br />
|
||||
<span style="font-weight:bold">মূল্য {{ Service.price }} টাকা ।</span>
|
||||
<!-- <span v-if="Service.p2" style="font-weight:bold">মূল্য {{ Service.p2 }} টাকা ।</span> -->
|
||||
</p>
|
||||
</v-card>
|
||||
</nuxt-link>
|
||||
</v-col>
|
||||
</v-row>
|
||||
|
||||
<v-row>
|
||||
<v-col>
|
||||
<v-card>
|
||||
<center>
|
||||
<h2> জামা কাপড় </h2>
|
||||
</center>
|
||||
</v-card>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col v-for="Service in catCloths" :key="catCloths.id" sm="6" lg="4" xl="3">
|
||||
<nuxt-link :to="`/${Service.slug}`">
|
||||
<v-card class="mx-auto mb-1">
|
||||
<v-img :src="`https://api7.siliconpin.com/assets/${Service.img}`" aspect-ratio="1.2"></v-img>
|
||||
|
||||
<v-card-text>
|
||||
<h3>{{ Service.name }}</h3>
|
||||
</v-card-text>
|
||||
<v-rating
|
||||
half-increments
|
||||
dense
|
||||
size="20"
|
||||
v-model="Service.rating"
|
||||
background-color="orange lighten-3"
|
||||
color="orange"
|
||||
></v-rating>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;">
|
||||
{{ Service.description }}
|
||||
<br />
|
||||
<span style="font-weight:bold">মূল্য {{ Service.price }} টাকা ।</span>
|
||||
<!-- <span v-if="Service.p2" style="font-weight:bold">মূল্য {{ Service.p2 }} টাকা ।</span> -->
|
||||
</p>
|
||||
</v-card>
|
||||
</nuxt-link>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<!-- <div>
|
||||
<p v-if="$fetchState.pending">Fetching mountains...</p>
|
||||
<p v-else-if="$fetchState.error">An error occurred :(</p>
|
||||
<div v-else>
|
||||
<h1>Nuxt Mountains {{mountains}} </h1>
|
||||
<ul>
|
||||
<li v-for="mountain of mountains">{{ mountain.title }}</li>
|
||||
</ul>
|
||||
<button @click="$fetch">Refresh</button>
|
||||
</div>
|
||||
</div>-->
|
||||
</v-container>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
smProducts: [],
|
||||
catFruits: [],
|
||||
catVegetables: [],
|
||||
catGrocery: [],
|
||||
catServices: [],
|
||||
catJewlry: [],
|
||||
catCosmetics: [],
|
||||
catCloths: [],
|
||||
// product: [],
|
||||
// shoppingCart: []
|
||||
}
|
||||
},
|
||||
// methods: {
|
||||
// addToCart(product) {
|
||||
// // const product = [slug, name, price]
|
||||
// this.shoppingCart.push({
|
||||
// ...product,
|
||||
// amount: 1,
|
||||
// })
|
||||
// }
|
||||
// },
|
||||
// watch: {
|
||||
// shoppingCart: {
|
||||
// handler(newValue) {
|
||||
// /// Updates the item in local storage
|
||||
|
||||
// localStorage.setItem('shoppingCart', JSON.stringify(newValue));
|
||||
|
||||
// }, deep: true
|
||||
// }
|
||||
// },
|
||||
// mounted() {
|
||||
// /// Retrieves cart from local storage when user first loads
|
||||
|
||||
// this.shoppingCart = JSON.parse(
|
||||
// localStorage.getItem('shoppingCart') || "[]")
|
||||
|
||||
// },
|
||||
async fetch() {
|
||||
this.smProducts = await fetch(
|
||||
'https://api7.siliconpin.com/items/swarnamath?offset=0&limit=90'
|
||||
).then(res => res.json())
|
||||
|
||||
this.catFruits = this.smProducts.data.filter(item => { if (item.cat == "fruits") return item });
|
||||
this.catVegetables = this.smProducts.data.filter(item => { if (item.cat == "vegetables") return item });
|
||||
this.catGrocery = this.smProducts.data.filter(item => { if (item.cat == "grocery") return item });
|
||||
this.catServices = this.smProducts.data.filter(item => { if (item.cat == "services") return item });
|
||||
this.catJewlry = this.smProducts.data.filter(item => { if (item.cat == "jewlry") return item });
|
||||
this.catCosmetics = this.smProducts.data.filter(item => { if (item.cat == "cosmetics") return item });
|
||||
this.catCloths = this.smProducts.data.filter(item => { if (item.cat == "cloths") return item });
|
||||
// console.log(this.catFruits)
|
||||
},
|
||||
fetchOnServer: false,
|
||||
head() {
|
||||
return {
|
||||
title: 'Swarna Math - Delivery App',
|
||||
meta: [
|
||||
// hid is used as unique identifier. Do not use `vmid` for it as it will not work
|
||||
{
|
||||
hid: 'description',
|
||||
name: 'description',
|
||||
content: 'Swarna Math - Delivery App'
|
||||
},
|
||||
{
|
||||
hid: 'og:description',
|
||||
name: 'og:description',
|
||||
content: 'Swarna Math - Delivery App'
|
||||
},
|
||||
{
|
||||
hid: 'og:title',
|
||||
name: 'og:title',
|
||||
content: 'Swarna Math - Delivery App'
|
||||
},
|
||||
{
|
||||
hid: 'og:url',
|
||||
name: 'og:url',
|
||||
content: 'https://swarnamath.com/'
|
||||
},
|
||||
{
|
||||
hid: 'og:image',
|
||||
name: 'og:image',
|
||||
content: 'https://api7.siliconpin.com/icon.png'
|
||||
},
|
||||
{
|
||||
hid: 'og:image:secure_url',
|
||||
name: 'og:image:secure_url',
|
||||
content: 'https://api7.siliconpin.com/icon.png'
|
||||
},
|
||||
{
|
||||
hid: 'og:type',
|
||||
name: 'og:type',
|
||||
content: 'Delivery App'
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
a {
|
||||
text-decoration: none;
|
||||
}
|
||||
</style>
|
|
@ -0,0 +1,174 @@
|
|||
<template>
|
||||
<v-container mt-4 style="padding-bottom:120px;">
|
||||
<v-card v-if="orderSuccess">
|
||||
<form @submit.prevent="purchase">
|
||||
<v-text-field v-model="phone" light class="pl-5 pr-5" label="ফোন নম্বর " required />
|
||||
<v-btn type="submit" color="success"> অর্ডার </v-btn>
|
||||
</form>
|
||||
</v-card>
|
||||
|
||||
<v-card v-else>
|
||||
<div> অর্ডার দেওয়া হয়েছে, {{phone}} নম্বর এ যোগাযোগ করে ডেলিভারি করা হবে | </div>
|
||||
</v-card>
|
||||
|
||||
|
||||
</v-container>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
pageContent: {},
|
||||
namecustomer: "",
|
||||
phone: "",
|
||||
address: "",
|
||||
cart:[],
|
||||
totalPrice:0,
|
||||
orderSuccess:true
|
||||
// apiLink:process.env.apiLink
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
// loaded() {
|
||||
// return this.$store.state.shoppingCart.status ,this.$store.state.localStorage.status , this.$store.state.sessionStorage.status
|
||||
// }
|
||||
},
|
||||
mounted() {
|
||||
/// Retrieves cart from local storage when user first loads
|
||||
|
||||
// this.shoppingCart = JSON.parse(
|
||||
// localStorage.getItem('shoppingCart') || "[]")
|
||||
if (localStorage && localStorage.cart) {
|
||||
const cart = JSON.parse(localStorage.cart);
|
||||
this.cart = cart;
|
||||
cart.forEach(element => {
|
||||
// ...use `element`...
|
||||
this.totalPrice +=element.product.price
|
||||
|
||||
});
|
||||
// console.log(this.totalPrice)
|
||||
// this.countTotals(cart);
|
||||
}
|
||||
|
||||
},
|
||||
methods: {
|
||||
calTotal(){
|
||||
|
||||
},
|
||||
purchase() {
|
||||
const rawResponse = fetch('https://api7.siliconpin.com/items/sm_cart', {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'Accept': 'application/json',
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
body: JSON.stringify({"amount": this.totalPrice, "phone": this.phone, "cart": this.cart})
|
||||
})
|
||||
.then(function(res){
|
||||
console.log(res)
|
||||
localStorage.cart=[]
|
||||
|
||||
})
|
||||
.catch(function(res){ console.log(res) }) ;
|
||||
this.orderSuccess=false
|
||||
|
||||
// const content = rawResponse.json();
|
||||
// console.log("kk")
|
||||
// console.log(rawResponse)
|
||||
|
||||
// const cartLocal = localStorage.cart || '[]';
|
||||
// const cart = JSON.parse(cartLocal)
|
||||
// let product={}
|
||||
// product["slug"]=slug
|
||||
// product["name"]=name
|
||||
// product["price"]=price
|
||||
// // const product=[slug, name, price]
|
||||
// if(process.client){
|
||||
// cart.push({
|
||||
// // ...this.selectedCard,
|
||||
// product:product
|
||||
// });
|
||||
// localStorage.cart = JSON.stringify(cart);
|
||||
// this.$router.push('/bag');
|
||||
// }
|
||||
// let exists = false
|
||||
|
||||
// for (const cartItem of this.shoppingCart) {
|
||||
// if (cartItem.slug === product.slug) {
|
||||
// cartItem.amount = cartItem.amount + 1
|
||||
// exists = true
|
||||
// break
|
||||
// }
|
||||
// }
|
||||
// if (!exists) {
|
||||
|
||||
// this.shoppingCart.push({
|
||||
// ...product,
|
||||
// amount: 1,
|
||||
// })
|
||||
// console.log(product)
|
||||
// }
|
||||
},
|
||||
},
|
||||
// async asyncData({ $axios, route }) {
|
||||
// const product = await $axios.$get(`/swarnamaths/?slug=`+route.params.slug)
|
||||
// // $route.fullPath
|
||||
// // console.log(route.params.slug);
|
||||
// // console.log(product)
|
||||
// const url=route.params.slug
|
||||
// return { product}
|
||||
// },
|
||||
// async fetch() {
|
||||
// this.pageContent = await fetch(
|
||||
// 'https://api7.siliconpin.com/items/swarnamath?filter[slug]=' + this.$route.params.slug
|
||||
// ).then(res => res.json())
|
||||
// this.name = this.pageContent.data[0].name
|
||||
// this.slug = this.pageContent.data[0].slug
|
||||
// if (this.pageContent.data[0].img) this.img = this.pageContent.data[0].img
|
||||
// },
|
||||
// head() {
|
||||
// return {
|
||||
// title: this.name,
|
||||
// meta: [
|
||||
// // hid is used as unique identifier. Do not use `vmid` for it as it will not work
|
||||
// {
|
||||
// hid: 'description',
|
||||
// name: 'description',
|
||||
// content: this.name
|
||||
// },
|
||||
// {
|
||||
// hid: 'og:description',
|
||||
// name: 'og:description',
|
||||
// content: this.name
|
||||
// },
|
||||
// {
|
||||
// hid: 'og:title',
|
||||
// name: 'og:title',
|
||||
// content: this.name
|
||||
// },
|
||||
// {
|
||||
// hid: 'og:url',
|
||||
// name: 'og:url',
|
||||
// content: 'https://swarnamath.com/' + this.slug
|
||||
// },
|
||||
// {
|
||||
// hid: 'og:image',
|
||||
// name: 'og:image',
|
||||
// content: 'https://api7.siliconpin.com' + this.img
|
||||
// },
|
||||
// {
|
||||
// hid: 'og:image:secure_url',
|
||||
// name: 'og:image:secure_url',
|
||||
// content: 'https://api7.siliconpin.com' + this.img
|
||||
// },
|
||||
// {
|
||||
// hid: 'og:type',
|
||||
// name: 'og:type',
|
||||
// content: 'News'
|
||||
// }
|
||||
// ]
|
||||
// }
|
||||
// }
|
||||
}
|
||||
</script>
|
|
@ -0,0 +1,7 @@
|
|||
|
||||
<template>
|
||||
<v-card width="800" class="justify-center ">
|
||||
<v-img :src="`https://api7.siliconpin.com/assets/4aeb2707-5566-4673-ad75-bef6feddd248`" aspect-ratio="1.2"></v-img>
|
||||
</v-card>
|
||||
</template>
|
||||
|
|
@ -0,0 +1,466 @@
|
|||
<template>
|
||||
<v-carousel cycle>
|
||||
<v-carousel-item
|
||||
|
||||
|
||||
reverse-transition="fade-transition"
|
||||
transition="fade-transition"
|
||||
>
|
||||
<!-- /////////////////////////////////////////////////////////////////////// -->
|
||||
<div><v-img height="50" :src="`https://api7.siliconpin.com/assets/${catVegetables[0].img}`" gradient="to bottom, rgba(13, 191, 43,.1), rgba(15, 43, 20,.9)">
|
||||
<h1 class="text-center mt-1 white--text">
|
||||
সবজি ।
|
||||
</h1></v-img>
|
||||
<v-row>
|
||||
<v-col cols="12" lg="6" sm="12" md="12">
|
||||
<v-card flat tile class="mx-auto mb-1 pa-2 ">
|
||||
<v-img height="300" :src="`https://api7.siliconpin.com/assets/${catVegetables[0].img}`" aspect-ratio="1.2">
|
||||
</v-img>
|
||||
<v-card-text>
|
||||
<h3> {{catVegetables[0].name}}</h3>
|
||||
</v-card-text>
|
||||
<v-rating half-increments dense size="20" v-model="catVegetables[0].rating" class="px-2 ma-0"
|
||||
background-color="orange lighten-3" color="orange"></v-rating>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;"> {{catVegetables[0].description}} <br>
|
||||
<span style="font-weight:bold"> মূল্য {{catVegetables[0].price}} টাকা ।</span>
|
||||
<span v-if="catVegetables[0].p2" style="font-weight:bold"> মূল্য {{catVegetables[0].p2}} টাকা ।</span>
|
||||
</p>
|
||||
|
||||
</v-card>
|
||||
|
||||
</v-col>
|
||||
<v-col cols="12" lg="6" sm="12" md="12">
|
||||
<v-row>
|
||||
<v-col cols="12" lg="12" sm="12" md="12">
|
||||
<v-row>
|
||||
<v-col lg="12" sm="12" md="12">
|
||||
<v-card flat tile class="my-2 pa-1">
|
||||
<v-row>
|
||||
<v-col cols="12" lg="6" md="12" sm="12">
|
||||
<v-img height="180" :src="`https://api7.siliconpin.com/assets/${catVegetables[1].img}`" aspect-ratio="1.2">
|
||||
</v-img>
|
||||
|
||||
</v-col>
|
||||
<v-col cols="12" lg="6" md="12" sm="12">
|
||||
<h3> {{catVegetables[1].name}}</h3>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;"> {{catVegetables[1].description}} <br>
|
||||
<span style="font-weight:bold"> মূল্য {{catVegetables[1].price}} টাকা ।</span>
|
||||
<span v-if="catVegetables[1].p2" style="font-weight:bold"> মূল্য {{catVegetables[1].p2}} টাকা
|
||||
।</span>
|
||||
</p>
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</v-card>
|
||||
|
||||
</v-col>
|
||||
<v-col lg="12" sm="12" md="12">
|
||||
<v-card flat tile class="my-2 pa-1">
|
||||
<v-row>
|
||||
<v-col cols="12" md="12" lg="6" sm="12">
|
||||
<v-img height="180" :src="`https://api7.siliconpin.com/assets/${catVegetables[2].img}`" aspect-ratio="1.2">
|
||||
</v-img>
|
||||
|
||||
</v-col>
|
||||
<v-col cols="12" lg="6" sm="12">
|
||||
<h3> {{catVegetables[2].name}}</h3>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;"> {{catVegetables[2].description}} <br>
|
||||
<span style="font-weight:bold"> মূল্য {{catVegetables[2].price}} টাকা ।</span>
|
||||
<span v-if="catVegetables[2].p2" style="font-weight:bold"> মূল্য {{catVegetables[2].p2}} টাকা
|
||||
।</span>
|
||||
</p>
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</v-card>
|
||||
|
||||
</v-col>
|
||||
|
||||
|
||||
|
||||
</v-row>
|
||||
|
||||
|
||||
|
||||
|
||||
</v-col>
|
||||
|
||||
|
||||
<v-col lg="12" sm="12" md="12">
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- ///////////////////////////////////////////////////////////////////////// -->
|
||||
</v-carousel-item>
|
||||
<!-- ///////////////////////////////////////////////////////////////////////// -->
|
||||
|
||||
<v-carousel-item
|
||||
|
||||
|
||||
reverse-transition="fade-transition"
|
||||
transition="fade-transition"
|
||||
>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- ///////////////////////////////////////////////////////////////////////// -->
|
||||
<div><v-img height="50" :src="`https://api7.siliconpin.com/assets/${catFruits[0].img}`" gradient="to bottom, rgba(13, 191, 43,.1), rgba(15, 43, 20,.9)">
|
||||
<h1 class="text-center mt-1 white--text">
|
||||
ফল ।
|
||||
</h1></v-img>
|
||||
<v-row>
|
||||
<v-col cols="12" lg="6" sm="12" md="12">
|
||||
<v-card class="mx-auto mb-1 pa-2 ">
|
||||
<v-img height="300" :src="`https://api7.siliconpin.com/assets/${catFruits[0].img}`" aspect-ratio="1.2">
|
||||
</v-img>
|
||||
<v-card-text>
|
||||
<h3> {{catFruits[0].name}}</h3>
|
||||
</v-card-text>
|
||||
<v-rating half-increments dense size="20" v-model="catFruits[0].rating" class="px-2 ma-0"
|
||||
background-color="orange lighten-3" color="orange"></v-rating>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;"> {{catFruits[0].description}} <br>
|
||||
<span style="font-weight:bold"> মূল্য {{catFruits[0].price}} টাকা ।</span>
|
||||
<span v-if="catFruits[0].p2" style="font-weight:bold"> মূল্য {{catFruits[0].p2}} টাকা ।</span>
|
||||
</p>
|
||||
|
||||
</v-card>
|
||||
|
||||
</v-col>
|
||||
<v-col cols="12" lg="6" sm="12" md="12">
|
||||
<v-row>
|
||||
<v-col cols="12" lg="12" sm="12" md="12">
|
||||
<v-row>
|
||||
<v-col lg="12" sm="12" md="12">
|
||||
<v-card class="my-2 pa-1">
|
||||
<v-row>
|
||||
<v-col cols="12" lg="6" md="12" sm="12">
|
||||
<v-img height="180" :src="`https://api7.siliconpin.com/assets/${catFruits[1].img}`" aspect-ratio="1.2">
|
||||
</v-img>
|
||||
|
||||
</v-col>
|
||||
<v-col cols="12" lg="6" md="12" sm="12">
|
||||
<h3> {{catFruits[1].name}}</h3>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;"> {{catFruits[1].description}} <br>
|
||||
<span style="font-weight:bold"> মূল্য {{catFruits[1].price}} টাকা ।</span>
|
||||
<span v-if="catFruits[1].p2" style="font-weight:bold"> মূল্য {{catFruits[1].p2}} টাকা
|
||||
।</span>
|
||||
</p>
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</v-card>
|
||||
|
||||
</v-col>
|
||||
<v-col lg="12" sm="12" md="12">
|
||||
<v-card class="my-2 pa-1">
|
||||
<v-row>
|
||||
<v-col cols="12" md="12" lg="6" sm="12">
|
||||
<v-img height="180" :src="`https://api7.siliconpin.com/assets/${catFruits[2].img}`" aspect-ratio="1.2">
|
||||
</v-img>
|
||||
|
||||
</v-col>
|
||||
<v-col cols="12" lg="6" sm="12">
|
||||
<h3> {{catFruits[2].name}}</h3>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;"> {{catFruits[2].description}} <br>
|
||||
<span style="font-weight:bold"> মূল্য {{catFruits[2].price}} টাকা ।</span>
|
||||
<span v-if="catFruits[2].p2" style="font-weight:bold"> মূল্য {{catFruits[2].p2}} টাকা
|
||||
।</span>
|
||||
</p>
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</v-card>
|
||||
|
||||
</v-col>
|
||||
|
||||
|
||||
|
||||
</v-row>
|
||||
|
||||
|
||||
|
||||
|
||||
</v-col>
|
||||
|
||||
|
||||
<v-col lg="12" sm="12" md="12">
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</div>
|
||||
</v-carousel-item>
|
||||
<!-- //////////////////////////////////////////////////////////// -->
|
||||
<v-carousel-item
|
||||
|
||||
|
||||
reverse-transition="fade-transition"
|
||||
transition="fade-transition"
|
||||
>
|
||||
<div><v-img height="50" :src="`https://api7.siliconpin.com/assets/${catJewlry[0].img}`" gradient="to bottom, rgba(13, 191, 43,.1), rgba(15, 43, 20,.9)">
|
||||
<h1 class="text-center mt-1 white--text">
|
||||
জুয়েলারি ।
|
||||
</h1></v-img>
|
||||
<v-row>
|
||||
<v-col cols="12" lg="6" sm="12" md="12">
|
||||
<v-card class="mx-auto mb-1 pa-2 ">
|
||||
<v-img height="300" :src="`https://api7.siliconpin.com/assets/${catJewlry[0].img}`" aspect-ratio="1.2">
|
||||
</v-img>
|
||||
<v-card-text>
|
||||
<h3> {{catJewlry[0].name}}</h3>
|
||||
</v-card-text>
|
||||
<v-rating half-increments dense size="20" v-model="catJewlry[0].rating" class="px-2 ma-0"
|
||||
background-color="orange lighten-3" color="orange"></v-rating>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;"> {{catJewlry[0].description}} <br>
|
||||
<span style="font-weight:bold"> মূল্য {{catJewlry[0].price}} টাকা ।</span>
|
||||
<span v-if="catJewlry[0].p2" style="font-weight:bold"> মূল্য {{catJewlry[0].p2}} টাকা ।</span>
|
||||
</p>
|
||||
|
||||
</v-card>
|
||||
|
||||
</v-col>
|
||||
<v-col cols="12" lg="6" sm="12" md="12">
|
||||
<v-row>
|
||||
<v-col cols="12" lg="12" sm="12" md="12">
|
||||
<v-row>
|
||||
<v-col lg="12" sm="12" md="12">
|
||||
<v-card class="my-2 pa-1">
|
||||
<v-row>
|
||||
<v-col cols="12" lg="6" md="12" sm="12">
|
||||
<v-img height="150" :src="`https://api7.siliconpin.com/assets/${catJewlry[1].img}`" aspect-ratio="1.2">
|
||||
</v-img>
|
||||
|
||||
</v-col>
|
||||
<v-col cols="12" lg="6" md="12" sm="12">
|
||||
<h3> {{catJewlry[1].name}}</h3>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;"> {{catJewlry[1].description}} <br>
|
||||
<span style="font-weight:bold"> মূল্য {{catJewlry[1].price}} টাকা ।</span>
|
||||
<span v-if="catJewlry[1].p2" style="font-weight:bold"> মূল্য {{catJewlry[1].p2}} টাকা
|
||||
।</span>
|
||||
</p>
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</v-card>
|
||||
|
||||
</v-col>
|
||||
<v-col lg="12" sm="12" md="12">
|
||||
<v-card class="my-2 pa-1">
|
||||
<v-row>
|
||||
<v-col cols="12" md="12" lg="6" sm="12">
|
||||
<v-img height="150" :src="`https://api7.siliconpin.com/assets/${catJewlry[2].img}`" aspect-ratio="1.2">
|
||||
</v-img>
|
||||
|
||||
</v-col>
|
||||
<v-col cols="12" lg="6" sm="12">
|
||||
<h3> {{catJewlry[2].name}}</h3>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;"> {{catJewlry[2].description}} <br>
|
||||
<span style="font-weight:bold"> মূল্য {{catJewlry[2].price}} টাকা ।</span>
|
||||
<span v-if="catJewlry[2].p2" style="font-weight:bold"> মূল্য {{catJewlry[2].p2}} টাকা
|
||||
।</span>
|
||||
</p>
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</v-card>
|
||||
|
||||
</v-col>
|
||||
|
||||
|
||||
|
||||
</v-row>
|
||||
|
||||
|
||||
|
||||
|
||||
</v-col>
|
||||
|
||||
|
||||
<v-col lg="12" sm="12" md="12">
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</div>
|
||||
</v-carousel-item>
|
||||
<!-- //////////////////////////////////////////////// -->
|
||||
<v-carousel-item
|
||||
|
||||
|
||||
reverse-transition="fade-transition"
|
||||
transition="fade-transition"
|
||||
>
|
||||
<div><v-img height="50" :src="`https://api7.siliconpin.com/assets/${catCosmetics[0].img}`" gradient="to bottom, rgba(13, 191, 43,.1), rgba(15, 43, 20,.9)">
|
||||
<h1 class="text-center mt-1 white--text">
|
||||
প্রসাধন ।
|
||||
</h1></v-img>
|
||||
<v-row>
|
||||
<v-col cols="12" lg="6" sm="12" md="12">
|
||||
<v-card class="mx-auto mb-1 pa-2 ">
|
||||
<v-img height="300" :src="`https://api7.siliconpin.com/assets/${catCosmetics[0].img}`" aspect-ratio="1.2">
|
||||
</v-img>
|
||||
<v-card-text>
|
||||
<h3> {{catCosmetics[0].name}}</h3>
|
||||
</v-card-text>
|
||||
<v-rating half-increments dense size="20" v-model="catCosmetics[0].rating" class="px-2 ma-0"
|
||||
background-color="orange lighten-3" color="orange"></v-rating>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;"> {{catCosmetics[0].description}} <br>
|
||||
<span style="font-weight:bold"> মূল্য {{catCosmetics[0].price}} টাকা ।</span>
|
||||
<span v-if="catCosmetics[0].p2" style="font-weight:bold"> মূল্য {{catCosmetics[0].p2}} টাকা ।</span>
|
||||
</p>
|
||||
|
||||
</v-card>
|
||||
|
||||
</v-col>
|
||||
<v-col cols="12" lg="6" sm="12" md="12">
|
||||
<v-row>
|
||||
<v-col cols="12" lg="12" sm="12" md="12">
|
||||
<v-row>
|
||||
<v-col lg="12" sm="12" md="12">
|
||||
<v-card class="my-2 pa-1">
|
||||
<v-row>
|
||||
<v-col cols="12" lg="6" md="12" sm="12">
|
||||
<v-img height="180" :src="`https://api7.siliconpin.com/assets/${catCosmetics[1].img}`" aspect-ratio="1.2">
|
||||
</v-img>
|
||||
|
||||
</v-col>
|
||||
<v-col cols="12" lg="6" md="12" sm="12">
|
||||
<h3> {{catCosmetics[1].name}}</h3>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;"> {{catCosmetics[1].description}} <br>
|
||||
<span style="font-weight:bold"> মূল্য {{catCosmetics[1].price}} টাকা ।</span>
|
||||
<span v-if="catCosmetics[1].p2" style="font-weight:bold"> মূল্য {{catCosmetics[1].p2}} টাকা
|
||||
।</span>
|
||||
</p>
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</v-card>
|
||||
|
||||
</v-col>
|
||||
<v-col lg="12" sm="12" md="12">
|
||||
<v-card class="my-2 pa-1">
|
||||
<v-row>
|
||||
<v-col cols="12" md="12" lg="6" sm="12">
|
||||
<v-img height="180" :src="`https://api7.siliconpin.com/assets/${catCosmetics[2].img}`" aspect-ratio="1.2">
|
||||
</v-img>
|
||||
|
||||
</v-col>
|
||||
<v-col cols="12" lg="6" sm="12">
|
||||
<h3> {{catCosmetics[2].name}}</h3>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;"> {{catCosmetics[2].description}} <br>
|
||||
<span style="font-weight:bold"> মূল্য {{catCosmetics[2].price}} টাকা ।</span>
|
||||
<span v-if="catCosmetics[2].p2" style="font-weight:bold"> মূল্য {{catCosmetics[2].p2}} টাকা
|
||||
।</span>
|
||||
</p>
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</v-card>
|
||||
|
||||
</v-col>
|
||||
|
||||
|
||||
|
||||
</v-row>
|
||||
|
||||
|
||||
|
||||
|
||||
</v-col>
|
||||
|
||||
|
||||
<v-col lg="12" sm="12" md="12">
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</v-carousel-item>
|
||||
<!-- //////////////////////////////////////////////// -->
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</v-carousel>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
smProducts: [],
|
||||
catFruits: [],
|
||||
catVegetables: [],
|
||||
catGrocery: [],
|
||||
catServices: [],
|
||||
catJewlry: [],
|
||||
catCosmetics: [],
|
||||
catCloths: []
|
||||
}
|
||||
},
|
||||
async fetch() {
|
||||
this.smProducts = await fetch(
|
||||
'https://api7.siliconpin.com/items/swarnamath?offset=0&limit=90'
|
||||
).then(res => res.json())
|
||||
|
||||
this.catFruits = this.smProducts.data.filter(item => { if (item.cat == "fruits") return item });
|
||||
this.catVegetables = this.smProducts.data.filter(item => { if (item.cat == "vegetables") return item });
|
||||
this.catGrocery = this.smProducts.data.filter(item => { if (item.cat == "grocery") return item });
|
||||
this.catServices = this.smProducts.data.filter(item => { if (item.cat == "services") return item });
|
||||
this.catJewlry = this.smProducts.data.filter(item => { if (item.cat == "jewlry") return item });
|
||||
this.catCosmetics = this.smProducts.data.filter(item => { if (item.cat == "cosmetics") return item });
|
||||
this.catCloths = this.smProducts.data.filter(item => { if (item.cat == "cloths") return item });
|
||||
// console.log(this.catFruits)
|
||||
}
|
||||
}
|
||||
</script>
|
|
@ -0,0 +1,99 @@
|
|||
<template>
|
||||
<!-- *****************komli shaker chobi nei tai akta consule prolem show hocce -->
|
||||
<v-container>
|
||||
<v-layout row wrap>
|
||||
<v-row>
|
||||
<v-col v-for="Service in catServices" :key="catServices.id" sm="6" md="6" lg="2">
|
||||
<nuxt-link :to="`/${Service.slug}`">
|
||||
<v-card class="mx-auto mb-1">
|
||||
<v-img :src="`https://api7.siliconpin.com/assets/${Service.img}`" aspect-ratio="1.2"></v-img>
|
||||
|
||||
<v-card-text>
|
||||
<h3> {{Service.name}}</h3>
|
||||
</v-card-text>
|
||||
<v-rating half-increments dense size="20" v-model="Service.rating" background-color="orange lighten-3"
|
||||
color="orange"></v-rating>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;"> {{Service.description}} <br>
|
||||
<span style="font-weight:bold"> মূল্য {{Service.price}} টাকা ।</span>
|
||||
<span v-if="Service.p2" style="font-weight:bold"> মূল্য {{Service.p2}} টাকা ।</span>
|
||||
</p>
|
||||
|
||||
</v-card>
|
||||
</nuxt-link>
|
||||
</v-col>
|
||||
|
||||
<v-col v-for="Service in catServices" :key="catServices.id" sm="6" md="6" lg="2">
|
||||
<nuxt-link :to="`/${Service.slug}`">
|
||||
<v-card class="mx-auto mb-1">
|
||||
<v-img :src="`https://api7.siliconpin.com/assets/${Service.img}`" aspect-ratio="1.2"></v-img>
|
||||
|
||||
<v-card-text>
|
||||
<h3> {{Service.name}}</h3>
|
||||
</v-card-text>
|
||||
<v-rating half-increments dense size="20" v-model="Service.rating" background-color="orange lighten-3"
|
||||
color="orange"></v-rating>
|
||||
<p style="font-size:16px;padding:0 5px 10px 5px;"> {{Service.description}} <br>
|
||||
<span style="font-weight:bold"> মূল্য {{Service.price}} টাকা ।</span>
|
||||
<span v-if="Service.p2" style="font-weight:bold"> মূল্য {{Service.p2}} টাকা ।</span>
|
||||
</p>
|
||||
|
||||
</v-card>
|
||||
</nuxt-link>
|
||||
</v-col>
|
||||
|
||||
</v-row>
|
||||
</v-layout>
|
||||
<!-- <div>
|
||||
<p v-if="$fetchState.pending">Fetching mountains...</p>
|
||||
<p v-else-if="$fetchState.error">An error occurred :(</p>
|
||||
<div v-else>
|
||||
<h1>Nuxt Mountains {{mountains}} </h1>
|
||||
<ul>
|
||||
<li v-for="mountain of mountains">{{ mountain.title }}</li>
|
||||
</ul>
|
||||
<button @click="$fetch">Refresh</button>
|
||||
</div>
|
||||
</div> -->
|
||||
</v-container>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
smProducts: [],
|
||||
catFruits: [],
|
||||
catVegetables: [],
|
||||
catGrocery: [],
|
||||
catServices: [],
|
||||
catJewlry: [],
|
||||
catCosmetics: [],
|
||||
catCloths: []
|
||||
}
|
||||
},
|
||||
async fetch() {
|
||||
this.smProducts = await fetch(
|
||||
'https://api7.siliconpin.com/items/swarnamath?offset=0&limit=90'
|
||||
).then(res => res.json())
|
||||
|
||||
this.catFruits = this.smProducts.data.filter(item => { if (item.cat == "fruits") return item });
|
||||
this.catVegetables = this.smProducts.data.filter(item => { if (item.cat == "vegetables") return item });
|
||||
this.catGrocery = this.smProducts.data.filter(item => { if (item.cat == "grocery") return item });
|
||||
this.catServices = this.smProducts.data.filter(item => { if (item.cat == "services") return item });
|
||||
this.catJewlry = this.smProducts.data.filter(item => { if (item.cat == "jewlry") return item });
|
||||
this.catCosmetics = this.smProducts.data.filter(item => { if (item.cat == "cosmetics") return item });
|
||||
this.catCloths = this.smProducts.data.filter(item => { if (item.cat == "cloths") return item });
|
||||
// console.log(this.catFruits)
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#flas {
|
||||
height: 100px;
|
||||
width: 100%;
|
||||
}
|
||||
</style>
|
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
Binary file not shown.
After Width: | Height: | Size: 61 KiB |
Binary file not shown.
After Width: | Height: | Size: 262 KiB |
Binary file not shown.
After Width: | Height: | Size: 228 KiB |
Binary file not shown.
After Width: | Height: | Size: 259 KiB |
Binary file not shown.
After Width: | Height: | Size: 50 KiB |
|
@ -0,0 +1,45 @@
|
|||
{
|
||||
"short_name": "Swarna Math",
|
||||
"name": "Delivery App Swarna Math",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/icon.png",
|
||||
"type": "image/png",
|
||||
"sizes": "512x512"
|
||||
}
|
||||
],
|
||||
"start_url": "/",
|
||||
"background_color": "#3367D6",
|
||||
"display": "standalone",
|
||||
"scope": "/",
|
||||
"theme_color": "#3367D6",
|
||||
"shortcuts": [
|
||||
{
|
||||
"name": "Swarna Math -Vegetables",
|
||||
"short_name": "Vegetables",
|
||||
"description": "Get Vegetables delivered to your home.",
|
||||
"url": "/category/vegetables",
|
||||
"icons": [{ "src": "/icon.png", "sizes": "192x192" }]
|
||||
},
|
||||
{
|
||||
"name": "Swarna Math - fruits",
|
||||
"short_name": "fruits",
|
||||
"description": "Get Fruits delivered to your home.",
|
||||
"url": "/category/fruits",
|
||||
"icons": [{ "src": "/icon.png", "sizes": "192x192" }]
|
||||
}
|
||||
],
|
||||
"description": "Delivery App Swarna Math",
|
||||
"screenshots": [
|
||||
{
|
||||
"src": "/images/screenshot1.png",
|
||||
"type": "image/png",
|
||||
"sizes": "540x720"
|
||||
},
|
||||
{
|
||||
"src": "/images/screenshot2.jpg",
|
||||
"type": "image/jpg",
|
||||
"sizes": "540x720"
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,10 @@
|
|||
# STORE
|
||||
|
||||
**This directory is not required, you can delete it if you don't want to use it.**
|
||||
|
||||
This directory contains your Vuex Store files.
|
||||
Vuex Store option is implemented in the Nuxt.js framework.
|
||||
|
||||
Creating a file in this directory automatically activates the option in the framework.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/vuex-store).
|
Loading…
Reference in New Issue