-
+
+
{{ data.product.name }}
-
+
{{ stripHTML(data.product.description) }}
-
+
{{ data.product.stockQuantity }} in stock
-
+
Varianter
-
-
- ADD TO CART
+
+ ADD TO CART
@@ -49,7 +75,7 @@
* @prop {string} slug - The slug of the product to display.
*/
-import { ref, watch } from 'vue';
+import { ref, watch } from "vue";
import GET_SINGLE_PRODUCT_QUERY from "@/apollo/queries/GET_SINGLE_PRODUCT_QUERY.gql";
import ADD_TO_CART_MUTATION from "@/apollo/mutations/ADD_TO_CART_MUTATION.gql";
@@ -79,7 +105,8 @@ watch(
() => data.value,
(dataValue) => {
if (dataValue && dataValue.product?.variations?.nodes?.length > 0) {
- selectedVariation.value = dataValue.product?.variations?.nodes[0].databaseId;
+ selectedVariation.value =
+ dataValue.product?.variations?.nodes[0].databaseId;
}
},
{ immediate: true }
diff --git a/layouts/default.vue b/layouts/default.vue
index f6019c78..4795cd4c 100644
--- a/layouts/default.vue
+++ b/layouts/default.vue
@@ -1,11 +1,11 @@
diff --git a/nuxt.config.js b/nuxt.config.js
index caa90628..3be7f9d2 100644
--- a/nuxt.config.js
+++ b/nuxt.config.js
@@ -3,7 +3,7 @@
import { defineNuxtConfig } from "nuxt/config";
export default defineNuxtConfig({
- ssr: false,
+ ssr: true,
components: true,
css: ["~/assets/css/main.css", "~/assets/css/animate.min.css"],
modules: [
diff --git a/package-lock.json b/package-lock.json
index 36692f06..174934fb 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1513,11 +1513,11 @@
},
"node_modules/@nuxt/kit": {
"name": "@nuxt/kit-edge",
- "version": "3.6.0-28102821.c6a7527e",
- "resolved": "https://registry.npmjs.org/@nuxt/kit-edge/-/kit-edge-3.6.0-28102821.c6a7527e.tgz",
- "integrity": "sha512-2RxnucYjf1I5grWhTEVunSR5V9gL52O70qv8YOShpjTJumOenbwoSqoc1PaOK2WS+My2F+6UI9MbaYkqXyWgLQ==",
+ "version": "3.6.0-28105790.c884a95f",
+ "resolved": "https://registry.npmjs.org/@nuxt/kit-edge/-/kit-edge-3.6.0-28105790.c884a95f.tgz",
+ "integrity": "sha512-6lzJMJ7zRyucsVbmI67ZhAy9nFAkILCyGYAQ8qmfc2YIdJa5VHlkU/Yjh/ZLajXyZQsuJgHHY5jXPH69+YqCJg==",
"dependencies": {
- "@nuxt/schema": "npm:@nuxt/schema-edge@3.6.0-28102821.c6a7527e",
+ "@nuxt/schema": "npm:@nuxt/schema-edge@3.6.0-28105790.c884a95f",
"c12": "^1.4.1",
"consola": "^3.1.0",
"defu": "^6.1.2",
@@ -1532,7 +1532,7 @@
"scule": "^1.0.0",
"semver": "^7.5.1",
"unctx": "^2.3.1",
- "unimport": "^3.0.7",
+ "unimport": "^3.0.8",
"untyped": "^1.3.2"
},
"engines": {
@@ -1541,9 +1541,9 @@
},
"node_modules/@nuxt/schema": {
"name": "@nuxt/schema-edge",
- "version": "3.6.0-28102821.c6a7527e",
- "resolved": "https://registry.npmjs.org/@nuxt/schema-edge/-/schema-edge-3.6.0-28102821.c6a7527e.tgz",
- "integrity": "sha512-KhKzsm+z2B9q2+n0dIYHtMPOBX+WFv0tOflz8K8Ifl5Uk2cDsOtsIg4Qxqg8Jw+z0AV/0mrUqGSs5mjyVvdaGQ==",
+ "version": "3.6.0-28105790.c884a95f",
+ "resolved": "https://registry.npmjs.org/@nuxt/schema-edge/-/schema-edge-3.6.0-28105790.c884a95f.tgz",
+ "integrity": "sha512-wm2daBoD/yB8T68fpisGXpk7HLcltP0HopAjceRURncwQRFCTJnPZJr2JBitj7k1PrFrEM/0UUKy1Ra/E8mBdA==",
"dependencies": {
"defu": "^6.1.2",
"hookable": "^5.5.3",
@@ -1552,7 +1552,7 @@
"postcss-import-resolver": "^2.0.0",
"std-env": "^3.3.3",
"ufo": "^1.1.2",
- "unimport": "^3.0.7",
+ "unimport": "^3.0.8",
"untyped": "^1.3.2"
},
"engines": {
@@ -1652,6 +1652,21 @@
"node": ">=12"
}
},
+ "node_modules/@nuxt/telemetry/node_modules/is-docker": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz",
+ "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==",
+ "dev": true,
+ "bin": {
+ "is-docker": "cli.js"
+ },
+ "engines": {
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/@nuxt/ui-templates": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/@nuxt/ui-templates/-/ui-templates-1.1.1.tgz",
@@ -2559,14 +2574,15 @@
}
},
"node_modules/@vue-macros/common": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/@vue-macros/common/-/common-1.3.3.tgz",
- "integrity": "sha512-bjHomaf3mu+ARMD4DX22C/lLVVocbmwgcLH7bg1rK4kB5ghesgShZTQIrNR6ZjifQmdGc/2jjZ/25kSb364uEA==",
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/@vue-macros/common/-/common-1.4.0.tgz",
+ "integrity": "sha512-Wnpk6OVPYw7ZrrShOS7RZL5AINFbuQWfkNCVWVESSPY+8id75YOKGzMs4X5YcNayywdSGEvV7ntVJ2RQ+ez21A==",
"dev": true,
"dependencies": {
- "@babel/types": "^7.21.5",
+ "@babel/types": "^7.22.4",
"@rollup/pluginutils": "^5.0.2",
"@vue/compiler-sfc": "^3.3.4",
+ "ast-kit": "^0.6.2",
"local-pkg": "^0.4.3",
"magic-string-ast": "^0.1.2"
},
@@ -3057,6 +3073,20 @@
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"dev": true
},
+ "node_modules/ast-kit": {
+ "version": "0.6.5",
+ "resolved": "https://registry.npmjs.org/ast-kit/-/ast-kit-0.6.5.tgz",
+ "integrity": "sha512-XCg0VWvmWU2T/6aMp8VRfJWZ6LZv1P0o8otWY7RAGtfKj0qGi45vtnKNkltJhu9tmbQNZxv+gJA4o7FtLDfmWg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/parser": "^7.22.4",
+ "@rollup/pluginutils": "^5.0.2",
+ "pathe": "^1.1.0"
+ },
+ "engines": {
+ "node": ">=16.14.0"
+ }
+ },
"node_modules/ast-walker-scope": {
"version": "0.4.2",
"resolved": "https://registry.npmjs.org/ast-walker-scope/-/ast-walker-scope-0.4.2.tgz",
@@ -3356,6 +3386,20 @@
"node": ">=8"
}
},
+ "node_modules/cacheable-request/node_modules/get-stream": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
+ "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
+ "dependencies": {
+ "pump": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/camelcase": {
"version": "6.3.0",
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
@@ -3390,9 +3434,9 @@
}
},
"node_modules/caniuse-lite": {
- "version": "1.0.30001495",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001495.tgz",
- "integrity": "sha512-F6x5IEuigtUfU5ZMQK2jsy5JqUUlEFRVZq8bO2a+ysq5K7jD6PPc9YXZj78xDNS3uNchesp1Jw47YXEqr+Viyg==",
+ "version": "1.0.30001497",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001497.tgz",
+ "integrity": "sha512-I4/duVK4wL6rAK/aKZl3HXB4g+lIZvaT4VLAn2rCgJ38jVLb0lv2Xug6QuqmxXFVRJMF74SPPWPJ/1Sdm3vCzw==",
"funding": [
{
"type": "opencollective",
@@ -4267,9 +4311,9 @@
"dev": true
},
"node_modules/electron-to-chromium": {
- "version": "1.4.425",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.425.tgz",
- "integrity": "sha512-wv1NufHxu11zfDbY4fglYQApMswleE9FL/DSeyOyauVXDZ+Kco96JK/tPfBUaDqfRarYp2WH2hJ/5UnVywp9Jg=="
+ "version": "1.4.426",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.426.tgz",
+ "integrity": "sha512-dWuNH+XUT9hdFHASfMpcZGW5kUyJvllumJkXaXiswuCkoaFIFI89aykBPuHEi1YUWQGRCqvIO0BUdmeFJ4W4Ww=="
},
"node_modules/emoji-regex": {
"version": "8.0.0",
@@ -4435,18 +4479,6 @@
"url": "https://github.com/sindresorhus/execa?sponsor=1"
}
},
- "node_modules/execa/node_modules/get-stream": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
- "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==",
- "devOptional": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/expand-template": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz",
@@ -4751,14 +4783,12 @@
"devOptional": true
},
"node_modules/get-stream": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
- "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
- "dependencies": {
- "pump": "^3.0.0"
- },
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
+ "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==",
+ "devOptional": true,
"engines": {
- "node": ">=8"
+ "node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -5375,15 +5405,15 @@
}
},
"node_modules/is-docker": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz",
- "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==",
- "dev": true,
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz",
+ "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==",
+ "devOptional": true,
"bin": {
"is-docker": "cli.js"
},
"engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ "node": ">=8"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -5509,21 +5539,6 @@
"node": ">=8"
}
},
- "node_modules/is-wsl/node_modules/is-docker": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz",
- "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==",
- "devOptional": true,
- "bin": {
- "is-docker": "cli.js"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
@@ -6283,9 +6298,9 @@
"dev": true
},
"node_modules/node-abi": {
- "version": "3.44.0",
- "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.44.0.tgz",
- "integrity": "sha512-MYjZTiAETGG28/7fBH1RjuY7vzDwYC5q5U4whCgM4jNEQcC0gAvN339LxXukmL2T2tGpzYTfp+LZ5RN7E5DwEg==",
+ "version": "3.45.0",
+ "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.45.0.tgz",
+ "integrity": "sha512-iwXuFrMAcFVi/ZoZiqq8BzAdsLw9kxDfTC0HMyjXfSL/6CSDAGD5UmR7azrAgWV1zKYq7dUUMj4owusBWKLsiQ==",
"optional": true,
"dependencies": {
"semver": "^7.3.5"
@@ -6691,18 +6706,6 @@
"url": "https://github.com/sindresorhus/execa?sponsor=1"
}
},
- "node_modules/nypm/node_modules/get-stream": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
- "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/nypm/node_modules/human-signals": {
"version": "4.3.1",
"resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz",
@@ -6876,21 +6879,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/open/node_modules/is-docker": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz",
- "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==",
- "dev": true,
- "bin": {
- "is-docker": "cli.js"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/openapi-typescript": {
"version": "6.2.6",
"resolved": "https://registry.npmjs.org/openapi-typescript/-/openapi-typescript-6.2.6.tgz",
@@ -9260,9 +9248,9 @@
}
},
"node_modules/tslib": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz",
- "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==",
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.1.tgz",
+ "integrity": "sha512-KaI6gPil5m9vF7DKaoXxx1ia9fxS4qG5YveErRRVknPDXXriu5M8h48YRjB6h5ZUOKuAKlSJYb0GaDe8I39fRw==",
"dev": true
},
"node_modules/tunnel-agent": {
@@ -9390,17 +9378,17 @@
}
},
"node_modules/unimport": {
- "version": "3.0.7",
- "resolved": "https://registry.npmjs.org/unimport/-/unimport-3.0.7.tgz",
- "integrity": "sha512-2dVQUxJEGcrSZ0U4qtwJVODrlfyGcwmIOoHVqbAFFUx7kPoEN5JWr1cZFhLwoAwTmZOvqAm3YIkzv1engIQocg==",
+ "version": "3.0.8",
+ "resolved": "https://registry.npmjs.org/unimport/-/unimport-3.0.8.tgz",
+ "integrity": "sha512-AOt6xj3QMwqcTZRPB+NhFkyVEjCKnpTVoPm5x6424zz2NYYtCfym2bpJofzPHIJKPNIh5ko2/t2q46ZIMgdmbw==",
"dependencies": {
"@rollup/pluginutils": "^5.0.2",
"escape-string-regexp": "^5.0.0",
"fast-glob": "^3.2.12",
"local-pkg": "^0.4.3",
"magic-string": "^0.30.0",
- "mlly": "^1.2.1",
- "pathe": "^1.1.0",
+ "mlly": "^1.3.0",
+ "pathe": "^1.1.1",
"pkg-types": "^1.0.3",
"scule": "^1.0.0",
"strip-literal": "^1.0.1",
diff --git a/package.json b/package.json
index c4e15b5a..cc251726 100644
--- a/package.json
+++ b/package.json
@@ -21,7 +21,9 @@
"tailwindcss": "^3.3.2"
},
"overrides": {
- "vue": "^3.3.4"
+ "vue": "^3.3.4",
+ "tslib": "2.5.1"
+
},
"dependencies": {
"@formkit/nuxt": "^1.0.0-220222.4d97af0",
diff --git a/tsconfig.json b/tsconfig.json
new file mode 100644
index 00000000..dbbf8275
--- /dev/null
+++ b/tsconfig.json
@@ -0,0 +1,6 @@
+{
+ "extends": "./.nuxt/tsconfig.json",
+ "compilerOptions": {
+ "allowJs": true
+ }
+ }
\ No newline at end of file