@crm-market/template-shared 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. package/assets/css/custom.css +70 -0
  2. package/assets/css/remixicon.css +2782 -0
  3. package/assets/css/satoshi-font.css +31 -0
  4. package/assets/fonts/flaticon.css +463 -0
  5. package/assets/fonts/flaticon.eot +0 -0
  6. package/assets/fonts/flaticon.html +2153 -0
  7. package/assets/fonts/flaticon.svg +441 -0
  8. package/assets/fonts/flaticon.ttf +0 -0
  9. package/assets/fonts/flaticon.woff +0 -0
  10. package/assets/fonts/flaticon.woff2 +0 -0
  11. package/assets/fonts/remixicon.eot +0 -0
  12. package/assets/fonts/remixicon.svg +8230 -0
  13. package/assets/fonts/remixicon.ttf +0 -0
  14. package/assets/fonts/remixicon.woff +0 -0
  15. package/assets/fonts/remixicon.woff2 +0 -0
  16. package/assets/scss/_variables.scss +31 -0
  17. package/assets/scss/components/_about.scss +58 -0
  18. package/assets/scss/components/_authentication.scss +124 -0
  19. package/assets/scss/components/_backtoptop.scss +27 -0
  20. package/assets/scss/components/_banner.scss +396 -0
  21. package/assets/scss/components/_best-deals.scss +74 -0
  22. package/assets/scss/components/_blank.scss +40 -0
  23. package/assets/scss/components/_blog.scss +193 -0
  24. package/assets/scss/components/_cart.scss +108 -0
  25. package/assets/scss/components/_categories.scss +82 -0
  26. package/assets/scss/components/_checkout.scss +110 -0
  27. package/assets/scss/components/_dashboard.scss +388 -0
  28. package/assets/scss/components/_faq.scss +22 -0
  29. package/assets/scss/components/_filter-rang.scss +109 -0
  30. package/assets/scss/components/_footer.scss +270 -0
  31. package/assets/scss/components/_global.scss +550 -0
  32. package/assets/scss/components/_header.scss +587 -0
  33. package/assets/scss/components/_hurry.scss +52 -0
  34. package/assets/scss/components/_navbar.scss +1008 -0
  35. package/assets/scss/components/_offers.scss +689 -0
  36. package/assets/scss/components/_pagination.scss +71 -0
  37. package/assets/scss/components/_popup.scss +172 -0
  38. package/assets/scss/components/_preloader.scss +108 -0
  39. package/assets/scss/components/_products.scss +1147 -0
  40. package/assets/scss/components/_rtl.scss +806 -0
  41. package/assets/scss/components/_services.scss +16 -0
  42. package/assets/scss/components/_sidebar.scss +259 -0
  43. package/assets/scss/style.css +6676 -0
  44. package/assets/scss/style.css.map +1 -0
  45. package/assets/scss/style.scss +40 -0
  46. package/assets/webfonts/Satoshi-Bold.eot +0 -0
  47. package/assets/webfonts/Satoshi-Bold.woff +0 -0
  48. package/assets/webfonts/Satoshi-Bold.woff2 +0 -0
  49. package/assets/webfonts/Satoshi-Medium.eot +0 -0
  50. package/assets/webfonts/Satoshi-Medium.woff +0 -0
  51. package/assets/webfonts/Satoshi-Medium.woff2 +0 -0
  52. package/assets/webfonts/Satoshi-Regular.eot +0 -0
  53. package/assets/webfonts/Satoshi-Regular.woff +0 -0
  54. package/assets/webfonts/Satoshi-Regular.woff2 +0 -0
  55. package/components/AboutUs/AboutUsTuan.vue +25 -0
  56. package/components/AboutUs/Statistics.vue +42 -0
  57. package/components/AboutUs/SubscribeToTheNewsletter.vue +57 -0
  58. package/components/AddAddress/index.vue +70 -0
  59. package/components/BestSellers/Products.vue +1562 -0
  60. package/components/BestSellers/RecentlyViewed.vue +304 -0
  61. package/components/Cart/ProductQuantity.vue +29 -0
  62. package/components/Cart/index.vue +167 -0
  63. package/components/Categories/index.vue +305 -0
  64. package/components/ChangePassword/index.vue +71 -0
  65. package/components/Checkout/index.vue +192 -0
  66. package/components/Common/DashboardNavigation.vue +37 -0
  67. package/components/Common/PageBanner.vue +28 -0
  68. package/components/Common/ProductCard.vue +152 -0
  69. package/components/Common/Services.vue +58 -0
  70. package/components/Contact/ContactForm.vue +91 -0
  71. package/components/Contact/ContactInfo.vue +74 -0
  72. package/components/Dashboard/RecentOrder.vue +173 -0
  73. package/components/Dashboard/index.vue +79 -0
  74. package/components/EditAddress/index.vue +119 -0
  75. package/components/EditProfile/index.vue +97 -0
  76. package/components/FAQ/index.vue +121 -0
  77. package/components/FeaturedProduct/FeaturedProducts.vue +304 -0
  78. package/components/FeaturedProduct/Products.vue +1562 -0
  79. package/components/ForgotPassword/index.vue +51 -0
  80. package/components/Layout/BackToUp.vue +38 -0
  81. package/components/Layout/Copyright.vue +25 -0
  82. package/components/Layout/Footer.vue +183 -0
  83. package/components/Layout/FooterTwo.vue +165 -0
  84. package/components/Layout/LocationOption.vue +178 -0
  85. package/components/Layout/MiddleHeader.vue +229 -0
  86. package/components/Layout/MiddleHeaderThree.vue +204 -0
  87. package/components/Layout/MiddleHeaderTwo.vue +240 -0
  88. package/components/Layout/Navbar.vue +185 -0
  89. package/components/Layout/NavbarStyleFour.vue +334 -0
  90. package/components/Layout/NavbarStyleThree.vue +188 -0
  91. package/components/Layout/NavbarStyleTwo.vue +108 -0
  92. package/components/Layout/Preloader.vue +18 -0
  93. package/components/Layout/RTLSwitchBtn.vue +40 -0
  94. package/components/Layout/ResponsiveNavbar.vue +431 -0
  95. package/components/Layout/TopHeader.vue +130 -0
  96. package/components/Login/index.vue +94 -0
  97. package/components/MyAccount/index.vue +154 -0
  98. package/components/NewArrivals/Products.vue +1969 -0
  99. package/components/NewArrivals/RecentlyViewed.vue +304 -0
  100. package/components/OrderDetails/index.vue +77 -0
  101. package/components/OrderHistory/index.vue +197 -0
  102. package/components/PrivacyPolicy/index.vue +112 -0
  103. package/components/ProductDetails/ProductDetailsTab.vue +343 -0
  104. package/components/ProductDetails/ProductQuantity.vue +29 -0
  105. package/components/ProductDetails/RecentlyViewed.vue +304 -0
  106. package/components/ProductDetails/index.vue +268 -0
  107. package/components/Products/RecentlyViewed.vue +304 -0
  108. package/components/Products/index.vue +292 -0
  109. package/components/Register/index.vue +88 -0
  110. package/components/TermsConditions/index.vue +112 -0
  111. package/components/TrendingProducts/FeaturedProducts.vue +304 -0
  112. package/components/TrendingProducts/Products.vue +1564 -0
  113. package/components/Wishlist/ProductQuantity.vue +29 -0
  114. package/components/Wishlist/index.vue +128 -0
  115. package/composables/useCart.ts +149 -0
  116. package/composables/useCategories.ts +87 -0
  117. package/composables/useCheckout.ts +131 -0
  118. package/composables/useProducts.ts +162 -0
  119. package/composables/useSiteConfig.ts +236 -0
  120. package/composables/useTemplateSections.ts +74 -0
  121. package/e2e/cart.spec.ts +71 -0
  122. package/e2e/fixtures/mock-api.ts +166 -0
  123. package/e2e/homepage.spec.ts +65 -0
  124. package/e2e/layout.spec.ts +73 -0
  125. package/e2e/navigation.spec.ts +61 -0
  126. package/e2e/pages/cart.page.ts +44 -0
  127. package/e2e/pages/homepage.page.ts +46 -0
  128. package/e2e/playwright.config.ts +32 -0
  129. package/e2e/products.spec.ts +33 -0
  130. package/layouts/default.vue +94 -0
  131. package/layouts/inner.vue +70 -0
  132. package/nuxt.config.ts +86 -0
  133. package/package.json +38 -0
  134. package/pages/about-us.vue +12 -0
  135. package/pages/address.vue +10 -0
  136. package/pages/cart.vue +10 -0
  137. package/pages/categories.vue +10 -0
  138. package/pages/change-password.vue +10 -0
  139. package/pages/checkout.vue +10 -0
  140. package/pages/contact.vue +11 -0
  141. package/pages/dashboard.vue +10 -0
  142. package/pages/edit-address.vue +10 -0
  143. package/pages/edit-profile.vue +10 -0
  144. package/pages/faq.vue +10 -0
  145. package/pages/forgot-password.vue +10 -0
  146. package/pages/login.vue +10 -0
  147. package/pages/my-account.vue +10 -0
  148. package/pages/order-details.vue +10 -0
  149. package/pages/order-history.vue +10 -0
  150. package/pages/privacy-policy.vue +10 -0
  151. package/pages/product-details.vue +10 -0
  152. package/pages/products.vue +10 -0
  153. package/pages/register.vue +10 -0
  154. package/pages/terms-conditions.vue +10 -0
  155. package/pages/wishlist.vue +10 -0
  156. package/plugins/site-init.client.ts +24 -0
  157. package/plugins/vuetify.ts +18 -0
  158. package/types/index.ts +121 -0
  159. package/utils/image.ts +13 -0
  160. package/utils/store.ts +21 -0
@@ -0,0 +1,152 @@
1
+ <template>
2
+ <div class="product-card">
3
+ <div class="product-img position-relative">
4
+ <NuxtLink :to="`/product-details?id=${product.id}`">
5
+ <img
6
+ :src="productImage"
7
+ :alt="product.name"
8
+ class="w-100 object-fit-cover"
9
+ style="height: 200px;"
10
+ />
11
+ </NuxtLink>
12
+ <div class="product-badges" v-if="hasDiscount">
13
+ <span class="badge bg-danger">
14
+ -{{ discountPercent }}%
15
+ </span>
16
+ </div>
17
+ <div class="product-actions">
18
+ <button
19
+ class="btn btn-sm"
20
+ :class="inCart ? 'btn-success' : 'btn-outline-primary'"
21
+ @click="handleAddToCart"
22
+ :title="inCart ? 'In cart' : 'Add to cart'"
23
+ >
24
+ <i :class="inCart ? 'ri-check-line' : 'ri-shopping-cart-line'"></i>
25
+ </button>
26
+ </div>
27
+ </div>
28
+ <div class="product-info p-2">
29
+ <NuxtLink :to="`/product-details?id=${product.id}`" class="text-decoration-none">
30
+ <h6 class="product-name mb-1 text-truncate">{{ product.name }}</h6>
31
+ </NuxtLink>
32
+ <div class="product-rating mb-1" v-if="product.rating">
33
+ <i
34
+ v-for="star in 5"
35
+ :key="star"
36
+ :class="star <= Math.round(product.rating) ? 'ri-star-fill text-warning' : 'ri-star-line text-muted'"
37
+ class="fs-12"
38
+ ></i>
39
+ <span class="text-muted fs-12 ms-1">({{ product.reviews || 0 }})</span>
40
+ </div>
41
+ <div class="product-price">
42
+ <span v-if="hasDiscount" class="text-decoration-line-through text-muted me-1 fs-13">
43
+ ${{ product.price.toFixed(2) }}
44
+ </span>
45
+ <span class="fw-bold" :class="hasDiscount ? 'text-danger' : ''">
46
+ ${{ effectivePrice.toFixed(2) }}
47
+ </span>
48
+ </div>
49
+ </div>
50
+ </div>
51
+ </template>
52
+
53
+ <script lang="ts">
54
+ import { defineComponent, computed } from "vue";
55
+ import { resolveImageUrl } from "~/utils/image";
56
+
57
+ export default defineComponent({
58
+ name: "ProductCard",
59
+ props: {
60
+ product: {
61
+ type: Object,
62
+ required: true,
63
+ },
64
+ },
65
+ setup(props) {
66
+ const { addToCart, isInCart } = useCart();
67
+
68
+ const productImage = computed(() => {
69
+ const images = props.product.images;
70
+ if (images && images.length > 0) {
71
+ return resolveImageUrl(images[0]);
72
+ }
73
+ return '';
74
+ });
75
+
76
+ const hasDiscount = computed(() =>
77
+ props.product.discountPrice && props.product.discountPrice < props.product.price
78
+ );
79
+
80
+ const effectivePrice = computed(() =>
81
+ hasDiscount.value ? props.product.discountPrice : props.product.price
82
+ );
83
+
84
+ const discountPercent = computed(() => {
85
+ if (!hasDiscount.value) return 0;
86
+ return Math.round(((props.product.price - props.product.discountPrice) / props.product.price) * 100);
87
+ });
88
+
89
+ const inCart = computed(() => isInCart(props.product.id));
90
+
91
+ const handleAddToCart = () => {
92
+ if (!inCart.value) {
93
+ addToCart({
94
+ productId: props.product.id,
95
+ name: props.product.name,
96
+ price: props.product.price,
97
+ discountPrice: props.product.discountPrice,
98
+ image: props.product.images?.[0] || '',
99
+ });
100
+ }
101
+ };
102
+
103
+ return {
104
+ productImage,
105
+ hasDiscount,
106
+ effectivePrice,
107
+ discountPercent,
108
+ inCart,
109
+ handleAddToCart,
110
+ };
111
+ },
112
+ });
113
+ </script>
114
+
115
+ <style scoped>
116
+ .product-card {
117
+ border: 1px solid #eee;
118
+ border-radius: 8px;
119
+ overflow: hidden;
120
+ transition: box-shadow 0.3s;
121
+ background: #fff;
122
+ }
123
+ .product-card:hover {
124
+ box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
125
+ }
126
+ .product-img {
127
+ overflow: hidden;
128
+ background: #f8f9fa;
129
+ }
130
+ .product-badges {
131
+ position: absolute;
132
+ top: 8px;
133
+ left: 8px;
134
+ }
135
+ .product-actions {
136
+ position: absolute;
137
+ top: 8px;
138
+ right: 8px;
139
+ opacity: 0;
140
+ transition: opacity 0.3s;
141
+ }
142
+ .product-card:hover .product-actions {
143
+ opacity: 1;
144
+ }
145
+ .product-name {
146
+ font-size: 14px;
147
+ color: #333;
148
+ }
149
+ .product-name:hover {
150
+ color: var(--primary-color, #0d6efd);
151
+ }
152
+ </style>
@@ -0,0 +1,58 @@
1
+ <template>
2
+ <div class="services-area pt-60 pb-35">
3
+ <div class="container">
4
+ <v-row class="justify-content-center">
5
+ <v-col cols="12" lg="3" sm="6">
6
+ <div class="d-flex align-items-center single-servives-item">
7
+ <div class="flex-shrink-0">
8
+ <img src="~/assets/images/shipped.png" alt="shipped" />
9
+ </div>
10
+ <div class="flex-grow-1 ms-3">
11
+ <h3>Fast Delivery</h3>
12
+ <span>Experience Lightning-Fast Delivery</span>
13
+ </div>
14
+ </div>
15
+ </v-col>
16
+ <v-col cols="12" lg="3" sm="6">
17
+ <div class="d-flex align-items-center single-servives-item">
18
+ <div class="flex-shrink-0">
19
+ <img src="~/assets/images/credit.png" alt="shipped" />
20
+ </div>
21
+ <div class="flex-grow-1 ms-3">
22
+ <h3>Secured Payment</h3>
23
+ <span>Shop with Confidence</span>
24
+ </div>
25
+ </div>
26
+ </v-col>
27
+ <v-col cols="12" lg="3" sm="6">
28
+ <div class="d-flex align-items-center single-servives-item">
29
+ <div class="flex-shrink-0">
30
+ <img src="~/assets/images/wallet.png" alt="shipped" />
31
+ </div>
32
+ <div class="flex-grow-1 ms-3">
33
+ <h3>Money Back</h3>
34
+ <span>100% Money-Back Guarantee</span>
35
+ </div>
36
+ </div>
37
+ </v-col>
38
+ <v-col cols="12" lg="3" sm="6">
39
+ <div class="d-flex align-items-center single-servives-item">
40
+ <div class="flex-shrink-0">
41
+ <img src="~/assets/images/headphones.png" alt="shipped" />
42
+ </div>
43
+ <div class="flex-grow-1 ms-3">
44
+ <h3>24/7 Support</h3>
45
+ <span>Always Here for You</span>
46
+ </div>
47
+ </div>
48
+ </v-col>
49
+ </v-row>
50
+ </div>
51
+ </div>
52
+ </template>
53
+
54
+ <script>
55
+ export default {
56
+ name: "Services",
57
+ };
58
+ </script>
@@ -0,0 +1,91 @@
1
+ <template>
2
+ <div class="contact-area pb-60">
3
+ <div class="container">
4
+ <div class="authentication-content p-50 mw-100">
5
+ <div class="row">
6
+ <div class="col-lg-5 mb-4 mb-lg-0">
7
+ <div class="login h-100 text-center">
8
+ <img
9
+ src="~/assets/images/contact-us.png"
10
+ class="h-100 object-fit-cover"
11
+ alt="contact-us"
12
+ />
13
+ </div>
14
+ </div>
15
+ <div class="col-lg-7">
16
+ <div class="authentication-form form-wrap">
17
+ <h3 class="title mb-2">Get In Touch</h3>
18
+ <p>
19
+ Your Gateway to Excellence: Contact Us and Unlock a World of
20
+ Possibilities
21
+ </p>
22
+
23
+ <form>
24
+ <div class="row">
25
+ <div class="col-lg-6">
26
+ <div class="form-group mb-4">
27
+ <label class="label">Your Name *</label>
28
+ <input
29
+ type="text"
30
+ class="form-control"
31
+ placeholder="Enter your name"
32
+ />
33
+ </div>
34
+ </div>
35
+ <div class="col-lg-6">
36
+ <div class="form-group mb-4">
37
+ <label class="label">Your Email *</label>
38
+ <input
39
+ type="email"
40
+ class="form-control"
41
+ placeholder="Enter your email"
42
+ />
43
+ </div>
44
+ </div>
45
+ <div class="col-lg-12">
46
+ <div class="form-group mb-4">
47
+ <label class="label">Your Subject *</label>
48
+ <input
49
+ type="text"
50
+ class="form-control"
51
+ placeholder="Your subject"
52
+ />
53
+ </div>
54
+ </div>
55
+ <div class="col-lg-12">
56
+ <div class="form-group mb-4">
57
+ <label class="label">Your Message *</label>
58
+ <textarea
59
+ class="form-control"
60
+ placeholder="Write message"
61
+ cols="30"
62
+ rows="5"
63
+ ></textarea>
64
+ </div>
65
+ </div>
66
+
67
+ <div class="col-lg-12">
68
+ <div class="form-group mb-0">
69
+ <button
70
+ type="submit"
71
+ class="btn btn-warning btn-pill text-white"
72
+ >
73
+ Submit Now
74
+ </button>
75
+ </div>
76
+ </div>
77
+ </div>
78
+ </form>
79
+ </div>
80
+ </div>
81
+ </div>
82
+ </div>
83
+ </div>
84
+ </div>
85
+ </template>
86
+
87
+ <script>
88
+ export default {
89
+ name: "ContactForm",
90
+ };
91
+ </script>
@@ -0,0 +1,74 @@
1
+ <template>
2
+ <div class="contact-info-area pt-60 pb-35">
3
+ <div class="container">
4
+ <div class="row justify-content-center">
5
+ <div class="col-lg-4 col-md-6">
6
+ <div class="single-contact-info-item">
7
+ <div class="d-sm-flex">
8
+ <div class="flex-shrink-0">
9
+ <i class="flaticon-placeholder"></i>
10
+ </div>
11
+ <div class="flex-grow-1 ms-sm-3 mt-3 mt-sm-0">
12
+ <h3>United Kingdom</h3>
13
+ <p>6391 Elgin St. Celina, Delaware 10299</p>
14
+ <a href="#" class="tell">(208) 555-0112</a>
15
+ <a
16
+ href="mailto:support@tuaninfo.com"
17
+ class="text-decoration-underline text-primary"
18
+ >
19
+ support@tuaninfo.com
20
+ </a>
21
+ </div>
22
+ </div>
23
+ </div>
24
+ </div>
25
+ <div class="col-lg-4 col-md-6">
26
+ <div class="single-contact-info-item">
27
+ <div class="d-sm-flex">
28
+ <div class="flex-shrink-0">
29
+ <i class="flaticon-placeholder"></i>
30
+ </div>
31
+ <div class="flex-grow-1 ms-sm-3 mt-3 mt-sm-0">
32
+ <h3>Toronto Canada</h3>
33
+ <p>1901 Thornridge Cir. Shiloh, Hawaii</p>
34
+ <a href="tel:(252)555-0126" class="tell">(252) 555-0126</a>
35
+ <a
36
+ href="mailto:support@tuaninfo.com"
37
+ class="text-decoration-underline text-primary"
38
+ >
39
+ support@tuaninfo.com
40
+ </a>
41
+ </div>
42
+ </div>
43
+ </div>
44
+ </div>
45
+ <div class="col-lg-4 col-md-6">
46
+ <div class="single-contact-info-item">
47
+ <div class="d-sm-flex">
48
+ <div class="flex-shrink-0">
49
+ <i class="flaticon-placeholder"></i>
50
+ </div>
51
+ <div class="flex-grow-1 ms-sm-3 mt-3 mt-sm-0">
52
+ <h3>Saint Barthélemy</h3>
53
+ <p>4517 Washington Ave. Manchester</p>
54
+ <a href="tel:(505)555-0125" class="tell">(505)555-0125</a>
55
+ <a
56
+ href="mailto:support@tuaninfo.com"
57
+ class="text-decoration-underline text-primary"
58
+ >
59
+ support@tuaninfo.com
60
+ </a>
61
+ </div>
62
+ </div>
63
+ </div>
64
+ </div>
65
+ </div>
66
+ </div>
67
+ </div>
68
+ </template>
69
+
70
+ <script>
71
+ export default {
72
+ name: "ContactInfo",
73
+ };
74
+ </script>
@@ -0,0 +1,173 @@
1
+ <template>
2
+ <div class="cart-area recent-order">
3
+ <h3 class="mb-3">Recent Order</h3>
4
+ <form class="cart-controller mb-0">
5
+ <div class="cart-table table-responsive">
6
+ <table class="table table-bordered align-middle">
7
+ <thead>
8
+ <tr>
9
+ <th scope="col">Trash</th>
10
+ <th scope="col">Product</th>
11
+ <th scope="col"></th>
12
+ <th scope="col">Order</th>
13
+ <th scope="col">Quantity</th>
14
+ <th scope="col">Status</th>
15
+ <th scope="col">Total</th>
16
+ </tr>
17
+ </thead>
18
+
19
+ <tbody>
20
+ <tr>
21
+ <td class="trash">
22
+ <a href="#" class="remove">
23
+ <i class="ri-delete-bin-line"></i>
24
+ </a>
25
+ </td>
26
+ <td class="product-thumbnail">
27
+ <NuxtLink to="/product-details">
28
+ <img src="~/assets/images/product-6.png" alt="Image" />
29
+ </NuxtLink>
30
+ </td>
31
+
32
+ <td class="product-name">
33
+ <NuxtLink to="/product-details" class="title">
34
+ Multiplatform Wireless Noise-Cancelling Gaming Headset
35
+ </NuxtLink>
36
+ </td>
37
+
38
+ <td class="product-price">
39
+ <span class="unit-amount">#001</span>
40
+ </td>
41
+
42
+ <td class="product-price">
43
+ <span class="unit-amount">01</span>
44
+ </td>
45
+
46
+ <td class="product-subtotal">
47
+ <span class="subtotal-amount">Paid</span>
48
+ </td>
49
+
50
+ <td class="product-subtotal">
51
+ <span class="subtotal-amount">$279.00</span>
52
+ </td>
53
+ </tr>
54
+
55
+ <tr>
56
+ <td class="trash">
57
+ <a href="#" class="remove">
58
+ <i class="ri-delete-bin-line"></i>
59
+ </a>
60
+ </td>
61
+
62
+ <td class="product-thumbnail">
63
+ <NuxtLink to="/product-details">
64
+ <img src="~/assets/images/product-7.png" alt="Image" />
65
+ </NuxtLink>
66
+ </td>
67
+
68
+ <td class="product-name">
69
+ <NuxtLink to="/product-details" class="title">
70
+ GPS Smartwatch with Bright Touchscreen Display
71
+ </NuxtLink>
72
+ </td>
73
+
74
+ <td class="product-price">
75
+ <span class="unit-amount">#005</span>
76
+ </td>
77
+
78
+ <td class="product-price">
79
+ <span class="unit-amount">02</span>
80
+ </td>
81
+
82
+ <td class="product-subtotal">
83
+ <span class="subtotal-amount">Pending</span>
84
+ </td>
85
+
86
+ <td class="product-subtotal">
87
+ <span class="subtotal-amount">$119.00</span>
88
+ </td>
89
+ </tr>
90
+
91
+ <tr>
92
+ <td class="trash">
93
+ <a href="#" class="remove">
94
+ <i class="ri-delete-bin-line"></i>
95
+ </a>
96
+ </td>
97
+
98
+ <td class="product-thumbnail">
99
+ <NuxtLink to="/product-details">
100
+ <img src="~/assets/images/product-8.png" alt="Image" />
101
+ </NuxtLink>
102
+ </td>
103
+
104
+ <td class="product-name">
105
+ <NuxtLink to="/product-details" class="title">
106
+ SAMSUNG 32-Inch Class QLED 4K Q60C Series Quantum HDR
107
+ </NuxtLink>
108
+ </td>
109
+
110
+ <td class="product-price">
111
+ <span class="unit-amount">#009</span>
112
+ </td>
113
+
114
+ <td class="product-price">
115
+ <span class="unit-amount">02</span>
116
+ </td>
117
+
118
+ <td class="product-subtotal">
119
+ <span class="subtotal-amount">Failed</span>
120
+ </td>
121
+
122
+ <td class="product-subtotal">
123
+ <span class="subtotal-amount">$397.00</span>
124
+ </td>
125
+ </tr>
126
+
127
+ <tr>
128
+ <td class="trash">
129
+ <a href="#" class="remove">
130
+ <i class="ri-delete-bin-line"></i>
131
+ </a>
132
+ </td>
133
+
134
+ <td class="product-thumbnail">
135
+ <NuxtLink to="/product-details">
136
+ <img src="~/assets/images/product-9.png" alt="Image" />
137
+ </NuxtLink>
138
+ </td>
139
+
140
+ <td class="product-name">
141
+ <NuxtLink to="/product-details" class="title">
142
+ Apple MacBook Pro 16.2" with Liquid Retina XDR Display
143
+ </NuxtLink>
144
+ </td>
145
+
146
+ <td class="product-price">
147
+ <span class="unit-amount">#0062</span>
148
+ </td>
149
+
150
+ <td class="product-price">
151
+ <span class="unit-amount">02</span>
152
+ </td>
153
+
154
+ <td class="product-subtotal">
155
+ <span class="subtotal-amount">Paid</span>
156
+ </td>
157
+
158
+ <td class="product-subtotal">
159
+ <span class="subtotal-amount">$3499.00</span>
160
+ </td>
161
+ </tr>
162
+ </tbody>
163
+ </table>
164
+ </div>
165
+ </form>
166
+ </div>
167
+ </template>
168
+
169
+ <script>
170
+ export default {
171
+ name: "RecentOrder",
172
+ };
173
+ </script>
@@ -0,0 +1,79 @@
1
+ <template>
2
+ <div class="dashboard-area ptb-60">
3
+ <div class="container">
4
+ <div class="row">
5
+ <div class="col-lg-4">
6
+ <CommonDashboardNavigation />
7
+ </div>
8
+
9
+ <div class="col-lg-8">
10
+ <div class="row">
11
+ <div class="col-lg-6">
12
+ <div class="profile-bar">
13
+ <div class="profile-info">
14
+ <img src="~/assets/images/user-9.jpg" alt="user" />
15
+
16
+ <h3>
17
+ <NuxtLink to="/edit-profile">Amanda McCarter</NuxtLink>
18
+ </h3>
19
+ <a href="mailto:contact@tuan.com">contact@tuan.com</a>
20
+ <a href="tel:973-635-8147">973-635-8147</a>
21
+ </div>
22
+
23
+ <div class="edit-profiles">
24
+ <NuxtLink
25
+ to="/edit-profile"
26
+ class="btn btn-warning text-white"
27
+ >
28
+ Edit Profile
29
+ </NuxtLink>
30
+ </div>
31
+ </div>
32
+ </div>
33
+
34
+ <div class="col-lg-6">
35
+ <div class="billing-address-bar">
36
+ <h3>Default</h3>
37
+ <ul>
38
+ <li class="p-0">Amanda McCarter</li>
39
+ <li>
40
+ <span>Address:</span>
41
+ 4 Shady Pines Drive Bowling Green
42
+ </li>
43
+ </ul>
44
+
45
+ <ul>
46
+ <li>
47
+ <span>Phone:</span>
48
+ <a href="tel:270-957-9995">270-957-9995</a>
49
+ </li>
50
+ <li>
51
+ <span>Email:</span>
52
+ <a href="mailto:contact@tuan.com">contact@tuan.com</a>
53
+ </li>
54
+ </ul>
55
+
56
+ <div class="edit-address">
57
+ <NuxtLink
58
+ to="/edit-address"
59
+ class="btn btn-warning text-white"
60
+ >
61
+ Edit Address
62
+ </NuxtLink>
63
+ </div>
64
+ </div>
65
+ </div>
66
+ </div>
67
+
68
+ <DashboardRecentOrder />
69
+ </div>
70
+ </div>
71
+ </div>
72
+ </div>
73
+ </template>
74
+
75
+ <script>
76
+ export default {
77
+ name: "Dashboard",
78
+ };
79
+ </script>