Skip to content

Commit 1307e2e

Browse files
committed
Merge branch 'main' into dev
2 parents dbf3234 + 9175734 commit 1307e2e

File tree

9 files changed

+138
-134
lines changed

9 files changed

+138
-134
lines changed

README.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,19 @@ Ecommerce site with Laravel 10, Vue 3 and Stripe.
4343

4444
- Laravel tests with CircleCI integration
4545

46+
## Main dependencies:
47+
48+
- `vue`: Vue.js 3, a progressive JavaScript framework
49+
- `vue-router`: Official router for Vue.js 3
50+
- `pinia`: Intuitive, type safe, light and flexible Store for Vue using the Composition API
51+
- `pinia-plugin-persistedstate`: Persist and rehydrate Pinia stores
52+
- `flowbite`: Utility-first CSS framework built on top of Tailwind CSS
53+
- `@stripe/stripe-js`: Stripe.js and Elements for collecting payment information
54+
- `@formkit/vue`: Form handling and validation for Vue 3
55+
- `@formkit/addons`: Addons for FormKit, including support for Stripe Elements
56+
- `swrv`: Stale-While-Revalidate data fetching for Vue
57+
- `lodash`: A modern JavaScript utility library
58+
4659
## Setup
4760

4861
- Fork or clone the project
@@ -81,6 +94,8 @@ Ecommerce site with Laravel 10, Vue 3 and Stripe.
8194

8295
- Open up `http://localhost:8000` in your browser
8396

97+
98+
8499
## TODO
85100

86101
- Do WCAG analysis and ensure there are no issues

package-lock.json

Lines changed: 33 additions & 29 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

public/css/app.css

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -759,6 +759,10 @@ video {
759759
margin-top: 2rem;
760760
}
761761

762+
.mr-8 {
763+
margin-right: 2rem;
764+
}
765+
762766
.block {
763767
display: block;
764768
}
@@ -1617,6 +1621,11 @@ video {
16171621
border-color: rgb(209 213 219 / var(--tw-border-opacity));
16181622
}
16191623

1624+
.hover\:bg-black:hover {
1625+
--tw-bg-opacity: 1;
1626+
background-color: rgb(0 0 0 / var(--tw-bg-opacity));
1627+
}
1628+
16201629
.hover\:bg-blue-800:hover {
16211630
--tw-bg-opacity: 1;
16221631
background-color: rgb(30 64 175 / var(--tw-bg-opacity));
@@ -1698,6 +1707,11 @@ video {
16981707
background-color: rgb(255 255 255 / 0.5);
16991708
}
17001709

1710+
.group:hover .group-hover\:text-blue-600 {
1711+
--tw-text-opacity: 1;
1712+
color: rgb(37 99 235 / var(--tw-text-opacity));
1713+
}
1714+
17011715
.group:focus .group-focus\:outline-none {
17021716
outline: 2px solid transparent;
17031717
outline-offset: 2px;
@@ -1886,6 +1900,14 @@ video {
18861900

18871901
@media (min-width: 768px) {
18881902

1903+
.md\:mt-0 {
1904+
margin-top: 0px;
1905+
}
1906+
1907+
.md\:mr-0 {
1908+
margin-right: 0px;
1909+
}
1910+
18891911
.md\:block {
18901912
display: block;
18911913
}
@@ -1957,6 +1979,10 @@ video {
19571979
width: 50%;
19581980
}
19591981

1982+
.lg\:w-1\/4 {
1983+
width: 25%;
1984+
}
1985+
19601986
.lg\:w-1\/6 {
19611987
width: 16.666667%;
19621988
}

public/js/app.js

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22647,6 +22647,9 @@ var _hoisted_17 = /*#__PURE__*/_withScopeId(function () {
2264722647
var _hoisted_18 = {
2264822648
"class": "inline-block py-2 text-xl font-semibold no-underline lg:text-base pl-6"
2264922649
};
22650+
var _hoisted_19 = {
22651+
"class": "mt-6 w-full block md:hidden"
22652+
};
2265022653
function render(_ctx, _cache) {
2265122654
var _component_router_link = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)("router-link");
2265222655
var _component_cart_component = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)("cart-component");
@@ -22682,7 +22685,7 @@ function render(_ctx, _cache) {
2268222685
return [_hoisted_17];
2268322686
}),
2268422687
_: 1 /* STABLE */
22685-
})]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("li", _hoisted_18, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_cart_component)])])])])])])]);
22688+
})]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("li", _hoisted_18, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_cart_component)])])])])])]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_19, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_search)])]);
2268622689
}
2268722690

2268822691
/***/ }),
@@ -22704,7 +22707,7 @@ var _hoisted_1 = {
2270422707
key: 0
2270522708
};
2270622709
var _hoisted_2 = {
22707-
"class": "flex justify-center absolute bg-white left-0 right-0 h-auto mx-auto py-16 px-8 shadow-md overflow-y-auto overflow-x-hidden scrolling-touch z-50 max-w-screen-md"
22710+
"class": "mt-6 md:mt-0 flex justify-center absolute bg-white left-0 right-0 h-auto mx-auto py-16 px-8 shadow-md overflow-y-auto overflow-x-hidden scrolling-touch z-50 max-w-screen-md"
2270822711
};
2270922712
var _hoisted_3 = {
2271022713
"class": "w-full"
@@ -22713,7 +22716,7 @@ var _hoisted_4 = {
2271322716
"class": "flex justify-end"
2271422717
};
2271522718
var _hoisted_5 = {
22716-
"class": "h-[70px] w-[70px]"
22719+
"class": "mr-8 md:mr-0"
2271722720
};
2271822721
var _hoisted_6 = ["alt", "src"];
2271922722
var _hoisted_7 = {
@@ -22841,7 +22844,7 @@ var _hoisted_4 = {
2284122844
"class": "flex justify-center pt-3"
2284222845
};
2284322846
var _hoisted_5 = {
22844-
"class": "text-xl font-bold text-center cursor-pointer"
22847+
"class": "text-xl font-bold text-center cursor-pointer transition-colors duration-300 ease-in-out group-hover:text-blue-600"
2284522848
};
2284622849
var _hoisted_6 = {
2284722850
"class": "flex justify-center mt-2"
@@ -22865,14 +22868,15 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
2286522868
return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, [$setup.data && $setup.data.length ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)("div", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_2, [((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)($setup.data, function (product) {
2286622869
return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)("div", {
2286722870
key: product.id,
22868-
"class": "flex flex-col mt-6 md:pr-6 xl:pr-6 sm:w1/2 md:w-1/3 lg:1/4 xl:w-1/4"
22871+
"class": "flex flex-col mt-6 md:pr-6 xl:pr-6 sm:w1/2 md:w-1/3 lg:w-1/4 xl:w-1/4"
2286922872
}, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_router_link, {
2287022873
to: {
2287122874
name: 'single.product',
2287222875
params: {
2287322876
slug: product.slug
2287422877
}
22875-
}
22878+
},
22879+
"class": "group"
2287622880
}, {
2287722881
"default": (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(function () {
2287822882
return [product.imageUrl ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)("img", {
@@ -22884,7 +22888,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
2288422888
backgroundColor: "bg-blue-600"
2288522889
}, {
2288622890
"default": (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(function () {
22887-
return [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)("View Product")];
22891+
return [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(" View Product ")];
2288822892
}),
2288922893
_: 1 /* STABLE */
2289022894
})])];
@@ -23768,7 +23772,7 @@ __webpack_require__.r(__webpack_exports__);
2376823772

2376923773
var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(function(i){return i[1]});
2377023774
// Module
23771-
___CSS_LOADER_EXPORT___.push([module.id, "\n.link-underline[data-v-41f95097] {\r\n border-bottom-width: 0;\r\n background-image: linear-gradient(transparent, transparent),\r\n linear-gradient(#fff, #fff);\r\n background-size: 0 3px;\r\n background-position: 0 100%;\r\n background-repeat: no-repeat;\r\n transition: background-size 0.3s ease-in-out;\n}\n.link-underline-blue[data-v-41f95097] {\r\n background-image: linear-gradient(transparent, transparent),\r\n linear-gradient(rgb(42, 53, 217), rgb(42, 53, 217));\n}\n.link-underline[data-v-41f95097]:hover {\r\n background-size: 100% 3px;\r\n background-position: 0 100%;\n}\r\n", ""]);
23775+
___CSS_LOADER_EXPORT___.push([module.id, "\n.link-underline[data-v-41f95097] {\n border-bottom-width: 0;\n background-image: linear-gradient(transparent, transparent),\n linear-gradient(#fff, #fff);\n background-size: 0 3px;\n background-position: 0 100%;\n background-repeat: no-repeat;\n transition: background-size 0.3s ease-in-out;\n}\n.link-underline-blue[data-v-41f95097] {\n background-image: linear-gradient(transparent, transparent),\n linear-gradient(rgb(42, 53, 217), rgb(42, 53, 217));\n}\n.link-underline[data-v-41f95097]:hover {\n background-size: 100% 3px;\n background-position: 0 100%;\n}\n", ""]);
2377223776
// Exports
2377323777
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
2377423778

0 commit comments

Comments
 (0)