diff --git a/packages/nuxt-layer/.editorconfig b/packages/nuxt-layer/.editorconfig
new file mode 100644
index 00000000..007463b4
--- /dev/null
+++ b/packages/nuxt-layer/.editorconfig
@@ -0,0 +1,12 @@
+root = true
+
+[*]
+indent_size = 2
+indent_style = space
+end_of_line = lf
+charset = utf-8
+trim_trailing_whitespace = true
+insert_final_newline = true
+
+[*.md]
+trim_trailing_whitespace = false
diff --git a/packages/nuxt-layer/.eslintrc.cjs b/packages/nuxt-layer/.eslintrc.cjs
new file mode 100644
index 00000000..774ebdad
--- /dev/null
+++ b/packages/nuxt-layer/.eslintrc.cjs
@@ -0,0 +1,4 @@
+module.exports = {
+ root: true,
+ extends: ["@nuxt/eslint-config"],
+};
diff --git a/packages/nuxt-layer/.gitignore b/packages/nuxt-layer/.gitignore
new file mode 100644
index 00000000..2866c971
--- /dev/null
+++ b/packages/nuxt-layer/.gitignore
@@ -0,0 +1,21 @@
+node_modules
+*.log
+.nuxt
+nuxt.d.ts
+.output
+.data
+.env
+package-lock.json
+framework
+dist
+.DS_Store
+
+# Yarn
+.yarn/cache
+.yarn/*state*
+
+# Local History
+.history
+
+# VSCode
+.vscode/
diff --git a/packages/nuxt-layer/.nuxtrc b/packages/nuxt-layer/.nuxtrc
new file mode 100644
index 00000000..9eb49a5d
--- /dev/null
+++ b/packages/nuxt-layer/.nuxtrc
@@ -0,0 +1 @@
+typescript.includeWorkspace = true
diff --git a/packages/nuxt-layer/README.md b/packages/nuxt-layer/README.md
new file mode 100644
index 00000000..7ce15315
--- /dev/null
+++ b/packages/nuxt-layer/README.md
@@ -0,0 +1,73 @@
+# Nuxt Layer Starter
+
+Create Nuxt extendable layer with this GitHub template.
+
+## Setup
+
+Make sure to install the dependencies:
+
+```bash
+pnpm install
+```
+
+## Working on your theme
+
+Your theme is at the root of this repository, it is exactly like a regular Nuxt project, except you can publish it on NPM.
+
+The `.playground` directory should help you on trying your theme during development.
+
+Running `pnpm dev` will prepare and boot `.playground` directory, which imports your theme itself.
+
+## Distributing your theme
+
+Your Nuxt layer is shaped exactly the same as any other Nuxt project, except you can publish it on NPM.
+
+To do so, you only have to check if `files` in `package.json` are valid, then run:
+
+```bash
+npm publish --access public
+```
+
+Once done, your users will only have to run:
+
+```bash
+npm install --save your-theme
+```
+
+Then add the dependency to their `extends` in `nuxt.config`:
+
+```ts
+defineNuxtConfig({
+ extends: 'your-theme'
+})
+```
+
+## Development Server
+
+Start the development server on http://localhost:3000
+
+```bash
+pnpm dev
+```
+
+## Production
+
+Build the application for production:
+
+```bash
+pnpm build
+```
+
+Or statically generate it with:
+
+```bash
+pnpm generate
+```
+
+Locally preview production build:
+
+```bash
+pnpm preview
+```
+
+Checkout the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information.
diff --git a/packages/nuxt-layer/app.config.ts b/packages/nuxt-layer/app.config.ts
new file mode 100644
index 00000000..759c7c44
--- /dev/null
+++ b/packages/nuxt-layer/app.config.ts
@@ -0,0 +1,7 @@
+export default defineAppConfig({
+})
+
+declare module '@nuxt/schema' {
+ interface AppConfigInput {
+ }
+}
diff --git a/packages/nuxt-layer/app.vue b/packages/nuxt-layer/app.vue
new file mode 100644
index 00000000..336749fe
--- /dev/null
+++ b/packages/nuxt-layer/app.vue
@@ -0,0 +1,3 @@
+
+
+
diff --git a/packages/nuxt-layer/nuxt.config.ts b/packages/nuxt-layer/nuxt.config.ts
new file mode 100644
index 00000000..be5dd300
--- /dev/null
+++ b/packages/nuxt-layer/nuxt.config.ts
@@ -0,0 +1,7 @@
+// https://nuxt.com/docs/api/configuration/nuxt-config
+export default defineNuxtConfig({
+ devtools: { enabled: true },
+ build: {
+ transpile: ['tslib', '@apollo/client', '@apollo/client/core', '@vue/apollo-composable', '@vue/apollo-option', 'ts-invariant', 'vue-toastification', '@erpgap/odoo-sdk-api-client']
+ },
+})
diff --git a/packages/nuxt-layer/package.json b/packages/nuxt-layer/package.json
new file mode 100644
index 00000000..62df42e6
--- /dev/null
+++ b/packages/nuxt-layer/package.json
@@ -0,0 +1,24 @@
+{
+ "name": "@erpgap/odoo-nuxt-layer",
+ "type": "module",
+ "version": "0.0.1",
+ "main": "./nuxt.config.ts",
+ "files": [
+ "server"
+ ],
+ "scripts": {
+ "dev": "nuxi dev",
+ "build": "nuxt build",
+ "generate": "nuxt generate",
+ "preview": "nuxt preview",
+ "lint": "eslint .",
+ "postinstall": "nuxt prepare"
+ },
+ "devDependencies": {
+ "@erpgap/odoo-sdk-api-client": "*",
+ "@nuxt/eslint-config": "^0.1.1",
+ "eslint": "^8.28.0",
+ "nuxt": "^3.8.0",
+ "typescript": "^4.9.3"
+ }
+}
\ No newline at end of file
diff --git a/packages/nuxt-layer/server/api/odoo/mutation.post.ts b/packages/nuxt-layer/server/api/odoo/mutation.post.ts
new file mode 100644
index 00000000..6ccc59e9
--- /dev/null
+++ b/packages/nuxt-layer/server/api/odoo/mutation.post.ts
@@ -0,0 +1,20 @@
+import { Endpoints } from '@erpgap/odoo-sdk-api-client';
+
+export default defineEventHandler(async (event) => {
+ const body = await readBody(event);
+
+ const api: Endpoints = event.context.apolloClient.api;
+
+ const response = await api.mutation(body?.[0], body?.[1]);
+
+ if ((response.data as any)?.cookie) {
+ appendResponseHeader(event, 'Set-cookie', (response.data as any)?.cookie);
+ }
+
+ if (response.errors) {
+ throw createError({ statusCode: 400, data: response.errors });
+ }
+
+ return response.data;
+});
+
diff --git a/packages/nuxt-layer/server/api/odoo/query.post.ts b/packages/nuxt-layer/server/api/odoo/query.post.ts
new file mode 100644
index 00000000..514e4e50
--- /dev/null
+++ b/packages/nuxt-layer/server/api/odoo/query.post.ts
@@ -0,0 +1,21 @@
+import { Endpoints } from '@erpgap/odoo-sdk-api-client';
+import { getCached } from '~/server/utils/getCached';
+
+export default defineEventHandler(async (event) => {
+ const body = await readBody(event);
+ const api: Endpoints = event.context.apolloClient.api;
+
+ // const data = await getCached(event, body);
+ const response = await api.query(body?.[0], body?.[1]);
+
+ if ((response.data as any)?.cookie) {
+ appendResponseHeader(event, 'Set-cookie', (response.data as any)?.cookie);
+ }
+
+ if (response.errors) {
+ throw createError(response.errors[0].message);
+ }
+
+ return response.data;
+});
+
diff --git a/packages/nuxt-layer/server/middleware/apolloClient.ts b/packages/nuxt-layer/server/middleware/apolloClient.ts
new file mode 100644
index 00000000..e0389f66
--- /dev/null
+++ b/packages/nuxt-layer/server/middleware/apolloClient.ts
@@ -0,0 +1,20 @@
+import { createApiClient, MiddlewareConfig } from '@erpgap/odoo-sdk-api-client/server';
+import { Queries } from '~/server/queries';
+import { Mutations } from '~/server/mutations';
+
+export default defineEventHandler((event) => {
+
+ const config : MiddlewareConfig = {
+ // https://odoo-cla.ce.promptequation.com/graphql/vsf
+ odooGraphqlUrl: `${process.env.ODOO_BASE_URL}graphql/vsf`,
+ queries: { ...Queries, ...Mutations },
+ headers: {
+ 'REAL-IP': getRequestIP(event) || '',
+ Cookie: `session_id=${parseCookies(event).session_id}`,
+ 'resquest-host': getRequestHost(event)
+ }
+ };
+
+ event.context.apolloClient = createApiClient(config);
+});
+
diff --git a/packages/nuxt-layer/server/mutations/ChangePasswordMutation.ts b/packages/nuxt-layer/server/mutations/ChangePasswordMutation.ts
new file mode 100644
index 00000000..bb58ef3e
--- /dev/null
+++ b/packages/nuxt-layer/server/mutations/ChangePasswordMutation.ts
@@ -0,0 +1,10 @@
+import { gql } from '@apollo/client/core';
+export default gql`
+mutation($newPassword: String!, $token: String!) {
+ changePassword(newPassword: $newPassword, token: $token) {
+ id
+ name
+ email
+ }
+ }
+`;
diff --git a/packages/nuxt-layer/server/mutations/CreateNewAccountMutation.ts b/packages/nuxt-layer/server/mutations/CreateNewAccountMutation.ts
new file mode 100644
index 00000000..76aafe38
--- /dev/null
+++ b/packages/nuxt-layer/server/mutations/CreateNewAccountMutation.ts
@@ -0,0 +1,25 @@
+import { gql } from '@apollo/client/core';
+
+export default gql`
+mutation register($companyName: String!, $firstName: String!, $lastName: String!, $email: String!, $location : String!$password: String!, $phoneNumber: String!) {
+ register(companyName: $companyName, firstName: $firstName, lastName: $lastName, email: $email, location: $location, password: $password, phoneNumber: $phoneNumber) {
+ partner{
+ id
+ name
+ street
+ street2
+ city
+ state
+ {
+ id
+ }
+ country
+ {
+ id
+ }
+ email
+ phone
+ }
+ }
+ }`;
+
diff --git a/packages/nuxt-layer/server/mutations/LoginMutation.ts b/packages/nuxt-layer/server/mutations/LoginMutation.ts
new file mode 100644
index 00000000..b76b450b
--- /dev/null
+++ b/packages/nuxt-layer/server/mutations/LoginMutation.ts
@@ -0,0 +1,23 @@
+import { gql } from '@apollo/client/core';
+export default gql`
+mutation($email: String!, $password: String!) {
+ login(email: $email, password: $password) {
+ partner{
+ id
+ name
+ street
+ street2
+ city
+ state
+ {
+ id
+ }
+ country
+ {
+ id
+ }
+ email
+ phone
+ }
+ }
+ }`;
diff --git a/packages/nuxt-layer/server/mutations/LogoutMutation.ts b/packages/nuxt-layer/server/mutations/LogoutMutation.ts
new file mode 100644
index 00000000..3f8eb4d4
--- /dev/null
+++ b/packages/nuxt-layer/server/mutations/LogoutMutation.ts
@@ -0,0 +1,6 @@
+import { gql } from '@apollo/client/core';
+export default gql`
+mutation {
+ logout
+ }
+`;
diff --git a/packages/nuxt-layer/server/mutations/SendResetPasswordMutation.ts b/packages/nuxt-layer/server/mutations/SendResetPasswordMutation.ts
new file mode 100644
index 00000000..28f67e1f
--- /dev/null
+++ b/packages/nuxt-layer/server/mutations/SendResetPasswordMutation.ts
@@ -0,0 +1,10 @@
+import { gql } from '@apollo/client/core';
+export default gql`
+mutation($email: String!) {
+ resetPassword(email: $email) {
+ id
+ name
+ email
+ }
+ }
+`;
diff --git a/packages/nuxt-layer/server/mutations/UpdatePasswordMutation.ts b/packages/nuxt-layer/server/mutations/UpdatePasswordMutation.ts
new file mode 100644
index 00000000..7671f6d5
--- /dev/null
+++ b/packages/nuxt-layer/server/mutations/UpdatePasswordMutation.ts
@@ -0,0 +1,8 @@
+import { gql } from '@apollo/client/core';
+export default gql`
+mutation($currentPassword: String!, $newPassword: String!){
+ updatePassword(currentPassword: $currentPassword, newPassword: $newPassword) {
+ id
+ }
+ }
+`;
diff --git a/packages/nuxt-layer/server/mutations/index.ts b/packages/nuxt-layer/server/mutations/index.ts
new file mode 100644
index 00000000..4e7d9ffd
--- /dev/null
+++ b/packages/nuxt-layer/server/mutations/index.ts
@@ -0,0 +1,30 @@
+import { DocumentNode } from '@apollo/client';
+import LoginMutation from './LoginMutation';
+import LogoutMutation from './LogoutMutation';
+import CreateNewAccountMutation from './CreateNewAccountMutation';
+import SendResetPasswordMutation from './SendResetPasswordMutation';
+import UpdatePasswordMutation from './UpdatePasswordMutation';
+import ChangePasswordMutation from './ChangePasswordMutation';
+
+enum MutationName {
+ LoginMutation = 'LoginMutation',
+ LogoutMutation = 'LogoutMutation',
+ CreateNewAccountMutation = 'CreateNewAccountMutation',
+ SendResetPasswordMutation = 'SendResetPasswordMutation',
+ UpdatePasswordMutation = 'UpdatePasswordMutation',
+ ChangePasswordMutation = 'ChangePasswordMutation'
+ }
+
+const Mutations : Record = {
+ LoginMutation,
+ LogoutMutation,
+ CreateNewAccountMutation,
+ SendResetPasswordMutation,
+ UpdatePasswordMutation,
+ ChangePasswordMutation
+};
+
+export {
+ Mutations,
+ MutationName
+};
diff --git a/packages/nuxt-layer/server/queries/LoadUserQuery.ts b/packages/nuxt-layer/server/queries/LoadUserQuery.ts
new file mode 100644
index 00000000..dd450a71
--- /dev/null
+++ b/packages/nuxt-layer/server/queries/LoadUserQuery.ts
@@ -0,0 +1,7 @@
+import { gql } from '@apollo/client/core';
+import {partnerFragment} from './fragments';
+export default gql`
+ query LoadUser {
+ ${partnerFragment}
+ }
+`;
diff --git a/packages/nuxt-layer/server/queries/ProductVariantQuery.ts b/packages/nuxt-layer/server/queries/ProductVariantQuery.ts
new file mode 100644
index 00000000..1486d4d1
--- /dev/null
+++ b/packages/nuxt-layer/server/queries/ProductVariantQuery.ts
@@ -0,0 +1,29 @@
+import { gql } from '@apollo/client/core';
+export default gql`
+ query ProductVariant($productTemplateId: Int, $combinationId: [Int]) {
+ productVariant( productTemplateId: $productTemplateId combinationId: $combinationId) {
+ product {
+ id
+ image
+ variantPrice
+ variantPriceAfterDiscount
+ variantHasDiscountedPrice
+ alternativeProducts{
+ id
+ typeId
+ visibility
+ status
+ name
+ displayName
+ sku
+ barcode
+ description
+ }
+ }
+ productTemplateId
+ displayName
+ price
+ listPrice
+ hasDiscountedPrice
+ }
+ }`;
diff --git a/packages/nuxt-layer/server/queries/fragments/index.ts b/packages/nuxt-layer/server/queries/fragments/index.ts
new file mode 100644
index 00000000..4d8bf006
--- /dev/null
+++ b/packages/nuxt-layer/server/queries/fragments/index.ts
@@ -0,0 +1 @@
+export { default as partnerFragment } from './partnerFragment';
diff --git a/packages/nuxt-layer/server/queries/fragments/partnerFragment.ts b/packages/nuxt-layer/server/queries/fragments/partnerFragment.ts
new file mode 100644
index 00000000..2c31541f
--- /dev/null
+++ b/packages/nuxt-layer/server/queries/fragments/partnerFragment.ts
@@ -0,0 +1,19 @@
+export default `
+partner{
+ id
+ name
+ street
+ street2
+ city
+ state
+ {
+ id
+ }
+ country
+ {
+ id
+ }
+ email
+ phone
+ }
+`;
diff --git a/packages/nuxt-layer/server/queries/index.ts b/packages/nuxt-layer/server/queries/index.ts
new file mode 100644
index 00000000..883858d2
--- /dev/null
+++ b/packages/nuxt-layer/server/queries/index.ts
@@ -0,0 +1,18 @@
+import { DocumentNode } from '@apollo/client';
+import ProductVariantQuery from './ProductVariantQuery';
+import LoadUserQuery from './LoadUserQuery';
+
+enum QueryName {
+ ProductVariantQuery = 'ProductVariantQuery',
+ LoadUserQuery = 'LoadUserQuery'
+ }
+
+const Queries : Record = {
+ ProductVariantQuery,
+ LoadUserQuery
+};
+
+export {
+ Queries,
+ QueryName
+};
diff --git a/packages/nuxt-layer/server/tsconfig.json b/packages/nuxt-layer/server/tsconfig.json
new file mode 100644
index 00000000..23082b8e
--- /dev/null
+++ b/packages/nuxt-layer/server/tsconfig.json
@@ -0,0 +1,7 @@
+{
+ "extends": "../.nuxt/tsconfig.server.json",
+ "compilerOptions": {
+ "esModuleInterop": true,
+ "allowSyntheticDefaultImports": true
+ }
+}
diff --git a/packages/nuxt-layer/server/utils/getCached.ts b/packages/nuxt-layer/server/utils/getCached.ts
new file mode 100644
index 00000000..c27f5584
--- /dev/null
+++ b/packages/nuxt-layer/server/utils/getCached.ts
@@ -0,0 +1,10 @@
+import { Endpoints } from '@erpgap/odoo-sdk-api-client';
+import { H3Event } from 'h3';
+
+export const getCached = cachedFunction(async (event: H3Event, body: any) => {
+ const api: Endpoints = event.context.apolloClient.api;
+
+ return await api.query(body?.[0], body?.[1]);
+
+}, { swr: true, maxAge: 300 });
+
diff --git a/packages/nuxt-layer/tsconfig.json b/packages/nuxt-layer/tsconfig.json
new file mode 100644
index 00000000..1d746c1a
--- /dev/null
+++ b/packages/nuxt-layer/tsconfig.json
@@ -0,0 +1,3 @@
+{
+ "extends": "./.playground/.nuxt/tsconfig.json"
+}
diff --git a/playground-nuxt/app/pages/index.vue b/playground-nuxt/app/pages/index.vue
index 6cfc83a0..98ec939d 100644
--- a/playground-nuxt/app/pages/index.vue
+++ b/playground-nuxt/app/pages/index.vue
@@ -5,22 +5,6 @@ import { MutationName } from '~/server/mutations';
const { $sdk } = useNuxtApp();
-const { } = await useFetch('/api/odoo/mutation', {
- method: 'POST',
- body: [
- { mutationName: MutationName.LoginMutation }, {
- email: "ergap@odoo.com",
- password: "123"
- }
- ]
-})
-// await useFetch('/api/odoo/query', {
-// method: 'POST',
-// body: [
-// { queryName: QueryName.LoadUserQuery }
-// ]
-// })
-
onMounted(async () => {
const data = await $sdk().odoo.mutation({ mutationName: MutationName.LoginMutation }, {
email: "ergap@odoo.com",
diff --git a/playground-nuxt/app/server/api/odoo/mutation.post.ts b/playground-nuxt/app/server/api/odoo/mutation.post.ts
index 3ee8365a..6ccc59e9 100644
--- a/playground-nuxt/app/server/api/odoo/mutation.post.ts
+++ b/playground-nuxt/app/server/api/odoo/mutation.post.ts
@@ -5,12 +5,16 @@ export default defineEventHandler(async (event) => {
const api: Endpoints = event.context.apolloClient.api;
- const data = await api.mutation(body?.[0], body?.[1]);
+ const response = await api.mutation(body?.[0], body?.[1]);
- if ((data.data as any)?.cookie) {
- appendResponseHeader(event, 'Set-cookie', (data.data as any)?.cookie);
+ if ((response.data as any)?.cookie) {
+ appendResponseHeader(event, 'Set-cookie', (response.data as any)?.cookie);
}
- return data;
+ if (response.errors) {
+ throw createError({ statusCode: 400, data: response.errors });
+ }
+
+ return response.data;
});
diff --git a/playground-nuxt/app/server/api/odoo/query.post.ts b/playground-nuxt/app/server/api/odoo/query.post.ts
index 90752871..514e4e50 100644
--- a/playground-nuxt/app/server/api/odoo/query.post.ts
+++ b/playground-nuxt/app/server/api/odoo/query.post.ts
@@ -1,15 +1,21 @@
import { Endpoints } from '@erpgap/odoo-sdk-api-client';
+import { getCached } from '~/server/utils/getCached';
export default defineEventHandler(async (event) => {
const body = await readBody(event);
const api: Endpoints = event.context.apolloClient.api;
- const data = await api.query(body?.[0], body?.[1]);
+ // const data = await getCached(event, body);
+ const response = await api.query(body?.[0], body?.[1]);
- if ((data.data as any)?.cookie) {
- appendResponseHeader(event, 'Set-cookie', (data.data as any)?.cookie);
+ if ((response.data as any)?.cookie) {
+ appendResponseHeader(event, 'Set-cookie', (response.data as any)?.cookie);
}
- return data;
+ if (response.errors) {
+ throw createError(response.errors[0].message);
+ }
+
+ return response.data;
});
diff --git a/playground-nuxt/app/server/utils/getCached.ts b/playground-nuxt/app/server/utils/getCached.ts
new file mode 100644
index 00000000..c27f5584
--- /dev/null
+++ b/playground-nuxt/app/server/utils/getCached.ts
@@ -0,0 +1,10 @@
+import { Endpoints } from '@erpgap/odoo-sdk-api-client';
+import { H3Event } from 'h3';
+
+export const getCached = cachedFunction(async (event: H3Event, body: any) => {
+ const api: Endpoints = event.context.apolloClient.api;
+
+ return await api.query(body?.[0], body?.[1]);
+
+}, { swr: true, maxAge: 300 });
+
diff --git a/yarn.lock b/yarn.lock
index ed62fdca..b9ccd7e8 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1309,7 +1309,7 @@
dependencies:
eslint-visitor-keys "^3.3.0"
-"@eslint-community/regexpp@^4.5.1", "@eslint-community/regexpp@^4.6.1":
+"@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.5.1", "@eslint-community/regexpp@^4.6.1":
version "4.9.1"
resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.9.1.tgz#449dfa81a57a1d755b09aa58d826c1262e4283b4"
integrity sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==
@@ -1334,6 +1334,11 @@
resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.51.0.tgz#6d419c240cfb2b66da37df230f7e7eef801c32fa"
integrity sha512-HxjQ8Qn+4SI3/AFv6sOrDB+g6PpUTDwSJiQqOrnneEk8L71161srI9gjzzZvYVbzHiVg/BvcH95+cK/zfIt4pg==
+"@eslint/js@8.52.0":
+ version "8.52.0"
+ resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.52.0.tgz#78fe5f117840f69dc4a353adf9b9cd926353378c"
+ integrity sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA==
+
"@fastify/busboy@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@fastify/busboy/-/busboy-2.0.0.tgz#f22824caff3ae506b18207bad4126dbc6ccdb6b8"
@@ -1902,7 +1907,7 @@
dependencies:
"@hapi/hoek" "^9.0.0"
-"@humanwhocodes/config-array@^0.11.11":
+"@humanwhocodes/config-array@^0.11.11", "@humanwhocodes/config-array@^0.11.13":
version "0.11.13"
resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.13.tgz#075dc9684f40a531d9b26b0822153c1e832ee297"
integrity sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==
@@ -3017,6 +3022,17 @@
which "^3.0.1"
ws "^8.14.2"
+"@nuxt/eslint-config@^0.1.1":
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/@nuxt/eslint-config/-/eslint-config-0.1.1.tgz#99058b84f92aa2c67028a19e6c66cdf5beb9f5f6"
+ integrity sha512-znm1xlbhldUubB2XGx6Ca5uarwlIieKf0o8CtxtF6eEauDbpa3T2p3JnTcdguMW2nj1YPneoGmhshANfOlghiQ==
+ dependencies:
+ "@rushstack/eslint-patch" "^1.2.0"
+ "@typescript-eslint/eslint-plugin" "^5.45.1"
+ "@typescript-eslint/parser" "^5.45.1"
+ eslint-plugin-vue "^9.8.0"
+ typescript "^4.9.3"
+
"@nuxt/kit@3.8.0", "@nuxt/kit@^3.5.3", "@nuxt/kit@^3.6.5", "@nuxt/kit@^3.7.4":
version "3.8.0"
resolved "https://registry.yarnpkg.com/@nuxt/kit/-/kit-3.8.0.tgz#cd8a32981c2fe151e0acde7145f7e4ca38920f24"
@@ -3804,6 +3820,11 @@
estree-walker "^2.0.2"
picomatch "^2.3.1"
+"@rushstack/eslint-patch@^1.2.0":
+ version "1.5.1"
+ resolved "https://registry.yarnpkg.com/@rushstack/eslint-patch/-/eslint-patch-1.5.1.tgz#5f1b518ec5fa54437c0b7c4a821546c64fed6922"
+ integrity sha512-6i/8UoL0P5y4leBIGzvkZdS85RDMG9y1ihZzmTZQ5LdHUYmZ7pKFoj8X0236s3lusPs1Fa5HTQUpwI+UfTcmeA==
+
"@sideway/address@^4.1.3":
version "4.1.4"
resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0"
@@ -4164,7 +4185,7 @@
resolved "https://registry.yarnpkg.com/@types/js-yaml/-/js-yaml-4.0.8.tgz#7574e422d70d4a1b41f517d1d9abc61be2299a97"
integrity sha512-m6jnPk1VhlYRiLFm3f8X9Uep761f+CK8mHyS65LutH2OhmBF0BeMEjHgg05usH8PLZMWWc/BUR9RPmkvpWnyRA==
-"@types/json-schema@^7.0.12", "@types/json-schema@^7.0.8":
+"@types/json-schema@^7.0.12", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9":
version "7.0.14"
resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.14.tgz#74a97a5573980802f32c8e47b663530ab3b6b7d1"
integrity sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw==
@@ -4262,7 +4283,7 @@
dependencies:
"@types/node" "*"
-"@types/semver@^7.5.0":
+"@types/semver@^7.3.12", "@types/semver@^7.5.0":
version "7.5.4"
resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.4.tgz#0a41252ad431c473158b22f9bfb9a63df7541cff"
integrity sha512-MMzuxN3GdFwskAnb6fz0orFvhfqi752yjaXylr0Rp4oDg5H0Zn1IuyRhDVvYOwAXoJirx2xuS16I3WjxnAIHiQ==
@@ -4338,6 +4359,22 @@
dependencies:
"@types/yargs-parser" "*"
+"@typescript-eslint/eslint-plugin@^5.45.1":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz#aeef0328d172b9e37d9bab6dbc13b87ed88977db"
+ integrity sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==
+ dependencies:
+ "@eslint-community/regexpp" "^4.4.0"
+ "@typescript-eslint/scope-manager" "5.62.0"
+ "@typescript-eslint/type-utils" "5.62.0"
+ "@typescript-eslint/utils" "5.62.0"
+ debug "^4.3.4"
+ graphemer "^1.4.0"
+ ignore "^5.2.0"
+ natural-compare-lite "^1.4.0"
+ semver "^7.3.7"
+ tsutils "^3.21.0"
+
"@typescript-eslint/eslint-plugin@^6.1.0":
version "6.8.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.8.0.tgz#06abe4265e7c82f20ade2dcc0e3403c32d4f148b"
@@ -4355,6 +4392,24 @@
semver "^7.5.4"
ts-api-utils "^1.0.1"
+"@typescript-eslint/parser@^5.45.1":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.62.0.tgz#1b63d082d849a2fcae8a569248fbe2ee1b8a56c7"
+ integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==
+ dependencies:
+ "@typescript-eslint/scope-manager" "5.62.0"
+ "@typescript-eslint/types" "5.62.0"
+ "@typescript-eslint/typescript-estree" "5.62.0"
+ debug "^4.3.4"
+
+"@typescript-eslint/scope-manager@5.62.0":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c"
+ integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==
+ dependencies:
+ "@typescript-eslint/types" "5.62.0"
+ "@typescript-eslint/visitor-keys" "5.62.0"
+
"@typescript-eslint/scope-manager@6.8.0":
version "6.8.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.8.0.tgz#5cac7977385cde068ab30686889dd59879811efd"
@@ -4363,6 +4418,16 @@
"@typescript-eslint/types" "6.8.0"
"@typescript-eslint/visitor-keys" "6.8.0"
+"@typescript-eslint/type-utils@5.62.0":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz#286f0389c41681376cdad96b309cedd17d70346a"
+ integrity sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==
+ dependencies:
+ "@typescript-eslint/typescript-estree" "5.62.0"
+ "@typescript-eslint/utils" "5.62.0"
+ debug "^4.3.4"
+ tsutils "^3.21.0"
+
"@typescript-eslint/type-utils@6.8.0":
version "6.8.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.8.0.tgz#50365e44918ca0fd159844b5d6ea96789731e11f"
@@ -4373,11 +4438,29 @@
debug "^4.3.4"
ts-api-utils "^1.0.1"
+"@typescript-eslint/types@5.62.0":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f"
+ integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==
+
"@typescript-eslint/types@6.8.0":
version "6.8.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.8.0.tgz#1ab5d4fe1d613e3f65f6684026ade6b94f7e3ded"
integrity sha512-p5qOxSum7W3k+llc7owEStXlGmSl8FcGvhYt8Vjy7FqEnmkCVlM3P57XQEGj58oqaBWDQXbJDZxwUWMS/EAPNQ==
+"@typescript-eslint/typescript-estree@5.62.0":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b"
+ integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==
+ dependencies:
+ "@typescript-eslint/types" "5.62.0"
+ "@typescript-eslint/visitor-keys" "5.62.0"
+ debug "^4.3.4"
+ globby "^11.1.0"
+ is-glob "^4.0.3"
+ semver "^7.3.7"
+ tsutils "^3.21.0"
+
"@typescript-eslint/typescript-estree@6.8.0":
version "6.8.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.8.0.tgz#9565f15e0cd12f55cf5aa0dfb130a6cb0d436ba1"
@@ -4391,6 +4474,20 @@
semver "^7.5.4"
ts-api-utils "^1.0.1"
+"@typescript-eslint/utils@5.62.0":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86"
+ integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==
+ dependencies:
+ "@eslint-community/eslint-utils" "^4.2.0"
+ "@types/json-schema" "^7.0.9"
+ "@types/semver" "^7.3.12"
+ "@typescript-eslint/scope-manager" "5.62.0"
+ "@typescript-eslint/types" "5.62.0"
+ "@typescript-eslint/typescript-estree" "5.62.0"
+ eslint-scope "^5.1.1"
+ semver "^7.3.7"
+
"@typescript-eslint/utils@6.8.0":
version "6.8.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.8.0.tgz#d42939c2074c6b59844d0982ce26a51d136c4029"
@@ -4404,6 +4501,14 @@
"@typescript-eslint/typescript-estree" "6.8.0"
semver "^7.5.4"
+"@typescript-eslint/visitor-keys@5.62.0":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e"
+ integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==
+ dependencies:
+ "@typescript-eslint/types" "5.62.0"
+ eslint-visitor-keys "^3.3.0"
+
"@typescript-eslint/visitor-keys@6.8.0":
version "6.8.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.8.0.tgz#cffebed56ae99c45eba901c378a6447b06be58b8"
@@ -4412,6 +4517,11 @@
"@typescript-eslint/types" "6.8.0"
eslint-visitor-keys "^3.4.1"
+"@ungap/structured-clone@^1.2.0":
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406"
+ integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==
+
"@unhead/dom@1.7.4", "@unhead/dom@^1.7.4":
version "1.7.4"
resolved "https://registry.yarnpkg.com/@unhead/dom/-/dom-1.7.4.tgz#d6d5899245a0b4e16b01d08553bcde570f8eb00a"
@@ -7865,7 +7975,28 @@ escodegen@^2.0.0:
optionalDependencies:
source-map "~0.6.1"
-eslint-scope@^7.2.2:
+eslint-plugin-vue@^9.8.0:
+ version "9.17.0"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-9.17.0.tgz#4501547373f246547083482838b4c8f4b28e5932"
+ integrity sha512-r7Bp79pxQk9I5XDP0k2dpUC7Ots3OSWgvGZNu3BxmKK6Zg7NgVtcOB6OCna5Kb9oQwJPl5hq183WD0SY5tZtIQ==
+ dependencies:
+ "@eslint-community/eslint-utils" "^4.4.0"
+ natural-compare "^1.4.0"
+ nth-check "^2.1.1"
+ postcss-selector-parser "^6.0.13"
+ semver "^7.5.4"
+ vue-eslint-parser "^9.3.1"
+ xml-name-validator "^4.0.0"
+
+eslint-scope@^5.1.1:
+ version "5.1.1"
+ resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"
+ integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==
+ dependencies:
+ esrecurse "^4.3.0"
+ estraverse "^4.1.1"
+
+eslint-scope@^7.1.1, eslint-scope@^7.2.2:
version "7.2.2"
resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f"
integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==
@@ -7878,6 +8009,50 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800"
integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
+eslint@^8.28.0:
+ version "8.52.0"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.52.0.tgz#d0cd4a1fac06427a61ef9242b9353f36ea7062fc"
+ integrity sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==
+ dependencies:
+ "@eslint-community/eslint-utils" "^4.2.0"
+ "@eslint-community/regexpp" "^4.6.1"
+ "@eslint/eslintrc" "^2.1.2"
+ "@eslint/js" "8.52.0"
+ "@humanwhocodes/config-array" "^0.11.13"
+ "@humanwhocodes/module-importer" "^1.0.1"
+ "@nodelib/fs.walk" "^1.2.8"
+ "@ungap/structured-clone" "^1.2.0"
+ ajv "^6.12.4"
+ chalk "^4.0.0"
+ cross-spawn "^7.0.2"
+ debug "^4.3.2"
+ doctrine "^3.0.0"
+ escape-string-regexp "^4.0.0"
+ eslint-scope "^7.2.2"
+ eslint-visitor-keys "^3.4.3"
+ espree "^9.6.1"
+ esquery "^1.4.2"
+ esutils "^2.0.2"
+ fast-deep-equal "^3.1.3"
+ file-entry-cache "^6.0.1"
+ find-up "^5.0.0"
+ glob-parent "^6.0.2"
+ globals "^13.19.0"
+ graphemer "^1.4.0"
+ ignore "^5.2.0"
+ imurmurhash "^0.1.4"
+ is-glob "^4.0.0"
+ is-path-inside "^3.0.3"
+ js-yaml "^4.1.0"
+ json-stable-stringify-without-jsonify "^1.0.1"
+ levn "^0.4.1"
+ lodash.merge "^4.6.2"
+ minimatch "^3.1.2"
+ natural-compare "^1.4.0"
+ optionator "^0.9.3"
+ strip-ansi "^6.0.1"
+ text-table "^0.2.0"
+
eslint@^8.45.0:
version "8.51.0"
resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.51.0.tgz#4a82dae60d209ac89a5cff1604fea978ba4950f3"
@@ -7921,7 +8096,7 @@ eslint@^8.45.0:
strip-ansi "^6.0.1"
text-table "^0.2.0"
-espree@^9.6.0, espree@^9.6.1:
+espree@^9.3.1, espree@^9.6.0, espree@^9.6.1:
version "9.6.1"
resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f"
integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==
@@ -7935,7 +8110,7 @@ esprima@^4.0.0, esprima@^4.0.1, esprima@~4.0.0:
resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
-esquery@^1.4.2:
+esquery@^1.4.0, esquery@^1.4.2:
version "1.5.0"
resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b"
integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==
@@ -7949,6 +8124,11 @@ esrecurse@^4.3.0:
dependencies:
estraverse "^5.2.0"
+estraverse@^4.1.1:
+ version "4.3.0"
+ resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"
+ integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
+
estraverse@^5.1.0, estraverse@^5.2.0:
version "5.3.0"
resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"
@@ -12414,6 +12594,11 @@ napi-wasm@^1.1.0:
resolved "https://registry.yarnpkg.com/napi-wasm/-/napi-wasm-1.1.0.tgz#bbe617823765ae9c1bc12ff5942370eae7b2ba4e"
integrity sha512-lHwIAJbmLSjF9VDRm9GoVOy9AGp3aIvkjv+Kvz9h16QR3uSVYH78PNQUnT2U4X53mhlnV2M7wrhibQ3GHicDmg==
+natural-compare-lite@^1.4.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4"
+ integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==
+
natural-compare@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
@@ -12986,7 +13171,7 @@ npmlog@^7.0.1:
gauge "^5.0.0"
set-blocking "^2.0.0"
-nth-check@^2.0.1:
+nth-check@^2.0.1, nth-check@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d"
integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==
@@ -14194,7 +14379,7 @@ postcss-reduce-transforms@^6.0.0:
dependencies:
postcss-value-parser "^4.2.0"
-postcss-selector-parser@^6.0.10, postcss-selector-parser@^6.0.11, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5:
+postcss-selector-parser@^6.0.10, postcss-selector-parser@^6.0.11, postcss-selector-parser@^6.0.13, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5:
version "6.0.13"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz#d05d8d76b1e8e173257ef9d60b706a8e5e99bf1b"
integrity sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==
@@ -15201,7 +15386,7 @@ semver@7.3.8:
dependencies:
lru-cache "^6.0.0"
-semver@7.5.4, semver@7.x, semver@^7.0.0, semver@^7.1.1, semver@^7.1.3, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8, semver@^7.5.0, semver@^7.5.3, semver@^7.5.4:
+semver@7.5.4, semver@7.x, semver@^7.0.0, semver@^7.1.1, semver@^7.1.3, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.6, semver@^7.3.7, semver@^7.3.8, semver@^7.5.0, semver@^7.5.3, semver@^7.5.4:
version "7.5.4"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e"
integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
@@ -16530,7 +16715,7 @@ tsconfig-paths@^4.1.2:
minimist "^1.2.6"
strip-bom "^3.0.0"
-tslib@^1.9.0:
+tslib@^1.8.1, tslib@^1.9.0:
version "1.14.1"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
@@ -16555,6 +16740,13 @@ tsscmp@1.0.6:
resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.6.tgz#85b99583ac3589ec4bfef825b5000aa911d605eb"
integrity sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==
+tsutils@^3.21.0:
+ version "3.21.0"
+ resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623"
+ integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==
+ dependencies:
+ tslib "^1.8.1"
+
tty-table@^4.1.5:
version "4.2.2"
resolved "https://registry.yarnpkg.com/tty-table/-/tty-table-4.2.2.tgz#2a548db0278be5023ed40280001e1908bb823463"
@@ -16719,7 +16911,7 @@ typedarray@^0.0.6:
resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==
-"typescript@^3 || ^4", typescript@^4.2.2:
+"typescript@^3 || ^4", typescript@^4.2.2, typescript@^4.9.3:
version "4.9.5"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a"
integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==
@@ -17329,6 +17521,19 @@ vue-devtools-stub@^0.1.0:
resolved "https://registry.yarnpkg.com/vue-devtools-stub/-/vue-devtools-stub-0.1.0.tgz#a65b9485edecd4273cedcb8102c739b83add2c81"
integrity sha512-RutnB7X8c5hjq39NceArgXg28WZtZpGc3+J16ljMiYnFhKvd8hITxSWQSQ5bvldxMDU6gG5mkxl1MTQLXckVSQ==
+vue-eslint-parser@^9.3.1:
+ version "9.3.2"
+ resolved "https://registry.yarnpkg.com/vue-eslint-parser/-/vue-eslint-parser-9.3.2.tgz#6f9638e55703f1c77875a19026347548d93fd499"
+ integrity sha512-q7tWyCVaV9f8iQyIA5Mkj/S6AoJ9KBN8IeUSf3XEmBrOtxOZnfTg5s4KClbZBCK3GtnT/+RyCLZyDHuZwTuBjg==
+ dependencies:
+ debug "^4.3.4"
+ eslint-scope "^7.1.1"
+ eslint-visitor-keys "^3.3.0"
+ espree "^9.3.1"
+ esquery "^1.4.0"
+ lodash "^4.17.21"
+ semver "^7.3.6"
+
vue-router@^4.2.5:
version "4.2.5"
resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-4.2.5.tgz#b9e3e08f1bd9ea363fdd173032620bc50cf0e98a"
@@ -17761,6 +17966,11 @@ xml-name-validator@^3.0.0:
resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a"
integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==
+xml-name-validator@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz#79a006e2e63149a8600f15430f0a4725d1524835"
+ integrity sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==
+
xml2js@0.5.0:
version "0.5.0"
resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.5.0.tgz#d9440631fbb2ed800203fad106f2724f62c493b7"