This is an automated email from the ASF dual-hosted git repository.
kinow pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/jena.git
The following commit(s) were added to refs/heads/main by this push:
new c93343b83a [GH-2456]: Change the project type to module, and update
files to match the import type (import, from ES6)
c93343b83a is described below
commit c93343b83abef715127f8a85d64e7281aab8a739
Author: Bruno P. Kinoshita <[email protected]>
AuthorDate: Mon May 6 22:30:20 2024 +0200
[GH-2456]: Change the project type to module, and update files to match the
import type (import, from ES6)
---
jena-fuseki2/jena-fuseki-ui/.eslintrc.js | 61 ---------
.../{cypress.config.js => cypress.config.mjs} | 31 +++--
jena-fuseki2/jena-fuseki-ui/eslint.config.js | 63 +++++++++
jena-fuseki2/jena-fuseki-ui/package.json | 8 +-
jena-fuseki2/jena-fuseki-ui/src/main.js | 2 +-
.../mixins/current-dataset-navigation-guards.js | 1 +
.../jena-fuseki-ui/src/mixins/list-datasets.js | 2 -
.../src/services/mock/json-server.js | 18 ++-
.../jena-fuseki-ui/src/views/dataset/Edit.vue | 1 -
.../jena-fuseki-ui/src/views/dataset/Query.vue | 2 +
.../jena-fuseki-ui/tests/e2e/specs/datasets.cy.js | 20 ++-
.../jena-fuseki-ui/tests/e2e/specs/query.cy.js | 22 +++-
.../jena-fuseki-ui/tests/e2e/specs/upload.cy.js | 20 ++-
jena-fuseki2/jena-fuseki-ui/vite.config.js | 7 +-
jena-fuseki2/jena-fuseki-ui/yarn.lock | 141 ++++++++++-----------
15 files changed, 215 insertions(+), 184 deletions(-)
diff --git a/jena-fuseki2/jena-fuseki-ui/.eslintrc.js
b/jena-fuseki2/jena-fuseki-ui/.eslintrc.js
deleted file mode 100644
index a40740b35e..0000000000
--- a/jena-fuseki2/jena-fuseki-ui/.eslintrc.js
+++ /dev/null
@@ -1,61 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-module.exports = {
- root: true,
- env: {
- node: true,
- es2021: true,
- },
- extends: [
- 'plugin:vue/vue3-recommended'
- ],
- parserOptions: {
- requireConfigFile: false
- },
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
- 'vue/custom-event-name-casing': 'off',
- 'vue/multi-word-component-names': 'off',
- 'vue/no-reserved-component-names': 'off',
- 'vue/order-in-components': 'off',
- 'vue/max-attributes-per-line': 'off',
- 'vue/attributes-order': 'off',
- 'vue/html-self-closing': 'off'
- },
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)'
- ],
- env: {
- mocha: true
- }
- },
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)'
- ],
- env: {
- mocha: true
- }
- }
- ]
-}
diff --git a/jena-fuseki2/jena-fuseki-ui/cypress.config.js
b/jena-fuseki2/jena-fuseki-ui/cypress.config.mjs
similarity index 68%
rename from jena-fuseki2/jena-fuseki-ui/cypress.config.js
rename to jena-fuseki2/jena-fuseki-ui/cypress.config.mjs
index c00726b47d..21cd369e82 100644
--- a/jena-fuseki2/jena-fuseki-ui/cypress.config.js
+++ b/jena-fuseki2/jena-fuseki-ui/cypress.config.mjs
@@ -15,11 +15,14 @@
* limitations under the License.
*/
-const { defineConfig } = require('cypress')
-const vitePreprocessor = require('./tests/e2e/support/vite-preprocessor')
-const path = require('path')
+import {defineConfig} from 'cypress'
+import codeCoverageTask from '@cypress/code-coverage/task.js'
+import vitePreprocessor from 'cypress-vite'
+import {resolve} from 'path'
-module.exports = defineConfig({
+const __dirname = resolve()
+
+export default defineConfig({
video: false,
defaultCommandTimeout: 20000,
execTimeout: 30000,
@@ -31,14 +34,18 @@ module.exports = defineConfig({
e2e: {
baseUrl: 'http://localhost:' + (process.env.PORT || 8080),
setupNodeEvents (on, config) {
- // For test coverage
- require('@cypress/code-coverage/task')(on, config)
-
- on(
- 'file:preprocessor',
- vitePreprocessor(path.resolve(__dirname, 'vite.config.js'))
- )
- return require('./tests/e2e/plugins/index.js')(on, config)
+ codeCoverageTask(on, config)
+ on('before:browser:launch', (browser, launchOptions) => {
+ if (browser.name === 'chrome' && browser.isHeadless) {
+ launchOptions.args.push('--window-size=1440,1024',
'--force-device-scale-factor=1')
+ }
+ return launchOptions
+ })
+ on('file:preprocessor', vitePreprocessor({
+ configFile: resolve(__dirname, './vite.config.js'),
+ mode: 'development',
+ }))
+ return config
},
specPattern: 'tests/e2e/specs/**/*.cy.{js,jsx,ts,tsx}',
fixturesFolder: 'tests/e2e/fixtures',
diff --git a/jena-fuseki2/jena-fuseki-ui/eslint.config.js
b/jena-fuseki2/jena-fuseki-ui/eslint.config.js
new file mode 100644
index 0000000000..91f53602f7
--- /dev/null
+++ b/jena-fuseki2/jena-fuseki-ui/eslint.config.js
@@ -0,0 +1,63 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the 'License'); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an 'AS IS' BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import js from '@eslint/js'
+import pluginVue from 'eslint-plugin-vue'
+
+export default [
+ js.configs.recommended,
+ ...pluginVue.configs['flat/recommended'],
+ {
+ 'files': [
+ '**/*.mjs',
+ '**/*.js',
+ '**/*.vue'
+ ],
+ 'ignores': [
+ 'node_modules/*',
+ 'dist/*',
+ 'tests/coverage/*'
+ ],
+ 'rules': {
+ 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
+ 'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
+ 'vue/custom-event-name-casing': 'off',
+ 'vue/multi-word-component-names': 'off',
+ 'vue/no-reserved-component-names': 'off',
+ 'vue/order-in-components': 'off',
+ 'vue/max-attributes-per-line': 'off',
+ 'vue/attributes-order': 'off',
+ 'vue/html-self-closing': 'off'
+ },
+ 'languageOptions': {
+ 'ecmaVersion': 2021,
+ 'globals': {
+ 'process': true,
+ 'describe': true,
+ 'it': true,
+ 'Cypress': true,
+ 'cy': true,
+ 'expect': true,
+ 'before': true,
+ 'beforeEach': true,
+ 'after': true,
+ 'afterEach': true,
+ '__dirname': true
+ }
+ }
+ }
+];
diff --git a/jena-fuseki2/jena-fuseki-ui/package.json
b/jena-fuseki2/jena-fuseki-ui/package.json
index e9cef4ebcb..c645ca28d0 100644
--- a/jena-fuseki2/jena-fuseki-ui/package.json
+++ b/jena-fuseki2/jena-fuseki-ui/package.json
@@ -1,5 +1,6 @@
{
"name": "apache-jena-fuseki",
+ "type": "module",
"version": "1.0.0",
"private": false,
"description": "Apache Jena Fuseki UI",
@@ -11,7 +12,7 @@
"build": "vite build",
"test:unit": "vitest run --environment jsdom",
"test:e2e": "cross-env FUSEKI_PORT=\"${FUSEKI_PORT:=3030}\"
PORT=\"${PORT:=8080}\" concurrently --names 'SERVER,CLIENT,TESTS'
--prefix-colors 'yellow,blue,green' --success 'first' --kill-others 'yarn run
serve:fuseki' 'yarn wait-on http://localhost:${FUSEKI_PORT}/$/ping && yarn run
dev' 'yarn wait-on http-get://localhost:${PORT}/index.html && cypress run $@'",
- "lint": "eslint --ext .js,.vue --ignore-path .gitignore --fix src",
+ "lint": "eslint --fix src",
"coverage:unit": "yarn run test:unit --coverage",
"coverage:e2e": "cross-env-shell CYPRESS_COVERAGE=true yarn run test:e2e",
"serve:fuseki": "nodemon src/services/mock/json-server.js",
@@ -36,8 +37,9 @@
"devDependencies": {
"@cypress/code-coverage": "^3.12.4",
"@cypress/vue": "^6.0.0",
+ "@eslint/js": "^9.2.0",
"@vitejs/plugin-vue": "^5.0.3",
- "@vitest/coverage-c8": "^0.33.0",
+ "@vitest/coverage-v8": "^1.6.0",
"@vue/compiler-sfc": "^3.3.6",
"@vue/eslint-config-standard": "^8.0.1",
"@vue/test-utils": "^2.4.1",
@@ -60,7 +62,7 @@
"sass": "^1.69.4",
"sinon": "^17.0.0",
"vite": "^5.0.12",
- "vite-plugin-istanbul": "6.0.0",
+ "vite-plugin-istanbul": "^6.0.2",
"vitest": "^1.3.1",
"wait-on": "^7.0.1"
},
diff --git a/jena-fuseki2/jena-fuseki-ui/src/main.js
b/jena-fuseki2/jena-fuseki-ui/src/main.js
index 4a79e75909..8c39356206 100644
--- a/jena-fuseki2/jena-fuseki-ui/src/main.js
+++ b/jena-fuseki2/jena-fuseki-ui/src/main.js
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-import { createApp, h } from 'vue'
+import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import 'bootstrap/dist/js/bootstrap.bundle.min'
diff --git
a/jena-fuseki2/jena-fuseki-ui/src/mixins/current-dataset-navigation-guards.js
b/jena-fuseki2/jena-fuseki-ui/src/mixins/current-dataset-navigation-guards.js
index d5f77d58cf..b79e37ab5f 100644
---
a/jena-fuseki2/jena-fuseki-ui/src/mixins/current-dataset-navigation-guards.js
+++
b/jena-fuseki2/jena-fuseki-ui/src/mixins/current-dataset-navigation-guards.js
@@ -30,6 +30,7 @@ export default {
})
},
async beforeRouteUpdate (from, to, next) {
+ // eslint-disable-next-line no-unused-vars
next(async vm => {
await this.loadCurrentDataset()
})
diff --git a/jena-fuseki2/jena-fuseki-ui/src/mixins/list-datasets.js
b/jena-fuseki2/jena-fuseki-ui/src/mixins/list-datasets.js
index a2da558433..6da311b422 100644
--- a/jena-fuseki2/jena-fuseki-ui/src/mixins/list-datasets.js
+++ b/jena-fuseki2/jena-fuseki-ui/src/mixins/list-datasets.js
@@ -15,8 +15,6 @@
* limitations under the License.
*/
-import { BUS } from '@/events'
-
export default {
data () {
return {
diff --git a/jena-fuseki2/jena-fuseki-ui/src/services/mock/json-server.js
b/jena-fuseki2/jena-fuseki-ui/src/services/mock/json-server.js
index 5f20e1d17e..d54d9fca03 100644
--- a/jena-fuseki2/jena-fuseki-ui/src/services/mock/json-server.js
+++ b/jena-fuseki2/jena-fuseki-ui/src/services/mock/json-server.js
@@ -15,12 +15,12 @@
* limitations under the License.
*/
+import jsonServer from 'json-server'
+
const PORT = process.env.FUSEKI_PORT || 3030
const data = {}
-const jsonServer = require('json-server')
-
const server = jsonServer.create()
const router = jsonServer.router(data)
const middlewares = jsonServer.defaults()
@@ -260,8 +260,6 @@ server.get('/:datasetName/data', (req, res) => {
.send(dataContent)
})
-let failUpload = false
-
// Upload data.
server.post('/:datasetName/data', (req, res) => {
res
@@ -282,9 +280,15 @@ server.get('/\\$/ping', (req, res) => {
// RESET TEST DATA
server.get('/tests/reset', (req, res) => {
// Just delete the datasets to clean up for other tests to have a
- // brand new environment.
- for (const dataset in DATASETS) {
- delete DATASETS[dataset]
+ // brand-new environment.
+ if (DATASETS) {
+ try {
+ for (const dataset in DATASETS) {
+ delete DATASETS[dataset]
+ }
+ } catch (e) {
+ console.log(e)
+ }
}
res.sendStatus(200)
})
diff --git a/jena-fuseki2/jena-fuseki-ui/src/views/dataset/Edit.vue
b/jena-fuseki2/jena-fuseki-ui/src/views/dataset/Edit.vue
index 8dde59f7af..b19aeb5e9c 100644
--- a/jena-fuseki2/jena-fuseki-ui/src/views/dataset/Edit.vue
+++ b/jena-fuseki2/jena-fuseki-ui/src/views/dataset/Edit.vue
@@ -261,7 +261,6 @@ export default {
this.loadingGraph = true
this.selectedGraph = graphName
try {
- const dataEndpoint =
this.services['gsp-rw']['srv.endpoints'].find(endpoint => endpoint !== '') || ''
const result = await this.$fusekiService.fetchGraph(
this.datasetName,
this.services['gsp-rw']['srv.endpoints'],
diff --git a/jena-fuseki2/jena-fuseki-ui/src/views/dataset/Query.vue
b/jena-fuseki2/jena-fuseki-ui/src/views/dataset/Query.vue
index 07c9579df5..e44a843865 100644
--- a/jena-fuseki2/jena-fuseki-ui/src/views/dataset/Query.vue
+++ b/jena-fuseki2/jena-fuseki-ui/src/views/dataset/Query.vue
@@ -327,6 +327,7 @@ export default {
},
watch: {
+ /* eslint-disable no-unused-vars */
datasetUrl: function (val, oldVal) {
this.currentDatasetUrl = val
},
@@ -345,6 +346,7 @@ export default {
this.yasqe.options.requestConfig.acceptHeaderGraph =
this.contentTypeGraph
}
}
+ /* eslint-enable no-unused-vars */
},
methods: {
diff --git a/jena-fuseki2/jena-fuseki-ui/tests/e2e/specs/datasets.cy.js
b/jena-fuseki2/jena-fuseki-ui/tests/e2e/specs/datasets.cy.js
index e5be01a35b..ecc049c3e0 100644
--- a/jena-fuseki2/jena-fuseki-ui/tests/e2e/specs/datasets.cy.js
+++ b/jena-fuseki2/jena-fuseki-ui/tests/e2e/specs/datasets.cy.js
@@ -25,11 +25,17 @@ describe('datasets', () => {
describe('without any datasets', () => {
before(() => {
// Special endpoint that clears the datasets data.
- cy.request('/tests/reset')
+ cy.request({
+ url: '/tests/reset',
+ retryOnStatusCodeFailure: true
+ })
})
after(() => {
// Special endpoint that clears the datasets data.
- cy.request('/tests/reset')
+ cy.request({
+ url: '/tests/reset',
+ retryOnStatusCodeFailure: true
+ })
})
it('Visits datasets page, also the application landing-page', () => {
cy.visit('/')
@@ -59,7 +65,10 @@ describe('datasets', () => {
describe('after creating new datasets', () => {
before(() => {
// Special endpoint that clears the datasets data.
- cy.request('/tests/reset')
+ cy.request({
+ url: '/tests/reset',
+ retryOnStatusCodeFailure: true
+ })
for (const datasetName of ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i',
'j', 'k']) {
// NOTE: Cypress appears to get confused when re-using the same URL,
// so we use a ?temp=... in the URL to force distinct requests.
@@ -84,7 +93,10 @@ describe('datasets', () => {
})
after(() => {
// Special endpoint that clears the datasets data.
- cy.request('/tests/reset')
+ cy.request({
+ url: '/tests/reset',
+ retryOnStatusCodeFailure: true
+ })
})
it('Edits the graph', () => {
cy.visit('/#/dataset/a/edit')
diff --git a/jena-fuseki2/jena-fuseki-ui/tests/e2e/specs/query.cy.js
b/jena-fuseki2/jena-fuseki-ui/tests/e2e/specs/query.cy.js
index b73c54569c..57fe9cedba 100644
--- a/jena-fuseki2/jena-fuseki-ui/tests/e2e/specs/query.cy.js
+++ b/jena-fuseki2/jena-fuseki-ui/tests/e2e/specs/query.cy.js
@@ -18,10 +18,13 @@
/**
* Tests the Query view and YASGUI & family components.
*/
-describe('Query', () => {
- beforeEach(() => {
+describe('Query', function() {
+ beforeEach(function() {
// Special endpoint that clears the datasets data.
- cy.request('/tests/reset')
+ cy.request({
+ url: '/tests/reset',
+ retryOnStatusCodeFailure: true
+ })
// Create a sample dataset.
cy
.visit('/#/manage/new')
@@ -41,14 +44,18 @@ describe('Query', () => {
.should('be.visible')
})
})
- afterEach(() => {
+
+ afterEach(function() {
// Special endpoint that clears the datasets data.
- cy.request('/tests/reset')
+ cy.request({
+ url: '/tests/reset',
+ retryOnStatusCodeFailure: true
+ })
})
/**
* Bug: https://github.com/apache/jena/issues/1443
*/
- it('Uses the correct SPARQL Endpoint', () => {
+ it('Uses the correct SPARQL Endpoint', function() {
const SPARQL_ENDPOINT = '/skosmos/update'
cy.visit('/#/dataset/skosmos/query')
cy
@@ -75,7 +82,8 @@ describe('Query', () => {
.its('response')
.should('have.property', 'statusCode', 203)
})
- it('Can resize the query editor', () => {
+
+ it('Can resize the query editor', function() {
cy.visit('/#/dataset/skosmos/query')
// TODO: The .then(() => {}) is a bug/regression in Cypress 12 -
https://github.com/cypress-io/cypress/issues/25173#issuecomment-1358017970
cy
diff --git a/jena-fuseki2/jena-fuseki-ui/tests/e2e/specs/upload.cy.js
b/jena-fuseki2/jena-fuseki-ui/tests/e2e/specs/upload.cy.js
index c31d1ccbd3..eeafec66c5 100644
--- a/jena-fuseki2/jena-fuseki-ui/tests/e2e/specs/upload.cy.js
+++ b/jena-fuseki2/jena-fuseki-ui/tests/e2e/specs/upload.cy.js
@@ -22,12 +22,15 @@
* add new datasets. So we also cover parts of the Manage view.
*/
-describe('upload', () => {
- beforeEach(() => {
+describe('upload', function () {
+ beforeEach(function () {
// Intercept new dataset request.
cy.intercept('POST', '/$/datasets').as('createDataset')
// Special endpoint that clears the datasets data.
- cy.request('/tests/reset')
+ cy.request({
+ url: '/tests/reset',
+ retryOnStatusCodeFailure: true
+ })
// Create a sample dataset.
cy
.visit('/#/manage/new')
@@ -56,11 +59,14 @@ describe('upload', () => {
cy.wait('@server')
cy.intercept('/$/server').as('server')
})
- afterEach(() => {
+ afterEach(function () {
// Special endpoint that clears the datasets data.
- cy.request('/tests/reset')
+ cy.request({
+ url: '/tests/reset',
+ retryOnStatusCodeFailure: true
+ })
})
- it('displays an empty progress bar by default', () => {
+ it('displays an empty progress bar by default', function () {
// The progress is present.
cy
.get('.progress')
@@ -78,7 +84,7 @@ describe('upload', () => {
.should('have.attr', 'aria-valuenow', 0)
})
})
- it('displays the progress for success and failure', () => {
+ it('displays the progress for success and failure', function () {
// Intercept upload calls.
// Fails every other upload.
let fail = false
diff --git a/jena-fuseki2/jena-fuseki-ui/vite.config.js
b/jena-fuseki2/jena-fuseki-ui/vite.config.js
index 1fc8dd7d21..f35beb8fb0 100644
--- a/jena-fuseki2/jena-fuseki-ui/vite.config.js
+++ b/jena-fuseki2/jena-fuseki-ui/vite.config.js
@@ -19,7 +19,7 @@ import { defineConfig } from 'vite'
import { configDefaults } from 'vitest/config'
import vue from '@vitejs/plugin-vue'
import istanbul from "vite-plugin-istanbul";
-const path = require("path")
+import path from 'path'
// https://vitejs.dev/config/
export default defineConfig({
@@ -91,7 +91,7 @@ export default defineConfig({
changeOrigin: true,
secure: false,
ws: false,
- bypass: (req, res, options) => {
+ bypass: (req) => {
const accept = req.headers.accept
const contentType = req.headers['content-type']
// webpack-dev-server automatically handled fall-through, as it was
requested (and quickly
@@ -100,10 +100,11 @@ export default defineConfig({
// So we bypass requests from the proxy that do not contain the
header Accept: application/json.*,
// or that are requesting /node_modules/ (dev Vite/Vue/JS modules).
const sendToUI =
+ req.url.endsWith('index.html') ||
req.method !== 'POST' &&
req.url.indexOf('tests/reset') < 0 &&
(
- (req.hasOwnProperty('originalUrl') &&
req.originalUrl.includes('node_modules')) ||
+ (Object.prototype.hasOwnProperty.call(req, 'originalUrl') &&
req.originalUrl.includes('node_modules')) ||
(
(accept !== undefined && accept !== null) &&
!(accept.includes('application/json') ||
accept.includes('text/turtle') ||
accept.includes('application/sparql-results+json')
diff --git a/jena-fuseki2/jena-fuseki-ui/yarn.lock
b/jena-fuseki2/jena-fuseki-ui/yarn.lock
index f8b1c1e042..47e9215b30 100644
--- a/jena-fuseki2/jena-fuseki-ui/yarn.lock
+++ b/jena-fuseki2/jena-fuseki-ui/yarn.lock
@@ -536,6 +536,11 @@
resolved
"https://registry.yarnpkg.com/@eslint/js/-/js-8.57.0.tgz#a5417ae8427873f1dd08b70b3574b453e67b5f7f"
integrity
sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==
+"@eslint/js@^9.2.0":
+ version "9.2.0"
+ resolved
"https://registry.yarnpkg.com/@eslint/js/-/js-9.2.0.tgz#b0a9123e8e91a3d9a2eed3a04a6ed44fdab639aa"
+ integrity
sha512-ESiIudvhoYni+MdsI8oD7skpprZ89qKocwRM2KEvhhBJ9nl5MRh7BXU5GTod7Mdygq+AUl+QzId6iWJKR/wABA==
+
"@fortawesome/[email protected]":
version "6.5.2"
resolved
"https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.5.2.tgz#eaf2f5699f73cef198454ebc0c414e3688898179"
@@ -662,7 +667,7 @@
resolved
"https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32"
integrity
sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==
-"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.17",
"@jridgewell/trace-mapping@^0.3.9":
+"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9":
version "0.3.20"
resolved
"https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz#72e45707cf240fa6b081d0366f8265b0cd10197f"
integrity
sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==
@@ -670,6 +675,14 @@
"@jridgewell/resolve-uri" "^3.1.0"
"@jridgewell/sourcemap-codec" "^1.4.14"
+"@jridgewell/trace-mapping@^0.3.23":
+ version "0.3.25"
+ resolved
"https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0"
+ integrity
sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==
+ dependencies:
+ "@jridgewell/resolve-uri" "^3.1.0"
+ "@jridgewell/sourcemap-codec" "^1.4.14"
+
"@json2csv/formatters@^7.0.5":
version "7.0.5"
resolved
"https://registry.yarnpkg.com/@json2csv/formatters/-/formatters-7.0.5.tgz#530193d4a584f9f6b410fd0a95a7f8185d15d759"
@@ -858,11 +871,6 @@
resolved
"https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4"
integrity
sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==
-"@types/istanbul-lib-coverage@^2.0.1":
- version "2.0.6"
- resolved
"https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7"
- integrity
sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==
-
"@types/json5@^0.0.29":
version "0.0.29"
resolved
"https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee"
@@ -921,16 +929,24 @@
resolved
"https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-5.0.4.tgz#508d6a0f2440f86945835d903fcc0d95d1bb8a37"
integrity
sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ==
-"@vitest/coverage-c8@^0.33.0":
- version "0.33.0"
- resolved
"https://registry.yarnpkg.com/@vitest/coverage-c8/-/coverage-c8-0.33.0.tgz#7c8ef0997afcc3f5ab99984c0197ece4451f26b6"
- integrity
sha512-DaF1zJz4dcOZS4k/neiQJokmOWqsGXwhthfmUdPGorXIQHjdPvV6JQSYhQDI41MyI8c+IieQUdIDs5XAMHtDDw==
+"@vitest/coverage-v8@^1.6.0":
+ version "1.6.0"
+ resolved
"https://registry.yarnpkg.com/@vitest/coverage-v8/-/coverage-v8-1.6.0.tgz#2f54ccf4c2d9f23a71294aba7f95b3d2e27d14e7"
+ integrity
sha512-KvapcbMY/8GYIG0rlwwOKCVNRc0OL20rrhFkg/CHNzncV03TE2XWvO5w9uZYoxNiMEBacAJt3unSOiZ7svePew==
dependencies:
"@ampproject/remapping" "^2.2.1"
- c8 "^7.14.0"
- magic-string "^0.30.1"
+ "@bcoe/v8-coverage" "^0.2.3"
+ debug "^4.3.4"
+ istanbul-lib-coverage "^3.2.2"
+ istanbul-lib-report "^3.0.1"
+ istanbul-lib-source-maps "^5.0.4"
+ istanbul-reports "^3.1.6"
+ magic-string "^0.30.5"
+ magicast "^0.3.3"
picocolors "^1.0.0"
- std-env "^3.3.3"
+ std-env "^3.5.0"
+ strip-literal "^2.0.0"
+ test-exclude "^6.0.0"
"@vitest/[email protected]":
version "1.6.0"
@@ -1575,24 +1591,6 @@ [email protected]:
resolved
"https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5"
integrity
sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==
-c8@^7.14.0:
- version "7.14.0"
- resolved
"https://registry.yarnpkg.com/c8/-/c8-7.14.0.tgz#f368184c73b125a80565e9ab2396ff0be4d732f3"
- integrity
sha512-i04rtkkcNcCf7zsQcSv/T9EbUn4RXQ6mropeMcjFOsQXQ0iGLAr/xT6TImQg4+U9hmNpN9XdvPkjUL1IzbgxJw==
- dependencies:
- "@bcoe/v8-coverage" "^0.2.3"
- "@istanbuljs/schema" "^0.1.3"
- find-up "^5.0.0"
- foreground-child "^2.0.0"
- istanbul-lib-coverage "^3.2.0"
- istanbul-lib-report "^3.0.0"
- istanbul-reports "^3.1.4"
- rimraf "^3.0.2"
- test-exclude "^6.0.0"
- v8-to-istanbul "^9.0.0"
- yargs "^16.2.0"
- yargs-parser "^20.2.9"
-
cac@^6.7.14:
version "6.7.14"
resolved
"https://registry.yarnpkg.com/cac/-/cac-6.7.14.tgz#804e1e6f506ee363cb0e3ccbb09cad5dd9870959"
@@ -1757,15 +1755,6 @@ cliui@^6.0.0:
strip-ansi "^6.0.0"
wrap-ansi "^6.2.0"
-cliui@^7.0.2:
- version "7.0.4"
- resolved
"https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f"
- integrity
sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==
- dependencies:
- string-width "^4.2.0"
- strip-ansi "^6.0.0"
- wrap-ansi "^7.0.0"
-
cliui@^8.0.1:
version "8.0.1"
resolved
"https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa"
@@ -3658,7 +3647,7 @@ isstream@~0.1.2:
resolved
"https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
integrity
sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==
-istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0:
+istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0,
istanbul-lib-coverage@^3.2.2:
version "3.2.2"
resolved
"https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz#2d166c4b0644d43a39f04bf6c2edd1e585f31756"
integrity
sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==
@@ -3703,7 +3692,7 @@ istanbul-lib-processinfo@^2.0.2:
rimraf "^3.0.0"
uuid "^8.3.2"
-istanbul-lib-report@^3.0.0:
+istanbul-lib-report@^3.0.0, istanbul-lib-report@^3.0.1:
version "3.0.1"
resolved
"https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz#908305bac9a5bd175ac6a74489eafd0fc2445a7d"
integrity
sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==
@@ -3721,7 +3710,16 @@ istanbul-lib-source-maps@^4.0.0:
istanbul-lib-coverage "^3.0.0"
source-map "^0.6.1"
-istanbul-reports@^3.0.2, istanbul-reports@^3.1.4:
+istanbul-lib-source-maps@^5.0.4:
+ version "5.0.4"
+ resolved
"https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-5.0.4.tgz#1947003c72a91b6310efeb92d2a91be8804d92c2"
+ integrity
sha512-wHOoEsNJTVltaJp8eVkm8w+GVkVNHT2YDYo53YdzQEL2gWm1hBX5cGFR9hQJtuGLebidVX7et3+dmDZrmclduw==
+ dependencies:
+ "@jridgewell/trace-mapping" "^0.3.23"
+ debug "^4.1.1"
+ istanbul-lib-coverage "^3.0.0"
+
+istanbul-reports@^3.0.2:
version "3.1.6"
resolved
"https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.6.tgz#2544bcab4768154281a2f0870471902704ccaa1a"
integrity
sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==
@@ -3729,6 +3727,14 @@ istanbul-reports@^3.0.2, istanbul-reports@^3.1.4:
html-escaper "^2.0.0"
istanbul-lib-report "^3.0.0"
+istanbul-reports@^3.1.6:
+ version "3.1.7"
+ resolved
"https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.7.tgz#daed12b9e1dca518e15c056e1e537e741280fa0b"
+ integrity
sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==
+ dependencies:
+ html-escaper "^2.0.0"
+ istanbul-lib-report "^3.0.0"
+
jackspeak@^2.3.5:
version "2.3.6"
resolved
"https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8"
@@ -4075,13 +4081,22 @@ lru-cache@^6.0.0:
resolved
"https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.1.0.tgz#2098d41c2dc56500e6c88584aa656c84de7d0484"
integrity
sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==
-magic-string@^0.30.1, magic-string@^0.30.10, magic-string@^0.30.5:
+magic-string@^0.30.10, magic-string@^0.30.5:
version "0.30.10"
resolved
"https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.10.tgz#123d9c41a0cb5640c892b041d4cfb3bd0aa4b39e"
integrity
sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==
dependencies:
"@jridgewell/sourcemap-codec" "^1.4.15"
+magicast@^0.3.3:
+ version "0.3.4"
+ resolved
"https://registry.yarnpkg.com/magicast/-/magicast-0.3.4.tgz#bbda1791d03190a24b00ff3dd18151e7fd381d19"
+ integrity
sha512-TyDF/Pn36bBji9rWKHlZe+PZb6Mx5V8IHCSxk7X4aljM4e/vyDvZZYwHewdVaqiA0nb3ghfHU/6AUpDxWoER2Q==
+ dependencies:
+ "@babel/parser" "^7.24.4"
+ "@babel/types" "^7.24.0"
+ source-map-js "^1.2.0"
+
make-dir@^3.0.0, make-dir@^3.0.2:
version "3.1.0"
resolved
"https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f"
@@ -5308,7 +5323,7 @@ [email protected]:
resolved
"https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63"
integrity
sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==
-std-env@^3.3.3, std-env@^3.5.0:
+std-env@^3.5.0:
version "3.7.0"
resolved
"https://registry.yarnpkg.com/std-env/-/std-env-3.7.0.tgz#c9f7386ced6ecf13360b6c6c55b8aaa4ef7481d2"
integrity
sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==
@@ -5768,15 +5783,6 @@ uuid@^8.3.2:
resolved
"https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2"
integrity
sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==
-v8-to-istanbul@^9.0.0:
- version "9.1.3"
- resolved
"https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.1.3.tgz#ea456604101cd18005ac2cae3cdd1aa058a6306b"
- integrity
sha512-9lDD+EVI2fjFsMWXc6dy5JJzBsVTcQ2fVkfBvncZ6xJWG9wtBhOldG+mHkSL0+V1K/xgZz0JDO5UT5hFwHUghg==
- dependencies:
- "@jridgewell/trace-mapping" "^0.3.12"
- "@types/istanbul-lib-coverage" "^2.0.1"
- convert-source-map "^2.0.0"
-
vary@^1, vary@~1.1.2:
version "1.1.2"
resolved
"https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
@@ -5802,10 +5808,10 @@ [email protected]:
picocolors "^1.0.0"
vite "^5.0.0"
[email protected]:
- version "6.0.0"
- resolved
"https://registry.yarnpkg.com/vite-plugin-istanbul/-/vite-plugin-istanbul-6.0.0.tgz#630c1404c09ae242f84b819f001abe4db3f8bf2e"
- integrity
sha512-Vwh2XdesjcLwaPbHSOiWHh+0s7CNovQTPEjUCTkqmJUe0FN2TKsOp0qpoaklOuwrKlL9elhD5fPFxi5lmG62zA==
+vite-plugin-istanbul@^6.0.2:
+ version "6.0.2"
+ resolved
"https://registry.yarnpkg.com/vite-plugin-istanbul/-/vite-plugin-istanbul-6.0.2.tgz#242a57b20d540adc49631f9e6c174a1c3559ece7"
+ integrity
sha512-0/sKwjEEIwbEyl43xX7onX3dIbMJAsigNsKyyVPalG1oRFo5jn3qkJbS2PUfp9wrr3piy1eT6qRoeeum2p4B2A==
dependencies:
"@istanbuljs/load-nyc-config" "^1.1.0"
espree "^10.0.1"
@@ -5978,6 +5984,7 @@ why-is-node-running@^2.2.2:
stackback "0.0.2"
"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0:
+ name wrap-ansi-cjs
version "7.0.0"
resolved
"https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
integrity
sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
@@ -6067,11 +6074,6 @@ yargs-parser@^18.1.2:
camelcase "^5.0.0"
decamelize "^1.2.0"
-yargs-parser@^20.2.2, yargs-parser@^20.2.9:
- version "20.2.9"
- resolved
"https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee"
- integrity
sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==
-
yargs-parser@^21.1.1:
version "21.1.1"
resolved
"https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35"
@@ -6094,19 +6096,6 @@ yargs@^15.0.2:
y18n "^4.0.0"
yargs-parser "^18.1.2"
-yargs@^16.2.0:
- version "16.2.0"
- resolved
"https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66"
- integrity
sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==
- dependencies:
- cliui "^7.0.2"
- escalade "^3.1.1"
- get-caller-file "^2.0.5"
- require-directory "^2.1.1"
- string-width "^4.2.0"
- y18n "^5.0.5"
- yargs-parser "^20.2.2"
-
yargs@^17.0.1, yargs@^17.7.2:
version "17.7.2"
resolved
"https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269"