@shopbite-de/storefront 1.1.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.
- package/.dockerignore +28 -0
- package/.env.example +11 -0
- package/.github/workflows/build.yaml +48 -0
- package/.github/workflows/ci.yaml +102 -0
- package/.prettierignore +6 -0
- package/.prettierrc +1 -0
- package/api-types/storeApiSchema.json +13863 -0
- package/api-types/storeApiTypes.d.ts +7010 -0
- package/app/app.config.ts +18 -0
- package/app/app.vue +99 -0
- package/app/assets/css/main.css +60 -0
- package/app/assets/fonts/Courier_Prime/CourierPrime-Bold.ttf +0 -0
- package/app/assets/fonts/Courier_Prime/CourierPrime-BoldItalic.ttf +0 -0
- package/app/assets/fonts/Courier_Prime/CourierPrime-Italic.ttf +0 -0
- package/app/assets/fonts/Courier_Prime/CourierPrime-Regular.ttf +0 -0
- package/app/assets/fonts/Courier_Prime/OFL.txt +93 -0
- package/app/assets/fonts/Kalam/Kalam-Bold.ttf +0 -0
- package/app/assets/fonts/Kalam/Kalam-Light.ttf +0 -0
- package/app/assets/fonts/Kalam/Kalam-Regular.ttf +0 -0
- package/app/assets/fonts/Kalam/OFL.txt +93 -0
- package/app/assets/fonts/Marcellus/Marcellus-Regular.ttf +0 -0
- package/app/assets/fonts/Marcellus/OFL.txt +93 -0
- package/app/assets/fonts/Sora/OFL.txt +93 -0
- package/app/assets/fonts/Sora/README.txt +70 -0
- package/app/assets/fonts/Sora/Sora-VariableFont_wght.ttf +0 -0
- package/app/assets/fonts/Sora/static/Sora-Bold.ttf +0 -0
- package/app/assets/fonts/Sora/static/Sora-ExtraBold.ttf +0 -0
- package/app/assets/fonts/Sora/static/Sora-ExtraLight.ttf +0 -0
- package/app/assets/fonts/Sora/static/Sora-Light.ttf +0 -0
- package/app/assets/fonts/Sora/static/Sora-Medium.ttf +0 -0
- package/app/assets/fonts/Sora/static/Sora-Regular.ttf +0 -0
- package/app/assets/fonts/Sora/static/Sora-SemiBold.ttf +0 -0
- package/app/assets/fonts/Sora/static/Sora-Thin.ttf +0 -0
- package/app/components/AddToWishlist.vue +55 -0
- package/app/components/Address/Card.vue +32 -0
- package/app/components/Address/Detail.vue +22 -0
- package/app/components/Address/Form.vue +117 -0
- package/app/components/AnimatedSection.vue +77 -0
- package/app/components/BottomNavi.vue +63 -0
- package/app/components/Cart/Item.vue +112 -0
- package/app/components/Cart/QuickView.vue +55 -0
- package/app/components/Category/Header.vue +53 -0
- package/app/components/Category/Listing.vue +295 -0
- package/app/components/Checkout/DeliveryTimeSelect.vue +177 -0
- package/app/components/Checkout/LoginOrRegister.vue +43 -0
- package/app/components/Checkout/PaymentAndDelivery.vue +101 -0
- package/app/components/Checkout/PaymentMethod.vue +30 -0
- package/app/components/Checkout/ShippingMethod.vue +30 -0
- package/app/components/Checkout/Summary.vue +125 -0
- package/app/components/Cta.vue +34 -0
- package/app/components/Features.vue +36 -0
- package/app/components/Food/Marquee.vue +35 -0
- package/app/components/Food/MarqueeItem.vue +72 -0
- package/app/components/Footer.vue +51 -0
- package/app/components/Header.vue +160 -0
- package/app/components/Hero.vue +77 -0
- package/app/components/ImageGallery.vue +46 -0
- package/app/components/Loading.vue +29 -0
- package/app/components/Navigation/DesktopLeft.vue +51 -0
- package/app/components/Navigation/DesktopLeft2.vue +43 -0
- package/app/components/Navigation/MobileTop.vue +59 -0
- package/app/components/Navigation/MobileTop2.vue +42 -0
- package/app/components/Order/Detail.vue +84 -0
- package/app/components/Product/Card.vue +132 -0
- package/app/components/Product/Category.vue +153 -0
- package/app/components/Product/Configurator.vue +65 -0
- package/app/components/Product/CrossSelling.vue +95 -0
- package/app/components/Product/DeselectIngredient.vue +46 -0
- package/app/components/Product/Detail.vue +187 -0
- package/app/components/Product/SearchBar.vue +109 -0
- package/app/components/PublicAnnouncement.vue +17 -0
- package/app/components/Topseller.vue +43 -0
- package/app/components/User/Detail.vue +47 -0
- package/app/components/User/LoginForm.vue +105 -0
- package/app/components/User/RegistrationForm.vue +340 -0
- package/app/components/Wishlist.vue +102 -0
- package/app/composables/useDeliveryTime.ts +139 -0
- package/app/composables/useInterval.ts +15 -0
- package/app/composables/usePizzaToppings.ts +31 -0
- package/app/composables/useProductEvents.test.ts +111 -0
- package/app/composables/useProductEvents.ts +22 -0
- package/app/composables/useProductVariants.ts +61 -0
- package/app/composables/useScrollAnimation.ts +39 -0
- package/app/composables/useTopSellers.ts +34 -0
- package/app/error.vue +30 -0
- package/app/layouts/account.vue +74 -0
- package/app/layouts/default.vue +6 -0
- package/app/layouts/listing.vue +32 -0
- package/app/layouts/listing2.vue +8 -0
- package/app/middleware/trailing-slash.global.ts +19 -0
- package/app/pages/account/recover/password/index.vue +143 -0
- package/app/pages/anmelden.vue +32 -0
- package/app/pages/bestellung.vue +103 -0
- package/app/pages/c/[...all].vue +49 -0
- package/app/pages/index.vue +59 -0
- package/app/pages/konto/adressen.vue +135 -0
- package/app/pages/konto/bestellung/[id].vue +41 -0
- package/app/pages/konto/bestellungen.vue +53 -0
- package/app/pages/konto/index.vue +74 -0
- package/app/pages/konto/profil.vue +160 -0
- package/app/pages/merkliste.vue +11 -0
- package/app/pages/order/[id].vue +69 -0
- package/app/pages/passwort-vergessen.vue +103 -0
- package/app/pages/registrierung/bestaetigen.vue +44 -0
- package/app/pages/registrierung/index.vue +24 -0
- package/app/pages/speisekarte.vue +58 -0
- package/app/pages/unternehmen/[slug].vue +66 -0
- package/app/types/Association.d.ts +11 -0
- package/app/utils/businessHours.ts +119 -0
- package/app/utils/formatDate.ts +9 -0
- package/app/utils/holidays.ts +43 -0
- package/app/utils/storeHours.ts +8 -0
- package/app/utils/time.ts +20 -0
- package/app/validation/addressSchema.ts +34 -0
- package/app/validation/registrationSchema.ts +156 -0
- package/bun.dockerfile +60 -0
- package/compose.yml +17 -0
- package/container +7 -0
- package/content/index.yml +91 -0
- package/content/navigation.yml +67 -0
- package/content/unternehmen/agb.md +1 -0
- package/content/unternehmen/datenschutz.md +1 -0
- package/content/unternehmen/impressum.md +39 -0
- package/content.config.ts +134 -0
- package/eslint.config.mjs +8 -0
- package/node.dockerfile +33 -0
- package/nuxt.config.ts +153 -0
- package/package.json +70 -0
- package/public/dark/Logo.svg +32 -0
- package/public/favicon.ico +0 -0
- package/public/light/Logo.svg +32 -0
- package/renovate.json +4 -0
- package/server/tsconfig.json +3 -0
- package/shopware.d.ts +19 -0
- package/tsconfig.json +4 -0
- package/vitest.config.mts +26 -0
package/nuxt.config.ts
ADDED
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
// https://v3.nuxtjs.org/api/configuration/nuxt.config
|
|
2
|
+
export default defineNuxtConfig({
|
|
3
|
+
app: {
|
|
4
|
+
head: {
|
|
5
|
+
title: "ShopBite Demo Shop",
|
|
6
|
+
htmlAttrs: {
|
|
7
|
+
lang: "de",
|
|
8
|
+
},
|
|
9
|
+
meta: [
|
|
10
|
+
{ charset: "utf-8" },
|
|
11
|
+
{ name: "viewport", content: "width=device-width, initial-scale=1" },
|
|
12
|
+
{
|
|
13
|
+
name: "description",
|
|
14
|
+
content: "Italienisch-deutsche Küche in Obertshausen",
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
property: "og:title",
|
|
18
|
+
content: "ShopBite - Demo Shop",
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
property: "og:description",
|
|
22
|
+
content: "Italienisch-deutsche Küche in Obertshausen",
|
|
23
|
+
},
|
|
24
|
+
],
|
|
25
|
+
link: [{ rel: "icon", href: "/favicon.ico" }],
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
colorMode: {
|
|
29
|
+
preference: "light",
|
|
30
|
+
},
|
|
31
|
+
robots: {
|
|
32
|
+
disallow: [
|
|
33
|
+
"/unternehmen/impressum",
|
|
34
|
+
"/unternehmen/datenschutz",
|
|
35
|
+
"/unternehmen/agb",
|
|
36
|
+
"/impressum",
|
|
37
|
+
"/datenschutz",
|
|
38
|
+
"/agb",
|
|
39
|
+
"/merkliste",
|
|
40
|
+
"/passwort-vergessen",
|
|
41
|
+
"/account/recover/password",
|
|
42
|
+
],
|
|
43
|
+
},
|
|
44
|
+
|
|
45
|
+
runtimeConfig: {
|
|
46
|
+
shopware: {},
|
|
47
|
+
apiClientConfig: {},
|
|
48
|
+
public: {
|
|
49
|
+
site: {
|
|
50
|
+
name: "Pizzeria La Fattoria",
|
|
51
|
+
description: "Italienisch-deutsche Küche in Obertshausen",
|
|
52
|
+
countryId: "",
|
|
53
|
+
},
|
|
54
|
+
storeUrl: "",
|
|
55
|
+
sentry: {
|
|
56
|
+
dsn: process.env.NUXT_PUBLIC_SENTRY_DSN,
|
|
57
|
+
},
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
|
|
61
|
+
routeRules: {
|
|
62
|
+
"/impressum": {
|
|
63
|
+
redirect: "/unternehmen/impressum",
|
|
64
|
+
},
|
|
65
|
+
"/datenschutz": {
|
|
66
|
+
redirect: "/unternehmen/datenschutz",
|
|
67
|
+
},
|
|
68
|
+
"/agb": {
|
|
69
|
+
redirect: "/unternehmen/agb",
|
|
70
|
+
},
|
|
71
|
+
"/merkliste": {
|
|
72
|
+
ssr: false,
|
|
73
|
+
},
|
|
74
|
+
"/registrierung/bestaetigen": {
|
|
75
|
+
ssr: false,
|
|
76
|
+
},
|
|
77
|
+
},
|
|
78
|
+
|
|
79
|
+
css: ["~/assets/css/main.css"],
|
|
80
|
+
|
|
81
|
+
shopware: {
|
|
82
|
+
endpoint: "",
|
|
83
|
+
accessToken: "",
|
|
84
|
+
devStorefrontUrl: "",
|
|
85
|
+
},
|
|
86
|
+
|
|
87
|
+
modules: [
|
|
88
|
+
"@shopware/nuxt-module",
|
|
89
|
+
"@nuxt/image",
|
|
90
|
+
"@nuxt/content",
|
|
91
|
+
"@nuxtjs/robots",
|
|
92
|
+
"@vite-pwa/nuxt",
|
|
93
|
+
"@sentry/nuxt/module",
|
|
94
|
+
"@nuxt/ui",
|
|
95
|
+
"@nuxtjs/plausible",
|
|
96
|
+
...(process.env.NODE_ENV === "development"
|
|
97
|
+
? ["@nuxt/test-utils/module", "@nuxt/eslint"]
|
|
98
|
+
: []),
|
|
99
|
+
],
|
|
100
|
+
|
|
101
|
+
plausible: {
|
|
102
|
+
ignoredHostnames: ["localhost"],
|
|
103
|
+
},
|
|
104
|
+
|
|
105
|
+
content: {
|
|
106
|
+
experimental: { sqliteConnector: "native" },
|
|
107
|
+
},
|
|
108
|
+
|
|
109
|
+
pwa: {
|
|
110
|
+
manifest: {
|
|
111
|
+
name: "ShopBite",
|
|
112
|
+
short_name: "ShopBite",
|
|
113
|
+
theme_color: "#4d7c0f",
|
|
114
|
+
icons: [
|
|
115
|
+
{
|
|
116
|
+
src: "dark/Logo.svg",
|
|
117
|
+
sizes: "192x192",
|
|
118
|
+
type: "image/svg",
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
src: "dark/Logo.svg",
|
|
122
|
+
sizes: "512x512",
|
|
123
|
+
type: "image/svg",
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
src: "dark/Logo.svg",
|
|
127
|
+
sizes: "512x512",
|
|
128
|
+
type: "image/svg",
|
|
129
|
+
purpose: "any maskable",
|
|
130
|
+
},
|
|
131
|
+
],
|
|
132
|
+
},
|
|
133
|
+
},
|
|
134
|
+
|
|
135
|
+
nitro: {
|
|
136
|
+
compressPublicAssets: {
|
|
137
|
+
gzip: true,
|
|
138
|
+
brotli: true,
|
|
139
|
+
},
|
|
140
|
+
minify: true,
|
|
141
|
+
},
|
|
142
|
+
|
|
143
|
+
devtools: { enabled: true },
|
|
144
|
+
extends: ["@shopware/composables/nuxt-layer"],
|
|
145
|
+
future: {
|
|
146
|
+
compatibilityVersion: 4,
|
|
147
|
+
},
|
|
148
|
+
compatibilityDate: "2025-07-15",
|
|
149
|
+
|
|
150
|
+
experimental: {
|
|
151
|
+
asyncContext: true,
|
|
152
|
+
},
|
|
153
|
+
});
|
package/package.json
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@shopbite-de/storefront",
|
|
3
|
+
"version": "1.1.0",
|
|
4
|
+
"main": "nuxt.config.ts",
|
|
5
|
+
"description": "Shopware storefront for food delivery shops",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"shopware",
|
|
8
|
+
"storefront",
|
|
9
|
+
"nuxt",
|
|
10
|
+
"vue",
|
|
11
|
+
"food delivery"
|
|
12
|
+
],
|
|
13
|
+
"author": "@veliu",
|
|
14
|
+
"license": "MIT",
|
|
15
|
+
"type": "module",
|
|
16
|
+
"scripts": {
|
|
17
|
+
"build": "nuxt build",
|
|
18
|
+
"dev": "nuxt dev",
|
|
19
|
+
"generate": "nuxt generate",
|
|
20
|
+
"preview": "nuxt preview",
|
|
21
|
+
"postinstall": "nuxt prepare",
|
|
22
|
+
"test": "vitest run --coverage",
|
|
23
|
+
"test:ui": "vitest --ui",
|
|
24
|
+
"eslint": "eslint .",
|
|
25
|
+
"eslint:fix": "eslint --fix app/",
|
|
26
|
+
"prettier": "prettier --check \"**/*.{ts,tsx,md,vue}\"",
|
|
27
|
+
"prettier:fix": "prettier --check \"**/*.{ts,tsx,md,vue}\" --write",
|
|
28
|
+
"generate-types": "shopware-api-gen generate --apiType=store",
|
|
29
|
+
"load-schema": "bunx @shopware/api-gen loadSchema --apiType=store",
|
|
30
|
+
"lint:fix": "npm run prettier:fix && npm run eslint:fix"
|
|
31
|
+
},
|
|
32
|
+
"dependencies": {
|
|
33
|
+
"@headlessui/vue": "^1.7.23",
|
|
34
|
+
"@heroicons/vue": "^2.2.0",
|
|
35
|
+
"@iconify-json/lucide": "^1.2.73",
|
|
36
|
+
"@iconify-json/simple-icons": "^1.2.59",
|
|
37
|
+
"@nuxt/content": "^3.8.2",
|
|
38
|
+
"@nuxt/image": "^1.11.0",
|
|
39
|
+
"@nuxt/ui": "^4.1.0",
|
|
40
|
+
"@nuxtjs/plausible": "2.0.1",
|
|
41
|
+
"@nuxtjs/robots": "^5.5.6",
|
|
42
|
+
"@sentry/nuxt": "^10.25.0",
|
|
43
|
+
"@shopware/api-client": "^1.3.0",
|
|
44
|
+
"@shopware/api-gen": "^1.3.3",
|
|
45
|
+
"@shopware/composables": "^1.9.1",
|
|
46
|
+
"@shopware/helpers": "^1.5.0",
|
|
47
|
+
"@shopware/nuxt-module": "^1.4.1",
|
|
48
|
+
"@tailwindcss/vite": "^4.1.17",
|
|
49
|
+
"@unhead/vue": "^2.0.19",
|
|
50
|
+
"@vite-pwa/nuxt": "^1.0.7",
|
|
51
|
+
"@vueuse/core": "^13.9.0",
|
|
52
|
+
"nuxt": "^4.2.1",
|
|
53
|
+
"uuid": "^13.0.0"
|
|
54
|
+
},
|
|
55
|
+
"devDependencies": {
|
|
56
|
+
"@nuxt/eslint": "^1.10.0",
|
|
57
|
+
"@nuxt/test-utils": "^3.20.1",
|
|
58
|
+
"@vitejs/plugin-vue": "^6.0.1",
|
|
59
|
+
"@vitest/coverage-v8": "4.0.5",
|
|
60
|
+
"@vue/test-utils": "^2.4.6",
|
|
61
|
+
"eslint": "^9.39.1",
|
|
62
|
+
"happy-dom": "^20.0.10",
|
|
63
|
+
"jsdom": "^27.2.0",
|
|
64
|
+
"playwright-core": "^1.56.1",
|
|
65
|
+
"prettier": "^3.6.2",
|
|
66
|
+
"typescript": "^5.9.3",
|
|
67
|
+
"vitest": "^4.0.10"
|
|
68
|
+
},
|
|
69
|
+
"packageManager": "pnpm@10.20.0"
|
|
70
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 324.59 103.19">
|
|
3
|
+
<defs>
|
|
4
|
+
<style>
|
|
5
|
+
.cls-1 {
|
|
6
|
+
fill: #fff;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.cls-2 {
|
|
10
|
+
fill: #ff5b00;
|
|
11
|
+
}
|
|
12
|
+
</style>
|
|
13
|
+
</defs>
|
|
14
|
+
<!-- Generator: Adobe Illustrator 28.7.1, SVG Export Plug-In . SVG Version: 1.2.0 Build 142) -->
|
|
15
|
+
<g>
|
|
16
|
+
<g id="Ebene_1">
|
|
17
|
+
<g>
|
|
18
|
+
<g>
|
|
19
|
+
<path class="cls-1" d="M48.94,47.64c-1.33-1.78-3.08-3.11-5.23-3.98-2.16-.87-4.8-1.61-7.95-2.19-3.11-.59-5.4-1.1-6.89-1.51-1.48-.43-2.62-1-3.44-1.69-.81-.69-1.2-1.68-1.2-2.93,0-1.76.67-3.11,2.02-4.05,1.33-.95,3.14-1.41,5.38-1.41,2.43,0,4.39.61,5.87,1.84,1.48,1.25,2.34,2.88,2.57,4.9h9.9c-.03-2.85-.86-5.38-2.45-7.63-1.6-2.24-3.78-4.01-6.55-5.28-2.76-1.28-5.87-1.92-9.34-1.92s-6.38.61-9.06,1.86c-2.68,1.23-4.77,2.93-6.27,5.08-1.51,2.15-2.25,4.61-2.25,7.35,0,3.01.66,5.43,1.97,7.24,1.33,1.83,3.06,3.21,5.17,4.13,2.12.92,4.72,1.66,7.83,2.25,3.14.63,5.46,1.15,6.97,1.58,1.5.43,2.66,1.02,3.5,1.76.84.74,1.25,1.74,1.25,2.99,0,1.81-.76,3.21-2.25,4.21-1.51,1.02-3.45,1.53-5.84,1.53-2.88,0-5.18-.71-6.91-2.14-1.73-1.41-2.7-3.29-2.86-5.63l-9.92-.13c.05,3.01.9,5.72,2.57,8.16,1.66,2.43,3.96,4.33,6.91,5.69,2.94,1.38,6.3,2.06,10.08,2.06,3.5,0,6.66-.64,9.48-1.94,2.8-1.32,5-3.09,6.56-5.36,1.58-2.27,2.37-4.85,2.37-7.73s-.66-5.33-1.99-7.11Z"/>
|
|
20
|
+
<path class="cls-1" d="M86.1,38.1c-2.63-2.52-6-3.78-10.08-3.78s-7.7,1.56-10.25,4.66v-16.8h-9.51v47.21h9.51v-17.8c0-2.98.67-5.28,2.06-6.96,1.37-1.66,3.27-2.48,5.69-2.48s4.1.76,5.26,2.25c1.17,1.51,1.74,3.7,1.74,6.58v18.41h9.51v-18.82c0-5.79-1.3-9.95-3.93-12.47Z"/>
|
|
21
|
+
<path class="cls-1" d="M128.98,42.76c-1.51-2.7-3.65-4.79-6.42-6.25-2.76-1.45-5.95-2.19-9.61-2.19s-6.84.74-9.61,2.19c-2.76,1.46-4.9,3.55-6.4,6.25-1.51,2.7-2.27,5.79-2.27,9.29s.76,6.61,2.27,9.31c1.5,2.7,3.64,4.79,6.4,6.23,2.76,1.46,5.97,2.19,9.61,2.19s6.84-.72,9.61-2.19c2.76-1.45,4.9-3.52,6.42-6.2,1.5-2.66,2.25-5.79,2.25-9.34s-.76-6.6-2.25-9.29ZM119.26,59.27c-1.55,1.84-3.65,2.76-6.3,2.76s-4.69-.92-6.23-2.76-2.32-4.24-2.32-7.22.77-5.36,2.32-7.21,3.64-2.76,6.23-2.76,4.75.92,6.3,2.76c1.56,1.84,2.34,4.24,2.34,7.21s-.77,5.38-2.34,7.22Z"/>
|
|
22
|
+
<path class="cls-1" d="M172.3,48.89c-.13-1.02-.33-1.99-.59-2.93-.33-1.12-.74-2.19-1.25-3.21-1.38-2.7-3.26-4.79-5.68-6.25-2.4-1.45-5.15-2.19-8.26-2.19-2.39,0-4.47.48-6.3,1.41-1.83.95-3.32,2.2-4.49,3.78l-.94-4.79h-8.29v48.15h9.51v-17.88c2.52,3.21,6,4.79,10.45,4.79,3.11,0,5.87-.72,8.29-2.19,2.43-1.45,4.33-3.52,5.71-6.17,1.37-2.65,2.06-5.76,2.06-9.31,0-1.12-.07-2.19-.21-3.22ZM160.5,59.24c-1.58,1.86-3.64,2.8-6.2,2.8s-4.61-.92-6.14-2.76c-1.53-1.84-2.29-4.28-2.29-7.29s.76-5.36,2.29-7.17c1.53-1.83,3.57-2.73,6.14-2.73s4.62.9,6.2,2.73c1.58,1.81,2.37,4.21,2.37,7.17s-.79,5.4-2.37,7.25Z"/>
|
|
23
|
+
<path class="cls-1" d="M229.25,48.55c-1.91-1.79-4.61-2.91-8.13-3.37,2.98-.54,5.26-1.71,6.88-3.5,1.63-1.79,2.43-4.16,2.43-7.07,0-3.96-1.51-7.02-4.52-9.18-3.01-2.15-7.25-3.24-12.73-3.24h-17.95v1.38c0,3.63,2.95,6.58,6.58,6.58h11.63c2.15,0,3.85.53,5.05,1.55,1.22,1.04,1.83,2.43,1.83,4.19s-.61,3.14-1.83,4.18c-1.2,1.04-2.9,1.55-5.05,1.55h-11.63c-3.63,0-6.58,2.95-6.58,6.58v21.2h18.82c5.76,0,10.2-1.18,13.36-3.54,3.14-2.37,4.72-5.61,4.72-9.75,0-3.22-.97-5.74-2.88-7.55ZM219.74,59.82c-1.32,1.04-3.19,1.55-5.63,1.55h-8.77v-11.94h8.77c2.39,0,4.24.54,5.59,1.6,1.35,1.05,2.02,2.55,2.02,4.47s-.66,3.29-1.99,4.33Z"/>
|
|
24
|
+
<path class="cls-1" d="M238.05,34.73v34.66h9.51v-34.66h-9.51ZM246.75,21.82c-1.04-1.02-2.34-1.51-3.92-1.51s-2.88.49-3.93,1.51c-1.07,1-1.6,2.29-1.6,3.8s.53,2.81,1.6,3.85c1.05,1.04,2.37,1.55,3.93,1.55s2.88-.51,3.92-1.55c1.04-1.04,1.55-2.32,1.55-3.85s-.51-2.8-1.55-3.8Z"/>
|
|
25
|
+
<path class="cls-1" d="M269.27,61.36c-1.22,0-2.07-.26-2.6-.81-.51-.54-.77-1.41-.77-2.63v-15.17h7.9v-8.03h-7.9v-9.71h-9.51v9.71h-5.72v8.03h5.72v16.71c0,6.61,3.31,9.92,9.92,9.92h7.9v-8.03h-4.94Z"/>
|
|
26
|
+
<path class="cls-1" d="M311.35,54.22c.18-.95.28-2.02.28-3.24-.05-3.37-.82-6.3-2.34-8.8-1.5-2.5-3.6-4.43-6.27-5.81-2.68-1.37-5.77-2.06-9.28-2.06s-6.5.74-9.13,2.19c-2.63,1.46-4.67,3.54-6.14,6.22-1.46,2.66-2.19,5.81-2.19,9.39s.74,6.68,2.25,9.34c1.5,2.68,3.67,4.74,6.46,6.17,2.81,1.45,6.15,2.15,10.02,2.15,2.98,0,5.59-.53,7.9-1.58,2.29-1.05,4.13-2.5,5.53-4.34,1.4-1.84,2.27-3.92,2.63-6.2h-9.38c-.41,1.61-1.25,2.83-2.53,3.67-1.28.84-2.88,1.25-4.82,1.25-2.42,0-4.34-.72-5.72-2.15-1.4-1.45-2.2-3.42-2.43-5.94v-.26h25.15ZM288.93,43.19c1.41-1.18,3.16-1.78,5.23-1.78s3.95.56,5.36,1.71c1.41,1.15,2.27,2.78,2.6,4.89h-15.73c.28-2.02,1.12-3.62,2.53-4.82Z"/>
|
|
27
|
+
</g>
|
|
28
|
+
<path class="cls-2" d="M201.49,35.93c-5.83,1.79-10.39,6.49-11.97,12.42-1.58-5.92-6.13-10.63-11.97-12.42,5.83-1.79,10.39-6.49,11.97-12.42,1.58,5.92,6.13,10.63,11.97,12.42Z"/>
|
|
29
|
+
</g>
|
|
30
|
+
</g>
|
|
31
|
+
</g>
|
|
32
|
+
</svg>
|
|
Binary file
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 324.59 103.19">
|
|
3
|
+
<defs>
|
|
4
|
+
<style>
|
|
5
|
+
.cls-1 {
|
|
6
|
+
fill: #ff5b00;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.cls-2 {
|
|
10
|
+
fill: #3d3d3d;
|
|
11
|
+
}
|
|
12
|
+
</style>
|
|
13
|
+
</defs>
|
|
14
|
+
<!-- Generator: Adobe Illustrator 28.7.1, SVG Export Plug-In . SVG Version: 1.2.0 Build 142) -->
|
|
15
|
+
<g>
|
|
16
|
+
<g id="Ebene_1">
|
|
17
|
+
<g>
|
|
18
|
+
<g>
|
|
19
|
+
<path class="cls-2" d="M48.94,47.64c-1.33-1.78-3.08-3.11-5.23-3.98-2.16-.87-4.8-1.61-7.95-2.19-3.11-.59-5.4-1.1-6.89-1.51-1.48-.43-2.62-1-3.44-1.69-.81-.69-1.2-1.68-1.2-2.93,0-1.76.67-3.11,2.02-4.05,1.33-.95,3.14-1.41,5.38-1.41,2.43,0,4.39.61,5.87,1.84,1.48,1.25,2.34,2.88,2.57,4.9h9.9c-.03-2.85-.86-5.38-2.45-7.63-1.6-2.24-3.78-4.01-6.55-5.28-2.76-1.28-5.87-1.92-9.34-1.92s-6.38.61-9.06,1.86c-2.68,1.23-4.77,2.93-6.27,5.08-1.51,2.15-2.25,4.61-2.25,7.35,0,3.01.66,5.43,1.97,7.24,1.33,1.83,3.06,3.21,5.17,4.13,2.12.92,4.72,1.66,7.83,2.25,3.14.63,5.46,1.15,6.97,1.58,1.5.43,2.66,1.02,3.5,1.76.84.74,1.25,1.74,1.25,2.99,0,1.81-.76,3.21-2.25,4.21-1.51,1.02-3.45,1.53-5.84,1.53-2.88,0-5.18-.71-6.91-2.14-1.73-1.41-2.7-3.29-2.86-5.63l-9.92-.13c.05,3.01.9,5.72,2.57,8.16,1.66,2.43,3.96,4.33,6.91,5.69,2.94,1.38,6.3,2.06,10.08,2.06,3.5,0,6.66-.64,9.48-1.94,2.8-1.32,5-3.09,6.56-5.36,1.58-2.27,2.37-4.85,2.37-7.73s-.66-5.33-1.99-7.11Z"/>
|
|
20
|
+
<path class="cls-2" d="M86.1,38.1c-2.63-2.52-6-3.78-10.08-3.78s-7.7,1.56-10.25,4.66v-16.8h-9.51v47.21h9.51v-17.8c0-2.98.67-5.28,2.06-6.96,1.37-1.66,3.27-2.48,5.69-2.48s4.1.76,5.26,2.25c1.17,1.51,1.74,3.7,1.74,6.58v18.41h9.51v-18.82c0-5.79-1.3-9.95-3.93-12.47Z"/>
|
|
21
|
+
<path class="cls-2" d="M128.98,42.76c-1.51-2.7-3.65-4.79-6.42-6.25-2.76-1.45-5.95-2.19-9.61-2.19s-6.84.74-9.61,2.19c-2.76,1.46-4.9,3.55-6.4,6.25-1.51,2.7-2.27,5.79-2.27,9.29s.76,6.61,2.27,9.31c1.5,2.7,3.64,4.79,6.4,6.23,2.76,1.46,5.97,2.19,9.61,2.19s6.84-.72,9.61-2.19c2.76-1.45,4.9-3.52,6.42-6.2,1.5-2.66,2.25-5.79,2.25-9.34s-.76-6.6-2.25-9.29ZM119.26,59.27c-1.55,1.84-3.65,2.76-6.3,2.76s-4.69-.92-6.23-2.76-2.32-4.24-2.32-7.22.77-5.36,2.32-7.21,3.64-2.76,6.23-2.76,4.75.92,6.3,2.76c1.56,1.84,2.34,4.24,2.34,7.21s-.77,5.38-2.34,7.22Z"/>
|
|
22
|
+
<path class="cls-2" d="M172.3,48.89c-.13-1.02-.33-1.99-.59-2.93-.33-1.12-.74-2.19-1.25-3.21-1.38-2.7-3.26-4.79-5.68-6.25-2.4-1.45-5.15-2.19-8.26-2.19-2.39,0-4.47.48-6.3,1.41-1.83.95-3.32,2.2-4.49,3.78l-.94-4.79h-8.29v48.15h9.51v-17.88c2.52,3.21,6,4.79,10.45,4.79,3.11,0,5.87-.72,8.29-2.19,2.43-1.45,4.33-3.52,5.71-6.17,1.37-2.65,2.06-5.76,2.06-9.31,0-1.12-.07-2.19-.21-3.22ZM160.5,59.24c-1.58,1.86-3.64,2.8-6.2,2.8s-4.61-.92-6.14-2.76c-1.53-1.84-2.29-4.28-2.29-7.29s.76-5.36,2.29-7.17c1.53-1.83,3.57-2.73,6.14-2.73s4.62.9,6.2,2.73c1.58,1.81,2.37,4.21,2.37,7.17s-.79,5.4-2.37,7.25Z"/>
|
|
23
|
+
<path class="cls-2" d="M229.25,48.55c-1.91-1.79-4.61-2.91-8.13-3.37,2.98-.54,5.26-1.71,6.88-3.5,1.63-1.79,2.43-4.16,2.43-7.07,0-3.96-1.51-7.02-4.52-9.18-3.01-2.15-7.25-3.24-12.73-3.24h-17.95v1.38c0,3.63,2.95,6.58,6.58,6.58h11.63c2.15,0,3.85.53,5.05,1.55,1.22,1.04,1.83,2.43,1.83,4.19s-.61,3.14-1.83,4.18c-1.2,1.04-2.9,1.55-5.05,1.55h-11.63c-3.63,0-6.58,2.95-6.58,6.58v21.2h18.82c5.76,0,10.2-1.18,13.36-3.54,3.14-2.37,4.72-5.61,4.72-9.75,0-3.22-.97-5.74-2.88-7.55ZM219.74,59.82c-1.32,1.04-3.19,1.55-5.63,1.55h-8.77v-11.94h8.77c2.39,0,4.24.54,5.59,1.6,1.35,1.05,2.02,2.55,2.02,4.47s-.66,3.29-1.99,4.33Z"/>
|
|
24
|
+
<path class="cls-2" d="M238.05,34.73v34.66h9.51v-34.66h-9.51ZM246.75,21.82c-1.04-1.02-2.34-1.51-3.92-1.51s-2.88.49-3.93,1.51c-1.07,1-1.6,2.29-1.6,3.8s.53,2.81,1.6,3.85c1.05,1.04,2.37,1.55,3.93,1.55s2.88-.51,3.92-1.55c1.04-1.04,1.55-2.32,1.55-3.85s-.51-2.8-1.55-3.8Z"/>
|
|
25
|
+
<path class="cls-2" d="M269.27,61.36c-1.22,0-2.07-.26-2.6-.81-.51-.54-.77-1.41-.77-2.63v-15.17h7.9v-8.03h-7.9v-9.71h-9.51v9.71h-5.72v8.03h5.72v16.71c0,6.61,3.31,9.92,9.92,9.92h7.9v-8.03h-4.94Z"/>
|
|
26
|
+
<path class="cls-2" d="M311.35,54.22c.18-.95.28-2.02.28-3.24-.05-3.37-.82-6.3-2.34-8.8-1.5-2.5-3.6-4.43-6.27-5.81-2.68-1.37-5.77-2.06-9.28-2.06s-6.5.74-9.13,2.19c-2.63,1.46-4.67,3.54-6.14,6.22-1.46,2.66-2.19,5.81-2.19,9.39s.74,6.68,2.25,9.34c1.5,2.68,3.67,4.74,6.46,6.17,2.81,1.45,6.15,2.15,10.02,2.15,2.98,0,5.59-.53,7.9-1.58,2.29-1.05,4.13-2.5,5.53-4.34,1.4-1.84,2.27-3.92,2.63-6.2h-9.38c-.41,1.61-1.25,2.83-2.53,3.67-1.28.84-2.88,1.25-4.82,1.25-2.42,0-4.34-.72-5.72-2.15-1.4-1.45-2.2-3.42-2.43-5.94v-.26h25.15ZM288.93,43.19c1.41-1.18,3.16-1.78,5.23-1.78s3.95.56,5.36,1.71c1.41,1.15,2.27,2.78,2.6,4.89h-15.73c.28-2.02,1.12-3.62,2.53-4.82Z"/>
|
|
27
|
+
</g>
|
|
28
|
+
<path class="cls-1" d="M201.49,35.93c-5.83,1.79-10.39,6.49-11.97,12.42-1.58-5.92-6.13-10.63-11.97-12.42,5.83-1.79,10.39-6.49,11.97-12.42,1.58,5.92,6.13,10.63,11.97,12.42Z"/>
|
|
29
|
+
</g>
|
|
30
|
+
</g>
|
|
31
|
+
</g>
|
|
32
|
+
</svg>
|
package/renovate.json
ADDED
package/shopware.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
declare module "#shopware" {
|
|
2
|
+
import type { createAPIClient } from "@shopware/api-client";
|
|
3
|
+
|
|
4
|
+
// for default types
|
|
5
|
+
// export type operations =
|
|
6
|
+
// import("@shopware/api-client/store-api-types").operations;
|
|
7
|
+
// or for locally generated types
|
|
8
|
+
export type operations = import("./api-types/storeApiTypes").operations;
|
|
9
|
+
|
|
10
|
+
// for default types
|
|
11
|
+
// export type Schemas =
|
|
12
|
+
// import("@shopware/api-client/store-api-types").components["schemas"];
|
|
13
|
+
// or for locally generated types
|
|
14
|
+
export type Schemas =
|
|
15
|
+
import("./api-types/storeApiTypes").components["schemas"];
|
|
16
|
+
|
|
17
|
+
// we're exporting our own Api Client definition as it depends on our own instance
|
|
18
|
+
export type ApiClient = ReturnType<typeof createAPIClient<operations>>;
|
|
19
|
+
}
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { defineVitestConfig } from '@nuxt/test-utils/config'
|
|
2
|
+
|
|
3
|
+
export default defineVitestConfig({
|
|
4
|
+
test: {
|
|
5
|
+
environment: 'nuxt',
|
|
6
|
+
exclude: ['.nuxt/**', 'node_modules/**', 'dist/**'],
|
|
7
|
+
globals: true,
|
|
8
|
+
domEnvironment: 'jsdom',
|
|
9
|
+
coverage: {
|
|
10
|
+
provider: 'v8',
|
|
11
|
+
reportsDirectory: 'coverage',
|
|
12
|
+
reporter: ['text', 'lcov'],
|
|
13
|
+
include: [
|
|
14
|
+
'components/**',
|
|
15
|
+
'composables/**',
|
|
16
|
+
'helpers/**',
|
|
17
|
+
'layouts/**',
|
|
18
|
+
'middleware/**',
|
|
19
|
+
'pages/**',
|
|
20
|
+
'server/**',
|
|
21
|
+
'store/**',
|
|
22
|
+
'utils/**',
|
|
23
|
+
],
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
})
|